рд╕рд╛рдордиреЗ рдХреЗ рдЫреЛрд░ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪреНрдЫ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛



рдЖрдзреБрдирд┐рдХ рд╡реЗрдм рдЬрдЯрд┐рд▓ рд╣реИред рдЪреМрдЦрдЯреЗ рдХреА рд╕рдВрдЦреНрдпрд╛ рдФрд░ рдЙрдирдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреА рдЧрддрд┐ рдбреЗрд╡рд▓рдкрд░ рдХреЛ рд╕рд░рдкрдЯ рдмрдирд╛рддреА рд╣реИред рдХреЛрдИ рдирдП рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдХреЛрдИ рдлреИрд╢рди рдХреА рдХрд┐рддрд╛рдмреЗрдВ рдкрдврд╝рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рд╡рд╛рдЪрди рдФрд░ рдКрд░реНрдЬрд╛ рдиреЗ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛, OOP, TDD, DDD, рдЖрджрд┐ рдореЗрдВ рдЧрд╣рд░рд╛ рдЦрд░реНрдЪ рдХрд┐рдпрд╛ред рдЙрдореНрдореАрджреЛрдВ рдкрд░ рдЦрд░рд╛ рди рдЙрддрд░реЗрдВред рдФрд░ рдХрднреА-рдХрднреА рдХрд┐рддрд╛рдмреЗрдВ рднреНрд░рдорд┐рдд рдХрд░ рд░рд╣реА рд╣реИрдВ! рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдмрд╕реЗ рдмреБрд░реА рдмрд╛рдд, рд╡реЗ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдПрдлрдПрд╕реА рдмрдврд╝рд╛рддреЗ рд╣реИрдВ!

рдореИрдВ рджреГрд╢реНрдп рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдПрдХ рд╕рд░рд▓ рддрд░реАрдХреЗ рд╕реЗ рд╢реБрджреНрдз рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдХрд╛ рдореБрдЦреНрдп рд╡рд┐рдЪрд╛рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдЙрджреНрдпрдо рдХрд░реВрдВрдЧрд╛ ред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧрд╛ рдЬреЛ рдЗрд╕ рдкреБрд╕реНрддрдХ рдХреЛ рдкрдврд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рдкрдврд╝ рдЪреБрдХреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЬреАрд╡рди рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдЬреНрдЮрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдЬреЛ рд▓реЛрдЧ рдЗрд╕ рдмрд╛рдд рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВ рдпрд╣рд╛рдВ рд╕рд╛рдордиреЗ рдХреЗ рдЫреЛрд░ рдХреЛ рдХреИрд╕реЗ рдШрд╕реАрдЯрддрд╛ рд╣реВрдВред

рдкреНрд░реЗрд░рдгрд╛


рдкрд╣рд▓реА рдмрд╛рд░ рдЬрдм рдореИрдВрдиреЗ FAQ рдкрдврд╝рд╛, рддреЛ рдПрдХ рд╡рд░рд┐рд╖реНрда рдбреЗрд╡рд▓рдкрд░ рдХреА рд╕рд▓рд╛рд╣ рдкрд░ рдПрдХ рд▓реЗрдЦ рд▓рд┐рдЦрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд▓рдЧрднрдЧ рдбреЗрдврд╝ рд╕рд╛рд▓ рдХрд╛ рд╕рдордп рд╣реИред рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ ( https://github.com/ryanmcdermott/clean-code-javascript ) рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рд┐рдд рдкреНрдпреЛрд░ рдХреЛрдб рдХреЗ рдЫреЛрдЯреЗ рдЕрдВрд╢реЛрдВ рд╕реЗ рдмрд╣реБрдд рдкреНрд░рднрд╛рд╡рд┐рдд рдерд╛ ред рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдХрд╛рдо рдореЗрдВ рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдЯреИрдм рдХреЛ рдЫрд╣ рдорд╣реАрдиреЗ рддрдХ рдЦреБрд▓рд╛ рд░рдЦрд╛ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореВрд▓ рдХреНрд▓реАрди рдХреЛрдб рдХреЛ рдкрдврд╝рдиреЗ рдХрд╛ рдореЗрд░рд╛ рдкрд╣рд▓рд╛ рдкреНрд░рдпрд╛рд╕ рд╡рд┐рдлрд▓ рд░рд╣рд╛ред рд╢рд╛рдпрдж рдЗрд╕рд▓рд┐рдП рдХрд┐ рдпрд╣ рдлреНрд░рдВрдЯ-рдПрдВрдб рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдкрдврд╝рдиреЗ рдХреЛ рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рдЕрднреНрдпрд╛рд╕ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдмрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдлрд┐рд░ рднреА, рдЪреЗрдХрд╛ рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд▓рд┐рдЦрд┐рдд рдлрд╝рдВрдХреНрд╢рди рдкрд░ рд▓реЗ рдФрд░ рддреБрд░рдВрдд рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рдореИрдВ рджреГрдврд╝рддрд╛ рд╕реЗ рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдЖрдк рдЗрд╕реЗ рдкрд╣рд▓реЗ рдкрдврд╝ рд▓реЗрдВ рдпрджрд┐ рдЖрдк рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реИрдВ)ред

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

рд╡реНрдпрд╛рдкрд╛рд░ рддрд░реНрдХ рдФрд░ рджреГрд╢реНрдп




рдЬрдм рдпрд╣ ChA рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ, рддреЛ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдЕрдкрдиреА рдХрд▓реНрдкрдирд╛ рдореЗрдВ рд╢реАрд░реНрд╖рдХреЛрдВ рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ (рд╢реАрд░реНрд╖ рдХреЗ рдиреАрдЪреЗ рдХрд╛ рдЖрдВрдХрдбрд╝рд╛ рджреЗрдЦреЗрдВ), рд╡рд┐рд╢рд╛рд▓ рдЖрдХрд╛рд░ рдХреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ, рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рдЬрдЯрд┐рд▓ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ, рдФрд░ рд╕рд╡рд╛рд▓реЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ - YuzKeysy рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рдбреИрдбреА? рдПрдХ рдПрдЧреНрд░реАрдореЗрдВрдЯ рдШрдЯрдХ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП ChA рд╕реЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреА рдкреНрд░рдпреЛрдЬреНрдпрддрд╛ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИрд░рд╛рди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЖрдзреБрдирд┐рдХ рдЗрдВрдЯрд░рдлреЗрд╕ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп рдЖрдиреЗ рд╡рд╛рд▓реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдПрдХ рдЧрдВрднреАрд░ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЖрдзреБрдирд┐рдХ рдЗрдВрдЯрд░рдлреЗрд╕ рдЬрдЯрд┐рд▓ рдФрд░ рдЕрдХреНрд╕рд░ рджрд░реНрджрдирд╛рдХ рд╣реЛрддреЗ рд╣реИрдВред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЖрдЗрдП рдЬрд╛рдиреЗрдВ рдХрд┐ рдлреНрд░рдВрдЯ-рдПрдВрдб рдкрд░ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХреНрдпрд╛ рд╣реИред

рд╣рд░ рдХреЛрдИ рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЬрд╛рдирддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ рдХреЛ рдПрдХ рдкреНрд░рд╕реНрддреБрддрд┐ рд╕реЗ рдЕрд▓рдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдФрд░ рдареЛрд╕ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред CHA рдореЗрдВ рдЕрдВрдХрд▓ рдмреЙрдм рдЖрдкрдХреЛ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛рдПрдВрдЧреЗред рд▓реЗрдХрд┐рди рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ рдХреНрдпрд╛ рд╣реИ? рдЖрд░ред рдорд╛рд░реНрдЯрд┐рди рдХрдИ рдкрд░рд┐рднрд╛рд╖рд╛рдПрдБ рдФрд░ рдЙрдкрд╢реНрд░реЗрдгрд┐рдпрд╛рдБ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЙрдирдореЗрдВ рд╕реЗ рдПрдХ рд▓рдЧрднрдЧ рд▓рдЧрддрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП:
рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ (рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдирд┐рдпрдо) рдРрд╕реЗ рдирд┐рдпрдо рд╣реИрдВ рдЬреЛ рд╕реНрд╡рдЪрд╛рд▓рди рдХреЗ рдмрд┐рдирд╛ рднреА рд╕рдВрдЧрдардиреЛрдВ рдХреЗ рд▓рд┐рдП рдзрди рд▓рд╛рддреЗ рд╣реИрдВред
рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╡реНрдпрд╛рдкрд╛рд░ рддрд░реНрдХ рдХреБрдЫ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред (рдореИрдВ рдЬрдм рд╡реЗ рдореЛрд░реНрдЪреЛрдВ рд╕реЗ рд╡реНрдпрд╛рдкрд╛рд░рд┐рдХ рддрд░реНрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирддреЗ рд╣реИрдВ рддреЛ рдмреИрдХрдЧреЗрдЯ рд╕реБрдирддреЗ рд╣реИрдВ)ред рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реИ рдХрд┐ рдлреНрд░рдВрдЯ-рд░рдирд░ рдереЛрдбрд╝рд╛ рдЖрд░рд╛рдо рдХрд░реЗрдВ рдФрд░ рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рд╣рдорд╛рд░реЗ рдлреНрд░рдВрдЯ рдореЗрдВ рдХреНрдпрд╛ рдмрд╣реБрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реЛ рд╕рдХрддрд╛ рд╣реИ? рдФрд░ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдпрд╣ рдХрд┐рддрдирд╛ рдЕрдЬреАрдм рд▓рдЧрддрд╛ рд╣реИ, рд╕рд╛рдордиреЗ рдХреА рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╣реИред рдореЗрд░реЗ рд▓рд┐рдП рдПрдП рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╣рд▓рд╛ рдХрджрдо рдпрд╣ рдПрд╣рд╕рд╛рд╕ рдерд╛ рдХрд┐ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддрд░реНрдХ рд╕рд╛рдордиреЗ рд╕рд░реНрдХрд▓ рдореЗрдВ рдХреЗрдВрджреНрд░ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП! (рдЕрдВрдЬреАрд░ рдХреЗ рдиреАрдЪреЗ)ред

рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдирд┐рд░рд╛рдзрд╛рд░ рдмрдпрд╛рди рд╣реИ, рдФрд░ рдХреЛрдИ рдЗрд╕рдХреЗ рд╕рд╛рде рджреГрдврд╝рддрд╛ рд╕реЗ рдмрд╣рд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдпрд╛рдж рд░рдЦреЗрдВ рдХрд┐ рдЕрдХреНрд╕рд░ рдФрд░ рджрд░реНрдж рдХреЗ рд╕рд╛рде рд╕рд╛рдордиреЗ рдХреНрдпрд╛ рдмрджрд▓ рд░рд╣рд╛ рд╣реИ? рдореБрдЭреЗ рдЖрдкрдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ рддрддреНрд╡реЛрдВ - рд╕рдордЭреМрддреЗ, рдирдП рдирдП рд╕рд╛рдБрдЪреЗ, рдмрдЯрди рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рд╣реИ рдХрд┐ рд▓реЗрдЖрдЙрдЯ (рдбрд┐рдЬрд╝рд╛рдЗрди) рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдХрдо рдмрд╛рд░ рдмрджрд▓рддрд╛ рд╣реИред рдкрд░рд┐рд╡рд░реНрддрди рдФрд░ рдЕрднрд┐рдиреЗрддрд╛ ( рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдЖрд░рдВрднрдХрд░реНрддрд╛ ) рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреАрдП , рдиреЛрдЯ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИ ред

рдЧрдВрджрд╛ рд╕рд╛рдВрдЪрд╛


рдЪрд▓реЛ рд╢рдмреНрджрд╛рд╡рд▓реА рдХреЗ рд▓рд┐рдП рдЬреНрдпрд╛рджрд╛ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдереЛрдбрд╝рд╛ рд╕реНрдкрд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдореИрдВ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рд▓реЙрдЬрд┐рдХ рдХреЛ рдХреНрдпрд╛ рдХрд╣рддрд╛ рд╣реВрдВред

рд╕рддреНрдпрд╛рдкрди рдФрд░ рд╕рд╢рд░реНрдд рдорд╛рдирдЪрд┐рддреНрд░рдг рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЗрдирдкреБрдЯ рд╣реИрдВред рдЖрдк рдХреЗрд╡рд▓ рдПрдХ рдлрд╝реАрд▓реНрдб рднрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдлрд╝реЙрд░реНрдо рдорд╛рдиреНрдп рд╣реИ, рд▓реЗрдХрд┐рди рд╡реИрдХрд▓реНрдкрд┐рдХ рдЗрдирдкреБрдЯ рджрд┐рдЦрд╛рдИ рджреЗрдВрдЧреЗред (рдзреНрдпрд╛рди рджреЗрдВ, рд╣рдореЗрдВ рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХрд┐рд╕ рддрд░рд╣ рдХрд╛ рдбреЗрдЯрд╛ рд╣реИред рдореБрдЦреНрдп рдмрд╛рдд рдЕрдиреНрддрд░рдХреНрд░рд┐рдпрд╛рд╢реАрд▓рддрд╛ рд╣реИ)





рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рддрд░реНрдХ рд╕реНрдкрд╖реНрдЯ рд╣реИред рдФрд░ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╕рд╡рд╛рд▓ рдирд╣реАрдВ рдЙрдард╛рддрд╛ рд╣реИред рдЖрдк рдЗрд╕ рдЪреАрдЬрд╝ рдХреЛ рдЕрдкрдиреЗ рдврд╛рдБрдЪреЗ рдХреЗ рдПрдХ рдШрдЯрдХ рдореЗрдВ рдврд╛рд▓ рджреЗрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЕрдиреНрдп рд░реВрдкреЛрдВ рдореЗрдВ рдПрдХ рдЕрднрд┐рдиреНрди рдЕрдВрдЧ рдФрд░ рдПрдХ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдХрд╣реАрдВ рдЖрдкрдХреЛ рд╕рддреНрдпрд╛рдкрди рдХреЛ рдереЛрдбрд╝рд╛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЭрдВрдбреЗ рдХреЛ рдкрд╛рд╕ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рдХрд╣реАрдВ рдереЛрдбрд╝рд╛ рд▓реЗрдЖрдЙрдЯ, рдХрд╣реАрдВ рдорд╛рддрд╛-рдкрд┐рддрд╛ рдХреЗ рд░реВрдк рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдкрддрд▓реА рдмрд░реНрдл рдкрд░ рдХреЛрдбред рдФрд░ рдПрдХ рдмрд╛рд░, рдЖрдкрдХреЛ рдЗрд╕ рдлреЙрд░реНрдо рдореЗрдВ (рдФрд░ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ) рдПрдХ рдХрд╛рд░реНрдп рдорд┐рд▓рддрд╛ рд╣реИ рдФрд░ рдХреБрдЫ рджрд┐рдиреЛрдВ рдХреЗ рд▓рд┐рдП рдлреНрд░реАрдЬ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ 15 рдорд┐рдирдЯ рдХрд╛ рд▓рдЧрддрд╛ рд╣реИред рд▓рд╛рдирдд рд╣реИ рдкреНрд░рдмрдВрдзрдХ, рдирдП рдирдП рд╕рд╛рдБрдЪреЗ рдФрд░ рдЙрдмрд╛рдК рд╕реБрд╕реНрдд рдХрд╛рд░реНрдпред

рдХрд╣рд╛рдВ рдЪреВрдХ рд╣реБрдИ? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдПрдХ рджрд┐рди рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдШрдЯрдХреЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реЛрдЪрд╛ рд╣реИ, рд╡рд┐рднрд┐рдиреНрди рд╣реЙрдХреАреЛрдВ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рдкреНрд░реЙрдкреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░реЗрд╖рд┐рдд рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕, рднрд╡рди рд░реВрдкреЛрдВ рдХреЗ рд▓рд┐рдП рд░реВрдкрд░реЗрдЦрд╛ рдХреЗ рд╕рд╛рде рдорд┐рд▓рдХрд░, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЗрди рдШрдЯрдХреЛрдВ рдХреЛ рд▓рд┐рдЦрддреЗ рд╕рдордп SOLID рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред

рдиреЛрдЯ: ChA! == рдШрдЯрдХреЛрдВ рдореЗрдВ рдШрдЯрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ / рдХреЛрдгреАрдп рдФрд░ рд╕рд╣ред

рд▓реЗрдХрд┐рди рддрдереНрдп рдпрд╣ рд╣реИ рдХрд┐ рдЖрдк рддрд░реНрдХ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдирд╛ рднреВрд▓ рдЧрдПред рдереЛрдбрд╝рд╛ рд╢рд╛рдВрдд рд╣реЛ рдЬрд╛рдУ, рдХрд╛рд░реНрдп рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдУ рдФрд░ рдЕрдиреБрдХрд░рдг рдЦреЗрд▓реЛред

рдмрд╣реБрдд рд╕рд░рд▓ рдХрд╛рд░реНрдп


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

рд▓реЗрдХрд┐рди рдЪрд▓реЛ рд╡реНрдпрд╛рдкрд╛рд░ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдЙрддрд░реЛред рдпрд╣ рдХреНрдпрд╛ рд░реВрдк рд╣реИ? рд╣рдо рдПрдХ рдЫрджреНрдо рдХреЛрдб рдХреЗ рд╕рд╛рде рд╡рд┐рдЪрд╛рд░ рд╡реНрдпрдХреНрдд рдХрд░рддреЗ рд╣реБрдП, рдореЙрдбрд▓ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

ContactFormGroup
  +getValue()
  +isValid()

рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдмрд╛рд╣рд░реА рджреБрдирд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░рд╛ рдкреВрд░рд╛ рдХрд╛рдо рджреЛ рддрд░реАрдХреЛрдВ рд╕реЗ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдирд╛ рд╣реИред рдпрд╣ рдЖрд╕рд╛рди рд▓рдЧрддрд╛ рд╣реИ - рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдпрд╣ рд╣реИред рд╣рдо рдмрддрд╛рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рдХреНрдпрд╛ рджреЗрдЦрддреЗ рд╣реИрдВ рдФрд░ рд╣рдорд╛рд░реЗ рд╣рд┐рдд рдХреНрдпрд╛ рд╣реИрдВред

ContactFormGroup
  emailFormGroup
  phoneFormGroup
  getValue()
    => [emailFormGroup.getValue(), phoneFormGroup.getValue()]
  isValid()
    => emailFormGroup.isValid() || phoneFormGroup.isValid()

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

EmailFormGroup
  getValue()
  isValid()
  isSecondaryEmailVisible()
    => isValid() && !!getValue()

рдХреНрдпрд╛ рд╣рдо рдЕрдЬреАрдм рдорд╛рдВрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрдЧрд╣ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ ...

PhoneFormGroup
  getValue()
  isValid()
  isSecondaryPhoneVisible()
    => isValid() && today !== тАШsundayтАЩ

рдХреЛрдгреАрдп рдкрд░ рд╣рдорд╛рд░реЗ рдлреЙрд░реНрдо рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рд╕реЗ рдПрдХ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИред

ContactFormGroup рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди (рдХреЛрдгреАрдп)
export class ContactFormGroup {
    emailFormGroup = new EmailFormGroup();
    phoneFormGroup = new PhoneFormGroup();

    changes: Observable<unknown> = merge(this.emailFormGroup.changes, this.phoneFormGroup.changes);

    constructor() {}

    isValid(): boolean {
        return this.emailFormGroup.isValid() || this.phoneFormGroup.isValid();
    }

    getValue() {
        return {
            emails: this.emailFormGroup.getValue(),
            phones: this.phoneFormGroup.getValue(),
        };
    }
}

export class EmailFormGroup {
    emailControl = new FormControl();
    secondaryEmailControl = new FormControl();

    changes: Observable<unknown> = merge(
        this.emailControl.valueChanges,
        this.secondaryEmailControl.valueChanges,
    );

    isValid(): boolean {
        return this.emailControl.valid && !!this.emailControl.value;
    }

    getValue() {
        return {
            primary: this.emailControl.value,
            secondary: this.secondaryEmailControl.value,
        };
    }

    isSecondaryEmailVisible(): boolean {
        return this.isValid();
    }
}


рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдореЗрдВ рддреАрди рдЗрдВрдЯрд░рдлреЗрд╕ (рдпрд╛ рдХрдХреНрд╖рд╛рдПрдВ, рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ) рдорд┐рд▓рддреЗ рд╣реИрдВред рдЖрдкрдХреЛ рдЗрди рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рд╕реНрдерд╛рди рдкрд░ рдПрдХ рдкреНрд░рдореБрдЦ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рддрд╛рдХрд┐ рдЖрдк рдмрд╕ рдЗрд╕реЗ рджреЗрдЦрдХрд░ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЗ рдЪрд▓рддреЗ рднрд╛рдЧреЛрдВ рдХреЛ рд╕рдордЭ рд╕рдХреЗрдВред рд╣рдордиреЗ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рддрд░реНрдХ рдХреА рдкрд╣рдЪрд╛рди, рдЦреАрдВрдЪ рдФрд░ рдЬреЛрд░ рджрд┐рдпрд╛ рд╣реИ, рдФрд░ рдЕрдм рд╣рдо рдлреЙрд░реНрдордлрд╝реЙрд░реНрдордЧреНрд░реБрдк рдХреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рднрд╛рдЧреЛрдВ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд╕рдВрдпреЛрдЬрди рдХреЗ рд░реВрдк рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

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

рд╕рдВрдкреВрд░реНрдг


ChA рд╣рдореЗрдВ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд▓рд┐рдЦрдиреЗ рдХреЗ рдирд┐рдпрдореЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрддрд╛рддрд╛ рд╣реИред рдпрд╣ рдореЗрдЯреНрд░рд┐рдХреНрд╕ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рд╣рдо рдирд╛рдмрд╛рд▓рд┐рдЧреЛрдВ рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рднрд╛рдЧреЛрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЗрди рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЗ рдмреАрдЪ рд╕рд╣реА рд░реВрдк рд╕реЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдирд┐рд░реНрднрд░рддрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдУрдУрдкреА рдХреЗ рд▓рд╛рднреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореЙрдбрд▓рд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд░рддрд╛ рд╣реИред

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

рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреБрдирд╢реНрдЪ


рдПрдирдП рдХреЛ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╣реБрдд рдмрдбрд╝реА рдмрд╛рдзрд╛ рдПрдХ рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рддрд┐рдмрджреНрдзрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдЬреИрд╕реЗ redux / mobx рдПрдХ рд╕рд╛рде рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдШрдЯрдХреЛрдВ рдХреЛ рд╕реВрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рдХрд╛рд░реНрдп рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдХреБрдЫ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП, рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрдХ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рдореЛрд░реНрдЪрд╛ рдХреБрдЫ рдЕрдХрд▓реНрдкрдиреАрдп рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрдХ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рдФрд░ рдмрд┐рдирд╛ ChA рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдкреБрд╕реНрддрдХрд╛рд▓рдп рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░рдХреЗ, рдЖрдк рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдХреБрдЫ рд▓рдЪреАрд▓реЗрдкрди рдХреЛ рдЦреЛ рджреЗрдВрдЧреЗред рдпрджрд┐ рдЖрдк ChA рдФрд░ OOP рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ рд╕реЛрдЪрддреЗ рд╣реИрдВ, рддреЛ рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдЖрдо рддреМрд░ рдкрд░ рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддреА рд╣реИред рд░рд╛рдЬреНрдп рдкреНрд░рдмрдВрдзрди рдХреЗ рдмрд┐рдирд╛ рд╕рдмрд╕реЗ рд╕рд░рд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдпрд╣рд╛рдБ рд╣реИ habr.com/en/post/491684

рдкреА рдкреА рдПрд╕


рдИрдорд╛рдирджрд╛рд░реА рд╕реЗ, рдореИрдВрдиреЗ рдЕрдкрдиреЗ рджреЛрд╕реНрдд рдХреЛ рдПрдХ рд╕рдорд╛рди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛рд░реНрдп рдХрд╛ рд╕рдорд╛рдзрд╛рди рджрд┐рдЦрд╛рдпрд╛ - рдЙрд╕рдиреЗ рдЗрд╕рдХреА рд╕рд░рд╛рд╣рдирд╛ рдирд╣реАрдВ рдХреА, рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реБрдХ рдХреЗ рд▓рд┐рдП рд╕рдм рдХреБрдЫ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ред рдпрд╣ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдзрд┐рдХ рд╣рдж рддрдХ рдЕрд╕реНрд╡реАрдХреГрддрд┐ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдУрдУрдкреА рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЕрдзрд┐рдХрд╛рдВрд╢ рдпреБрд╡рд╛ рдлреНрд░рдВрдЯ-рдПрдВрдб рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдУрдУрдкреА рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдорд╛рдореВрд▓реА рдЕрдиреБрднрд╡ рдирд╣реАрдВ рд╣реИред рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░ рдореЗрдВ, рд╡реЗ рдХрднреА-рдХрднреА рдПрд╕рдУрдПрд▓рдЖрдИрдбреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреВрдЫрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЕрдХреНрд╕рд░ рдХреЗрд╡рд▓ рдЙрдореНрдореАрджрд╡рд╛рд░реЛрдВ рдХреЛ рдорд╛рдд рджреЗрдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХреБрдЫ рдЯреАрдореЛрдВ рдореЗрдВ рдкреАрдПрд▓рдУ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдХреА рдЧрддрд┐ рдХреЛ рдПрдХ рд╕рдореАрдХреНрд╖рд╛ рджреНрд╡рд╛рд░рд╛ рджрдмрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдФрд░ рдПрдХ рдЙрдмрд╛рдК рдХрд┐рддрд╛рдм рдХреЛ рдкрдврд╝рдиреЗ рдпрд╛ рдХрд┐рд╕реА рдШрдЯрдХ рд╕реЗ рддрд░реНрдХ рд▓реЗрдиреЗ рдХреЗ рдЕрдкрдиреЗ рдЕрдзрд┐рдХрд╛рд░ рдХреА рд░рдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдИ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдЫрд╛рдВрдЯрдирд╛ рдЕрдХреНрд╕рд░ рдЖрд╕рд╛рди рд╣реЛрддрд╛ рд╣реИред рдХреГрдкрдпрд╛ OOP рдХрд╛рд░реНрдпрдХрд░реНрддрд╛рдУрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ :)

All Articles