RxVMS - рд╕реНрдкрдВрджрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛

рдлрд╝реНрд▓рдЯрд░ рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрд░реА рд╕рдордЭ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкреНрд░рдХрд╛рд╢рдиреЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдпрд╣ рдкрд╣рд▓реА рдкреЛрд╕реНрдЯ рд╣реИред рдореИрдВ рдЖрдкрдХреЛ рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реВрдВ - рдпрд╣ рдмрд╣реБрдд рдЖрддреНрдо-рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реЛрдЧрд╛ ред


рдЕрдм рддрдХ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ:



рдкреНрд░рд╕реНрддрд╛рд╡рдирд╛


рдореИрдВ рд▓рдЧрднрдЧ 20 рд╡рд░реНрд╖реЛрдВ рд╕реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдореЗрдВ рд╣реВрдБред рдореИрдВрдиреЗ 4 рд╕рд╛рд▓ рдкрд╣рд▓реЗ Xamarin.Forms рдХреЗ рд╕рд╛рде рдореЛрдмрд╛рдЗрд▓ рд╡рд┐рдХрд╛рд╕ рд╢реБрд░реВ рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЗрдВрдбреА рдбреЗрд╡рд▓рдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдореЗрд░реЗ рд▓рд┐рдП рдПрдХрдорд╛рддреНрд░ рдкреНрд░реЗрд░рдгрд╛ рдерд╛ред Xamarin.Forms рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рд╕реЗ рдЖрдкрдХреЛ MVVM рдкреИрдЯрд░реНрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ UI рдХреЛ XAML рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЖрдкрдХреЛ рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде UI рдХреЛ рдЧреЛрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рдкрд░рдд рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЬрд╝рд╛рдорд░реАрди рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдореИрдВ рд░рд┐рдПрдХреНрдЯрд┐рд╡реБрдЗ рд╕реЗ рдорд┐рд▓рд╛ рдФрд░ рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдк рд╕реЗ рдЙрди рдзрд╛рд░рд╛рдУрдВ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рддреНрдордХ рдПрдХреНрд╕рдЯреЗрдВрд╢рди ( рдЖрд░рдПрдХреНрд╕ ) рд╕реЗ рдореЛрд╣рд┐рдд рд╣реЛ рдЧрдпрд╛, рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдореЗрд░реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рдмрдирд╛ рджрд┐рдпрд╛ред


рдЬрдмрдХрд┐ Xamarin.Forms MVVMs рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдереЗ, рдЬрдм рдореИрдВрдиреЗ рдлреНрд▓рдЯрд░ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛, рддреЛ рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реБрдЖ рдХрд┐ рдЗрд╕рдореЗрдВ рдХреЛрдИ рд╕рдорд╛рди рдбрд┐рдЬрд╝рд╛рдЗрди рдкреИрдЯрд░реНрди рдирд╣реАрдВ рдереЗред рдореИрдВрдиреЗ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдкрд░ рд╢реЛрдз рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЙрдкрд▓рдмреНрдз рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдиреЗ рдореБрдЭреЗ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛:


  • InheritedWidget : рдореИрдВ рд╡рд┐рдЬреЗрдЯ рдЯреНрд░реА рдХреЗ рдХреЗрд╡рд▓ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рднрд╛рдЧ рдХреЛ рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреЗрд╡рд▓ рдбрд╛рд░реНрдЯ рд╕реНрдЯреНрд░реАрдо (рдбрд╛рд░реНрдЯ рд╕реНрдЯреНрд░реАрдо) рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдореЙрдбрд▓ рд╡рд░реНрдЧреЛрдВ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЬрд▓реНрдж рд╣реА рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рд╕рд░реНрд╡рд┐рд╕ рд▓реЛрдХреЗрдЯрд░ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдЫреЛрдбрд╝ рджрд┐рдпрд╛
  • рд╕реНрдХреЛрдкреНрдб рдореЙрдбрд▓ InheritedWidget рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдиреЗ рдореБрдЭреЗ рдЙрддрдирд╛ рд▓рдЪреАрд▓рд╛рдкрди рдирд╣реАрдВ рджрд┐рдпрд╛, рдЬрд┐рддрдирд╛ рдореБрдЭреЗ рд░рд┐рдПрдХреНрдЯрд┐рд╡рдпреВрдЖрдИ рдХреЗ рд╕рд╛рде рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
  • Redux рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рд╕реБрдЭрд╛рдпрд╛ рдЧрдпрд╛ рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдерд╛ред рдореЗрд░реЗ рдкрд╛рд╕ рдкреВрд░реА рдкреЛрд╕реНрдЯ рд╣реИ рдХрд┐ рдореБрдЭреЗ рдпрд╣ рдХреНрдпреЛрдВ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИред
  • рдмреАрдПрд▓рдУрд╕реА : рдЕрдЧрд░ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдРрд╕реЗ рд╕рдордп рдореЗрдВ рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдкреИрдЯрд░реНрди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдирд╛ рд╢реБрд░реВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛, рдЬрдм рдмреАрдПрд▓рдУрд╕реА рдЖрдЧреЗ рдмрдврд╝рдирд╛ рд╢реБрд░реВ рд╣реБрдЖ рдерд╛, рддреЛ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рд▓рд┐рдпрд╛ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд▓рдЪреАрд▓рд╛ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рд╢реАрд▓ рд╣реИред рдореБрдЭреЗ рдпрд╣ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕реНрдЯреНрд░реАрдо рд╕рд┐рдВрдХ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ рдФрд░ рдореИрдВ рд╡рд┐рдЬреЗрдЯ рдХреЗ рдИрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рдореЗрдВ рдХреЗрд╡рд▓ рдлрд╝рдВрдХреНрд╢рди рдпрд╛ рдХрдорд╛рдВрдб рдирд╣реАрдВ рд▓реЗ рд╕рдХрддрд╛ рд╣реВрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмреАрдПрд▓рдУрд╕реА рдЖрдкрдХреЛ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдЖрд╡реЗрджрди рдХреЛ рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдП рдФрд░ рди рд╣реА рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдкрд░рд┐рднрд╛рд╖рд╛ рд╣реИ рдХрд┐ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмреАрдПрд▓рдУрд╕реА рдХрд┐рддрдирд╛ рдмрдбрд╝рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдпрд╛ рдЗрд╕рдХрд╛ рджрд╛рдпрд░рд╛ рдХреНрдпрд╛ рд╣реИ
  • MVVM : рдЬрдм рд╕реЗ рдореИрдВрдиреЗ рдЙрд╕рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ, рдпрд╣ рдкрд╣рд▓реА рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореБрдЭреЗ рдЙрдореНрдореАрдж рдереА рдХрд┐ рдореИрдВ Flutter рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░реВрдВрдЧрд╛ред рд▓реЗрдХрд┐рди рдирд╣реАрдВ! ViewModel рдХреА рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡реНрдпреВ рдореЗрдВ рдЕрдкрдиреЗ рдореЙрдбрд▓ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдкреНрд░рджрд╛рди рдХрд░реЗрдВред рд▓реЗрдХрд┐рди рдлрд╝реНрд▓рдЯрд░ рдЕрдкрдиреЗ рдореЙрдбрд▓ рдХреЛ рдирдП рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдпрд╣ рд╣рдореЗрд╢рд╛ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рд╣реИ ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, ViewModels рдХреЛ рд╣рдореЗрд╢рд╛ рдмреЗрд╕ рдореЙрдбрд▓ рдХреЗ рд╕рд╛рде рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдЕрдкреНрд░рд┐рдп рдмрдЧ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ ViewModels рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╡рд╛рджрд╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд▓рд╛рдн рд▓рдЧрднрдЧ рдХрднреА рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИред рдПрдбрдо рдкреЗрдбрд▓реЗ рдХреЗ рдкрд╛рд╕ рдЗрди рдЦрд╛рдорд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рд╢рд╛рдирджрд╛рд░ рдкреЛрд╕реНрдЯ рд╣реИ

рдкрд░рдд рдЕрддрд┐рд░реЗрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрдареЛрд░ рд╕рдЪреНрдЪрд╛рдИ


рдпрд╣ рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рд▓рдЧрднрдЧ рдПрдХ рд╣рдардзрд░реНрдорд┐рддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдХрдИ рдкрд░рддреЛрдВ рдореЗрдВ рдЕрдкрдиреЗ рдЖрд╡реЗрджрди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ рдХреЗрд╡рд▓ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рддрдХ рдкрд╣реБрдВрдЪ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛:


  • рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдкрд░рддреЛрдВ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
  • рдкрд╛рд░рджрд░реНрд╢реА рд░реВрдк рд╕реЗ рдПрдХ рдкрд░рдд рдХреЛ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдмрджрд▓реЗрдВ
  • рдкрд░реАрдХреНрд╖рдг рдХреЛ рд╕рд░рд▓ рдмрдирд╛рдПрдВ

рд╣рд╛рд▓рд╛рдВрдХрд┐:


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

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


рд╕реНрдкрдВрджрди рдХреЗ рд▓рд┐рдП рдЖрджрд░реНрд╢ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛


рддреЛ рдПрдХ рдЖрджрд░реНрд╢ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рд╕реЗ рдореБрдЭреЗ рдХреНрдпрд╛ рдЙрдореНрдореАрдж рд╣реИ?


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

рд╡рд┐рдЬреЗрдЯ рд╕реНрд╡рддрдВрддреНрд░рддрд╛


рд╕реНрдЯреЗрдЯрд▓реЗрд╕ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рддрддреНрд╡реЛрдВ рдХреА рдкреНрд░рдХреГрддрд┐ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдлрд╝реНрд▓рдЯрд░ рдореЗрдВ рдХреЛрдИ рдкреГрд╖реНрда / рд╡рд┐рдЬреЗрдЯ рджреВрд╕рд░реЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдпрд╛ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдЗрд╕ рд╡рд┐рдЪрд╛рд░ рдХреА рдУрд░ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкреГрд╖реНрда / рд╡рд┐рдЬреЗрдЯ рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╕рд╛рде рд╕реНрд╡рдпрдВ рдФрд░ рдЙрд╕рдХреЗ рд╕рднреА рдЗрдВрдЯрд░реИрдХреНрд╢рди рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред


RxVMS


RxVMS рдкрд┐рдЫрд▓реЗ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдореЗрдВ рд╡рд░реНрдгрд┐рдд RxVAMS рдкреИрдЯрд░реНрди рдХрд╛ рдПрдХ рд╡рд┐рдХрд╛рд╕ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЗ рджреМрд░рд╛рди рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рдкрд╣рдЪрд╛рди рдХреА рдЧрдИ рдереА рдФрд░ рдЙрдиреНрд╣реЗрдВ рдареАрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдЗрди рд╕рднреА рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рд╡рд░реНрддрдорд╛рди рдкрд░рд┐рдгрд╛рдо RxVMS, рдпрд╛ Rx-View-Managers-Services рдкреИрдЯрд░реНрди рд╣реИред рдпрд╣ рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рдПрдХрдорд╛рддреНрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд╕рд╛рде рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдкрдХреЛ рдЖрд░рдПрдХреНрд╕ рдереНрд░реЗрдбреНрд╕ рдФрд░ рддрддреНрд╡реЛрдВ рдХреЛ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдореЗрдВ рдЖрдкрдХреА рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреЛрд╕реНрдЯ рд╕рдорд░реНрдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдВред


рдпрд╣рд╛рдБ рдореЗрд░реЗ рдЖрд╡реЗрджрди рдХреА рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд░реВрдкрд░реЗрдЦрд╛ рд╣реИ


рдЫрд╡рд┐


рд╕реЗрд╡рд╛ (рд╕реЗрд╡рд╛)


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


рдкреНрд░рдмрдВрдзрдХ (рдкреНрд░рдмрдВрдзрдХ)


рдкреНрд░рдмрдВрдзрдХ рд╕рдореВрд╣ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛, рдЬреИрд╕реЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг, рдЖрджреЗрд╢ рджреЗрдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдФрд░ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред рдкреНрд░рдмрдВрдзрдХ рдХрд┐рд╕реА рд╡рд╕реНрддреБ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЗрд░рдлреЗрд░ рдХрд░рддреЗ рд╣реИрдВред


рд░рд╛рдЬреНрдп рдореЗрдВ рдХреЛрдИ рднреА рдкрд░рд┐рд╡рд░реНрддрди (рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЗрдЯрд╛ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди) рдХреЗрд╡рд▓ рдкреНрд░рдмрдВрдзрдХреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдкреНрд░рдмрдВрдзрдХ рд╕реНрд╡рдпрдВ рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рд╕рд┐рд╡рд╛рдп рдкреНрд░рджрд░реНрд╢рди рдпрд╛ рд░рдирдЯрд╛рдЗрдо рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЗ рдорд╛рдорд▓реЛрдВ рдореЗрдВред


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


рдкреНрд░рдмрдВрдзрдХ рдЖрдкрд╕ рдореЗрдВ рдмрд╛рддрдЪреАрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рджреГрд╢реНрдп (рдкреНрд░рджрд░реНрд╢рди, vyuha)


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


рдбреЛрдореЗрди рдСрдмреНрдЬреЗрдХреНрдЯ


рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрд░реЗрдЦ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИрдВ, рдпреЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдВрд╕реНрдерд╛рдПрдВ рд╣реИрдВ рдЬреЛ рд╡реНрдпрд╛рдкрд╛рд░ рдореЙрдбрд▓ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддреА рд╣реИрдВред рдЕрдиреНрдп рдкреИрдЯрд░реНрди рдореЗрдВ, рд╡реЗ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рддрд░реНрдХ рдХреЗ рд╕рд╛рде рд╕рдВрдпреЛрдЬрди рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдкрд░рдд ( рд╡реНрдпрд╡рд╕рд╛рдп рдореЙрдбрд▓ ) рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣рд╛рдВ, RxVMS рдореЗрдВ, рдЙрдирдХреЗ рдкрд╛рд╕ рдХреЛрдИ рддрд░реНрдХ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдмрджрд▓рддрд╛ рд╣реИред рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛, рдпреЗ рд╕рд░рд▓ рдбреЗрдЯрд╛ рдкреНрд░рдХрд╛рд░ рд╣реИрдВ - рд╕рд╛рджреЗ рдбреЗрдЯрд╛ рдСрдмреНрдЬреЗрдХреНрдЯ (рдпрджрд┐ рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдкреИрдЯрд░реНрди рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛, рддреЛ рдпрд╣ RxVMMS рдХреА рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛, рдЬреЛ рдереЛрдбрд╝рд╛ рд▓рдВрдмрд╛ рд╣реИ рдФрд░ рднреНрд░рдо рдХреА рд╕реНрдерд┐рддрд┐ рдкреИрджрд╛ рдХрд░рддрд╛ рд╣реИ - рд╡реАрдПрдо рдХреЛ рдПрдХ ViewModel рдХреЗ рд░реВрдк рдореЗрдВ рдЧрд▓рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред рддрд╛рд░реНрдХрд┐рдХ рд░реВрдк рд╕реЗ, рдбреЛрдореЗрди рдСрдмреНрдЬреЗрдХреНрдЯ рдкреНрд░рдмрдВрдзрдХ рдкрд░рдд рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИрдВред


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреЛрд╕реНрдЯ рдЗрди рддрддреНрд╡реЛрдВ рдХреЗ рд╕рд╛рд░ рдФрд░ рдмрд╛рддрдЪреАрдд рдХреЛ рдкреНрд░рдХрдЯ рдХрд░реЗрдВрдЧреЗред

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


All Articles