Middle
Ի՞նչ է մոդելային ճարտարապետական MVP- ն։
sobes.tech AI
Պատասխան AI-ից
MVP (Մոդել-Դիտող-Ներկայացուցիչ) — դա ճարտարապետական նմուշ է, որը բաժանում է հավելվածը երեք հիմնական մասի՝
- Մոդել: պարունակում է տվյալները և բիզնես-լոգիկան։ Անկախ է դիտումից կամ ներկայացուցչից, ամփոփելով հավելվածի վիճակը։
- Դիտում: պատասխանատու է տվյալների ցուցադրման և օգտագործողի գործողությունները գրավելու համար։ Սա մաքուր ներկայացում է, պասիվ, առանց բիզնես-լոգիկայի։ Դիտումը հաղորդում է ներկայացուցչին օգտագործողի մուտքային գործողությունների մասին։
- Ներկայացուցիչ: հանդես է գալիս որպես միջնորդ Մոդել և Դիտում միջև։ Ստանում է տվյալները Մոդելից, մշակում է դրանք և փոխանցում Դիտում՝ ցուցադրման համար։ Ստանում է իրադարձություններ Դիտումից և կառավարում է Մոդելին՝ այդ իրադարձությունների պատասխան։ Ներկայացուցիչը պարունակում է որոշումների ընդունման տրամաբանություն՝ ինչ պետք է ցուցադրվի և ինչ գործողություններ պետք է կատարվեն։
Առավելություններ:
- Պատասխանատվության բաժանում: Լոգիկայի և ներկայացման հստակ բաժանում։
- Թեստավորման հնարավորություն: Մոդելը և Ներկայացուցիչը հեշտությամբ թեստավորվում են առանձին, քանի որ չեն կախված օգտագործողի ինտերֆեյսից։
- Բարձրացրած պահպանում: Փոփոխությունները Դիտումում, Մոդելում կամ Ներկայացուցիչում քիչ են ազդում մյուս բաղադրիչների վրա։
- Հնարավորություն ունենալ մի քանի Դիտումներ մեկ Մոդելի համար: Տարբեր ներկայացումներ կարող են օգտագործել նույն Ներկայացուցիչի և Մոդելի տրամաբանությունը։
Հարցազրույցի օրինակ:
- Օգտագործողը սեղմում է կոճակ Դիտում։
- Դիտումը տեղեկացնում է Ներկայացուցչին իրադարձության մասին (ներկայացուցիչի մեթոդը կանչվում է)։
- Ներկայացուցիչը ստանում է իրադարձությունը, դիմում է Մոդելին տվյալներ ստանալու կամ փոփոխելու համար։
- Մոդելը մշակում է հարցումը և վերադարձնում արդյունքը Ներկայացուցչին։
- Ներկայացուցիչը ստանում է տվյալները Մոդելից և թարմացնում է Դիտումը (կանչում է Դիտման մեթոդները նոր տվյալները ցուցադրելու համար)։
MVP-ն կարող է իրականացվել տարբեր կերպ՝
- Պասիվ Դիտում: Դիտումը ամբողջությամբ պասիվ է և միայն ցուցադրում է Ներկայացուցչից փոխանցված տվյալները։ Բոլոր օգտագործողի մուտքային գործողությունների մշակումը գտնվում է Ներկայացուցչում։
- Կառավարող վերահսկիչ: Դիտումը պարունակում է որոշակի տրամաբանություն, իսկ Ներկայացուցիչը մշակում է ավելի բարդ գործողություններ և փոխազդեցություն Մոդելին։ Դիտումը կարող է մասամբ թարմացնել իր վիճակը ուղղակիորեն Մոդելից՝ data binding-ի միջոցով։
Ընտրությունը կախված է Դիտման բարդությունից և թեստավորման պահանջներից։