Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдЬрд╛рд╡рд╛ рдЗрддрд░ рд▓реЛрдХрдкреНрд░рд┐рдп рднрд╛рд╖рд╛рдВрдкреЗрдХреНрд╖рд╛ рд╡реЗрдЧрд│рд╛ рдХрд╕рд╛ рдЖрд╣реЗ? рд╢рд┐рдХрдгреНрдпрд╛рд╕рд╛рдареА рдЬрд╛рд╡рд╛ рд╣реА рдкрд╣рд┐рд▓реА рднрд╛рд╖рд╛ рдХрд╛ рдЕрд╕рд╛рд╡реА? рдЪрд▓рд╛ рдПрдХ рдпреЛрдЬрдирд╛ рддрдпрд╛рд░ рдХрд░реВрдпрд╛ рдЬреА рддреБрдореНрд╣рд╛рд▓рд╛ рд╕реБрд░рд╡рд╛рддреАрдкрд╛рд╕реВрди рдЖрдгрд┐ рдЗрддрд░ рднрд╛рд╖рд╛рдВрдордзреНрдпреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреМрд╢рд▓реНрдпреЗ рд▓рд╛рдЧреВ рдХрд░реВрди Java рд╢рд┐рдХрдгреНрдпрд╛рд╕ рдорджрдд рдХрд░реЗрд▓. рдЬрд╛рд╡рд╛рдордзреНрдпреЗ рдЙрддреНрдкрд╛рджрди рдХреЛрдб рддрдпрд╛рд░ рдХрд░рдгреЗ рдЖрдгрд┐ рдЗрддрд░ рднрд╛рд╖рд╛рдВрдордзреНрдпреЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдгреЗ рдпрд╛рдордзреАрд▓ рдлрд░рдХрд╛рдВрдЪреА рдпрд╛рджреА рдХрд░реВрдпрд╛. рдорд┐рдЦрд╛рдИрд▓ рдЭрд╛рдЯреЗрдкреНрдпрд╛рдХрд┐рди рдпрд╛рдВрдиреА рднрд╡рд┐рд╖реНрдпрд╛рддреАрд▓ рд╕рд╣рднрд╛рдЧреАрдВрдЪреНрдпрд╛ рдмреИрдардХреАрдд рд╣рд╛ рдЕрд╣рд╡рд╛рд▓ рд╡рд╛рдЪрд▓рд╛ рдЗрдВрдЯрд░реНрдирд╢рд┐рдк рдпрд╛рдВрдбреЗрдХреНрд╕ рдЖрдгрд┐ рдЗрддрд░ рд╕реБрд░реБрд╡рд╛рддреАрдЪреЗ рд╡рд┐рдХрд╕рдХ - Java Junior рдореАрдЯрдЕрдк.


- рд╕рд░реНрд╡рд╛рдВрдирд╛ рдирдорд╕реНрдХрд╛рд░, рдорд╛рдЭреЗ рдирд╛рд╡ рдореАрд╢рд╛ рдЖрд╣реЗ. рдореА Yandex.Market рдордзреАрд▓ рдПрдХ рд╡рд┐рдХрд╕рдХ рдЖрд╣реЗ рдЖрдгрд┐ рдЖрдЬ рдореА рддреБрдореНрд╣рд╛рд▓рд╛ Java рдХрд╛ рд╢рд┐рдХрд╛рдпрдЪреЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рдпрдЪреЗ рддреЗ рд╕рд╛рдВрдЧреЗрди. рддреБрдореНрд╣реА рдПрдХ рд╡рд╛рдЬрд╡реА рдкреНрд░рд╢реНрди рд╡рд┐рдЪрд╛рд░реВ рд╢рдХрддрд╛: рдореА рд╣реА рдХрдерд╛ рдХрд╛ рд╕рд╛рдВрдЧрдд рдЖрд╣реЗ, рдЖрдгрд┐ рдЕрдиреЗрдХ рд╡рд░реНрд╖рд╛рдВрдЪрд╛ рдЕрдиреБрднрд╡ рдЕрд╕рд▓реЗрд▓реЗ рдХрд╛рд╣реА рдордЬрдмреВрдд рд╡рд┐рдХрд╕рдХ рдирд╛рд╣реА? рд╡рд╕реНрддреБрд╕реНрдерд┐рддреА рдЕрд╢реА рдЖрд╣реЗ рдХреА рдореА рд╕реНрд╡рддрдГ рдЕрд▓реАрдХрдбреЗрдЪ рдЬрд╛рд╡рд╛рдЪрд╛ рдЕрднреНрдпрд╛рд╕ рдХреЗрд▓рд╛ рдЖрд╣реЗ, рд╕реБрдорд╛рд░реЗ рджреАрдб рд╡рд░реНрд╖рд╛рдкреВрд░реНрд╡реА, рдореНрд╣рдгреВрди рдорд▓рд╛ рдЕрдЬреВрдирд╣реА рдЖрдард╡рддреЗ рдХреА рддреЗ рдХрд╕реЗ рд╣реЛрддреЗ рдЖрдгрд┐ рддреНрдпрд╛рдд рдХреЛрдгрддреЗ рдиреБрдХрд╕рд╛рди рдЖрд╣реЗрдд.

рдПрдХ рд╡рд░реНрд╖рд╛рдкреВрд░реНрд╡реА рдорд▓рд╛ Yandex.Market рдпреЗрдереЗ рдЗрдВрдЯрд░реНрдирд╢рд┐рдк рдорд┐рд│рд╛рд▓реА. рдореА рдмреЗрд░реВрд╕рд╛рдареА рдмреЕрдХрдПрдВрдб рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗ, рдорд╛рд░реНрдХреЗрдЯрд╕рд╛рдареАрдЪ, рддреБрдореНрд╣реА рдХрджрд╛рдЪрд┐рдд рддреЗ рд╡рд╛рдкрд░рд▓реЗ рдЕрд╕реЗрд▓. рдЖрддрд╛ рдореА рддрд┐рдереЗ рд╡реЗрдЧрд│реНрдпрд╛ рдЯреАрдордордзреНрдпреЗ рдХрд╛рдо рдХрд░рдд рдЖрд╣реЗ. рдЖрдореНрд╣реА рд╡реНрдпрд╡рд╕рд╛рдп рднрд╛рдЧреАрджрд╛рд░рд╛рдВрд╕рд╛рдареА Yandex.Market рд╕рд╛рдареА рдПрдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╛рддреНрдордХ рдкреНрд▓реЕрдЯрдлреЙрд░реНрдо рддрдпрд╛рд░ рдХрд░рддреЛ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдЪрд▓рд╛ рд╕реБрд░реВ рдХрд░реБрдпрд╛. рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рддреВрди Java рдХрд╛ рд╢рд┐рдХрд╛рдпрдЪреЗ? рд╡рд╕реНрддреБрд╕реНрдерд┐рддреА рдЕрд╢реА рдЖрд╣реЗ рдХреА рдЬрд╛рд╡рд╛ рд╣реА рдПрдХ рдЕрддрд┐рд╢рдп рдкреНрд░рд╕рд┐рджреНрдз рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдЖрд╣реЗ. рдпрд╛рдд рдЦреВрдк рдореЛрдард╛ рд╕рдореБрджрд╛рдп рдЖрд╣реЗ.

рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЕрд╕рд╛ рдПрдХ TIOBE рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдЖрд╣реЗ, рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдВрдЪреНрдпрд╛ рд▓реЛрдХрдкреНрд░рд┐рдпрддреЗрдЪрд╛ рдПрдХ рд▓реЛрдХрдкреНрд░рд┐рдп рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рдЖрдгрд┐ рдЬрд╛рд╡рд╛ рддреЗрдереЗ рдкреНрд░рдердо рдХреНрд░рдорд╛рдВрдХрд╛рд╡рд░ рдЖрд╣реЗ. рддрд╕реЗрдЪ, рдЬреЙрдм рд╕рд╛рдЗрдЯреНрд╕рд╡рд░, рддреБрдордЪреНрдпрд╛ рд▓рдХреНрд╖рд╛рдд рдпреЗрдИрд▓ рдХреА рдмрд╣реБрддреЗрдХ рд░рд┐рдХрд╛рдореНрдпрд╛ рдЬрд╛рдЧрд╛ Java рдмрджреНрджрд▓ рдЖрд╣реЗрдд, рдореНрд╣рдгрдЬреЗрдЪ Java рдордзреНрдпреЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░реВрди, рддреБрдореНрд╣реА рдиреЗрд╣рдореА рдиреЛрдХрд░реА рд╢реЛрдзреВ рд╢рдХрддрд╛.

рд╕рдореБрджрд╛рдп рдЦреВрдк рдореЛрдард╛ рдЕрд╕рд▓реНрдпрд╛рдиреЗ, рддреБрдордЪреНрдпрд╛ рдХреЛрдгрддреНрдпрд╛рд╣реА рдкреНрд░рд╢реНрдирд╛рдЪреЗ рдЙрддреНрддрд░ рдХрд╛рд╣реА рд╕реНрдЯреЕрдХ рдУрд╡реНрд╣рд░рдлреНрд▓реЛ рдХрд┐рдВрд╡рд╛ рдЗрддрд░ рд╕рд╛рдЗрдЯрд╡рд░ рдорд┐рд│реЗрд▓. рддрд╕реЗрдЪ, Java рдордзреНрдпреЗ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдд рдЕрд╕рддрд╛рдирд╛, рддреБрдореНрд╣реА рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд JVM рд╡рд░ рдХреЛрдб рд▓рд┐рд╣рд┐рдд рдЖрд╣рд╛рдд, рддреНрдпрд╛рдореБрд│реЗ рддреБрдореНрд╣реА JVM рд╡рд╛рдкрд░рдгрд╛рд░реНтАНрдпрд╛ Kotlin, Scala рдЖрдгрд┐ рдЗрддрд░ рднрд╛рд╖рд╛рдВрд╡рд░ рд╕рд╣рдЬрдкрдгреЗ рд╕реНрд╡рд┐рдЪ рдХрд░реВ рд╢рдХрддрд╛.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рд╡реИрдЪрд╛рд░рд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдирд╛рддреВрди рдЬрд╛рд╡рд╛рдмрджреНрджрд▓ рдХрд╛рдп рдЪрд╛рдВрдЧрд▓реЗ рдЖрд╣реЗ? рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдЖрд╣реЗрдд. рддреЗ рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рд╕реЛрдбрд╡рддрд╛рдд, рд╣реЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдорд╛рд╣рд┐рддреА рдЖрд╣реЗ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЬрд▓рдж рд╕рдорд╕реНрдпрд╛ рд╕реЛрдбрд╡рдгреНрдпрд╛рд╕рд╛рдареА рдПрдХ-рд▓рд╛рдЗрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рд╕рд╛рдареА рдкрд╛рдпрдерди рдЙрддреНрддрдо рдЖрд╣реЗ.

рдЕрдзрд┐рдХ рдмрд╛рдЬреВрдиреЗ, рддреБрдореНрд╣реА рдПрдХреНрдЭрд┐рдХреНрдпреБрдЯреЗрдмрд▓ рдХреЛрдб рдкреВрд░реНрдгрдкрдгреЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░реВ рд╢рдХрддрд╛. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдХрд╛рд░, рдпрд╛рдВрдбреЗрдХреНрд╕ рдбреНрд░рд╛рдпрд╡реНрд╣рд░рд▓реЗрд╕ рдХрд╛рд░ рдЖрд╣реЗрдд, рддреНрдпрд╛рдВрдЪрд╛ рдХреЛрдб рдкреНрд▓рд╕рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓рд╛ рдЖрд╣реЗ. рдХрд╛? рдЬрд╛рд╡рд╛рдордзреНрдпреЗ рдЕрд╢реА рдЧреЛрд╖реНрдЯ рдЖрд╣реЗ - рдХрдЪрд░рд╛ рдЧреЛрд│рд╛ рдХрд░рдгрд╛рд░рд╛. рд╣реЗ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╡рд╕реНрддреВрдВрдЪреА рд░реЕрдо рд╕рд╛рдл рдХрд░рддреЗ. рд╣реА рдЧреЛрд╖реНрдЯ рдЙрддреНрд╕реНрдлреВрд░реНрддрдкрдгреЗ рд╕реБрд░реВ рд╣реЛрддреЗ рдЖрдгрд┐ рд╕реНрдЯреЙрдк-рдж-рд╡рд░реНрд▓реНрдб рдХрд░рддреЗ, рдореНрд╣рдгрдЬреЗрдЪ рддреА рдЙрд░реНрд╡рд░рд┐рдд рдкреНрд░реЛрдЧреНрд░рд╛рдо рдерд╛рдВрдмрд╡рддреЗ рдЖрдгрд┐ рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдореЛрдЬрдгреНрдпрд╛рд╕рд╛рдареА рдЬрд╛рддреЗ, рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕рдЪреА рдореЗрдорд░реА рд╕рд╛рдл рдХрд░рддреЗ. рдбреНрд░реЛрдирдордзреНрдпреЗ рдЕрд╕реЗ рдХрд╛рд░реНрдп рдХреЗрд▓реЗ рддрд░ рддреЗ рдердВрдб рдирд╛рд╣реА. рддреБрдордЪрд╛ рдбреНрд░реЛрди рд╕рд░рд│ рдЪрд╛рд▓рд╡реЗрд▓, рдпрд╛ рдХреНрд╖рдгреА рддреНрдпрд╛рдЪреА рд╕реНрдореГрддреА рд╕рд╛рдл рдХрд░рд╛ рдЖрдгрд┐ рд░рд╕реНрддреНрдпрд╛рдХрдбреЗ рдЕрдЬрд┐рдмрд╛рдд рдкрд╛рд╣реВ рдирдХрд╛. рддреНрдпрд╛рдореБрд│реЗ рдбреНрд░реЛрдирд╡рд░ рд╕рд╛рдзрдХ рд▓рд┐рд╣рд┐рд▓реЗ рдЖрд╣реЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

Java рдХреЛрдгрддреНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рд╕реЛрдбрд╡рддреЛ? рд╣реА рдкреНрд░рд╛рдореБрдЦреНрдпрд╛рдиреЗ рдбрдЭрдирднрд░ рдХрд┐рдВрд╡рд╛ рд╢реЗрдХрдбреЛ рд▓реЛрдХрд╛рдВрджреНрд╡рд╛рд░реЗ рд╡рд░реНрд╖рд╛рдиреБрд╡рд░реНрд╖реЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓реЗ рдореЛрдареЗ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рднрд╛рд╖рд╛ рдЖрд╣реЗ. рд╡рд┐рд╢реЗрд╖рддрдГ, Yandex.Market рдордзреАрд▓ рдмрд░реЗрдЪ рдмреЕрдХрдПрдВрдб Java рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓реЗ рдЖрд╣реЗ. рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЕрдиреЗрдХ рд╢рд╣рд░рд╛рдВрдордзреНрдпреЗ рд╡рд┐рддрд░реАрдд рдЯреАрдо рдЖрд╣реЗ, рдкреНрд░рддреНрдпреЗрдХреА рджрд╣рд╛ рд▓реЛрдХ. рдЖрдгрд┐ рдХреЛрдб рд░рд╛рдЦрдгреЗ рд╕реЛрдкреЗ рдЖрд╣реЗ, рддреЗ рджрд╣рд╛ рд╡рд░реНрд╖реЗ рдХрд┐рдВрд╡рд╛ рддреНрдпрд╛рд╣реВрди рдЕрдзрд┐рдХ рдХрд╛рд│ рд╕рдорд░реНрдерд┐рдд рдЖрд╣реЗ рдЖрдгрд┐ рддреНрдпрд╛рдЪ рд╡реЗрд│реА рдирд╡реАрди рд▓реЛрдХ рдпреЗрддрд╛рдд рдЖрдгрд┐ рд╣рд╛ рдХреЛрдб рд╕рдордЬрддрд╛рдд.

рднрд╛рд╖реЗрдЪреА рдХреЛрдгрддреА рд╡реИрд╢рд┐рд╖реНрдЯреНрдпреЗ рдЕрд╕рд╛рд╡реАрдд рдЬреЗрдгреЗрдХрд░реВрди рддреНрдпрд╛рддреАрд▓ рдХреЛрдб рд╕рд╣рдЬрдкрдгреЗ рд╕рдорд░реНрдерд┐рдд рд╣реЛрдИрд▓ рдЖрдгрд┐ рдореЛрдареНрдпрд╛ рд╕рдВрдШрд╛рдВрдордзреНрдпреЗ рддреА рд╕рд╣рдЬрдкрдгреЗ рд╡рд┐рдХрд╕рд┐рдд рдХреЗрд▓реА рдЬрд╛рдК рд╢рдХреЗрд▓. рд╕рд░реНрд╡ рдкреНрд░рдердо, рддреЛ рд╡рд╛рдЪрдиреАрдп рдХреЛрдб рдЕрд╕рд╛рд╡рд╛ рдЖрдгрд┐ рдЬрдЯрд┐рд▓ рд╡рд╛рд╕реНрддреБрд╢рд╛рд╕реНрддреНрд░реАрдп рдЙрдкрд╛рдпрд╛рдВрдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдХрд░рдгреЗ рд╕реЛрдкреЗ рдЕрд╕рд╛рд╡реЗ. рдореНрд╣рдгрдЬреЗрдЪ, рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдЕреЕрдмреНрд╕реНрдЯреНрд░реЕрдХреНрд╢рди рдЗрддреНрдпрд╛рджреА рд▓рд┐рд╣рд┐рдгреЗ рд╕реЛрдкреЗ рдЕрд╕рд╛рд╡реЗ. рд╣реЗ рд╕рд░реНрд╡ рдЬрд╛рд╡рд╛ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ. рд╣реА рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдУрд░рд┐рдПрдВрдЯреЗрдб рднрд╛рд╖рд╛ рдЖрд╣реЗ. рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдЕреЕрдмреНрд╕реНрдЯреНрд░реЕрдХреНрд╢рдиреНрд╕ рдЖрдгрд┐ рдЬрдЯрд┐рд▓ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░реНрд╕рдЪреА рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдХрд░рдгреЗ рдЦрд░реЛрдЦрд░ рд╕реЛрдкреЗ рдЖрд╣реЗ.

рдЬрд╛рд╡рд╛рд╕рд╛рдареА рдмрд░реАрдЪ рдлреНрд░реЗрдорд╡рд░реНрдХ рдЖрдгрд┐ рд▓рд╛рдпрдмреНрд░рд░реА рджреЗрдЦреАрд▓ рдЖрд╣реЗрдд, рдХрд╛рд░рдг рднрд╛рд╖рд╛ 15 рд╡рд░реНрд╖рд╛рдВрдкреЗрдХреНрд╖рд╛ рдЬреБрдиреА рдЖрд╣реЗ. рдпрд╛ рдХрд╛рд│рд╛рдд, рдЬреЗ рдХрд╛рд╣реА рд▓рд┐рд╣рд┐рд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ рддреЗ рддреНрдпрд╛рд╡рд░ рд▓рд┐рд╣рд┐рд▓реЗ рдЧреЗрд▓реЗ рд╣реЛрддреЗ, рдореНрд╣рдгреВрди рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рдЧреЛрд╖реНрдЯреАрд╕рд╛рдареА рдЕрдиреЗрдХ рд▓рд╛рдпрдмреНрд░рд░реА рдЖрд╣реЗрдд.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдорд╛рдЭреНрдпрд╛ рдорддреЗ, рд╕реБрд░реБрд╡рд╛рддреАрдЪреНрдпрд╛ рдЬреЗрдП рдЦреЗрд│рд╛рдбреВрдХрдбреЗ рдХреЛрдгрддреА рдореВрд▓рднреВрдд рдХреМрд╢рд▓реНрдпреЗ рдЕрд╕рд╛рд╡реАрдд? рд╕рд░реНрд╡ рдкреНрд░рдердо, рд╣реЗ рдЬрд╛рд╡рд╛ рдХреЛрд░ рднрд╛рд╖реЗрдЪреЗ рдЬреНрдЮрд╛рди рдЖрд╣реЗ. рдкреБрдвреЗ рдХрд╛рд╣реА рдкреНрд░рдХрд╛рд░рдЪреЗ рдбрд┐рдкреЗрдВрдбрдиреНрд╕реА рдЗрдВрдЬреЗрдХреНрд╢рди рдлреНрд░реЗрдорд╡рд░реНрдХ рдЖрд╣реЗ. рдкреБрдвреАрд▓ рд╡рдХреНрддрд╛, рдХрд┐рд░реАрд▓, рдпрд╛рдмрджреНрджрд▓ рдЕрдзрд┐рдХ рдкреВрд░реНрдгрдкрдгреЗ рдмреЛрд▓рддреАрд▓. рдореА рдЬрд╛рд╕реНрдд рдЦреЛрд▓рд╛рдд рдЬрд╛рдгрд╛рд░ рдирд╛рд╣реА. рдкреБрдвреЗ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдЖрдгрд┐ рдбрд┐рдЭрд╛рдЗрди рдирдореБрдиреЗ рдЖрд╣реЗрдд. рдореЛрдареНрдпрд╛ рдНрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕ рд▓рд┐рд╣рд┐рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдореНрд╣рд╛рд▓рд╛ рд╡рд╛рд╕реНрддреБрд╢рд╛рд╕реНрддреНрд░реАрдпрджреГрд╖реНрдЯреНрдпрд╛ рд╕реБрдВрджрд░ рдХреЛрдб рд▓рд┐рд╣рд┐рдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдЖрдгрд┐ рдбреЗрдЯрд╛рдмреЗрд╕рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рдХрд╛рд░реНрдпрд╛рдВрд╕рд╛рдареА рд╣реЗ рдХрд╛рд╣реА рдкреНрд░рдХрд╛рд░рдЪреЗ SQL рдХрд┐рдВрд╡рд╛ ORM рдЖрд╣реЗ. рдЖрдгрд┐ рд╣реЗ рдмреЕрдХрдПрдВрдбрд╡рд░ рдЕрдзрд┐рдХ рд▓рд╛рдЧреВ рд╣реЛрддреЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдЬрд╛! рдЬрд╛рд╡рд╛ рдХреЛрд░. рдореА рдпреЗрдереЗ рдЦрд░реЛрдЦрд░ рдЕрдореЗрд░рд┐рдХрд╛ рд╢реЛрдзрдгрд╛рд░ рдирд╛рд╣реА - рддреБрдореНрд╣рд╛рд▓рд╛ рд╕реНрд╡рддрдГрдЪреА рднрд╛рд╖рд╛ рдорд╛рд╣рд┐рдд рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдЖрдкрдг рдХрд╛рдп рд▓рдХреНрд╖ рджрд┐рд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ. рдкреНрд░рдердо, рдЬрд╛рд╡рд╛рдиреЗ рдЕрд▓рд┐рдХрдбрдЪреНрдпрд╛ рд╡рд░реНрд╖рд╛рдВрдд рдмрд░реНтАНрдпрд╛рдЪ рдЖрд╡реГрддреНрддреНрдпрд╛ рд░рд┐рд▓реАрдЭ рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд, рдореНрд╣рдгрдЬреЗрдЪ 2014-2015 рдордзреНрдпреЗ рд╕рд╛рддрд╡реА рд░рд┐рд▓реАрдЬ рдЭрд╛рд▓реА, рддреНрдпрд╛рдирдВрддрд░ рдЖрдард╡реА, рдирд╡рд╡реА, рджрд╣рд╛рд╡реА, рдмрд░реНтАНрдпрд╛рдЪ рдирд╡реАрди рдЖрд╡реГрддреНрддреНрдпрд╛ рдЖрдгрд┐ рддреНрдпрд╛рдордзреНрдпреЗ рдмрд░реНтАНрдпрд╛рдЪ рдирд╡реАрди рдЫрд╛рди рдЧреЛрд╖реНрдЯреА рд╕рд╛рджрд░ рдХреЗрд▓реНрдпрд╛ рдЧреЗрд▓реНрдпрд╛. , рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, Java Stream API , lambda, рдЗ. рдЦреВрдк рдЫрд╛рди, рддрд╛рдЬреНрдпрд╛, рдЫрд╛рди рдЧреЛрд╖реНрдЯреА рдЬреНрдпрд╛ рдЙрддреНрдкрд╛рджрди рдХреЛрдбрдордзреНрдпреЗ рд╡рд╛рдкрд░рд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд, рддреЗ рдореБрд▓рд╛рдЦрддреАрдВрдордзреНрдпреЗ рдХрд╛рдп рд╡рд┐рдЪрд╛рд░рддрд╛рдд рдЖрдгрд┐ рдЬреНрдпрд╛ рддреБрдореНрд╣рд╛рд▓рд╛ рдорд╛рд╣рд┐рдд рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рддреНрдпрд╛рдореБрд│реЗ рдЬрд╛рд╡рд╛-рек рд▓рд╛рдпрдмреНрд░рд░реАрддреАрд▓ рд╢реЗрд▓реНрдлрдордзреВрди рдкреБрд╕реНрддрдХ рдШреЗрдКрди рддреЗ рд╢рд┐рдХрд╛рдпрд▓рд╛ рдЬрд╛рдК рдирдпреЗ. рд╣реА рдЖрдордЪреА рдпреЛрдЬрдирд╛ рдЖрд╣реЗ: рдЖрдореНрд╣реА Java-4 рдХрд┐рдВрд╡рд╛ рдЙрдЪреНрдЪ рд╢рд┐рдХрддреЛ.

рдЖрдореНрд╣реА Stream API, var, рдЗрддреНрдпрд╛рджреА рд╕рд╛рд░рдЦреНрдпрд╛ рдирд╡рдХрд▓реНрдкрдирд╛рдВрдХрдбреЗ рдмрд╛рд░рдХрд╛рдИрдиреЗ рд▓рдХреНрд╖ рджреЗрддреЛ. рддреЗ рдореБрд▓рд╛рдЦрддреА рджрд░рдореНрдпрд╛рди рд╡рд┐рдЪрд╛рд░рд▓реЗ рдЬрд╛рддрд╛рдд рдЖрдгрд┐ рд╕рддрдд рдЙрддреНрдкрд╛рджрдирд╛рдд рд╡рд╛рдкрд░рд▓реЗ рдЬрд╛рддрд╛рдд. рдореНрд╣рдгрдЬреЗрдЪ, рд╕реНрдЯреНрд░реАрдо API рд▓реВрдкрдкреЗрдХреНрд╖рд╛ рдЦреВрдкрдЪ рдердВрдб рдЖрд╣реЗ, рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рдЦреВрдк рдЫрд╛рди рдЧреЛрд╖реНрдЯ. рдЬрд░реВрд░ рд▓рдХреНрд╖ рджреНрдпрд╛.

рдЖрдгрд┐ рд╕рд░реНрд╡ рдкреНрд░рдХрд╛рд░рдЪреНрдпрд╛ рдЧреЛрд╖реНрдЯреА рдЖрд╣реЗрдд рдЬрд╕реЗ рдХреА рдкреБрдирд░рд╛рд╡реГрддреНрддреА рдХрд░рдгрд╛рд░реЗ, рдЕрдкрд╡рд╛рдж рд╡рдЧреИрд░реЗ. рдЬреЛрдкрд░реНрдпрдВрдд рддреБрдореНрд╣реА рд╕реНрд╡рддрдГ рдХрд╛рд╣реА рд▓рд╣рд╛рди рдХреЛрдб рд▓рд┐рд╣рд┐рддреЛ рддреЛрдкрд░реНрдпрдВрдд рддреБрдореНрд╣рд╛рд▓рд╛ рдорд╣рддреНрддреНрд╡рд╛рдЪреНрдпрд╛ рд╡рд╛рдЯрдд рдирд╕рд▓реЗрд▓реНрдпрд╛ рдЧреЛрд╖реНрдЯреА. рддреБрдореНрд╣рд╛рд▓рд╛ рдпрд╛ рдЕрдкрд╡рд╛рджрд╛рдВрдЪреА рдЧрд░рдЬ рдирд╛рд╣реА, рддрд░реАрд╣реА рддреНрдпрд╛рдВрдЪреА рдХреЛрдгрд╛рд▓рд╛ рдЧрд░рдЬ рдЖрд╣реЗ? рдкрд░рдВрддреБ рддреНрдпрд╛рдВрдирд╛ рдореБрд▓рд╛рдЦрддреАрдВрдордзреНрдпреЗ рдирд┐рд╢реНрдЪрд┐рддрдкрдгреЗ рд╡рд┐рдЪрд╛рд░рд▓реЗ рдЬрд╛рдИрд▓, рддреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рдЙрддреНрдкрд╛рджрдирд╛рдд рдирдХреНрдХреАрдЪ рдЙрдкрдпреЛрдЧреА рдкрдбрддреАрд▓. рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рдЖрдкрдг рдЕрдкрд╡рд╛рдж, рдкреБрдирд░рд╛рд╡реГрддреНрддреА рдЖрдгрд┐ рдЗрддрд░ рдЧреЛрд╖реНрдЯреАрдВрдХрдбреЗ рд▓рдХреНрд╖ рджрд┐рд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛. рддреБрдореНрд╣реА рд░рдЪрдирд╛рдВрд╢рд┐рд╡рд╛рдп рдЬрд╛рдК рд╢рдХрдд рдирд╛рд╣реА, рдкрд░рдВрддреБ рддреБрдореНрд╣рд╛рд▓рд╛ рдлрдХреНрдд рд╕рдВрдЪ, рд╢рдмреНрджрдХреЛрд╖ рдЖрдгрд┐ рдкрддреНрд░рдХреЗ рдЖрд╣реЗрдд рд╣реЗ рдорд╛рд╣рд┐рдд рдирд╕рд▓реНрдпрд╛рд╕ рддреЗ рдЪрд╛рдВрдЧрд▓реЗ рд╣реЛрдИрд▓. рдЖрдгрд┐ рд╕рдВрд░рдЪрдирд╛рдВрдЪреА рднрд┐рдиреНрди рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рджреЗрдЦреАрд▓. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, Java рдордзреАрд▓ рд╕рдорд╛рди рд╢рдмреНрджрдХреЛрд╢рд╛рдд рд╣реЕрд╢рдореЕрдк рдЖрдгрд┐ рдЯреНрд░реАрдореЕрдкрд╕рд╣ рдЕрдиреЗрдХ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЖрд╣реЗрдд. рддреНрдпрд╛рдВрдЪреНрдпрд╛рдХрдбреЗ рднрд┐рдиреНрди рд▓рдХреНрд╖рдгреЗ рдЖрд╣реЗрдд, рддреНрдпрд╛рдВрдЪреА рд░рдЪрдирд╛ рдЖрддреВрди рд╡реЗрдЧрд│реА рдЖрд╣реЗ. рддреЗ рдХрд╕реЗ рд╡реЗрдЧрд│реЗ рдЖрд╣реЗрдд рдЖрдгрд┐ рдХреЛрдгрддреЗ рдХрдзреА рд╡рд╛рдкрд░рд╛рдпрдЪреЗ рд╣реЗ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдорд╛рд╣рд┐рдд рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдпрд╛ рдбреЗрдЯрд╛ рд╕реНрдЯреНрд░рдХреНрдЪрд░реНрд╕ рдЖрдВрддрд░рд┐рдХрд░рд┐рддреНрдпрд╛ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддрд╛рдд рд╣реЗ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдорд╛рд╣рд┐рдд рдЕрд╕рд▓реНрдпрд╛рд╕ рд╣реЗ рджреЗрдЦреАрд▓ рдЦреВрдк рдЫрд╛рди рд╣реЛрдИрд▓. рдореНрд╣рдгрдЬреЗрдЪ, рддреНрдпрд╛рдВрдЪреА рд▓рдХреНрд╖рдгреЗ рдЬрд╛рдгреВрди рдШреЗрдгреЗ рд╕реЛрдкреЗ рдирд╛рд╣реА - рдмреЗрдЯ рдХрд┐рддреА рдХрд╛рдо рдХрд░рддреЗ, рдкрд╛рд╕ рдХрд┐рддреА рдХрд╛рд│ рдХрд╛рд░реНрдп рдХрд░рддреЗ, рдкрд░рдВрддреБ рд░рдЪрдирд╛ рдЖрдд рдХрд╢реА рдХрд╛рд░реНрдп рдХрд░рддреЗ - рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╣реЕрд╢рдореЕрдкрдордзреНрдпреЗ рдмрд╛рджрд▓реА рдХрд╛рдп рдЖрд╣реЗ.

рдЭрд╛рдбреЗ рдЖрдгрд┐ рдЖрд▓реЗрдЦрд╛рдВрдХрдбреЗ рд▓рдХреНрд╖ рджреЗрдгреЗ рджреЗрдЦреАрд▓ рдпреЛрдЧреНрдп рдЖрд╣реЗ. рдпрд╛ рдЕрд╢рд╛ рдЧреЛрд╖реНрдЯреА рдЖрд╣реЗрдд рдЬреНрдпрд╛ рдЙрддреНрдкрд╛рджрди рд╕рдВрд╣рд┐рддреЗрдд рдлрд╛рд░рд╢рд╛ рд╕рд╛рдорд╛рдиреНрдп рдирд╛рд╣реАрдд, рдкрд░рдВрддреБ рдореБрд▓рд╛рдЦрддреАрдВрдордзреНрдпреЗ рддреНрдпрд╛ рдЖрд╡рдбрддрд╛рдд. рддреНрдпрд╛рдиреБрд╕рд╛рд░, рдЖрдкрдг рд░реБрдВрджреА рдЖрдгрд┐ рдЦреЛрд▓реАрдд рдЭрд╛рдбреЗ, рдЖрд▓реЗрдЦ рдкрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рд╣реЗ рд╕рд░реНрд╡ рд╕рд╛рдзреЗ рдЕрд▓реНрдЧреЛрд░рд┐рджрдо рдЖрд╣реЗрдд.

рддреБрдореНрд╣реА рд▓рд╛рдпрдмреНрд░рд░реА рд╡рд╛рдкрд░реВрди рдХреЛрдгрддрд╛рд╣реА рдореЛрдард╛ рдХреЛрдб, рдХреЙрдореНрдкреНрд▓реЗрдХреНрд╕, рдорд▓реНрдЯреА-рдХреНрд▓рд╛рд╕ рдХреЛрдб рд▓рд┐рд╣рд╛рдпрд▓рд╛ рд╕реБрд░реБрд╡рд╛рдд рдХрд░рддрд╛рдЪ, рддреБрдордЪреНрдпрд╛ рд▓рдХреНрд╖рд╛рдд рдпреЗрдИрд▓ рдХреА рд╕рд┐рд╕реНрдЯрдо рддрдпрд╛рд░ рдХреЗрд▓реНрдпрд╛рд╢рд┐рд╡рд╛рдп рдЖрдгрд┐ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рд╕реЛрдбрд╡рд▓реНрдпрд╛рд╢рд┐рд╡рд╛рдп рддреЗ рддреБрдордЪреНрдпрд╛рд╕рд╛рдареА рдХрдареАрдг рдЖрд╣реЗ. рд╣реЗ рдкреНрд░рд╛рдореБрдЦреНрдпрд╛рдиреЗ рдорд╛рд╡реЗрди рдЖрдгрд┐ рдЧреНрд░реЗрдбрд▓ рдЖрд╣реЗрдд. рддреЗ рддреБрдореНрд╣рд╛рд▓рд╛ рддреБрдордЪреНрдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯрдордзреНрдпреЗ рдПрдХрд╛ рдУрд│реАрдд рд▓рд╛рдпрдмреНрд░рд░реА рдЖрдпрд╛рдд рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддрд╛рдд. рдореНрд╣рдгрдЬреЗрдЪ, рддреБрдореНрд╣реА рдПрдХ-рд▓рд╛рдЗрди xml рд▓рд┐рд╣рд╛ рдЖрдгрд┐ рдкреНрд░рдХрд▓реНрдкрд╛рдд рд▓рд╛рдпрдмреНрд░рд░реА рдЖрдпрд╛рдд рдХрд░рд╛. рдЙрддреНрддрдо рдкреНрд░рдгрд╛рд▓реА. рддреЗ рдЕрдВрджрд╛рдЬреЗ рд╕рдорд╛рди рдЖрд╣реЗрдд, рдПрдХрддрд░ рдПрдХ рд╡рд╛рдкрд░рд╛ - рдорд╛рд╡реЗрди рдХрд┐рдВрд╡рд╛ рдЧреНрд░реЗрдбрд▓.

рдкреБрдвреЗ - рдХрд╛рд╣реА рдкреНрд░рдХрд╛рд░рдЪреА рдЖрд╡реГрддреНрддреА рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рдгрд╛рд▓реА. рдореА рдЧрд┐рдЯрдЪреА рд╢рд┐рдлрд╛рд░рд╕ рдХрд░рддреЛ рдХрд╛рд░рдг рддреЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдЖрд╣реЗ рдЖрдгрд┐ рддреЗрдереЗ рдмрд░реЗрдЪ рдЯреНрдпреВрдЯреЛрд░рд┐рдпрд▓ рдЖрд╣реЗрдд. рдЬрд╡рд│рдЬрд╡рд│ рдкреНрд░рддреНрдпреЗрдХрдЬрдг Git рд╡рд╛рдкрд░рддреЛ, рд╣реА рдПрдХ рдЫрд╛рди рдЧреЛрд╖реНрдЯ рдЖрд╣реЗ, рдЖрдкрдг рддреНрдпрд╛рд╢рд┐рд╡рд╛рдп рдЬрдЧреВ рд╢рдХрдд рдирд╛рд╣реА.

рдЖрдгрд┐ рдХрд╛рд╣реА рдкреНрд░рдХрд╛рд░рдЪреЗ рд╡рд┐рдХрд╛рд╕рд╛рдЪреЗ рд╡рд╛рддрд╛рд╡рд░рдг. рдореА IntelliJ Idea рдЪреА рд╢рд┐рдлрд╛рд░рд╕ рдХрд░рддреЛ. рд╣реЗ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рдХреНрд░рд┐рдпреЗрд╕ рдореЛрдареНрдпрд╛ рдкреНрд░рдорд╛рдгрд╛рдд рдЧрддреА рджреЗрддреЗ, рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдЦреВрдк рдорджрдд рдХрд░рддреЗ, рдЖрдкрд▓реНрдпрд╛рд╕рд╛рдареА рд╕рд░реНрд╡ рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ рдХреЛрдб рд▓рд┐рд╣рд┐рддреЗ, рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рддреЗ рдЫрд╛рди рдЖрд╣реЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рд╕реНрд▓рд╛рдЗрдбрд╡рд░реАрд▓ рд▓рд┐рдВрдХреНрд╕: SQLZOO, habrapost

SQL рдмреЕрдХреЗрдВрдбрд░реНрд╕рдмрджреНрджрд▓ рдереЛрдбреЗрд╕реЗ. рдЦрд░рдВрддрд░ рдЗрдереЗ рдПрдХ рдЧрдорддреАрд╢реАрд░ рдкреНрд░рд╕рдВрдЧ рд╣реЛрддрд╛. рдорд╛рдЭреНрдпрд╛ рджреБрд╕рд▒реНрдпрд╛ рдЗрдВрдЯрд░реНрдирд╢рд┐рдк рдореБрд▓рд╛рдЦрддреАрдЪреНрдпрд╛ рджреЛрди рджрд┐рд╡рд╕ рдЖрдзреА, рдПрдХрд╛ рдПрдЪрдЖрд░ рдореБрд▓реАрдиреЗ рдорд▓рд╛ рдХреЙрд▓ рдХреЗрд▓рд╛ рдЖрдгрд┐ рд╕рд╛рдВрдЧрд┐рддрд▓реЗ рдХреА рджреЛрди рджрд┐рд╡рд╕рд╛рдВрдд рддреЗ рдорд▓рд╛ SQL рдЖрдгрд┐ HTTP рдмрджреНрджрд▓ рд╡рд┐рдЪрд╛рд░рддреАрд▓, рдорд▓рд╛ рддреЗ рд╢рд┐рдХрдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдЖрд╣реЗ. рдЖрдгрд┐ рдорд▓рд╛ SQL рдХрд┐рдВрд╡рд╛ HTTP рдмрджреНрджрд▓ рдЬрд╡рд│рдЬрд╡рд│ рдХрд╛рд╣реАрд╣реА рдорд╛рд╣рд┐рдд рдирд╡реНрд╣рддреЗ. рдЖрдгрд┐ рдорд▓рд╛ рд╣реА рдЫрд╛рди рд╕рд╛рдЗрдЯ рд╕рд╛рдкрдбрд▓реА - SQLZOO. рддреНрдпрд╛рд╡рд░ рдореА резреи рддрд╛рд╕рд╛рдВрдд SQL рд╢рд┐рдХрд▓реЛ, рдореНрд╣рдгрдЬреЗ, SQL рд╕рд┐рдВрдЯреЕрдХреНрд╕, SELECT queries рдХрд╕реЗ рд▓рд┐рд╣рд╛рдпрдЪреЗ, JOIN рдЗ. рдЦреВрдк рдЫрд╛рди рд╕рд╛рдЗрдЯ, рдореА рддреНрдпрд╛рдЪреА рд╢рд┐рдлрд╛рд░рд╕ рдХрд░рддреЛ. рдЦрд░рдВ рддрд░, рдорд▓рд╛ рдЬреЗ рдорд╛рд╣реАрдд рдЖрд╣реЗ рддреНрдпрд╛рдкреИрдХреА 12% рдореА 12 рддрд╛рд╕рд╛рдВрдд рд╢рд┐рдХрд▓реЛ.

рдЖрдгрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдЬрд╛рдгреВрди рдШреЗрдгреЗ рджреЗрдЦреАрд▓ рдЫрд╛рди рдЖрд╣реЗ. рдпрд╛ рд╕рд░реНрд╡ рдкреНрд░рдХрд╛рд░рдЪреНрдпрд╛ рдХрд│рд╛, рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ, рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг рдЖрд╣реЗрдд. Habr├й рд╡рд░ рдпрд╛рдмрджреНрджрд▓ рдкреЛрд╕реНрдЯрдЪреА рдорд╛рд▓рд┐рдХрд╛ рдЖрд╣реЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

Java рдордзреНрдпреЗ, SQL рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд, JPA рд╕рд╛рд░рдЦреНрдпрд╛ рд╕рд░реНрд╡ рдкреНрд░рдХрд╛рд░рдЪреНрдпрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ-рд░рд┐рд▓реЗрд╢рдирд▓ рдореЕрдкрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдЖрд╣реЗрдд. рдХрд╛рд╣реА рдХреЛрдб рдЖрд╣реЗ. рдкрд╣рд┐рд▓реНрдпрд╛ рдкрджреНрдзрддреАрдд рдХрд╛рд╣реА SQL рдХреЛрдб рдЖрд╣реЗ - SELECT id name FROM info.users WHERE id IN userIds. рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдЪреНрдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕рдордзреВрди, рдЯреЗрдмрд▓рд╡рд░реВрди рддреНрдпрд╛рдВрдЪреЗ рдЖрдпрдбреА рдЖрдгрд┐ рдирд╛рд╡реЗ рдорд┐рд│рд╡рд▓реА рдЬрд╛рддрд╛рдд.

рдкреБрдвреЗ, рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдореЕрдкрд░ рдЖрд╣реЗ рдЬреЛ рдСрдмреНрдЬреЗрдХреНрдЯрд▓рд╛ рдмреЗрд╕рдкрд╛рд╕реВрди Java рдСрдмреНрдЬреЗрдХреНрдЯрдордзреНрдпреЗ рдмрджрд▓рддреЛ. рдЖрдгрд┐ рдЦрд╛рд▓реА рддрд┐рд╕рд░реА рдкрджреНрдзрдд рдЖрд╣реЗ рдЬреА рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рд╣рд╛ рдХреЛрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рддреЗ. рд╣реЗ рд╕рд░реНрд╡ рдЬреЗрдкреАрдП рд╡рд╛рдкрд░реВрди рдПрдХрд╛ рдУрд│реАрдиреЗ рдмрджрд▓рд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ, рдЬреЗ рдЦрд╛рд▓реА рд▓рд┐рд╣рд┐рд▓реЗ рдЖрд╣реЗ. рд╣реЗ рд╕рдорд╛рди рдХрд╛рд░реНрдп рдХрд░рддреЗ - рд╕рд░реНрд╡ ByIdIn рд╢реЛрдзрд╛. рдореНрд╣рдгрдЬреЗрдЪ, рдкрджреНрдзрддреАрдЪреНрдпрд╛ рдирд╛рд╡рд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд, рддреЗ рддреБрдордЪреНрдпрд╛рд╕рд╛рдареА SQL рдХреНрд╡реЗрд░реА рд╡реНрдпреБрддреНрдкрдиреНрди рдХрд░рддреЗ.

рдЦреВрдк рдорд╕реНрдд рдЧреЛрд╖реНрдЯ. рдореА рд╕реНрд╡рдд:, рдЬреЗрд╡реНрд╣рд╛ рдорд▓рд╛ SQL рдорд╛рд╣рд┐рдд рдирд╡реНрд╣рддреЗ, рддреЗрд╡реНрд╣рд╛ JPA рд╡рд╛рдкрд░рд▓реЗ. рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рд▓рдХреНрд╖ рджреНрдпрд╛. рддреБрдореНрд╣реА SQL рд╢рд┐рдХрдгреНрдпрд╛рдд рдЦреВрдк рдЖрд│рд╢реА рдЕрд╕рд▓реНрдпрд╛рд╕, рд╣реА рдЖрдкрддреНрддреА рдЖрд╣реЗ. рдЖрдгрд┐, рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рдЖрдЧ!

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рд╡рд╕рдВрдд рдЛрддреВ. рд╕реНрдкреНрд░рд┐рдВрдЧ рдлреНрд░реЗрдорд╡рд░реНрдХ рд╕рд╛рд░рдЦреНрдпрд╛ рдЧреЛрд╖реНрдЯреАрдмрджреНрджрд▓ рдХреЛрдгреА рдРрдХрд▓реЗ рдЖрд╣реЗ? рддреБрдордЪреНрдпрд╛рдкреИрдХреА рдХрд┐рддреА рдЬрдг рдЖрд╣реЗрдд рддреЗ рддреБрдореНрд╣реА рдкрд╛рд╣рддрд╛ рдХрд╛? рд╡рд┐рдирд╛рдХрд╛рд░рдг рдирд╛рд╣реА. рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрдХрдВрджрд╛рдЪреНрдпрд╛ Java рдмреЕрдХрдПрдВрдб рд░рд┐рдХреНрддрддреЗрдЪреНрдпрд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛рдВрдордзреНрдпреЗ рд╡рд╕рдВрдд рдЛрддреБ рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдЖрд╣реЗ. рддреНрдпрд╛рд╢рд┐рд╡рд╛рдп, рдореЛрдареНрдпрд╛ рд╡рд┐рдХрд╛рд╕рд╛рдордзреНрдпреЗ рдЦрд░реЛрдЦрд░ рдХреЛрдареЗрд╣реА рдирд╛рд╣реА. рд╡рд╕рдВрдд рдЛрддреБ рдореНрд╣рдгрдЬреЗ рдХрд╛рдп? рд╕рд░реНрд╡ рдкреНрд░рдердо, рд╣реЗ рдПрдХ рдЕрд╡рд▓рдВрдмрди рдЗрдВрдЬреЗрдХреНрд╢рди рдлреНрд░реЗрдорд╡рд░реНрдХ рдЖрд╣реЗ. рдпрд╛рдмрджреНрджрд▓рд╣реА рд╕рд╛рдВрдЧреЗрди рдкреБрдвреАрд▓ рд╕реНрдкреАрдХрд░. рдкрд░рдВрддреБ рдереЛрдбрдХреНрдпрд╛рдд, рд╣реА рдЕрд╢реА рдЧреЛрд╖реНрдЯ рдЖрд╣реЗ рдЬреА рддреБрдореНрд╣рд╛рд▓рд╛ рдХрд╛рд╣реА рд╡рд░реНрдЧрд╛рдВрдЪреЗ рдЕрд╡рд▓рдВрдмрд┐рддреНрд╡ рдЗрддрд░рд╛рдВрд╡рд░ рдЖрдпрд╛рдд рдХрд░рдгреЗ рд╕реЛрдкреЗ рдХрд░рддреЗ. рдореНрд╣рдгрдЬреЗрдЪ, рдЕрд╡рд▓рдВрдмрдирд╛рдВрдЪреЗ рдЬреНрдЮрд╛рди рд╕рд░рд▓реАрдХреГрдд рдЖрд╣реЗ.

рд╕реНрдкреНрд░рд┐рдВрдЧ рдмреВрдЯ рд╣рд╛ рд╕реНрдкреНрд░рд┐рдВрдЧрдЪрд╛ рдПрдХ рддреБрдХрдбрд╛ рдЖрд╣реЗ рдЬреЛ рддреБрдореНрд╣рд╛рд▓рд╛ рддреБрдордЪрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рди рдПрдХрд╛ рдмрдЯрдгрд╛рдиреЗ рдЪрд╛рд▓рд╡рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЛ. рддреБрдореНрд╣реА THID рд╡рд░ рдЬрд╛, рджреЛрди рдмрдЯрдгреЗ рджрд╛рдмрд╛ рдЖрдгрд┐ рдЖрддрд╛ рддреБрдордЪрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдНрдкреНрд▓рд┐рдХреЗрд╢рди рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯ 8080 рд╡рд░ рдЪрд╛рд▓реВ рдЖрд╣реЗ. рдореНрд╣рдгрдЬреЗрдЪ, рддреБрдореНрд╣реА рдЕрджреНрдпрд╛рдк рдХреЛрдбрдЪреА рдПрдХ рдУрд│ рд▓рд┐рд╣рд┐рд▓реА рдирд╛рд╣реА, рдкрд░рдВрддреБ рддреА рдЖрдзреАрдЪ рдХрд╛рд░реНрдпрд░рдд рдЖрд╣реЗ. рдЦреВрдк рдорд╕реНрдд рдЧреЛрд╖реНрдЯ. рд╕реНрд╡рддрдГрдЪрдВ рдХрд╛рд╣реА рд▓рд┐рд╣рд┐рд▓рдВ рддрд░ рдЖрдЧ!

рд╕реНрдкреНрд░рд┐рдВрдЧ рд╣реА рдЦреВрдк рдореЛрдареА рдлреНрд░реЗрдорд╡рд░реНрдХ рдЖрд╣реЗ. рд╣реЗ рдХреЗрд╡рд│ рддреБрдордЪрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рди рдШреЗрдд рдирд╛рд╣реА рдЖрдгрд┐ рдбрд┐рдкреЗрдВрдбрдиреНрд╕реА рдЗрдВрдЬреЗрдХреНрд╢рдирдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рддреЗ. рд╣реЗ рддреБрдореНрд╣рд╛рд▓рд╛ REST API рдкрджреНрдзрддреА рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╣ рдЕрдиреЗрдХ рдЧреЛрд╖реНрдЯреА рдХрд░рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ. рдореНрд╣рдгрдЬреЗрдЪ, рддреБрдореНрд╣реА рдХрд╛рд╣реА рдкрджреНрдзрдд рд▓рд┐рд╣рд┐рд▓реА рдЖрдгрд┐ рддреНрдпрд╛рд╡рд░ Get рдореЕрдкрд┐рдВрдЧ рднрд╛рд╖реНрдп рд╕рдВрд▓рдЧреНрди рдХреЗрд▓реЗ. рдЖрдгрд┐ рдЖрддрд╛ рддреБрдордЪреНрдпрд╛рдХрдбреЗ рд▓реЛрдХрд▓рд╣реЛрд╕реНрдЯрд╡рд░ рдЖрдзреАрдЪ рдХрд╛рд╣реА рдкрджреНрдзрдд рдЖрд╣реЗ рдЬреА рддреБрдореНрд╣рд╛рд▓рд╛ рд╣реЕрд▓реЛ рд╡рд░реНрд▓реНрдб рд▓рд┐рд╣рд┐рддреЗ. рдХреЛрдбрдЪреНрдпрд╛ рджреЛрди рдУрд│реА рдЖрдгрд┐ рддреЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ. рдорд╕реНрдд рд╕рд╛рдорд╛рди.

рд╕реНрдкреНрд░рд┐рдВрдЧ рд▓реЗрдЦрди рдЪрд╛рдЪрдгреА рджреЗрдЦреАрд▓ рд╕реБрд▓рдн рдХрд░рддреЗ. рдореЛрдареНрдпрд╛ рд╡рд┐рдХрд╛рд╕рд╛рдд рдЪрд╛рдЪрдгреАрд╢рд┐рд╡рд╛рдп рдорд╛рд░реНрдЧ рдирд╛рд╣реА. рдХреЛрдбрдЪреА рдЪрд╛рдЪрдгреА рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдпрд╛ рдЙрджреНрджреЗрд╢рд╛рд╕рд╛рдареА, Java рдордзреНрдпреЗ рдПрдХ рдЫрд╛рди рд▓рд╛рдпрдмреНрд░рд░реА рдЖрд╣реЗ JUnit 5. рдЖрдгрд┐ JUnit рд╕рд░реНрд╡рд╕рд╛рдзрд╛рд░рдгрдкрдгреЗ, рдкрд░рдВрддреБ рдирд╡реАрдирддрдо рдЖрд╡реГрддреНрддреА рдкрд╛рдЪрд╡реА рдЖрд╣реЗ. рдЪрд╛рдЪрдгреАрд╕рд╛рдареА рд╕рд░реНрд╡ рдХрд╛рд╣реА рдЖрд╣реЗ, рд╕рд░реНрд╡ рдкреНрд░рдХрд╛рд░рдЪреЗ рд╡рд┐рдзрд╛рди рдЖрдгрд┐ рдЗрддрд░ рдЧреЛрд╖реНрдЯреА.

рдЖрдгрд┐ рдПрдХ рдЕрдкреНрд░рддрд┐рдо рдореЛрдХреАрдЯреЛ рдлреНрд░реЗрдорд╡рд░реНрдХ рдЖрд╣реЗ. рдХрд▓реНрдкрдирд╛ рдХрд░рд╛ рдХреА рддреБрдордЪреНрдпрд╛рдХрдбреЗ рдХрд╛рд╣реА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЖрд╣реЗ рдЬреНрдпрд╛рдЪреА рддреБрдореНрд╣рд╛рд▓рд╛ рдЪрд╛рдЪрдгреА рдХрд░рд╛рдпрдЪреА рдЖрд╣реЗ. рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдмрд░реНтАНрдпрд╛рдЪ рдЧреЛрд╖реНрдЯреА рдХрд░рддреЗ, рдпрд╛рд╕рд╣, рдордзреНрдпрднрд╛рдЧреА рдХреБрдареЗрддрд░реА, рддреЗ рдЖрдкрд▓реНрдпрд╛ рдЖрдпрдбреАрд╕рд╣ VKontakte рдордзреНрдпреЗ рд▓реЙрдЧ рдЗрди рдХрд░рддреЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЖрдгрд┐ ID рд╡рд░реВрди VKontakte рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреЗ рдирд╛рд╡ рдЖрдгрд┐ рдЖрдбрдирд╛рд╡ рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ. рдЖрдкрдг рдХрджрд╛рдЪрд┐рдд рдЪрд╛рдЪрдгреНрдпрд╛рдВрдордзреНрдпреЗ VKontakte рд╕рдорд╛рд╡рд┐рд╖реНрдЯ рдХрд░рдгрд╛рд░ рдирд╛рд╣реА, рд╣реЗ рд╡рд┐рдЪрд┐рддреНрд░ рдЖрд╣реЗ. рдкрд░рдВрддреБ рддреБрдореНрд╣рд╛рд▓рд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрдЪреА рдЪрд╛рдЪрдгреА рдШреЗрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдореНрд╣рдгреВрди рддреБрдореНрд╣реА рд╣рд╛ рд╡рд░реНрдЧ рдмрдирд╡рд▓рд╛ рдЖрд╣реЗ, Mockito рд╡рд╛рдкрд░реВрди, mok it, рддреНрдпрд╛рдЪреЗ рдЕрдиреБрдХрд░рдг рдХрд░рд╛.

рддреБрдореНрд╣реА рдореНрд╣рдгрд╛рд▓ рдХреА рдЬреЗрд╡реНрд╣рд╛ рдпрд╛ рд╡рд░реНрдЧрд╛рдд рдЕрд╢рд╛ рдЖрдгрд┐ рдЕрд╢рд╛ рдЖрдпрдбреАрд╕рд╣ рд╡рд┐рдирдВрддреА рдпреЗрддреЗ, рддреЗрд╡реНрд╣рд╛ рддреЗ рдХрд╛рд╣реА рдЖрдбрдирд╛рд╡ рджреЗрддреЗ, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рд╡рд╛рд╕реНрдпрд╛ рдкрдкрдХрд┐рди. рдЖрдгрд┐ рддреЗ рдХрд╛рд░реНрдп рдХрд░реЗрд▓. рдореНрд╣рдгрдЬреЗрдЪ, рддреБрдореНрд╣реА mok рдПрдХ рд╡рд░реНрдЧрд╛рд╕рд╛рдареА рд╕рд░реНрд╡ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрдЪреА рдЪрд╛рдЪрдгреА рдХрд░рд╛рд▓. рдЦреВрдк рдорд╕реНрдд рдЧреЛрд╖реНрдЯ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рд╕реНрд▓рд╛рдЗрдбрд╡рд░реВрди рд▓рд┐рдВрдХ

рдбрд┐рдЭрд╛рдЗрди рдирдореБрдиреЗ. рд╣реЗ рдХрд╛рдп рдЖрд╣реЗ? рд╡рд┐рдХрд╛рд╕рд╛рдордзреНрдпреЗ рдЙрджреНрднрд╡рдгрд╛рд▒реНрдпрд╛ рдард░рд╛рд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛рдВрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╣реЗ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдЖрд╣реЗрдд. рд╡рд┐рдХрд╛рд╕рд╛рдордзреНрдпреЗ, рд╕рдорд╛рди рдХрд┐рдВрд╡рд╛ рддрддреНрд╕рдо рд╕рдорд╕реНрдпрд╛ рдЕрдиреЗрдХрджрд╛ рдЙрджреНрднрд╡рддрд╛рдд рдХреА рддреЗ рдХрд╕реЗ рддрд░реА рдЪрд╛рдВрдЧрд▓реЗ рд╕реЛрдбрд╡рдгреЗ рдЪрд╛рдВрдЧрд▓реЗ рд╣реЛрдИрд▓. рдореНрд╣рдгреВрди, рд▓реЛрдХрд╛рдВрдиреА рдпрд╛ рд╕рдорд╕реНрдпрд╛рдВрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд╕реЗ рдХрд░рд╛рд╡реЗ рдпрд╛рд╕рд╛рдареА рд╕рд░реНрд╡реЛрддреНрддрдо рдкрджреНрдзрддреА, рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдЖрдгрд▓реА.

рд╕рд░реНрд╡рд╛рдд рд▓реЛрдХрдкреНрд░рд┐рдп рдирдореБрдиреЗ рдЕрд╕рд▓реЗрд▓реА рдПрдХ рд╡реЗрдмрд╕рд╛рдЗрдЯ рдЖрд╣реЗ - refactoring.guru, рддреБрдореНрд╣реА рддреА рд╡рд╛рдЪреВ рд╢рдХрддрд╛, рддреЗрдереЗ рдХреЛрдгрддреЗ рдирдореБрдиреЗ рдЖрд╣реЗрдд рддреЗ рд╢реЛрдзреВ рд╢рдХрддрд╛, рд╕рд┐рджреНрдзрд╛рдВрддрд╛рдЪрд╛ рдПрдХ рд╕рдореВрд╣ рд╡рд╛рдЪрд╛. рд╕рдорд╕реНрдпрд╛ рдЕрд╢реА рдЖрд╣реЗ рдХреА рддреЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХрджреГрд╖реНрдЯреНрдпрд╛ рдирд┐рд░реБрдкрдпреЛрдЧреА рдЖрд╣реЗ. рдЦрд░рдВ рддрд░, рд╕рд░рд╛рд╡ рди рдХрд░рддрд╛ рдирдореБрдиреЗ рд╡рд┐рд╢реЗрд╖рддрдГ рдЙрдкрдпреБрдХреНрдд рдирд╛рд╣реАрдд.

рддреБрдореНрд╣реА рд╕рд┐рдВрдЧрд▓рдЯреЛрди рдХрд┐рдВрд╡рд╛ рдмрд┐рд▓реНрдбрд░ рд╕рд╛рд░рдЦреНрдпрд╛ рдХрд╛рд╣реА рдирдореБрдиреНрдпрд╛рдВрдмрджреНрджрд▓ рдРрдХрд╛рд▓. рд╣реЗ рд╢рдмреНрдж рдХреЛрдгреА рдРрдХрд▓реЗ? рдЦреВрдк рд▓реЛрдХ. рдЕрд╕реЗ рд╕реЛрдкреЗ рдирдореБрдиреЗ рдЖрд╣реЗрдд рдЬреЗ рдЖрдкрдг рд╕реНрд╡рдд: рд▓рд╛ рдЕрдВрдорд▓рд╛рдд рдЖрдгреВ рд╢рдХрддрд╛. рдкрд░рдВрддреБ рдмрд╣реБрддреЗрдХ рдирдореБрдиреЗ: рдзреЛрд░рдг, рдХрд╛рд░рдЦрд╛рдирд╛, рджрд░реНрд╢рдиреА рднрд╛рдЧ - рддреЗ рдХреБрдареЗ рд▓рд╛рдЧреВ рдХрд░рд╛рдпрдЪреЗ рд╣реЗ рд╕реНрдкрд╖реНрдЯ рдирд╛рд╣реА.

рдЖрдгрд┐ рдЬреЛрдкрд░реНрдпрдВрдд рд╣рд╛ рдкреЕрдЯрд░реНрди рд▓рд╛рдЧреВ рдХреЗрд▓рд╛ рдЖрд╣реЗ рдЕрд╕реЗ рдард┐рдХрд╛рдг рддреБрдореНрд╣реА рджреБрд╕рд▒реНрдпрд╛ рд╡реНрдпрдХреНрддреАрдЪреНрдпрд╛ рдХреЛрдбрдордзреНрдпреЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдкрд╛рд╣рдд рдирд╛рд╣реА рддреЛрдкрд░реНрдпрдВрдд рддреБрдореНрд╣реА рддреЗ рд╕реНрд╡рддрдГ рд▓рд╛рдЧреВ рдХрд░реВ рд╢рдХрдгрд╛рд░ рдирд╛рд╣реА. рдореНрд╣рдгреВрди, рдирдореБрдиреНрдпрд╛рдВрд╕рд╣ рд╕рд░рд╛рд╡ рдЦреВрдк рдорд╣рддреНрд╡рд╛рдЪрд╛ рдЖрд╣реЗ. рдЖрдгрд┐ рдлрдХреНрдд рддреНрдпрд╛рдВрдЪреНрдпрд╛рдмрджреНрджрд▓ refactoring.guru рд╡рд░ рд╡рд╛рдЪрдгреЗ рдлрд╛рд░ рдЙрдкрдпреБрдХреНрдд рдирд╛рд╣реА, рдкрдг рддреЗ рдирдХреНрдХреАрдЪ рдХрд░рдгреНрдпрд╛рд╕рд╛рд░рдЦреЗ рдЖрд╣реЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдирдореБрдиреЗ рдХрд╛ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗрдд? рд╕рдордЬрд╛ рддреБрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╡рд░реНрдЧ рдЖрд╣реЗ. рддреНрдпрд╛рдд рдПрдХ рдЖрдпрдбреА рдЖрдгрд┐ рдирд╛рд╡ рдЖрд╣реЗ. рдкреНрд░рддреНрдпреЗрдХ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рд╕ рдЖрдпрдбреА рдЖрдгрд┐ рдирд╛рд╡ рджреЛрдиреНрд╣реА рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рд╡рд░ рдбрд╛рд╡реАрдХрдбреЗ рд╡рд░реНрдЧ рдЖрд╣реЗ.

рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЖрд░рдВрдн рдХрд░рдгреНрдпрд╛рдЪреЗ рдорд╛рд░реНрдЧ рдХреЛрдгрддреЗ рдЖрд╣реЗрдд? рджреЛрди рдкрд░реНрдпрд╛рдп рдЖрд╣реЗрдд - рдПрдХрддрд░ рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдХрд┐рдВрд╡рд╛ рд╕реЗрдЯрд░. рджреЛрдиреНрд╣реА рдкрджреНрдзрддреАрдВрдЪреЗ рддреЛрдЯреЗ рдХрд╛рдп рдЖрд╣реЗрдд?

рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░. рдирд╡реАрди рд╡рд╛рдкрд░рдХрд░реНрддрд╛ (7, "рдмреЙрдиреНрдб"), рдареАрдХ рдЖрд╣реЗ. рдЖрддрд╛ рдЖрдкрдг рдЕрд╕реЗ рдореНрд╣рдгреВрдпрд╛ рдХреА рдЖрдкрд▓реНрдпрд╛рдХрдбреЗ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рд╡рд░реНрдЧ рдирд╛рд╣реА, рдкрд░рдВрддреБ рд╕рд╛рдд рдЕрдВрдХреАрдп рдлреАрд▓реНрдбрд╕рд╣ рджреБрд╕рд░рд╛ рдХреЛрдгреАрддрд░реА рдЖрд╣реЗ. рддреБрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдЕрд╕реЗрд▓ рдЬреНрдпрд╛рдордзреНрдпреЗ рд╕рд▓рдЧ рд╕рд╛рдд рд╕рдВрдЦреНрдпрд╛ рдЕрд╕рддреАрд▓. рд╣реЗ рдЖрдХрдбреЗ рдХреЛрдгрддреЗ рдЖрд╣реЗрдд рдЖрдгрд┐ рддреНрдпрд╛рдкреИрдХреА рдХреЛрдгрддреА рдорд╛рд▓рдорддреНрддрд╛ рдХреЛрдгрддреА рд╣реЗ рд╕реНрдкрд╖реНрдЯ рдЭрд╛рд▓реЗрд▓реЗ рдирд╛рд╣реА. рдбрд┐рдЭрд╛рдпрдирд░ рдорд╣рд╛рди рдирд╛рд╣реА.

рджреБрд╕рд░рд╛ рдкрд░реНрдпрд╛рдп рд╕реЗрдЯрд░ рдЖрд╣реЗ. рддреБрдореНрд╣реА рд╕реНрдкрд╖реНрдЯрдкрдгреЗ рд▓рд┐рд╣рд╛: setId(7), setName(тАЬBondтАЭ). рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рдордЬрддреЗ рдХреА рдХреЛрдгрддреА рдорд╛рд▓рдорддреНрддрд╛ рдХреЛрдгрддреНрдпрд╛ рдХреНрд╖реЗрддреНрд░рд╛рдд рдЖрд╣реЗ. рдкрдг рд╕реЗрдЯрд░рдордзреНрдпреЗ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдЖрд╣реЗ. рдкреНрд░рдердо, рдЖрдкрдг рдХрд╛рд╣реАрддрд░реА рдирд┐рдпреБрдХреНрдд рдХрд░рдгреЗ рд╡рд┐рд╕рд░реВ рд╢рдХрддрд╛ рдЖрдгрд┐ рджреБрд╕рд░реЗ рдореНрд╣рдгрдЬреЗ, рдЖрдкрд▓реЗ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрджрд▓рдгреНрдпрд╛рдпреЛрдЧреНрдп рдЕрд╕рд▓реНрдпрд╛рдЪреЗ рджрд┐рд╕реВрди рдпреЗрддреЗ. рд╣рд╛ рдереНрд░реЗрдб рд╕реБрд░рдХреНрд╖рд┐рдд рдирд╛рд╣реА рдЖрдгрд┐ рдХреЛрдбрдЪреА рд╡рд╛рдЪрдиреАрдпрддрд╛ рдХрд┐рдВрдЪрд┐рдд рдХрдореА рдХрд░рддреЗ. рдореНрд╣рдгреВрдирдЪ рд▓реЛрдХ рдПрдХ рдорд╕реНрдд рдирдореБрдирд╛ рдШреЗрдКрди рдЖрд▓реЗ - рдмрд┐рд▓реНрдбрд░.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рд╣реЗ рдХрд╢рд╛рдмрджреНрджрд▓ рдЖрд╣реЗ? рд╕реЗрдЯрд░ рдЖрдгрд┐ рдХрдиреНрд╕реНрдЯреНрд░рдХреНрдЯрд░ рдпрд╛ рджреЛрдиреНрд╣реА рдкрджреНрдзрддреАрдВрдЪреЗ рдлрд╛рдпрджреЗ рдПрдХрддреНрд░ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реВрдпрд╛. рдЖрдореНрд╣реА рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╡рддреЛ, рдмрд┐рд▓реНрдбрд░, рдЬреНрдпрд╛рдордзреНрдпреЗ рдЖрдпрдбреА рдЖрдгрд┐ рдирд╛рд╡ рдлреАрд▓реНрдб рджреЗрдЦреАрд▓ рдЕрд╕рддреАрд▓, рдЬреЗ рд╕реНрд╡рддрдГ рд╕реЗрдЯрд░рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рддрдпрд╛рд░ рдХреЗрд▓реЗ рдЬрд╛рддреАрд▓ рдЖрдгрд┐ рдЬреНрдпрд╛рдордзреНрдпреЗ рдмрд┐рд▓реНрдб рдкрджреНрдзрдд рдЕрд╕реЗрд▓ рдЬреА рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рд░реНрд╡ рдкреЕрд░рд╛рдореАрдЯрд░реНрд╕рд╕рд╣ рдирд╡реАрди рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рджреЗрдИрд▓. рдЖрдореНрд╣рд╛рд▓рд╛ рдПрдХ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдСрдмреНрдЬреЗрдХреНрдЯ рдЖрдгрд┐ рд╕реЗрдЯрд░ рдорд┐рд│рддреЛ. рдорд╕реНрдд!

рд╕рдорд╕реНрдпрд╛ рдХрд╛рдп рдЖрд╣реЗрдд? рдпреЗрдереЗ рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдХреНрд▓рд╛рд╕рд┐рдХ рдмрд┐рд▓реНрдбрд░ рдЖрд╣реЗ. рд╕рдорд╕реНрдпрд╛ рдЕрд╢реА рдЖрд╣реЗ рдХреА рдЖрдореНрд╣реА рдЕрдЬреВрдирд╣реА рдХрд╛рд╣реА рдХреНрд╖реЗрддреНрд░рд╛рдд рддрдкрд╛рд╕рдгреЗ рд╡рд┐рд╕рд░реВ рд╢рдХрддреЛ. рдЖрдгрд┐ рдЬрд░ рдЖрдкрдг рдЖрдпрдбреАрд▓рд╛ рднреЗрдЯ рджреНрдпрд╛рдпрд▓рд╛ рд╡рд┐рд╕рд░рд▓реЛ, рддрд░ рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд рдмрд┐рд▓реНрдбрд░рдордзреНрдпреЗ рддреЛ рд╢реВрдиреНрдпрд╛рд╡рд░ рд╕реБрд░реВ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ, рдХрд╛рд░рдг int рдкреНрд░рдХрд╛рд░ рд░рджреНрдж рдХрд░рддрд╛ рдпреЗрдд рдирд╛рд╣реА. рдЖрдгрд┐ рдЬрд░ рдЖрдореНрд╣реА рдирд╛рд╡ "рдмреЙрдиреНрдб" рдХреЗрд▓реЗ рдЖрдгрд┐ рдЖрдпрдбреА рдСрдлрд┐рд╕рд▓рд╛ рднреЗрдЯ рджреЗрдгреНрдпрд╛рд╕ рд╡рд┐рд╕рд░рд▓реЛ, рддрд░ рдЖрдордЪреНрдпрд╛рдХрдбреЗ "0" рдЖрдпрдбреА рдЖрдгрд┐ "рдмреЙрдиреНрдб" рдирд╛рд╡рд╛рдЪрд╛ рдирд╡реАрди рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЕрд╕реЗрд▓. рдорд╕реНрдд рдирд╛рд╣реА.

рдЪрд▓рд╛ рд╣реЗ рд▓рдврдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХрд░реВрдпрд╛. Builder рдордзреНрдпреЗ рдЖрдкрдг int рд▓рд╛ int рдордзреНрдпреЗ рдмрджрд▓реВ рдЬреЗрдгреЗрдХрд░реВрди рддреЗ рд░рджреНрдж рдХрд░рддрд╛ рдпреЗрдИрд▓. рдЖрддрд╛ рд╕рд░реНрд╡ рдХрд╛рд╣реА рдЫрд╛рди рдЖрд╣реЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдЬрд░ рдЖрдореНрд╣реА рд╡рд╛рдкрд░рдХрд░реНрддрд╛ "рдмреЙрдиреНрдб" рдирд╛рд╡рд╛рдЪрд╛ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪрд╛ рдкреНрд░рдпрддреНрди рдХреЗрд▓рд╛, рддреНрдпрд╛рдЪрд╛ рдЖрдпрдбреА рдЯрд╛рдХрдгреНрдпрд╛рд╕ рд╡рд┐рд╕рд░реБрди, рдЖрдореНрд╣рд╛рд▓рд╛ рдПрдХ рд╢реВрдиреНрдп рдкреЙрдЗрдВрдЯрд░ рдЕрдкрд╡рд╛рдж рдорд┐рд│реЗрд▓, рдХрд╛рд░рдг рдЖрдпрдбреА рд░рджреНрдж рдХрд░рдгреНрдпрд╛рдпреЛрдЧреНрдп рдирд╛рд╣реА рдЖрдгрд┐ рдмрд┐рд▓реНрдбрд░рд▓рд╛ рд╢реВрдиреНрдп, рд╡рд┐рд╢реЗрд╖рддрдГ рдкреЙрдЗрдВрдЯрд░ рдЕрдкрд╡рд╛рдж рдЖрд╣реЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдкрдг рддрд░реАрд╣реА рдЖрдкрдг рдирд╛рд╡ рдареЗрд╡рд╛рдпрд▓рд╛ рд╡рд┐рд╕рд░реБ рд╢рдХрддреЛ, рдореНрд╣рдгреВрди рдЖрдкрдг рдСрдмреНрдЬреЗрдХреНрдЯ рд░рд┐рдкреНрд▓реЗ null рд╡рд░ рд╕реЗрдЯ рдХрд░рддреЛ. рдЖрддрд╛, рдЬреЗрд╡реНрд╣рд╛ рдЖрдкрдг Builder рд╡рд░реВрди рдЖрдкрд▓рд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╡рддреЛ, рддреЗрд╡реНрд╣рд╛ рддреЗ рдлреАрд▓реНрдб рд░рджреНрдж рдХрд░рдгреНрдпрд╛рдпреЛрдЧреНрдп рдирд╛рд╣реА рд╣реЗ рддрдкрд╛рд╕рддреЗ. рдЖрдгрд┐ рддреЗ рд╕рд░реНрд╡ рдирд╛рд╣реА.

рд╢реЗрд╡рдЯрдЪреЗ рдЙрджрд╛рд╣рд░рдг рдкрд╛рд╣реВ. рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рдЖрдореНрд╣реА рдЖрдпрдбреА рд░рдирдЯрд╛рдЗрдордордзреНрдпреЗ рдХрд╕рд╛ рддрд░реА рд╢реВрдиреНрдп рдареЗрд╡рд▓реНрдпрд╛рд╕, рдЖрдкрдг рддреЗ рдХреЗрд▓реЗ рдЖрд╣реЗ рд╣реЗ рддреНрд╡рд░рд┐рдд рдЬрд╛рдгреВрди рдШреЗрдгреЗ рдЪрд╛рдВрдЧрд▓реЗ рд╣реЛрдИрд▓ рдЖрдгрд┐ рдЖрдкрдг рдЖрддрд╛ рдЪреВрдХ рдХрд░рдд рдЖрд╣рд╛рдд рд╣реЗ рдЫрд╛рди рдирд╛рд╣реА.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рддреБрдореНрд╣рд╛рд▓рд╛ рдПрд░рд░ рдлреЗрдХрдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдирд┐рд░реНрдорд┐рддреАрдЪреНрдпрд╛ рдХреНрд╖рдгреА рдирд╛рд╣реА, рдкрд░рдВрддреБ рдЬреЗрд╡реНрд╣рд╛ рддреБрдореНрд╣реА рдЖрдпрдбреАрд╡рд░ рд╢реВрдиреНрдп рд╕реЗрдЯ рдХрд░рддрд╛. рдореНрд╣рдгреВрди, рдмрд┐рд▓реНрдбрд░рдордзреНрдпреЗ рдЖрдореНрд╣реА рд╕реЗрдЯрд░ рдкреВрд░реНрдгрд╛рдВрдХ int рдордзреНрдпреЗ рдмрджрд▓реВ, рдЖрдгрд┐ рддреЛ рд▓рдЧреЗрдЪ рд╢рдкрде рдШреЗрдИрд▓ рдХреА рддреНрдпрд╛рдВрдиреА рд╢реВрдиреНрдп рдлреЗрдХрд▓реЗ.

рдереЛрдбрдХреНрдпрд╛рдд, рдореБрджреНрджрд╛ рдХрд╛рдп рдЖрд╣реЗ? рдПрдХ рд╕рд╛рдзрд╛ рдмрд┐рд▓реНрдбрд░ рдкреЕрдЯрд░реНрди рдЖрд╣реЗ, рдкрд░рдВрддреБ рддреНрдпрд╛рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдордзреНрдпреЗ рдХрд╛рд╣реА рдмрд╛рд░рдХрд╛рд╡реЗ рдЖрд╣реЗрдд, рддреНрдпрд╛рдореБрд│реЗ рдкреЕрдЯрд░реНрдирдЪреНрдпрд╛ рд╡рд┐рд╡рд┐рдз рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдХрдбреЗ рдкрд╛рд╣рдгреЗ рдЦреВрдк рдЫрд╛рди рдЖрд╣реЗ. рдкреНрд░рддреНрдпреЗрдХ рдкреЕрдЯрд░реНрдирдордзреНрдпреЗ рдбрдЭрдирднрд░ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА рдЖрд╣реЗрдд. рд╣реЗ рд╕рд░реНрд╡ рдЦреВрдк рдордиреЛрд░рдВрдЬрдХ рдЖрд╣реЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдкреНрд░реЛрдбрдХреНрд╢рди рдХреЛрдбрдордзреНрдпреЗ рдмрд┐рд▓реНрдбрд░ рдХрд╕реЗ рд▓рд┐рд╣рд╛рдпрдЪреЗ? рд╣рд╛ рдЖрдордЪрд╛ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЖрд╣реЗ. рдЖрдореНрд╣реА рддреНрдпрд╛рдд рд▓реЛрдореНрдмреЛрдХ рд▓рд╛рдпрдмреНрд░рд░реАрддреВрди рдПрдХ рдмрд┐рд▓реНрдбрд░ рд░реЛрдЯреЗрд╢рди рдЬреЛрдбрддреЛ рдЖрдгрд┐ рддреЗ рд╕реНрд╡рддрдГ рдЖрдордЪреНрдпрд╛рд╕рд╛рдареА рдПрдХ рдмрд┐рд▓реНрдбрд░ рддрдпрд╛рд░ рдХрд░рддреЗ. рдореНрд╣рдгрдЬреЗрдЪ, рдЖрдореНрд╣реА рдХреЛрдгрддрд╛рд╣реА рдХреЛрдб рд▓рд┐рд╣рд┐рдд рдирд╛рд╣реА, рдкрд░рдВрддреБ Java рд▓рд╛ рдЖрдзреАрдЪ рдЕрд╕реЗ рд╡рд╛рдЯрддреЗ рдХреА рдпрд╛ рд╡рд░реНрдЧрд╛рдд рдПрдХ рдмрд┐рд▓реНрдбрд░ рдЖрд╣реЗ рдЖрдгрд┐ рдЖрдореНрд╣реА рддреНрдпрд╛рд▓рд╛ рдЕрд╕реЗ рдореНрд╣рдгреВ рд╢рдХрддреЛ.

рдореА рдЖрдзреАрдЪ рд╕рд╛рдВрдЧрд┐рддрд▓реЗ рдЖрд╣реЗ рдХреА рдЬрд╛рд╡рд╛рдордзреНрдпреЗ рдЬрд╡рд│рдЬрд╡рд│ рдкреНрд░рддреНрдпреЗрдХ рдЧреЛрд╖реНрдЯреАрд╕рд╛рдареА рд▓рд╛рдпрдмреНрд░рд░реА рдЖрд╣реЗрдд, рд▓реЛрдореНрдмреЛрдХрд╕рд╣, рдПрдХ рдЫрд╛рди рд▓рд╛рдпрдмреНрд░рд░реА рдЬреА рддреБрдореНрд╣рд╛рд▓рд╛ рдмреЙрдпрд▓рд░рдкреНрд▓реЗрдЯ рд▓рд┐рд╣рд┐рдгреЗ рдЯрд╛рд│реВ рджреЗрддреЗ. рдмрд┐рд▓реНрдбрд░, GET.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдирдореБрдиреЗ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рд▓ рдЕрд╕реВ рд╢рдХрддрд╛рдд - рдХреЗрд╡рд│ рдПрдХрд╛ рд╡рд░реНрдЧрд╛рд╢реАрдЪ рдирд╡реНрд╣реЗ рддрд░ рд╕рдВрдкреВрд░реНрдг рдкреНрд░рдгрд╛рд▓реАрд╢реА рд╕рдВрдмрдВрдзрд┐рдд. рд╕рд┐рд╕реНрдЯрдо рдбрд┐рдЭрд╛рдЗрдирдордзреНрдпреЗ рдЕрд╕реЗ рдПрдХ рдорд╕реНрдд рддрддреНрддреНрд╡ рдЖрд╣реЗ: рд╕рд┐рдВрдЧрд▓ рд░рд┐рд╕реНрдкреЙрдиреНрд╕рд┐рдмрд┐рд▓рд┐рдЯреА рддрддреНрддреНрд╡. рддреЛ рдХрд╢рд╛рдмрджреНрджрд▓ рдмреЛрд▓рдд рдЖрд╣реЗ? рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдЧ рддреНрдпрд╛рдЪреНрдпрд╛ рд╕реНрд╡рддрдГрдЪреНрдпрд╛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрд╕рд╛рдареА рдЬрдмрд╛рдмрджрд╛рд░ рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдпрд╛ рдкреНрд░рдХрд░рдгрд╛рдд, рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдПрдХ рдирд┐рдпрдВрддреНрд░рдХ рдЖрд╣реЗ рдЬреЛ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрд╢реА рд╕рдВрд╡рд╛рдж рд╕рд╛рдзрддреЛ, JSON рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕. Facade рдЖрд╣реЗ, рдЬреЗ JSON рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕рдЪреЗ рдореЙрдбреЗрд▓реНрд╕рдордзреНрдпреЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рдЬреНрдпрд╛рд╡рд░ Java рдНрдкреНрд▓рд┐рдХреЗрд╢рди рдирдВрддрд░ рдХрд╛рд░реНрдп рдХрд░реЗрд▓. рдпрд╛ рдореЙрдбреЗрд▓реНрд╕рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рдгрд╛рд░реА рдЬрдЯрд┐рд▓ рддрд░реНрдХрд╢рд╛рд╕реНрддреНрд░ рдЕрд╕рд▓реЗрд▓реА рд╕реЗрд╡рд╛ рдЖрд╣реЗ. рдПрдХ рдбреЗрдЯрд╛ рдНрдХреНрд╕реЗрд╕ рдСрдмреНрдЬреЗрдХреНрдЯ рдЖрд╣реЗ рдЬреЛ рд╣реЗ рдореЙрдбреЗрд▓реНрд╕ рдбреЗрдЯрд╛рдмреЗрд╕рдордзреНрдпреЗ рдареЗрд╡рддреЛ рдЖрдгрд┐ рдбреЗрдЯрд╛рдмреЗрд╕рдордзреВрди рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рддреЛ. рдЖрдгрд┐ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реНрд╡рддрдГ рдЖрд╣реЗ. рджреБрд╕рд▒реНрдпрд╛ рд╢рдмреНрджрд╛рдВрдд, рд╣реЗ рд╕рд░реНрд╡ рдПрдХрд╛ рд╡рд░реНрдЧрд╛рдд рдирд╛рд╣реА, рдкрд░рдВрддреБ рдЖрдореНрд╣реА рдкрд╛рдЪ рд╡реЗрдЧрд╡реЗрдЧрд│реЗ рд╡рд░реНрдЧ рдмрдирд╡рдд рдЖрд╣реЛрдд рдЖрдгрд┐ рддреЛ рджреБрд╕рд░рд╛ рдирдореБрдирд╛ рдЖрд╣реЗ.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдПрдХрджрд╛ рддреБрдореНрд╣реА рдЬрд╛рд╡рд╛ рдХрдореА-рдЕрдзрд┐рдХ рдкреНрд░рдорд╛рдгрд╛рдд рд╢рд┐рдХрд▓рд╛рдд рдХреА, рддреБрдордЪрд╛ рд╕реНрд╡рддрдГрдЪрд╛ рдкреНрд░рдХрд▓реНрдк рд▓рд┐рд╣рд┐рдгреЗ рдЙрддреНрддрдо рдЖрд╣реЗ рдЬреНрдпрд╛рдд рдбреЗрдЯрд╛рдмреЗрд╕ рдЕрд╕реЗрд▓, рдЗрддрд░ API рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рд╛ рдЖрдгрд┐ рддреБрдордЪрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧ REST API рдХреНрд▓рд╛рдпрдВрдЯреНрд╕рд╕рдореЛрд░ рдЙрдШрдб рдХрд░рд╛. рддреБрдордЪреНрдпрд╛ рд░реЗрдЭреНрдпреБрдореЗрдордзреНрдпреЗ рдЬреЛрдбрдгреНрдпрд╛рд╕рд╛рдареА рд╣реА рдПрдХ рдЪрд╛рдВрдЧрд▓реА рдЧреЛрд╖реНрдЯ рдЕрд╕реЗрд▓, рддреБрдордЪреНрдпрд╛ рд╢рд┐рдХреНрд╖рдгрд╛рдЪрд╛ рд╣рд╛ рдПрдХ рдорд╕реНрдд рд╢реЗрд╡рдЯ рдЕрд╕реЗрд▓. рдпрд╛рдЪреНрдпрд╛ рдорджрддреАрдиреЗ рддреБрдореНрд╣реА рдЬрд╛рдКрди рдиреЛрдХрд░реА рдорд┐рд│рд╡реВ рд╢рдХрддрд╛.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рдпреЗрдереЗ рдорд╛рдЭреНрдпрд╛ рд╕рд░реНрд╡реНрд╣рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╛рдЪреЗ рдЙрджрд╛рд╣рд░рдг рдЖрд╣реЗ. рдорд╛рдЭреНрдпрд╛ рджреБрд╕рд▒реНрдпрд╛ рд╡рд░реНрд╖реА, рдореА рдореБрд▓рд╛рдВрд╕реЛрдмрдд рдЯрд░реНрдо рдкреЗрдкрд░ рд▓рд┐рд╣рд┐рд▓рд╛. рдХрд╛рд░реНрдпрдХреНрд░рдо рдЖрдпреЛрдЬрд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреЗ рдореЛрдмрд╛рдИрд▓ рдНрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рд╣рд┐рдд рд╣реЛрддреЗ. рддреЗрдереЗ, рд╡рд╛рдкрд░рдХрд░реНрддреЗ VKontakte рджреНрд╡рд╛рд░реЗ рд▓реЙрдЧ рдЗрди рдХрд░реВ рд╢рдХрддрд╛рдд, рдирдХрд╛рд╢рд╛рд╡рд░ рдмрд┐рдВрджреВ рдареЗрд╡реВ рд╢рдХрддрд╛рдд, рдХрд╛рд░реНрдпрдХреНрд░рдо рддрдпрд╛рд░ рдХрд░реВ рд╢рдХрддрд╛рдд, рддреНрдпрд╛рдВрдЪреНрдпрд╛ рдорд┐рддреНрд░рд╛рдВрдирд╛ рддреНрдпрд╛рдВрдЪреНрдпрд╛рдХрдбреЗ рдЖрдордВрддреНрд░рд┐рдд рдХрд░реВ рд╢рдХрддрд╛рдд, рдЗрд╡реНрд╣реЗрдВрдЯрдЪреНрдпрд╛ рдкреНрд░рддрд┐рдорд╛ рдЬрддрди рдХрд░реВ рд╢рдХрддрд╛рдд рдЗ.

рдореА рдкреНрд░рдХрд▓реНрдкрд╛рдд рдХрд╛рдп рдХреЗрд▓реЗ? SQL рди рд╡рд╛рдкрд░рддрд╛ рд╕реНрдкреНрд░рд┐рдВрдЧ рдмреВрдЯрдордзреНрдпреЗ рд╕рд░реНрд╡реНрд╣рд░ рдНрдкреНрд▓рд┐рдХреЗрд╢рди рд▓рд┐рд╣рд┐рд▓реЗ. рдореА рддреНрдпрд╛рд▓рд╛ рдУрд│рдЦрдд рдирд╡реНрд╣рддреЛ, рдореА JPA рд╡рд╛рдкрд░рд▓рд╛. рддреЗ рдХрд╛рдп рдХрд░реВ рд╢рдХрдд рд╣реЛрддреЗ? OAuth-2 рджреНрд╡рд╛рд░реЗ VK рдордзреНрдпреЗ рд▓реЙрдЧ рдЗрди рдХрд░рд╛. рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдЪреЗ рдЯреЛрдХрди рдШреНрдпрд╛, рддреНрдпрд╛рдЪреНрдпрд╛рд╕рд╣ рд╡реНрд╣реАрдХреЗ рд╡рд░ рдЬрд╛, рддреЛ рдЦрд░рд╛ рд╡рд╛рдкрд░рдХрд░реНрддрд╛ рдЕрд╕рд▓реНрдпрд╛рдЪреЗ рддрдкрд╛рд╕рд╛. VKontakte рджреНрд╡рд╛рд░реЗ рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдмрджреНрджрд▓ рдорд╛рд╣рд┐рддреА рдкреНрд░рд╛рдкреНрдд рдХрд░рд╛. рддреЗ JPA рджреНрд╡рд╛рд░реЗ рджреЗрдЦреАрд▓ рдбреЗрдЯрд╛рдмреЗрд╕рдордзреНрдпреЗ рдорд╛рд╣рд┐рддреА рдЬрддрди рдХрд░рдгреНрдпрд╛рд╕ рд╕рдХреНрд╖рдо рд╣реЛрддреЗ. рд╕рдВрдЧрдгрдХрд╛рдЪреНрдпрд╛ рдореЗрдорд░реАрдордзреНрдпреЗ рдЪрд┐рддреНрд░реЗ рдЖрдгрд┐ рдЗрддрд░ рдлрд╛рдЗрд▓реНрд╕ рдХреБрд╢рд▓рддреЗрдиреЗ рд╕реЗрд╡реНрд╣ рдХрд░рд╛ рдЖрдгрд┐ рдбреЗрдЯрд╛рдмреЗрд╕рдордзреНрдпреЗ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд▓рд┐рдВрдХреНрд╕ рд╕реЗрд╡реНрд╣ рдХрд░рд╛. рддреНрдпрд╛ рд╡реЗрд│реА рдорд▓рд╛ рдорд╛рд╣рд┐рдд рдирд╡реНрд╣рддреЗ рдХреА рдбреЗрдЯрд╛рдмреЗрд╕рдордзреНрдпреЗ CLOB рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдЖрд╣реЗрдд, рдореНрд╣рдгреВрди рдореА рддреЗ рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ рдХреЗрд▓реЗ. рд╡рд╛рдкрд░рдХрд░реНрддреЗ, рдХреНрд▓рд╛рдпрдВрдЯ рдНрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕рд╕рд╛рдареА REST API рд╣реЛрддреЗ. рдЖрдгрд┐ рдореВрд▓рднреВрдд рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрд╕рд╛рдареА рдпреБрдирд┐рдЯ рдЪрд╛рдЪрдгреНрдпрд╛ рд╣реЛрддреНрдпрд╛.

[тАж] рдЬрд╛рд╡рд╛рдЪреНрдпрд╛ рдорд╛рдЭреНрдпрд╛ рдпрд╢рд╕реНрд╡реА рд╢рд┐рдХреНрд╖рдгрд╛рдЪреЗ рдПрдХ рдЫреЛрдЯреЗрд╕реЗ рдЙрджрд╛рд╣рд░рдг. рд╡рд┐рджреНрдпрд╛рдкреАрдард╛рдд рдорд╛рдЭреНрдпрд╛ рдкрд╣рд┐рд▓реНрдпрд╛ рд╡рд░реНрд╖рд╛рдд, рдорд▓рд╛ C# рд╢рд┐рдХрд╡рд▓реЗ рдЧреЗрд▓реЗ рдЖрдгрд┐ OOP рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧрдЪреА рд╕рдордЬ рджрд┐рд▓реА рдЧреЗрд▓реА - рдХреЛрдгрддреЗ рд╡рд░реНрдЧ, рдЗрдВрдЯрд░рдлреЗрд╕, рдЕреЕрдмреНрд╕реНрдЯреНрд░реЕрдХреНрд╢рди рдЖрд╣реЗрдд рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрд╛ рдЖрд╣реЗ. рдорд▓рд╛ рдЦреВрдк рдорджрдд рдЭрд╛рд▓реА. рдпрд╛рд╢рд┐рд╡рд╛рдп, рдЬрд╛рд╡рд╛ рд╢рд┐рдХрдгреЗ рдЦреВрдк рдХрдареАрдг рдЖрд╣реЗ; рд╡рд░реНрдЧ рдХрд╛ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗрдд рд╣реЗ рд╕реНрдкрд╖реНрдЯ рдирд╛рд╣реА.

Java рдХрд╛ рд╢рд┐рдХрд╛рд╡реЗ рдЖрдгрд┐ рддреЗ рдкреНрд░рднрд╛рд╡реАрдкрдгреЗ рдХрд╕реЗ рдХрд░рд╛рд╡реЗ. рдпрд╛рдВрдбреЗрдХреНрд╕ рдЕрд╣рд╡рд╛рд▓

рд╡рд┐рджреНрдпрд╛рдкреАрдард╛рдд рдорд╛рдЭреНрдпрд╛ рджреБрд╕рд▒реНрдпрд╛ рд╡рд░реНрд╖рд╛рдд, рддреНрдпрд╛рдВрдиреА рдкреБрдиреНрд╣рд╛ рдЬрд╛рд╡рд╛ рдХреЛрд░ рд╢рд┐рдХрд╡рд▓рд╛, рдкрдг рдореА рддрд┐рдереЗрдЪ рдерд╛рдВрдмрд▓реЛ рдирд╛рд╣реА, рдореА рд╕реНрд╡рддрдГ рд╕реНрдкреНрд░рд┐рдВрдЧрдЪрд╛ рдЕрднреНрдпрд╛рд╕ рдХрд░рд╛рдпрд▓рд╛ рдЧреЗрд▓реЛ рдЖрдгрд┐ рдПрдХ рдХреЛрд░реНрд╕ рдкреЗрдкрд░ рд▓рд┐рд╣рд┐рд▓рд╛, рдорд╛рдЭрд╛ рдкреНрд░рдХрд▓реНрдк, рдЬреНрдпрд╛рдЪрд╛ рдореА рд╡рд░ рдЙрд▓реНрд▓реЗрдЦ рдХреЗрд▓рд╛ рдЖрд╣реЗ. рдЖрдгрд┐ рдпрд╛ рд╕рд░реНрд╡ рдЧреЛрд╖реНрдЯреАрдВрд╕рд╣, рдореА Yandex рдпреЗрдереЗ рдЗрдВрдЯрд░реНрдирд╢рд┐рдкрд╕рд╛рдареА рдЧреЗрд▓реЛ, рдПрдХ рдореБрд▓рд╛рдЦрдд рдкрд╛рд╕ рдХреЗрд▓реА рдЖрдгрд┐ Yandex.Market рдордзреНрдпреЗ рдкреНрд░рд╡реЗрд╢ рдХреЗрд▓рд╛. рддреЗрдереЗ рдореА рдмреЗрд░реВрд╕рд╛рдареА рдмреЕрдХрдПрдВрдб рд▓рд┐рд╣рд┐рд▓реЗ, рд╣реЗ рдЖрдордЪреЗ рдорд╛рд░реНрдХреЗрдЯрдкреНрд▓реЗрд╕ рдЖрд╣реЗ рдЖрдгрд┐ Yandex.Market рд╕рд╛рдареАрдЪ.

рддреНрдпрд╛рдирдВрддрд░, рд╕рд╣рд╛ рдорд╣рд┐рдиреНрдпрд╛рдВрдкреВрд░реНрд╡реА, рдореА рддреНрдпрд╛рдЪ рдорд╛рд░реНрдХреЗрдЯрдордзреАрд▓ рджреБрд╕рд▒реНрдпрд╛ рдЯреАрдордордзреНрдпреЗ рдмрджрд▓реА рдХреЗрд▓реА. рдЖрдореНрд╣реА рд╡реНрдпрд╡рд╕рд╛рдп рднрд╛рдЧреАрджрд╛рд░рд╛рдВрд╕рд╛рдареА рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рддреЛ. рдЖрдореНрд╣реА рд╡рд┐рд╢реНрд▓реЗрд╖рдгрд╛рддреНрдордХ рд╡реНрдпрд╛рд╕рдкреАрдард╛рд╡рд░ рдЖрд╣реЛрдд, рдмреЕрдХрдПрдВрдбрд╡рд░ рдЖрдореНрд╣реА рддрд┐рдШреЗ рдЖрд╣реЛрдд, рддреНрдпрд╛рдореБрд│реЗ рдкреНрд░рдХрд▓реНрдкрд╛рд╡рд░ рдорд╛рдЭрд╛ рдЦреВрдк рдореЛрдард╛ рдкреНрд░рднрд╛рд╡ рдЖрд╣реЗ. рд╣реЗ рдЦреВрдк рдордиреЛрд░рдВрдЬрдХ рдЖрд╣реЗ, рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд. рдореНрд╣рдгрдЬреЗрдЪ, рдЖрдореНрд╣реА рдкреНрд░рддреНрдпрдХреНрд╖рд╛рдд рдмрд╛рдЬрд╛рд░рд╛рдд рдбреЗрдЯрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЛ - рд╡рд┐рдХреНрд░реА рдХрд╛рдп рдЖрд╣реЗ, рдХреЛрдгрддреНрдпрд╛ рд╢реНрд░реЗрдгреАрдВрдордзреНрдпреЗ, рдХреЛрдгрддреНрдпрд╛ рдореЙрдбреЗрд▓рдордзреНрдпреЗ, рд╡реНрдпрд╡рд╕рд╛рдп рднрд╛рдЧреАрджрд╛рд░рд╛рдВрд╕рд╛рдареА, рдореЛрдареНрдпрд╛ рд╕реБрдкреНрд░рд╕рд┐рджреНрдз рдХрдВрдкрдиреНрдпрд╛. рдЖрдгрд┐ рдЖрдордЪреНрдпрд╛рдкреИрдХреА рдлрдХреНрдд рддреАрди рдЖрд╣реЗрдд, рдЖрдореНрд╣реА рд╣рд╛ рдХреЛрдб рд▓рд┐рд╣рд┐рддреЛ, рдЖрдгрд┐ рддреЗ рдЦреВрдк рдЫрд╛рди рдЖрд╣реЗ.

рдзрдиреНрдпрд╡рд╛рдж! рдЙрдкрдпреБрдХреНрдд рджреБрд╡реЗ:
- "рдЬрд╛рд╡рд╛ 8. рдирд╡рд╢рд┐рдХреНрдпрд╛ рдорд╛рд░реНрдЧрджрд░реНрд╢рдХ".
- рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛.
- SQLZOO.
- рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рд╛рдорд╛рдиреНрдпреАрдХрд░рдг.
- рдбрд┐рдЭрд╛рдЗрди рдирдореБрдиреЗ.
- рдбрд┐рдЭрд╛рдЗрди рдирдореБрдиреЗ.
- рд╕реНрд╡рдЪреНрдЫ рдХреЛрдб.
- рдкреНрд░рднрд╛рд╡реА рдЬрд╛рд╡рд╛.

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛