સામગ્રીનું કોષ્ટક[છુપાવો][બતાવો]
- તો, મોડ્યુલ ફેડરેશન શું છે?
- મોડ્યુલ ફેડરેશન શા માટે?
- મોડ્યુલ ફેડરેશન કોર ઘટકો
મોડ્યુલ ફેડરેશન મુખ્ય લક્ષણો+-
- ઉત્તમ વેબ પ્રદર્શન
- અસરકારક વિકાસ
- સ્વ-ઉપચાર અને નિરર્થકતા કરવાની ક્ષમતા
- સામાન્ય અવલંબનનું અસરકારક સંચાલન
- ગ્રાહકોને ફરીથી જમાવટ કરવાને બદલે, સ્વતંત્ર કોડનો ઉપયોગ કરો.
- ચાલતી વખતે, અન્ય બિલ્ડમાંથી કોડ આયાત કરો.
- ક્લાયંટના અનુભવને સાચવતી વખતે વિકાસકર્તાનો ઉન્નત અનુભવ
- માઇક્રો-ફ્રન્ટેન્ડ્સ મોનોલિથિક ફેશનમાં કાર્ય કરે છે.
- ઉપસંહાર
માઇક્રો ફ્રન્ટએન્ડનો ખ્યાલ ફ્રન્ટએન્ડ ડેવલપમેન્ટ માટે માઇક્રોસર્વિસિસને લાગુ કરે છે.
વિચાર એ છે કે એપ્લિકેશન અથવા વેબસાઇટને નાના, સ્વતંત્ર રીતે વિકસિત ટુકડાઓમાં વિભાજિત કરવાનો છે જે પછી રનટાઈમ દરમિયાન જોડાયેલા હોય છે, તેને એક, સ્નિગ્ધ મોનોલિથ તરીકે બનાવવાના વિરોધમાં.
પદ્ધતિ તમને અન્ય તકનીકોનો ઉપયોગ કરીને અને સ્વતંત્ર ટીમો સાથે એપ્લિકેશનના અન્ય ઘટકો બનાવવા માટે સક્ષમ કરે છે.
આ રીતે વિકાસને વિભાજિત કરીને લાક્ષણિક મોનોલિથ સંબંધિત જાળવણી ખર્ચ ઘટાડવાનો વિચાર છે.
તેમને સુસંગત ટીમ તરીકે એપ્લિકેશનના ચોક્કસ ક્ષેત્ર પર ધ્યાન કેન્દ્રિત કરવાની મંજૂરી આપીને, તે બેકએન્ડ અને ફ્રન્ટએન્ડ devs વચ્ચે સહકારના નવા સ્વરૂપોને પણ શક્ય બનાવે છે.
દાખલા તરીકે, તમારી પાસે એવી ટીમ હોઈ શકે છે જે શોધ ક્ષમતા અથવા વ્યવસાય માટે નિર્ણાયક એવા મુખ્ય ઉત્પાદનના અન્ય પાસાં માટે સંપૂર્ણપણે જવાબદાર છે.
મોડ્યુલ ફેડરેશનનો આભાર, તમારી પાસે વર્કફ્લોને હેન્ડલ કરવા માટે પૂરતી કાર્યક્ષમતા છે કે જે માઇક્રો ફ્રન્ટએન્ડ અભિગમ આદેશો.
આ પોસ્ટ મોડ્યુલ ફેડરેશનના આર્કિટેક્ચર તેમજ તેની મુખ્ય લાક્ષણિકતાઓ અને એપ્લિકેશન પેટર્ન પર ઊંડાણપૂર્વક વિચાર કરશે.
તો, એ શું છે મોડ્યુલ ફેડરેશન?
Javascript ની મોડ્યુલ ફેડરેશન ડિઝાઇન ઘણી એપ્લિકેશન્સમાં પુનઃઉપયોગી ભાગોનો ઉપયોગ કરે છે.
તે એકદમ મૂળભૂત કલકલ છે, પરંતુ મેં તેને સરળ રીતે ઉમળકાભેર દેખાડવા માટે બનાવ્યું છે.
જેમ કે આપણે બધા રીએક્ટ એપ્લિકેશનમાં ઘટકો વહેંચવાથી પરિચિત છીએ, મોડ્યુલ ફેડરેશન વ્યવહારમાં સમાન ધ્યેયને અસરકારક રીતે પરિપૂર્ણ કરે છે, અપવાદ સિવાય કે તે ગતિશીલ રીતે અન્ય એપ્લિકેશનો દ્વારા વપરાશ માટે એપ્લિકેશન મોડ્યુલોને ઉજાગર કરે છે.
મોડ્યુલ ફેડરેશન વિતરિત પ્રણાલીમાં મોડ્યુલ શેરિંગની સમસ્યાને દૂર કરવા માગે છે.
તમારી એપ્સ અને બિલ્ડ વર્કફ્લોમાંથી તેમને દૂર કરીને આ પરિપૂર્ણ થાય છે.
મોડ્યુલ ફેડરેશન શા માટે?
અહીં કેટલાક પરિબળો છે જેને મોડ્યુલ ફેડરેશન સરળતાથી હેન્ડલ કરી શકે છે:
- એક્સટર્નલ્સ અને ડીએલએલ (ડાયનેમિક લિંક લાઇબ્રેરી) એ એપ્લિકેશંસ વચ્ચે કાર્યક્ષમતા શેર કરવા માટે અમારી પાસે પ્રસંગોપાત હતા. આ બધાએ સ્કેલિંગ કોડ શેરિંગને અત્યંત પડકારજનક બનાવ્યું છે.
- NPM સુસ્ત છે.
- જ્યારે બે અલગ પ્રોગ્રામ નિર્ણાયક કોડ શેર કરે છે, ત્યારે તે ગતિશીલ અને લવચીક હોવા જોઈએ.
સ્ટેન્ડઅલોન એપ્સ સંપૂર્ણપણે તેમના પોતાના ભંડારમાં હોય, અલગથી જમાવી શકે અને તેમના પોતાના સ્વતંત્ર SPA તરીકે કાર્ય કરી શકે તે માટે, મોડ્યુલ ફેડરેશન બનાવવામાં આવ્યું હતું.
મોડ્યુલ ફેડરેશન કોર ઘટકો
ઊંડાણમાં ડાઇવિંગ કરતા પહેલા, મોડ્યુલ ફેડરેશન લાવે છે તે થોડા નવા ખ્યાલોની ટૂંકમાં ચર્ચા કરવી મહત્વપૂર્ણ છે.
- યજમાન: જ્યારે કોઈ પૃષ્ઠ લોડ થાય છે, ત્યારે શરૂઆતમાં જે બિલ્ડ અથવા મોડ્યુલ શરૂ થાય છે તેને હોસ્ટ કહેવામાં આવે છે. પ્રદાતાને યજમાન તરીકે વિચારી શકાય છે.
- રીમોટ: રીમોટ એ એક અલગ રચના છે જે હોસ્ટના એક ભાગનો ઉપયોગ કરે છે. તેઓને ગ્રાહકો તરીકે પણ ઓળખવામાં આવે છે.
- બાય-ડાયરેક્શનલ હોસ્ટ: વેબપેક બિલ્ડ જે અન્ય યજમાનો ઉપયોગ કરે છે તે રિમોટ અને હોસ્ટ જે રિમોટનો ઉપયોગ કરે છે બંને તરીકે કાર્ય કરે છે.
- વેન્ડર ફેડરેશન: હોસ્ટ અથવા રિમોટ માટે એનપીએમ મોડ્યુલ ડિપેન્ડન્સીના ઘોષણાત્મક રીતે શેર કરેલ રનટાઈમ શેરિંગને સક્ષમ કરે છે, તેઓ જે સ્થાન પરથી લોડ કરવામાં આવ્યા હોય તેને ધ્યાનમાં લીધા વગર. માઇક્રો ફ્રન્ટએન્ડ સાથેની મુખ્ય કામગીરીની સમસ્યાઓમાંની એક આ રીતે ઉકેલાય છે.
ફેડરેટેડ એપ્લિકેશનના દાખલાઓ
સદાબહાર ડિઝાઇન સિસ્ટમ
ફેડરેટેડ એપ્લીકેશનના સૌથી મૂળભૂત સ્વરૂપોમાંનું એક "એવરગ્રીન રીમોટ" છે, જે "ડિઝાઇન સિસ્ટમ" અથવા "કમ્પોનન્ટ લાઇબ્રેરી" જેવું વહેંચાયેલ રીમોટ છે જે તમામ વપરાશકર્તાઓ માટે સ્વતંત્ર રીતે વિતરિત અને અપડેટ થયેલ છે.
દરેક એપ ટીમને રિવિઝન પર સમય પસાર કરવાની જરૂર ન હોય, આ ખાતરી કરવામાં મદદરૂપ થઈ શકે છે કે બધી ઑનલાઇન સાઇટ્સ સૌથી તાજેતરની કોર્પોરેટ ઓળખનું પાલન કરે છે.
સુરક્ષિત, ચાલુ અપડેટ્સની બાંયધરી આપવા માટે જરૂરી મર્યાદાઓ અને પ્રક્રિયાઓને ડિઝાઇન કરવા અને તેને અમલમાં મૂકવા માટે, ફેડરેટેડ એપ્લિકેશન આર્કિટેક્ચરની વિચારણા કરતી વખતે વ્યવસાયો શરૂ કરવા માટે આ એક ઉપયોગી સ્થળ હોઈ શકે છે.
નીચે આપેલા કેટલાક ઉપયોગ-કેસો છે જ્યાં સ્વતંત્ર રીતે જમાવવામાં આવેલ શેર કરેલ રિમોટ્સ યોગ્ય હોઈ શકે છે:
- ડિઝાઇન સિસ્ટમ્સ
- એપ્લિકેશન શેલો
- ઘટક પુસ્તકાલયો
- ગ્રાહકો
- વહેંચાયેલ ટૂલકીટ
- આંતરિક અથવા બાહ્ય દ્વારા ઉપયોગમાં લેવાતા વિજેટ્સ માટે વૈકલ્પિક વિતરણ મોડલ
મલ્ટી-એસપીએ મોડ્યુલ શેરિંગ
વિવિધ સ્ટેન્ડઅલોન સિંગલ-પેજ એપ્લિકેશન્સમાં પહેલેથી જ નિકાસ કરાયેલી સુવિધાઓ, જેમ કે ઘટકોનો ફરીથી ઉપયોગ કરો. ફાયદાઓમાં શામેલ છે:
- ગ્રાહકો સ્વચાલિત અપડેટ મેળવે છે
- ડોમેન નિપુણતા તે ટીમ પર રહે છે જે તેનો હવાલો સંભાળે છે.
- જમાવટ પ્રક્રિયાને સુવ્યવસ્થિત કરે છે કારણ કે અલગ મોડ્યુલ પ્રકાશનો જરૂરી નથી.
શેલ સંચાલિત ફેડરેશન
શેલ-સંચાલિત ફેડરેશનમાં શામેલ છે:
- ઉત્પાદનનું નવું સંસ્કરણ બનાવતી વખતે, ઉત્પાદન ટીમ ચેકઆઉટ ટીમ દ્વારા તેમનું કાર્ય પૂર્ણ કરવાની રાહ જોતી નથી.
- રિમોટ્સ સ્વિચ કરતી વખતે, ત્યાં કોઈ પૃષ્ઠ ફરીથી લોડ થતું નથી.
- જ્યારે જરૂરી હોય ત્યારે, શેલ ધીમા રિમોટ લોડિંગ અને (ટોચ-લેવલ) રૂટીંગ ઓફર કરે છે.
- વિક્રેતા ફેડરેશન દ્વારા રિમોટ્સ પર રૂટીંગ શક્ય બને છે, જે વારંવાર ઉપયોગમાં લેવાતા npm પેકેજોના પુનઃઉપયોગને સક્ષમ કરે છે.
- શેલ ફ્રેમવર્ક અને અન્ય સામાન્ય અવલંબન પ્રદાન કરે છે જે આળસુ લોડ થયેલ રિમોટ્સ દ્વારા ફરીથી ઉપયોગમાં લેવાય છે.
મલ્ટી-શેલ ફેડરેશન
ઉપર વર્ણવેલ શેલ-સંચાલિત ફેડરેશન જેવું જ છે, પરંતુ વિવિધ શેલોનો ઉપયોગ કર્યો છે.
તે સમાવે છે:
- સંખ્યાબંધ શેલો
- સફેદ લેબલીંગ
- બધા રિમોટ્સ શેલ બી દ્વારા જરૂરી નથી અથવા સ્વતંત્ર અમલીકરણો ધરાવતા નથી.
મોડ્યુલ ફેડરેશન મુખ્ય લક્ષણો
ઉત્તમ વેબ પ્રદર્શન
સામાન્ય NPM મોડ્યુલ કમ્પોઝિશન સાથેનો મુદ્દો એ છે કે જેમ જેમ આશ્રિતોની સંખ્યા વધે છે તેમ તેમ એપ્લિકેશનનું કદ સામાન્ય રીતે વધે છે.
જ્યારે તમારી એપ્લિકેશન લોડ થાય ત્યારે બંડલ્સ લોડ કરવાનું ટાળવા માટે અને જ્યારે જરૂરી હોય ત્યારે જ તેને લોડ કરો, મોડ્યુલ ફેડરેશન તમને આળસથી બંડલ લોડ કરવાની ક્ષમતા પ્રદાન કરે છે.
આ મોડ્યુલને વાસ્તવમાં જરૂરી હોય તે પહેલાં ડાઉનલોડ કરવાની જરૂરિયાતને અટકાવે છે, જે સાઇટની ગતિમાં સુધારો કરે છે.
અસરકારક વિકાસ
દરેક પ્રોજેક્ટનું ઉત્પાદન અને વિતરિત કરી શકાય છે અને વિવિધ ટીમો દ્વારા હાથ ધરવામાં આવી શકે છે કારણ કે મોડ્યુલ ફેડરેશન તમને તમારી એપ્લિકેશનને અલગ પ્રોજેક્ટ્સમાં ગોઠવવા માટે પ્રોત્સાહિત કરે છે જેથી કરીને તમે તેને અલગથી બનાવી શકો અને તેનો ઉપયોગ કરી શકો (અને તેથી સમાંતરમાં).
સ્વ-ઉપચાર અને નિરર્થકતા કરવાની ક્ષમતા
વહેંચાયેલ અવલંબન મોડ્યુલ ફેડરેશનને તમારા પ્રોગ્રામની તમામ નિર્ભરતાને એક જ જગ્યાએ રાખવાની મંજૂરી આપે છે.
આ રીતે, જ્યારે એપ્લિકેશન નિર્ભરતા જાહેર કરતી નથી અથવા નેટવર્ક સમસ્યાઓ હોય ત્યારે પણ, તે હજુ પણ જાણે છે કે તેને શું જોઈએ છે અને જરૂરિયાત મુજબ તેને ડાઉનલોડ કરવાનું હેન્ડલ કરી શકે છે.
સામાન્ય અવલંબનનું અસરકારક સંચાલન
વધુમાં, મોડ્યુલ ફેડરેશન વિક્રેતા અને તૃતીય-પક્ષની આવશ્યકતાઓને અસરકારક રીતે ઉકેલીને શ્રેષ્ઠ નિર્ભરતા વ્યવસ્થાપન પ્રદાન કરે છે જેથી તમારી એપ્લિકેશન ક્યારેય લાઇબ્રેરીના એક કરતાં વધુ સંસ્કરણને લોડ કરશે નહીં.
ગ્રાહકોને ફરીથી જમાવટ કરવાને બદલે, સ્વતંત્ર કોડનો ઉપયોગ કરો.
વિકાસકર્તા સદાબહાર કાર્યક્ષમતા ધરાવવામાં ખૂબ જ રસ ધરાવે છે. એકવાર ખુલ્લી આશ્રિત કાર્યક્ષમતા બદલાઈ જાય, તે પછી ગ્રાહકોને ફરીથી ઇન્સ્ટોલ કરવાની જરૂર રહેશે નહીં.
મારે કબૂલ કરવું જોઈએ કે આ એક ખૂબ જ બળવાન લક્ષણ છે, જે અણધાર્યા પરિણામોને રોકવા માટે સાવચેતીપૂર્વક તપાસ કરવાની જરૂર પડશે.
ચાલતી વખતે, અન્ય બિલ્ડમાંથી કોડ આયાત કરો.
NPM પૅકેજ મૉડલ અપનાવતી વખતે, અમે કોડ શેર કરવા અને “લાઇબ્રેરી” વિશે વિચારવાને બદલે મૉડ્યૂલ ફેડરેશનનો ઉપયોગ કરતી ઍપને APIની જેમ ધ્યાનમાં લઈ શકીએ છીએ.
તે જ રીતે તેઓ અન્ય એપ્લિકેશનોમાંથી કાર્યક્ષમતા પણ પ્રાપ્ત કરી શકે છે, વેબ એપ્લિકેશન હવે અન્ય એપ્લિકેશનોને કાર્યક્ષમતા પ્રદાન કરી શકે છે.
ક્લાયંટના અનુભવને સાચવતી વખતે વિકાસકર્તાનો ઉન્નત અનુભવ
કોઈપણ JavaScript ડેવલપર મોડ્યુલ ફેડરેશન સાથે ખૂબ આરામદાયક રહેશે કારણ કે તે વેબપેક પ્લગઇન છે જે વેબપેક વર્ઝન 5 મુજબ સુલભ છે.
જો આપણે તેના પર થોડો વિચાર કરીએ તો આ ખરેખર ખૂબ જ મજબૂત અને રસપ્રદ છે.
તૃતીય-પક્ષ વેબપેક લોડરનો ઉપયોગ કરીને, તે તમામ ઘટકોને ધ્યાનમાં લો વેબપેક બંડલ્સ, જેમાં સ્ક્રિપ્ટ્સ, સંપત્તિઓ, શૈલીઓ, ચિત્રો, માર્કડાઉન અને વધુનો સમાવેશ થાય છે.
મોડ્યુલ ફેડરેશનનો ઉપયોગ કરીને, આ બધાને વહેંચી શકાય છે અને ફેડરેશન કરી શકાય છે.
માઇક્રો-ફ્રન્ટેન્ડ્સ મોનોલિથિક ફેશનમાં કાર્ય કરે છે.
તમારી એપ્લિકેશનમાં વહેંચાયેલ કાર્યક્ષમતા ઉમેરવાનું એકદમ સરળ છે; ફક્ત બંડલને સામાન્ય તરીકે આયાત કરો અથવા સિંક્રનસ લોડિંગનો ઉપયોગ કરો.
વૈકલ્પિક રીતે, અસુમેળ લોડિંગનો ઉપયોગ આળસુ લોડિંગનો ઉપયોગ કરીને જ્યારે જરૂરી હોય ત્યારે જ નિર્ભરતાને લોડ કરવા માટે કરી શકાય છે.
ઉપસંહાર
આ પોસ્ટમાં, અમે તમારી માઇક્રો-ફ્રન્ટેન્ડ એપ્લિકેશન વિકસાવવા માટે એક અદ્ભુત પસંદગી તરીકે મોડ્યુલ ફેડરેશનની ચર્ચા કરી છે.
રનટાઈમ પર એપ્લિકેશનોને કાર્યક્ષમતાનું વિનિમય અને વપરાશ કરવા દેવાથી વિવિધ ટીમોને સ્વતંત્ર એપ્લિકેશનો પર કામ કરવા સક્ષમ કરીને માપનીયતાને પ્રોત્સાહન મળે છે.
જ્યારે સામાન્ય કાર્યક્ષમતા બદલાય છે, ત્યારે તમારે તમારા ગ્રાહકોને ડિઝાઇન અને જમાવટ કરવાની જરૂર રહેશે નહીં કારણ કે તે સદાબહાર કાર્યક્ષમતાને સપોર્ટ કરે છે.
તમારો પ્રોગ્રામ સેટ થઈ ગયા પછી મોનોલિથની જેમ કાર્ય કરશે, જે અદ્ભુત છે.
શેર કરી શકાય તેવી નિર્ભરતાનો ઉપયોગ એપ્સનું કદ ઘટાડવા માટે થાય છે. ઘણા વિકાસકર્તાઓ પહેલેથી જ વેબપેક વાતાવરણથી પરિચિત હોવાથી, વિકાસકર્તાનો અનુભવ ઉત્તમ છે.
એક જવાબ છોડો