Waa maxay MVC? Baro qaab dhismeedka software -kan!

Wax ka baro Waa maxay MVC? Iyo maadaama noocyadan cusub ee softiweerku ay wax ka beddeleen adduunkii koodhka iyo astaamihiisii ​​ugu muhiimsanaa, waxaas oo dhan waxaa mahad leh waxaan hoos kuugu sheegi doonno.

waa maxay-mvc-2

MVC ama Control View Controller, habka cusub ee loo codeeyo

Waa maxay MVC?

MVC wuxuu u taagan yahay Maareeyaha Muuqaalka, hadafkiisu waa inuu u adeego sida aasaaska naqshadeynta software. Qaab dhismeedka softiweerku waa tilmaamo fududeeya dhismaha walxahan, oo siinaya tusaalayaal sida ay noqon doonto.

MVC -ga, wuxuu kaga duwan yahay dhismayaasha kale ee softiweerka, wuxuu kala saaraa koodh kasta si uu u daryeelo hawl gaar ah, habkan, koodhka waxaa lagu horumariyaa hal shaqo waxaana la sameeyaa iyada oo aan kala go 'lahayn.

Si loo fududeeyo isticmaalkeeda, isticmaal is -dhexgalka isticmaalaha, maadaama kuwani ay fududahay in la fahmo oo si toos ah loogu xiro kombiyuutarka isticmaalaha Internetka. Sidoo kale, koodka MVC waxaa loo adeegsan karaa barnaamijyo ama qaabab kala duwan.

Wakhtigeeda isticmaalkiisu waa dheer yahay, wax -ku -ool ah is -dhexgalkiisuna waa sahlan yahay, maxaa yeelay waxay doonaysaa inay abuurto softiweer iyada oo aan lahayn waxyaabo badan oo murugsan, sidii waagii hore. Nidaamku wuxuu adeegsadaa koodhyo kala duwan, xitaa haddii la isticmaalo, oo uu kala sooco si ay kaliya ugu shaqeeyaan hal hawl ama fikrad kasta.

Sida kor lagu sharaxay, waa dhisme, laakiin waayo? Waa hagaag, sida qorshaha dhismaha, wuxuu dejiyaa saddex qorshe shaqo oo kala duwan; moodeelka, aragtida iyo xakamaynta.

Fikraddan kala -soocidda fikradda koodhadhku waa mid duug ah oo dardar ku heshay qaab -dhismeedyada wanaagsan ee soo baxay. Qaab -dhismeedyadu waa nooc ka mid ah softiweerka oo doonaya inuu xaliyo mushkilad dhismihiisuna wuxuu ku salaysan yahay dhibaatada lafteeda.

Waa maxay MVC?: Taariikhda Tusaalaha, Aragtida & Xukumayaasha

Fikradda Model -ka, Aragtida & Xakameeyayaasha ayaa la sheegay inay ahayd kahor abuurista bogga internetka. Waxay ahayd fikrad ka timid GUI ama is -dhexgalka fiidiyaha garaafka; GUIs waa aalado la shaqeeya is -dhexgalka isticmaaleyaasha, kuwaas oo adeegsada softiweer u taagan waxyaabaha muuqaalka leh, xogta laga heli karo nidaamka.

Waxay ahayd mid ka mid ah hal -abuurnimada hormuudka u ah adeegsiga softiweerka oo u kala qaybisay fikradeeda shaqooyin kala duwan. Waxay u bilaabatay sidii fikrad 70-meeyadii, markii dambe 80-meeyadii ayaa la hirgeliyey nooc loogu talagalay Smalltalk-80.

Smalltalk-80 waa luqad barnaamij firfircoon oo, ka duwan MCV, aan kala saarin fikradaha iyo shaqooyinka. Ururka MCV waxaa la siin doonaa maktabad shaqeyneysa, oo tijaabinaysa saldhigyadeeda.

Ugu dambayntii, dabayaaqadii sagaashameeyadii, MVC waxaa loo siidaayay sidii fikrad u gaar ah, iyada oo laga soocay Smalltalk-80. Maalmihiisii ​​hore, MCV wuxuu ahaa barnaamij aad u aasaasi ah oo aan weli hirgelin astaamihiisa kala -saaridda koodhka, oo ku saleysan kaliya habka wax -soo -gelinta.

Iyada oo la kobcinayo dhowr bilood ayaa tani isbeddelaysay, hirgalinta aragtida, taas oo ahayd qaabka wax soo saarka oo la isku daray moodeelka wax -soo -saarka. Muddo sanado ah, nooca noocan ahi kuma filna codsiyada hadda jira, sidaa darteed, MVC waxay u xuubsiibtay fikradda maanta la yaqaan, hase yeeshee, waxay soo martay noocyo kala duwan ilaa ay noqotay waxa ay maanta tahay.

Xakameeyaha Aragga Hierarchical View (HMVC)

Waa mid ka mid ah kala duwanaanshaha ugu horreeya, waxay kacday bilawgii 2000. Si ka duwan MVC, HMCV wuxuu dejiyaa moodalka marka hore iyo dhammaadka aragtida, isagoo ah geedi socod waxyar ka dheer; Noocan ma oggola aragtida inay si toos ah u eegto ama u hesho xogta.

Adaporka View Model (MVA)

Waa nooc u dhow waxa MVC noqon doono, isagoo leh qaab dhismeed la mid ah si loo kala saaro hawl kasta ama koodh heer ahaan. Si ka duwan sidii hore, MVA waxay shaqaysaa heer kasta, laakiin ma oggolaanayso wax xidhiidh ah oo u dhexeeya tusaalaha iyo aragtida sida MVC.

Soo -bandhigaha Muuqaalka Tusaalaha (MVP)

Soo -bandhigaha Muuqaalka Tusaalaha ayaa sii wada in loo adeegsado naqshadeynta dhibcaha isku xirka u dhexeeya isticmaalaha iyo PC -ga. Waxaa loo adeegsadaa tijaabooyinka halka uu server -ku siinayo jawaabo madaxbannaan oo uu beddelo xogta uu tusaalahu bixiyo oo uu ku cadaadiyo aragtida.

Viewmodel Model View (MVVM)

Qaab dhismeedka softiweerku wuxuu furaa dhammaan qaab -dhismeedka moodalka iyo aragtida, kuwaas oo midba midka kale ku xiran yahay, gaarista wareejinta xogta oo dhammaystiran. Tani waxay horumarinaysaa qaab muuqaal oo wanaagsan waxayna bixisaa horumarin garaafyo wanaagsan ee codsiyada.

Muxuu yahay MVC?

Qalabkani waa nidaam abuurka softiweer, kaas oo loo adeegsado sameynta codsiyo tayo sare leh, sidaa darteed, maanta waxaa la raadiyaa tayada ugu wanaagsan iyo fududeynta barnaamijyada.

Tan iyo markii la abuuray shabakadda iyo kombiyuutarada, barnaamijku wuxuu qaatay koror aad u sarreeya injineerada nidaamka ayaa qaatay kaalin muhiim ah, maxaa yeelay waxay naqshadeeyaan codsiyo waaweyn ama software rogay adduunka oo dhan. Abuuritaanka barnaamij kasta waxaa lagama maarmaan ah in la isticmaalo nidaam koodh ku habboon.

Barnaamij -gelinta ka hor waxay ahayd wax culus oo dhib badan, taasoo qaadan karta waqti dheer in la keeno wax cusub nidaam ahaan ama codsi ahaan, si kastaba ha ahaatee, adeegyo yar ama barnaamijyo ayaa la sameeyay oo fududeeya hawsha. Laga soo bilaabo barnaamijyo kala saaray koodhkii ama u suurtagashay in la isku daro, xataa mid mid.

Xakameeyaha Muuqaalka Tusaalaha wuxuu ahaa xalka ugu fiican ee injineerada nidaamka ama barnaamijyada, maxaa yeelay wuxuu u habeeyay heerar qalliin kasta oo ay ahayd inuu koodhku sameeyo oo hawlna ma kala joojin kan kale.

Geedi -socodka barnaamijka ayaa aad loo fududeeyay sababtuna waa sida MVC -du ay u oggolaato in dib loo adeegsado koodhadhka, iyada oo la helayo ku -tiirsanaan dhammaystiran qayb kasta oo la qorsheeyay.

MVC-gu ma aha oo kaliya inay bixiso fududeynta barnaamijka, laakiin sidoo kale waxay u oggolaaneysaa in si dhakhso leh loo sameeyo waxayna keentaa barnaamijyo tayo sare leh.

Haddii aad jeceshahay maqaalkan, waxaan kugu martiqaadayaa inaad akhrido "Fasallada iyo Walxaha Java", shaqo dhammaystiran oo fikradaha ku saabsan Java, hubaal waad jeclaan doontaa.

HTML oo aan lahayn MVC

Waxay noqon kartaa wareer marka hore dhammaan sharraxaadda qaab -dhismeedkan softiweer, si kastaba ha noqotee, waxay tixgeliyaan wax sida HTML, CSS iyo walxaha PHP.

Mid kasta oo iyaga ka mid ah ayaa loo adeegsadaa in lagu qorsheeyo ama lagu naqshadeeyo bog; Waxa ugu caansan HTML, oo ​​bilowgii aan lahayn qaab dhismeed sidan u wanaagsan oo waqtigii barnaamijka aan kala saarin mid ka mid ah shaqooyinkeeda, taas awgeed, koodhkii ayaa la isku daray oo haddii aad rabto inaad wax beddesho, waa inaad bedeshaa koodka oo dhan.

Dhibaatada HTML waxay ka dhigtay hawsha barnaamijka mid aad u daal badan, laakiin qaar ka mid ah qorayaasha koodhku waxay lahaayeen fikrad weyn oo ah inay abuuraan wax kala saara mas'uuliyadaha markay barnaamijka samaynayaan: waxay abuureen luuqadda CSS. Luqadda CSS waxay oggolaanaysaa in la qoondeeyo oo la kala saaro hawsha koodh kasta, iyadoo meesha laga saarayo hawsha daallan ee soo noqnoqoshada ama beddelidda koodh dhan.

Xeerka Spaghetti

Xaaladda HTML, kaliya kuma dhacdo isaga; Caadiyan, si aad u abuurto bogag kala duwan waxaad u janjeedhaa inaad isku darto koodhyo, kuwaas oo fuliya hawlo kala duwan. Xeerarku waxay u muuqdaan inay isu yimaadaan si waxa la rabo loo soo bandhigo, wax faa'ido leh, hase yeeshe, iyadoo la sameeyo khaladka ugu yar ee koodhadhka qaarkood, waxay ku qasbeysaa in geedi socodka oo dhan la soo celiyo.

Luqadda la adeegsado, ayaa la isku daraa waxayna keentaa in barnaamij -sameeyuhu uu tallaabo tallaabo u qaado si uu u hagaajiyo waxyaabo laga yaabo, inaysan xiriir la lahayn.

Dhammaan khaladaadka ama xaaladaha noocaan ah waxaa lagu xalliyaa si fudud oo luuqadda loo kala saaro, iyadoo lagu daray in mid walba uu xoogga saarayo hawsha loo igmaday. Kaliya maahan khaladaad kala -soocid, laakiin sidoo kale dulqaad la'aanta xilligan la doonayo in dib loo adeegsado koodh, oo markii hore la isku dhejiyay.

Haddii isla koodka loo isticmaali lahaa barnaamij ama shaqo kale, waxay ahayd in si tartiib tartiib ah loo sameeyo, waxaa mahad leh MVC tani mar dambe lagama maarmaan ma aha, maxaa yeelay koodhkii dib ayaa loo isticmaalay iyo wixii horeba loo sameeyay hal daqiiqad.

Tani waa sida uu u shaqeeyo nidaamka MVC, oo ah matalaad fudud oo ah sida geeddi -socodku u dhaco

Hordhaca Soo Bandhiga Muuqaalka Tusaalaha

Bilowgii maqaalka, waxaa la sharraxay sida ay u shaqeyso iyo sababta ay moodelku u shaqeyso, si kastaba ha ahaatee, mid kasta oo ka mid ah qeybaheeda si gaar ah looma sharxin: Qaabka, Aragga iyo Xakameeyaha.

Qaabka

Waa heerka koowaad oo wuxuu helaa dhammaan xogta la xiriirta nidaamka iyo hawlgalkiisa, taas oo ah, waxay maamushaa nuxurka nidaamka, cusboonaysiinta suurtagalka ah.

Waxa kale oo jira “caqliga ganacsiga”, oo ka kooban sida nidaamku u kaydiyo, u beddelo una beddelo macluumaadka muuqaalkiisa.

Qaabka ayaa u oggolaanaya adeegsadaha inuu isticmaalo macluumaadka ay u baahan yihiin, isagoo aan ka raadin faylal aan dhammaad lahayn, waxay u baahan yihiin oo kaliya inay galaan oo waxay ku tusi doontaa, iyada oo loo marayo "aragtida", waxa ay u baahan yihiin. Si aad wax uga beddesho nidaamka ama macluumaadka, waa inaad dhex martaa “kontoroolaha”, kaasoo u diraya macluumaadka moodeelka.

Caadi ahaan, macluumaadka waxaa lala shaqeeyaa kontoroolayaal kale, halkii laga isticmaali lahaa SQL (luqad nidaam si loo helo koontarool dhammaystiran xogta), waxaa si toos ah loogu dhejiyaa qaybaha kale ee xogta, oo ka kooban fasalkiisa iyo shaygiisa.

Aragtida

Aragtidu waa darajada halka macluumaadka ay soo dirtay tusaalahu u matalayo isticmaalaha, oo ku tusinaya waxa ku jira interface interface. Koodhka barnaamijka ayaa ka tarjumaya, kaas oo laga shaqayn doono laguna soo bandhigi doono is -dhexgalka isticmaalaha.

Curiyuhu wuxuu ku shaqeeyaa furayaasha HTML iyo PHP, maxaa yeelay waa koodhyada ugu habboon dhisidda bog, server, iwm. Xeerarkan waxaa loo diraa wax -soo -saarka, taas oo ah is -beddelka guud ee macluumaadka uu soo diray tusaalaha.

Xakameeyaha

Xakameeyuhu waa kan bixiya jawaabaha codsiyada isticmaalaha, oo lagu sameeyay qaabka. Codsiyada waxay la xiriiraan macluumaadka, laga bilaabo tafatirka, abuurista ama raadinta nooc kasta oo macluumaad ah.

Waa aalad sidoo kale kuu oggolaanaysa inaad wax ka beddesho sida macluumaadka loo muujiyo, taas oo ah, sida macluumaadka loo socodsiin doono oo looga dhex muuqan doono “aragtida”, tani markeeda waa isbeddel ku yimid sida tusaalahu u siinayo macluumaadka. Si fudud u dhig, xakamayshuhu waa buundo u dhexaysa tusaalaha iyo aragtida, taas oo aqbasha codsi oo gaadhi karta aragtida si ay uga tarjunto si kale.

Xakameeyuhu waa kan ka jawaaba waxa barnaamijka la samaynayo ama arjiga la samaynayo u baahan yahay, ujeedka ugu dambeeya ee uu leeyahay waa in dhammaan macluumaadka soo gaadhaan bilowgiisa ilaa bixitaankiisa.

waa maxay mvc

Sidee bay qaybaha u dhexgalaan?

Shaqada qayb kasta, sida la arki karo, waxaa soo saaray amar waxaana mid walba saamayn ku leeyahay shaqada kan kale. Xakameeyuhu wuxuu ku biiraa kuwa kale, taasoo ka dhigaysa shaqada mid sii kordheysa oo la siiyo si loo abuuro barnaamijka ama arjiga, hase yeeshee, tani waa sharraxaad ka wanaagsan sida habka oo dhan loo sameeyo:

  1. Isticmaalaha Internetku wuxuu bilaabaa inuu adeegsado ikhtiyaarrada kala duwan si uu u galo is -dhexgalka isticmaalaha, taas oo ah, wuxuu galayaa bogga ama server -ka isagoo dhammaystiraya qaar.
  2. Codsiga waxaa helaya koontaroolaha, kaas oo u diraya farriinta si uu u arko iyo tusaalaha. Codsi kasta waxaa lagu kiciyaa iyada oo loo marayo maamulaha dhacdada (Java ama HTML code, kaas oo bixiya jawaab koodh dibadeed).
  3. Xakameeyuhu si uu u fuliyo codsiga, wuxuu galaa tusaalaha, halkaas oo uu u adeegsado macluumaadka una beddelo ficilka wixii uu u baahan yahay. Si loo fuliyo falalka qaarkood, koontaroolehu waa inuu adeegsadaa koodhadh kala duwan oo la soo koobay, marka la soo koobo, qaabka taliska.
  4.  Xaaladaha qaarkood, koontaroolaha si uu u dhammaystiro hawsha dhammaystiran wuxuu adeegsan doonaa xog badan oo tusaalaha ah, oo ay tahay inuu u diro si uu u arko, oo u dhaqma sidii buundo.
  5. Xakameeyuhu wuxuu diraa dhammaan macluumaadka iyo amarka uu bixiyay isticmaalaha Internet -ka markuu arko, kaas oo ay tahay inuu muujiyo muuqashada waxa la doonayo.
  6. Aragtida, si loo bixiyo muuqaal wanaagsan, waxay isticmaashaa macluumaadka ugu badan ee ay ka heli karto tusaalaha waxayna ka tarjumaysaa wax kasta oo ku jira.
  7. Maaddaama moodeelku uusan yeelan karin macluumaad ku saabsan waxa dhacaya marka la eego, wuxuu adeegsadaa nooc softiweer ah oo uga diga isbeddel kasta, sidaasna, wuxuu ku sameeyaa isbeddelka lagama maarmaanka u ah macluumaadka ama is -dhexgalka.
  8. Interface -ku wuxuu soo celiyaa geedi socodka iyadoo ku xiran isdhexgal kasta oo isticmaalaha Internetku ku leeyahay tirada falalka uu sameeyo.

Sidee loogu adeegsadaa barnaamijyada webka?

Markii la sameeyay software -ka MVC, waxaa loo malaynayay in lagu hirgalin doono aaladaha desktop -ka, maadaama hawlgalkeeda iyo wax ka qabashadeedu ay noqon doonto mid degdeg ah. Horumarka teknolojiyaddu waxay suurtagelisay in la waafajiyo softiweerka codsiyada dalwaddu, maareynta in laga jawaabo iyadoon la sii cayimin sida barnaamijyada desktop -ka.

MVC -ga waxaa loo habeeyay luuqadaha dalwaddii, iyadoo la gaaray in heerarka kala duwan ay la jaan qaadi karaan luqadaha sida HTML ama JavaScript, iyo kuwo kale. Qaab -dhismeedyada waxaa loo isticmaalaa si loo awoodo in la isku waafajiyo qaab -dhismeedka MVC, oo loo sameeyo mid ka mid ah shabakadda.

Qaab -dhismeedka MVC ee jawaabta dalwaddu waa tan “macmiilka iyo server -ka”, qorshahan macmiilku wuxuu codsanayaa oo adeegaha ayaa noqon doona qaataha, kaas oo siin doona natiijada ama jawaabta codsiga.

Bilowgii, si loo hirgeliyo qaab -dhismeedyada noocan ah, horumarinta webka ma ahayn mid dhammaystiran, sidaa darteed, diiradu waxay ahayd qaab -dhismeedka “macmiil dhuuban”. Macmiilka caatada ah waa qaab dhismeed asaasi ah, maxaa yeelay jawaabta waxaa lagu bixiyaa server -ka dhexe, sidaas darteed, waxaa laga yaabaa inay xoogaa dambe noqoto; isku -xirka jawaabta wuxuu si toos ah ugu dhexeeyaa soo -gelinta iyo soo -saarka, iyada oo aan wax buundo iyo farsamayn ah la samayn.

Habkani si fiican buu u shaqeeyay, wax walba waxaa la bixiyaa isla marka uu isticmaalaha Internetku galo xiriirka, laga bilaabo markaa ficilka furaya isku xirka, wuxuu maraa kontoroolka wuxuuna bixiyaa amarka si loo arko si ay u muujiso sawirka ay tahay inuu adeegsaduhu eeg Saddexda qaybood ee MVC waxay ku jiraan server -ka dalwaddii, kaas oo ah kan jawaabta bixin doona.

MVC iyo keydka macluumaadka

Horumarka teknolojiyaddu wuxuu oggolaaday horumarinta adeegayaasha iyo afafka cusub ee abuuraya horumar ka wanaagsan MVC, kaas oo u oggolaanaya jawaab -celinta inay noqoto mid dhib yar oo toos u ah adeegsadaha.

Si codsiyadu u yeeshaan horumar wanaagsan, MVC waa inay lahaataa xog -ururin u adeegta taageero ahaan. Macluumaadka xog -ururintu waa nidaam maareyn dhammaan macluumaadka arjiga, isagoo taageero u ah moodeelka, ka dhigaya inuu kaydiyo ama wax ka beddelo wax kasta oo uu u baahan yahay.

Aragtida iyo koontaroolaha ayaa laga fogeeyaa keydka xogta, maadaama ay jirto kala -soocid lakabyo, oo u oggolaanaysa qaybta garaafka in loo hagaajiyo sida ugu wanaagsan, iyadoo la siinayo hab muuqaal oo dhammaystiran dhammaan macluumaadka iyo dhammaystir kasta. Dhinacaaga ka shaqee.

Haddii aad jeceshahay maqaalkan, waxaan kugu martiqaadayaa inaad akhrido "Noocyada qabanqaabada barnaamijka", wuxuu sharraxayaa ahmiyaddiisa buuxda ee sameynta barnaamijyada, waan ogahay inaad jeclaan doonto.


Ka tag faalladaada

cinwaanka email aan la daabacin doonaa. Beeraha loo baahan yahay waxaa lagu calaamadeeyay la *

*

*

  1. Masuul ka ah xogta: Actualidad Blog
  2. Ujeedada xogta: Xakamaynta SPAM, maaraynta faallooyinka.
  3. Sharci: Oggolaanshahaaga
  4. Isgaarsiinta xogta: Xogta looma gudbin doono dhinacyada saddexaad marka laga reebo waajibaadka sharciga ah.
  5. Kaydinta xogta: Macluumaadka ay martigelisay Shabakadaha Occentus (EU)
  6. Xuquuqda: Waqti kasta oo aad xadidi karto, soo ceshan karto oo tirtiri karto macluumaadkaaga.