Sobes.tech
Middle

Ի՞նչ է մոդելային ճարտարապետական MVP- ն։

sobes.tech AI

Պատասխան AI-ից

MVP (Մոդել-Դիտող-Ներկայացուցիչ) — դա ճարտարապետական նմուշ է, որը բաժանում է հավելվածը երեք հիմնական մասի՝

  1. Մոդել: պարունակում է տվյալները և բիզնես-լոգիկան։ Անկախ է դիտումից կամ ներկայացուցչից, ամփոփելով հավելվածի վիճակը։
  2. Դիտում: պատասխանատու է տվյալների ցուցադրման և օգտագործողի գործողությունները գրավելու համար։ Սա մաքուր ներկայացում է, պասիվ, առանց բիզնես-լոգիկայի։ Դիտումը հաղորդում է ներկայացուցչին օգտագործողի մուտքային գործողությունների մասին։
  3. Ներկայացուցիչ: հանդես է գալիս որպես միջնորդ Մոդել և Դիտում միջև։ Ստանում է տվյալները Մոդելից, մշակում է դրանք և փոխանցում Դիտում՝ ցուցադրման համար։ Ստանում է իրադարձություններ Դիտումից և կառավարում է Մոդելին՝ այդ իրադարձությունների պատասխան։ Ներկայացուցիչը պարունակում է որոշումների ընդունման տրամաբանություն՝ ինչ պետք է ցուցադրվի և ինչ գործողություններ պետք է կատարվեն։

Առավելություններ:

  • Պատասխանատվության բաժանում: Լոգիկայի և ներկայացման հստակ բաժանում։
  • Թեստավորման հնարավորություն: Մոդելը և Ներկայացուցիչը հեշտությամբ թեստավորվում են առանձին, քանի որ չեն կախված օգտագործողի ինտերֆեյսից։
  • Բարձրացրած պահպանում: Փոփոխությունները Դիտումում, Մոդելում կամ Ներկայացուցիչում քիչ են ազդում մյուս բաղադրիչների վրա։
  • Հնարավորություն ունենալ մի քանի Դիտումներ մեկ Մոդելի համար: Տարբեր ներկայացումներ կարող են օգտագործել նույն Ներկայացուցիչի և Մոդելի տրամաբանությունը։

Հարցազրույցի օրինակ:

  1. Օգտագործողը սեղմում է կոճակ Դիտում։
  2. Դիտումը տեղեկացնում է Ներկայացուցչին իրադարձության մասին (ներկայացուցիչի մեթոդը կանչվում է)։
  3. Ներկայացուցիչը ստանում է իրադարձությունը, դիմում է Մոդելին տվյալներ ստանալու կամ փոփոխելու համար։
  4. Մոդելը մշակում է հարցումը և վերադարձնում արդյունքը Ներկայացուցչին։
  5. Ներկայացուցիչը ստանում է տվյալները Մոդելից և թարմացնում է Դիտումը (կանչում է Դիտման մեթոդները նոր տվյալները ցուցադրելու համար)։

MVP-ն կարող է իրականացվել տարբեր կերպ՝

  • Պասիվ Դիտում: Դիտումը ամբողջությամբ պասիվ է և միայն ցուցադրում է Ներկայացուցչից փոխանցված տվյալները։ Բոլոր օգտագործողի մուտքային գործողությունների մշակումը գտնվում է Ներկայացուցչում։
  • Կառավարող վերահսկիչ: Դիտումը պարունակում է որոշակի տրամաբանություն, իսկ Ներկայացուցիչը մշակում է ավելի բարդ գործողություններ և փոխազդեցություն Մոդելին։ Դիտումը կարող է մասամբ թարմացնել իր վիճակը ուղղակիորեն Մոդելից՝ data binding-ի միջոցով։

Ընտրությունը կախված է Դիտման բարդությունից և թեստավորման պահանջներից։