рдкреБрдирд░реНрд╡рд┐рдХрд╛рд╕ рдХреЗ рдЦрд┐рд▓рд╛рдл рд▓рдбрд╝рд╛рдИ рдмрд╛рджрд▓реЛрдВ рддрдХ рдкрд╣реБрдБрдЪрддреА рд╣реИ

рдЗрд╕ рд▓реЗрдЦ рдХреЗ рд▓реЗрдЦрдХ рд╣рдорд╛рд░реЗ рдорд┐рддреНрд░ рдФрд░ рдЬреЗрд▓рд╕реНрдЯрд┐рдХ рдордВрдЪ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реИрдВ - рдПрдВрдЯреЛрди рдЕрд░реНрдХрд┐рдкреЛрд╡ ред рдПрдВрдЯреЛрди рд╡рд░реНрддрдорд╛рди рдореЗрдВ ZeroTurnaround рдкрд░ JRebel рдЙрддреНрдкрд╛рдж рдкреНрд░рдмрдВрдзрдХ рдХрд╛ рд╕реНрдерд╛рди рд░рдЦрддрд╛ рд╣реИ , рдФрд░ рдпрд╣ devclub.eu рдФрд░ JUG.ee рдбреЗрд╡рд▓рдкрд░ рд╕рдореБрджрд╛рдп рдХрд╛ рд╕рд╣-рд╕рдВрд╕реНрдерд╛рдкрдХ рднреА рд╣реИред
рд▓реЗрдЦ рдХрд╛ рдЕрдВрдЧреНрд░реЗрдЬреА рд╕рдВрд╕реНрдХрд░рдг рдпрд╣рд╛рдВ рдкрдврд╝рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред

рдЫрд╡рд┐ рдЖрдкрдиреЗ JRebel рдЬреИрд╕реЗ рдЙрддреНрдкрд╛рдж рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╕реБрдирд╛ рд╣реЛрдЧрд╛ред рддреЛ, JRebel рдПрдХ рдЙрдкрдХрд░рдг рд╣реИ рдЬрд┐рд╕реЗ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рди рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рддреИрдпрд╛рд░ рдХрд░рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЦрддреНрдо рдХрд░рдиреЗ рдФрд░ рдЕрдкрдиреЗ рд╕рдордп рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рд╡рд░реНрдЧ рд╕рдВрд░рдЪрдирд╛, рд╕рдВрд╕рд╛рдзрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдлреНрд░реЗрдорд╡рд░реНрдХ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдХреЛрдИ рднреА рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рддрд╛ рд╣реИред рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпрд╣ рдЙрдкрдХрд░рдг рдЬрд╛рд╡рд╛ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдмреАрдЪ рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИред рдФрд░ рд╡реНрдпрд░реНрде рдореЗрдВ рдирд╣реАрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЬреЗрдмреНрд░реЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ, рдбреЗрд╡рд▓рдкрд░ рдХреЛ рдЖрд╡реЗрджрди рдХреЛ рдлрд┐рд░ рд╕реЗ рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдФрд░ рддреИрдирд╛рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рдорд┐рд▓ рдЬрд╛рддрд╛ рд╣реИред рдЙрд╕реА рд╕рдордп, рдпрд╣ JavaEE рдЙрддреНрдкрд╛рджрдХрддрд╛ рдкрд░ рдирд╡реАрдирддрдо рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдФрд╕рддрди 10.5 рдорд┐рдирдЯ рдкреНрд░рддрд┐ рдШрдВрдЯреЗ рдХреА рдХреЛрдбрд┐рдВрдЧ рдмрдЪрд╛рддрд╛ рд╣реИред рдпрд╣ рд╣рд░ рд╕рд╛рд▓ 5 рд╕рдкреНрддрд╛рд╣ рд╕реЗ рдЕрдзрд┐рдХ рдХрд╛рдо рд╣реИ - рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдЯреАрдо рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рдбреЗрд╡рд▓рдкрд░ рдХрд╛ 1 рд╕реЗ рдЕрдзрд┐рдХ рдорд╛рд╕рд┐рдХ рд╡реЗрддрдиред

рдЕрднреА рд╣рд╛рд▓ рд╣реА рдореЗрдВ JRebel 5.0 рдХрд╛ рд╡рд┐рдореЛрдЪрди рд╣реБрдЖ рд╣реИред рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдХреА рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛ JRebel Remoting рдлрд╝рдВрдХреНрд╢рди рд╣реИ, рдЬреЛ рдЖрдкрдХреЛ рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ JRebel рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреНрд▓рд╛рдЙрдб рдореЗрдВ рдЪрд▓ рд░рд╣рд╛ рд╣реЛред
рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рд╕рд╛рде, рдмрд╛рджрд▓реЛрдВ рдореЗрдВ рдЬрд╛рд╡рд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реЛрдЧрд╛ред рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ Jelebel рдХреЛ Jelastic рдХреНрд▓рд╛рдЙрдб рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдкрд░ рдХреИрд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред

Jelebel рдХреЛ Jelastic рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

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

рдЫрд╡рд┐

рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЬреЗрдмреНрд░реЗрд▓ рдПрдЬреЗрдВрдЯ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, jrebel.jar рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ ред рдФрд░ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдордд рднреВрд▓рдирд╛, рдЬреЛ {user.home} /ред Jrebel рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЫрд╡рд┐

JelM рдиреЗ JVM рдХрд╕реНрдЯрдо рдЧреБрдгреЛрдВ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рд╕рдорд░реНрдерди рд╢реБрд░реВ рдХрд┐рдпрд╛ рдерд╛, рдФрд░ рд╣рдо рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ JRebel рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░реЗрдВрдЧреЗред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ varables.conf рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреБрдЫ рдмрджрд▓рд╛рд╡ рдХрд░рдиреЗ рд╣реЛрдВрдЧреЗред

рдЫрд╡рд┐

JRebel Remoting рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП -Javaagent рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╣рдореЗрдВ JRebel рд░реАрдореЛрдЯрд┐рдВрдЧ рдкреНрд▓рдЧрдЗрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд╣рдо рдЗрд╕реЗ рдПрдХ рд╡рд┐рд╢реЗрд╖ JVM рддрд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ:

-рдбреНрд░реЗрдмреЗрд▓.рдЖрд░реНрдореЛрдЯрд┐рдВрдЧ_рдкреНрд▓рдЧрд┐рди = рд╕рдЪ

рдЕрдм рд╣рдо рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП JRebel рд▓реЙрдЧ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕ рдЯреВрд▓ рдХреА рд╕реНрдерд╛рдкрдирд╛ рд╕рдлрд▓ рд░рд╣реАред рд╕рднреА рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рдж рд░рдЦреЗрдВ рдФрд░ рдирдИ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреЙрдордХреИрдЯ рдХреЛ рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВред

рдзреНрдпрд╛рди рджреЛ! рдЬреЗрдЯреНрдЯреА рдФрд░ рдЯреЙрдордХреИрдЯ рдХреЗ рд▓рд┐рдП рдЬреЗрдмрд░реЗрд▓ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рд╕рдорд╛рди рд╣реИрдВред рд▓реЗрдХрд┐рди GlassFish variables.conf рдХреЗ рдмрдЬрд╛рдп domain.xml рдпрд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкреИрдирд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди

JRebel Remoting рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдХреЙрдиреНрдлрд┐рдЧ рдлрд╛рдЗрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ: rebel.xml рдФрд░ rebel-Remote.xml ред JRebel рдХреЛ rebel.xml рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рддрд╛рдХрд┐ рдХреНрд▓рд╛рд╕ рд▓реЛрдбрд░ рд╕реАрдзреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рдХрд┐рдП рдЧрдП рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рджреЗрдЦ рд╕рдХреЗрдВред

рд░рд┐рдореЛрдЯ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рд░рд┐рдмреЗрд▓-рд░рд┐рдореЛрдЯ.рдПрдХреНрд╕рдПрдордПрд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рд╕рд░рд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рджреЛ рдкреИрд░рд╛рдореАрдЯрд░, рдореЙрдбреНрдпреВрд▓ рдЖрдИрдбреА рдФрд░ URL рдЬрд┐рд╕ рдкрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЙрдкрд▓рдмреНрдз рд╣реИред
рджреЛрдиреЛрдВ рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╛рдЗрд▓ рдЧреНрд░рд╣рдг рдХреЗ рд▓рд┐рдП JRebel рдкреНрд▓рдЧрдЗрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЙрддреНрдкрдиреНрди рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ, рдЬреЛ рдХрд┐ рдПрдХреНрд▓рд┐рдкреНрд╕ рдорд╛рд░реНрдХреЗрдЯрдкреНрд▓реЗрд╕ рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИред

рдЫрд╡рд┐

JRebel рдПрдХреНрд╢рди рдореЗрдВ рд░реАрдореЛрдЯ рдХрд░рдирд╛

рдЬрдм рджреЛрдиреЛрдВ рдлрд╛рдЗрд▓реЗрдВ рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИрдВ, рддреЛ рдЖрдк рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдПрдХ рдпреБрджреНрдз рд╕рдВрдЧреНрд░рд╣ рдореЗрдВ рдПрдХрддреНрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЬреЗрд▓реНрд▓рд╛рд╕реНрдЯрд┐рдХ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рддреИрдирд╛рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЫрд╡рд┐

JRebel рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд░реЗрдВред

рдЫрд╡рд┐

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓рд╛ рдкреГрд╖реНрда рдмрджрд▓реЗрдВ (welcome.jsp)ред рд╣рдо "рд╡реЗрд▓рдХрдо рдЯреВ рдЬрд▓реЗрд╕реНрдЯрд┐рдХ!" рд▓рд┐рдЦреЗрдВрдЧреЗред рдЗрд╕рдХреЗ рдмрдЬрд╛рдп "рд╡реЗрд▓рдХрдо" рдФрд░ рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЗрдмреНрд░реЗрд▓ рдЖрдИрдбреАрдИ рдкреНрд▓рдЧрдЗрди рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ "рд╕рд┐рдВрдХ рдирд╛рдЙ" рд╡рд┐рдзрд┐ рдХреЛ рдХреЙрд▓ рдХрд░реЗрдВред

рдЫрд╡рд┐

рдЙрд╕рдХреЗ рдмрд╛рдж, IDE рдХрдВрд╕реЛрд▓ рдореЗрдВ рдирд┐рдореНрди рд╕рдВрджреЗрд╢ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ:

Manually triggered JRebel remoting synchronization.
Scheduling JRebel Remoting synchronization for projects: petclinic
Starting manual synchronization for project: petclinic
Parsing configuration for /Users/anton/work-src/petclinic
Directory target/classes/ will be used for uploading
Directory src/main/webapp/ will be used for uploading
тАж
JRebel-Remoting uploaded changes successfully, have fun!

рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рд╕рд░реНрд╡рд░ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдореЗрдВ рд▓рдЧрднрдЧ рдПрдХ рд╕реЗрдХрдВрдб рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рдХрдиреЗрдХреНрд╢рди рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЬрд╝реЗрд╢рди рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдо рдкреЗрдЬ рдХреЛ рд░реАрдлреНрд░реЗрд╢ рдХрд░рддреЗ рд╣реИрдВ - рдФрд░ рд╡реЙрдпрд▓рд╛!

рдЫрд╡рд┐

JRebel Remoting рд╡рд░реНрддрдорд╛рди рдореЗрдВ IDE рдкреНрд▓рдЧрдЗрди рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИ, рдЬреЛ рдХрд┐ рдЧреНрд░рд╣рдг рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИ, IntelliJ рдФрд░ NetBeans рдХреЗ рд▓рд┐рдП рдкреНрд▓рдЧрдЗрдиреНрд╕ рдЬрд▓реНрдж рд╣реА рдЙрдкрд▓рдмреНрдз рд╣реЛрдВрдЧреЗред
JRebel 5.0 рдФрд░ Jelastic рдХреЗ рд╕рд╛рде , рдЕрдм рдЖрдк рд╕реНрдерд╛рдиреАрдп рдФрд░ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рджреЛрдиреЛрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдмрд┐рдирд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдордп рдХреЗ рдкреБрдирд░реНрд╡рд┐рддрд░рдг рдкрд░ рдЦрд░реНрдЪ рдХрд┐рдПред рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдФрд░ рдЗрд╕ рдкреЛрд╕реНрдЯ рдкрд░ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЕрдкрдиреА рд░рд╛рдп рд╕рд╛рдЭрд╛ рдХрд░реЗрдВред рд╣рдо рдмрд╣реБрдд рдЖрднрд╛рд░реА рд╣реЛрдВрдЧреЗред

Source: https://habr.com/ru/post/In146240/


All Articles