એમવીવી અને એમવીપી વચ્ચેનો તફાવત.

Anonim

MVC vs MVP

મોડલ વ્યૂ કંટ્રોલર (જે MVC તરીકે પણ ઓળખાય છે) એ વાસ્તવિત સ્વરૂપની એક પેટર્ન છે જેનો ઉપયોગ ખાસ કરીને સોફ્ટવેર એન્જિનિયરીંગમાં થાય છે.. આ ચોક્કસ પેટર્નને 'ડોમેન લોજિક' તરીકે ઓળખવામાં આવે છે તેને અલગ કરવા માટે ઉપયોગમાં લેવાય છે - જે ફક્ત વપરાશકર્તા માટે કોઈ એપ્લિકેશનનો તર્ક છે. તે ઇનપુટ અને પ્રસ્તુતિથી અલગ છે (GUI તરીકે ઓળખાય છે), અને સ્વતંત્ર વિકાસ પરવાનગી આપે છે.

મોડલ વ્યૂ પ્રસ્તુતકર્તા (એમવીપી તરીકે પણ ઓળખાય છે) એ MVC ની સીધી ક્રમચય છે. તે એક સોફ્ટવેર પેટર્ન છે (વધુ ચોક્કસ રીતે, યુઝર ઇન્ટરફેસ ડિઝાઇન પેટર્ન) જે સ્વયંચાલિત એકમોના પરીક્ષણ માટે ખાસ રચાયેલ છે, અને પ્રસ્તુતિ તર્કમાં ચિંતાના વિભાજન તરીકે ઓળખાય છે તે સુધારવામાં આવે છે. ચિંતાઓનો અલગ છે તે પ્રક્રિયા એવી છે કે જેના દ્વારા કમ્પ્યુટર પ્રોગ્રામ અલગ લક્ષણોમાં વિભાજીત થાય છે જે ઓવરલેપ નથી, તે કેવી રીતે કાર્ય કરે છે તેના સંદર્ભમાં.

MVC નો મોડેલ ભાગ અનિવાર્યપણે એક પેટર્ન છે જે ચોક્કસ ડોમેન્સ દ્વારા ડેટાને રજૂ કરે છે જેનો ઉપયોગ એપ્લિકેશનને કાર્ય કરવાની મંજૂરી આપવા માટે થાય છે. દૃશ્ય ભાગ મોડેલને વપરાશકર્તાઓ માટે યોગ્ય ક્રિયાપ્રતિક્રિયામાં પરિવર્તિત કરે છે - આ સામાન્ય રીતે યુઝર ઇન્ટરફેસ ઘટક છે. છેવટે, નિયંત્રક ભાગ સૌથી યોગ્ય રીતે ઇનપુટ મેળવે છે. મોડેલમાં મળી આવેલા પદાર્થો માટે નિર્ણયો કરીને, નિયંત્રક પ્રતિભાવ માટે ઉત્પ્રેરક તરીકે કાર્ય કરે છે.

એમવીપીનો મોડેલ ભાગ વપરાશકર્તા ઇન્ટરફેસમાં પ્રદર્શિત થતી માહિતી (અથવા તેના પર કાર્ય કરે છે) ને વ્યાખ્યાયિત કરે છે. દૃશ્ય ભાગ મોડેલમાં વ્યાખ્યાયિત થયેલ ડેટા દર્શાવે છે, અને પ્રસ્તુતકર્તાને વપરાશકર્તાને સૂચિત આદેશો (ઇવેન્ટ્સ તરીકે ઓળખાય છે) મોકલે છે (જે આ ડેટા પર કાર્ય કરશે). પ્રસ્તુતકર્તા, તે પછી, મોડેલ પર કામ કરે છે અને મોડેલનું દૃશ્ય. જેમ કે, તે રીપોઝીટરીઓ (મોડેલમાં મળી આવે છે) માંથી ડેટા પુનઃપ્રાપ્ત કરવા સક્ષમ છે, ડેટાને ચાલુ રાખીને અને તેને ફોર્મેટ કરવા માટે, તેને સરળતાથી દૃશ્યમાં પ્રદર્શિત કરવા માટે.

એમવીવીના વિવિધ પ્રકારો છે. જેમ કે, નિયંત્રણનો પ્રવાહ ખૂબ જ સખત ક્રમમાં છે: પ્રથમ, વપરાશકર્તા ઇન્ટરફેસ (દાખલા તરીકે, માઉસ પર એક બટન દબાવી) સાથે વાતચીત કરશે, અને પછી નિયંત્રક ઇનપુટ ઇવેન્ટની કાળજી લેશે અને તેને તેમાં બદલી કરશે. યોગ્ય વપરાશકર્તા ક્રિયા આગળ, નિયંત્રક વપરાશકર્તાએ કરેલા મોડેલને સૂચિત કરે છે, જે મોડેલને તેનું રાજ્ય બદલીને મોટે ભાગે પરિણમશે (ઉદાહરણ તરીકે, અપડેટ તરીકે). આ દેખાવ પછી યુઝર ઇન્ટરફેસ બનાવવા માટે મોડેલને પ્રશ્ન ઉભો કરે છે. છેલ્લે, વપરાશકર્તા ઇન્ટરફેસ સૂચનો માટે રાહ જુએ છે જે ચક્રને ફરી શરૂ કરશે.

સારાંશ:

1. MVC એ એક આર્કિટેક્ચરલ પેટર્ન છે જે ડોમેન લોજિકને અલગ કરે છે; એમવીપી (MVP) એમવીવીની વંશજ છે જે સ્વયંચાલિત એકમોને પરીક્ષણ કરવામાં મદદ કરે છે અને ચિંતાના વિભાજનને સુધારવા માટે રચાયેલ છે.

2 એમવીસીની બાબતે, મોડેલ ડેટાને રજૂ કરે છે, દૃશ્ય મોડેલને વપરાશકર્તા મૈત્રીપૂર્ણ ક્રિયાપ્રતિક્રિયામાં પરિવર્તિત કરે છે, અને નિયંત્રક ઇનપુટ મેળવે છે; એમવીપીની બાબતે, મોડેલ ડેટાને વ્યાખ્યાયિત કરે છે, દૃશ્ય તે દર્શાવે છે, અને પ્રસ્તુતકર્તા મોડેલ અને તેના દેખાવ પર કાર્ય કરે છે.