ఈ మెటీరియల్ "ఇంట్రడక్షన్ టు ఎంటర్ప్రైజ్ డెవలప్మెంట్" సిరీస్లో భాగం. మునుపటి కథనాలు:
- నెట్వర్కింగ్ గురించి
- సాఫ్ట్వేర్ ఆర్కిటెక్చర్ గురించి
- HTTP/HTTPS గురించి
- మావెన్ యొక్క ప్రాథమిక విషయాల గురించి
- సర్వ్లెట్ల గురించి (ఒక సాధారణ వెబ్ అప్లికేషన్ రాయడం)
- సర్వ్లెట్ కంటైనర్ల గురించి
MVC చరిత్ర
MVC వెనుక ఉన్న ఆలోచనలు 1970ల చివరలో జిరాక్స్ PARCలో పనిచేస్తున్నప్పుడు ట్రైగ్వే రీన్స్కాగ్ రూపొందించారు. ఆ రోజుల్లో, కంప్యూటర్లతో పనిచేయడానికి డిగ్రీ మరియు భారీ డాక్యుమెంటేషన్ యొక్క స్థిరమైన అధ్యయనం అవసరం. చాలా బలమైన డెవలపర్ల సమూహంతో కలిసి రీన్స్కాగ్ పరిష్కరించిన పని కంప్యూటర్తో సాధారణ వినియోగదారు పరస్పర చర్యను సులభతరం చేయడం. ఒక వైపు, చాలా సరళంగా మరియు అర్థమయ్యేలా ఉండే సాధనాలను రూపొందించడం అవసరం మరియు మరోవైపు, కంప్యూటర్లు మరియు సంక్లిష్టమైన అనువర్తనాలను నియంత్రించడం సాధ్యమవుతుంది. రీన్స్కౌగ్ "అన్ని వయసుల పిల్లల కోసం" ల్యాప్టాప్ కంప్యూటర్ను అభివృద్ధి చేసిన బృందంలో పనిచేశాడు — డైనాబుక్, అలాగే అలన్ కే నాయకత్వంలో స్మాల్టాక్ భాష. ఆ సమయంలోనే స్నేహపూర్వక ఇంటర్ఫేస్ భావనలు నిర్దేశించబడ్డాయి. అనేక అంశాలలో, రీన్స్కాగ్ మరియు అతని బృందం చేసిన పని IT రంగ పరిణామాన్ని ప్రభావితం చేసింది. MVCకి నేరుగా వర్తించని ఒక ఆసక్తికరమైన వాస్తవం ఇక్కడ ఉంది, కానీ ఈ పరిణామాల యొక్క ప్రాముఖ్యతను వివరిస్తుంది. అలాన్ కేఅన్నారు, "నేను '84లో ఉన్న Appleకి మొదటిసారి వచ్చినప్పుడు, Mac ఇప్పటికే ముగిసింది మరియు న్యూస్వీక్ నన్ను సంప్రదించి, Mac గురించి నేను ఏమనుకుంటున్నాను అని అడిగాను. నేను, 'సరే, Mac మొదటి వ్యక్తిగత కంప్యూటర్కు సరిపోయేంత మంచిదని చెప్పాను. విమర్శిస్తారు.' ఐతే, 2007లో ఐఫోన్ని ప్రకటించిన తర్వాత, అతను దానిని నా దగ్గరకు తీసుకొచ్చి నా చేతికిచ్చాడు, అతను ఇలా అన్నాడు, 'అలన్, విమర్శించడానికి ఇది సరిపోతుందా?' మరియు నేను చెప్పాను, 'స్టీవ్, దీన్ని టాబ్లెట్లా పెద్దదిగా చేయండి మరియు మీరు ప్రపంచాన్ని పరిపాలిస్తారు. మరో మాటలో చెప్పాలంటే, స్టీవ్ జాబ్స్ అలాన్ కే సలహాను దాదాపు ఖచ్చితంగా అనుసరించాడు. రీన్స్కాగ్ యొక్క ప్రాజెక్ట్ 10 సంవత్సరాల పాటు కొనసాగింది. కానీ MVC గురించి మొదటి ప్రచురణ మరో 10 సంవత్సరాల తర్వాత వెలుగులోకి వచ్చింది. మార్టిన్ ఫౌలర్, సాఫ్ట్వేర్ ఆర్కిటెక్చర్పై అనేక పుస్తకాలు మరియు వ్యాసాల రచయిత, అతను స్మాల్టాక్ యొక్క వర్కింగ్ వెర్షన్ను ఉపయోగించి MVCని అభ్యసించాడని పేర్కొన్నాడు. చాలా కాలం పాటు అసలు మూలం నుండి MVC గురించి సమాచారం లేనందున, మరియు అనేక ఇతర కారణాల వల్ల, ఈ భావన యొక్క పెద్ద సంఖ్యలో విభిన్న వివరణలు కనిపించాయి. ఫలితంగా, చాలామంది MVCని డిజైన్ నమూనాగా భావిస్తారు. తక్కువ సాధారణంగా, MVCని కాంపోజిట్ ప్యాటర్న్ లేదా సంక్లిష్ట అప్లికేషన్లను రూపొందించడానికి కలిసి పనిచేసే అనేక నమూనాల కలయిక అని పిలుస్తారు. కానీ, ముందుగా చెప్పినట్లుగా, MVC అనేది వాస్తవానికి ప్రాథమికంగా నిర్మాణ ఆలోచనలు/సూత్రాలు/విధానాల సముదాయం, వీటిని వివిధ నమూనాలను ఉపయోగించి వివిధ మార్గాల్లో అమలు చేయవచ్చు... తర్వాత, మేము MVC భావనలో పొందుపరిచిన ప్రధాన ఆలోచనలను పరిశీలిస్తాము. మరియు అనేక ఇతర కారణాల వల్ల, ఈ భావన యొక్క పెద్ద సంఖ్యలో విభిన్న వివరణలు కనిపించాయి. ఫలితంగా, చాలామంది MVCని డిజైన్ నమూనాగా భావిస్తారు. తక్కువ సాధారణంగా, MVCని కాంపోజిట్ ప్యాటర్న్ లేదా సంక్లిష్ట అప్లికేషన్లను రూపొందించడానికి కలిసి పనిచేసే అనేక నమూనాల కలయిక అని పిలుస్తారు. కానీ, ముందుగా చెప్పినట్లుగా, MVC అనేది వాస్తవానికి ప్రాథమికంగా నిర్మాణ ఆలోచనలు/సూత్రాలు/విధానాల సముదాయం, వీటిని వివిధ నమూనాలను ఉపయోగించి వివిధ మార్గాల్లో అమలు చేయవచ్చు... తర్వాత, మేము MVC భావనలో పొందుపరిచిన ప్రధాన ఆలోచనలను పరిశీలిస్తాము. మరియు అనేక ఇతర కారణాల వల్ల, ఈ భావన యొక్క పెద్ద సంఖ్యలో విభిన్న వివరణలు కనిపించాయి. ఫలితంగా, చాలామంది MVCని డిజైన్ నమూనాగా భావిస్తారు. తక్కువ సాధారణంగా, MVCని కాంపోజిట్ ప్యాటర్న్ లేదా సంక్లిష్ట అప్లికేషన్లను రూపొందించడానికి కలిసి పనిచేసే అనేక నమూనాల కలయిక అని పిలుస్తారు. కానీ, ముందుగా చెప్పినట్లుగా, MVC అనేది వాస్తవానికి ప్రాథమికంగా నిర్మాణ ఆలోచనలు/సూత్రాలు/విధానాల సముదాయం, వీటిని వివిధ నమూనాలను ఉపయోగించి వివిధ మార్గాల్లో అమలు చేయవచ్చు... తర్వాత, మేము MVC భావనలో పొందుపరిచిన ప్రధాన ఆలోచనలను పరిశీలిస్తాము.MVC: ప్రాథమిక ఆలోచనలు మరియు సూత్రాలు
- VC అనేది వినియోగదారు ఇంటర్ఫేస్తో సంక్లిష్ట సమాచార వ్యవస్థలను నిర్మించడానికి నిర్మాణ ఆలోచనలు మరియు సూత్రాల సమితి.
- MVC అనేది సంక్షిప్త పదం: మోడల్-వ్యూ-కంట్రోలర్
దశ 1. వినియోగదారు ఇంటర్ఫేస్ నుండి అప్లికేషన్ యొక్క వ్యాపార లాజిక్ను వేరు చేయండి
MVC యొక్క ప్రధాన ఆలోచన ఏమిటంటే, వినియోగదారు ఇంటర్ఫేస్తో ఏదైనా అప్లికేషన్ను 2 మాడ్యూల్లుగా విభజించవచ్చు: వ్యాపార తర్కాన్ని అమలు చేయడానికి బాధ్యత వహించే మాడ్యూల్ మరియు వినియోగదారు ఇంటర్ఫేస్. మొదటి మాడ్యూల్ అప్లికేషన్ యొక్క ప్రధాన కార్యాచరణను అమలు చేస్తుంది. ఈ మాడ్యూల్ సిస్టమ్ యొక్క ప్రధాన భాగం, ఇక్కడ అప్లికేషన్ యొక్క డొమైన్ మోడల్ అమలు చేయబడుతుంది. MVC నమూనాలో, ఈ మాడ్యూల్ M అక్షరం, అనగా మోడల్. రెండవ మాడ్యూల్ వినియోగదారుకు డేటాను ప్రదర్శించడానికి మరియు అప్లికేషన్తో వినియోగదారు పరస్పర చర్యను నిర్వహించడానికి లాజిక్తో సహా మొత్తం వినియోగదారు ఇంటర్ఫేస్ను అమలు చేస్తుంది. ఈ విభజన యొక్క ప్రధాన లక్ష్యం సిస్టమ్ యొక్క కోర్ (MVC పరిభాషలోని "మోడల్") స్వతంత్రంగా అభివృద్ధి చేయబడి పరీక్షించబడుతుందని నిర్ధారించడం. ఈ విభజన చేసిన తర్వాత, అప్లికేషన్ యొక్క నిర్మాణం ఇలా కనిపిస్తుంది:దశ 2 మోడల్ను మరింత స్వతంత్రంగా చేయడానికి మరియు వినియోగదారు ఇంటర్ఫేస్లను సమకాలీకరించడానికి పరిశీలకుల నమూనాను ఉపయోగించండి
ఇక్కడ మనకు 2 లక్ష్యాలు ఉన్నాయి:- మోడల్ కోసం మరింత ఎక్కువ స్వాతంత్ర్యం సాధించండి
- వినియోగదారు ఇంటర్ఫేస్లను సమకాలీకరించండి
దశ 3 ఇంటర్ఫేస్ను వీక్షణ మరియు కంట్రోలర్గా వేరు చేయండి
మేము అప్లికేషన్ను మాడ్యూల్లుగా విభజించడాన్ని కొనసాగిస్తాము, కానీ ఇప్పుడు సోపానక్రమంలో తక్కువ స్థాయిలో ఉంది. ఈ దశలో, వినియోగదారు ఇంటర్ఫేస్ (దశ 1లో మేము ప్రత్యేక మాడ్యూల్గా విభజించాము) వీక్షణ మరియు కంట్రోలర్గా విభజించబడింది. వీక్షణ మరియు నియంత్రిక మధ్య కఠినమైన గీతను గీయడం కష్టం. వినియోగదారు చూసేది వీక్షణ అని మరియు కంట్రోలర్ అనేది సిస్టమ్తో పరస్పర చర్య చేయడానికి వినియోగదారుని అనుమతించే మెకానిజం అని మేము చెబితే, మీరు వైరుధ్యాన్ని ఎత్తి చూపవచ్చు. వెబ్ పేజీలోని బటన్లు లేదా ఫోన్ స్క్రీన్పై వర్చువల్ కీబోర్డ్ వంటి నియంత్రణ అంశాలు ప్రాథమికంగా కంట్రోలర్లో భాగం. కానీ వీక్షణలో ఏ భాగమైనా అవి వినియోగదారుకు కనిపిస్తాయి. మేము ఇక్కడ నిజంగా మాట్లాడుతున్నది ఫంక్షనల్ వేరు. సిస్టమ్తో వినియోగదారు పరస్పర చర్యను సులభతరం చేయడం వినియోగదారు ఇంటర్ఫేస్ యొక్క ప్రధాన పని.- అవుట్పుట్ మరియు వినియోగదారుకు సిస్టమ్ సమాచారాన్ని సౌకర్యవంతంగా ప్రదర్శిస్తుంది
- వినియోగదారు డేటా మరియు ఆదేశాలను నమోదు చేయండి (వాటిని సిస్టమ్కు కమ్యూనికేట్ చేయండి)
- MVC నమూనా సూత్రాల ప్రకారం, వ్యవస్థను మాడ్యూల్స్గా విభజించాలి.
- అత్యంత ముఖ్యమైన మరియు స్వతంత్ర మాడ్యూల్ మోడల్గా ఉండాలి.
- మోడల్ వ్యవస్థ యొక్క ప్రధాన అంశం. వినియోగదారు ఇంటర్ఫేస్ నుండి స్వతంత్రంగా దీన్ని అభివృద్ధి చేయడం మరియు పరీక్షించడం సాధ్యమవుతుంది.
- దీన్ని సాధించడానికి, విభజన యొక్క మొదటి దశలో, మేము సిస్టమ్ను మోడల్ మరియు వినియోగదారు ఇంటర్ఫేస్గా విభజించాలి.
- అప్పుడు, పరిశీలకుల నమూనాను ఉపయోగించి, మేము మోడల్ యొక్క స్వతంత్రతను పెంచుతాము మరియు వినియోగదారు ఇంటర్ఫేస్లను సమకాలీకరించాము.
- మూడవ దశ వినియోగదారు ఇంటర్ఫేస్ను నియంత్రిక మరియు వీక్షణగా విభజించడం.
- సిస్టమ్లోకి వినియోగదారు డేటాను స్వీకరించడానికి కావలసిందల్లా కంట్రోలర్లో ఉంది.
- వినియోగదారుకు సమాచారాన్ని బట్వాడా చేయడానికి కావాల్సినవన్నీ వీక్షణలో ఉన్నాయి.
GO TO FULL VERSION