ലാറവേൽ
മോഡൽ-വ്യൂ-കൺട്രോളർ (എംവിസി) ആർക്കിടെക്ചറൽ പാറ്റേൺ ഉപയോഗിച്ച് വെബ് ആപ്ലിക്കേഷനുകൾ നിർമ്മിക്കുന്നതിനായി ടെയ്ലർ ഒട്ട്വെൽ സൃഷ്ടിച്ച സ്വതന്ത്രവും ഓപ്പൺ സോഴ്സ് പിഎച്ച്പി അടിസ്ഥാനമാക്കിയുള്ളതുമായ ഒരു വെബ് ചട്ടക്കൂടാണ്(web framework) ലാറവേൽ[3]. ഇത് സിംഫോണി ചട്ടക്കൂടിനെ അടിസ്ഥാനമാക്കിയുള്ളതാണ് കൂടാതെ ഒരു സമർപ്പിത ഡിപൻഡൻസി മാനേജറുള്ള മോഡുലാർ പാക്കേജിംഗ് സിസ്റ്റം, റിലേഷണൽ ഡാറ്റാബേസുകൾ എന്നിവയിൽ ആക്സസ് ചെയ്യുന്നതിനുള്ള വിവിധ രീതികൾ, ആപ്ലിക്കേഷൻ വിന്യാസവും പരിപാലനവും ലളിതമാക്കുന്നതിനുള്ള യൂട്ടിലിറ്റികൾ എന്നിവ പോലുള്ള സവിശേഷതകൾ വാഗ്ദാനം ചെയ്യുന്നു. ഉപയോക്തൃ-സൗഹൃദവും, വ്യക്തവും എളുപ്പത്തിൽ മനസ്സിലാക്കാവുന്നതുമായ വാക്യഘടനയുള്ള കോഡിംഗ് അനുഭവം പ്രദാനം ചെയ്യുകയും, "സിൻ്റക്റ്റിക് ഷുഗർ" എന്ന കോഡിംഗ് രീതിയിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നതിനും ലാറവേല്ലിന് സാധിക്കുന്നു[4][5]:2,5–9[6][7].
വികസിപ്പിച്ചത് | Taylor Otwell |
---|---|
ആദ്യപതിപ്പ് | ജൂൺ 2011[1] |
Stable release | 11.3.3[2]
|
റെപോസിറ്ററി | github |
ഭാഷ | PHP |
തരം | Web framework |
അനുമതിപത്രം | MIT License |
വെബ്സൈറ്റ് | laravel |
ലാറവേല്ലിൻ്റെ സോഴ്സ് കോഡ് ഗിറ്റ്ഹബ്ബൽ ഹോസ്റ്റ് ചെയ്യുകയും എംഐടി ലൈസൻസിൻ്റെ നിബന്ധനകൾക്ക് കീഴിൽ ലൈസൻസ് നൽകുകയും ചെയ്തിട്ടുണ്ട്.[8]
ചരിത്രം
തിരുത്തുകയൂസർ ഓതന്റിക്കേഷനും ഓതറൈസേഷനുമുള്ള ബിൽറ്റ്-ഇൻ പിന്തുണ പോലുള്ള സവിശേഷതകൾ ഇല്ലാത്ത കോഡ് ഇഗ്നിറ്റർ ചട്ടക്കൂടിന് കൂടുതൽ വിപുലമായ ബദൽ വാഗ്ദാനം ചെയ്യുന്നതിനാണ് ടെയ്ലർ ഒട്ട്വെൽ ലാറവേൽ സൃഷ്ടിച്ചത്. വെബ് ആപ്ലിക്കേഷനുകൾ നിർമ്മിക്കുന്നതിനായി ഡെവലപ്പർമാർക്ക് കൂടുതൽ സമഗ്രവും ആധുനികവുമായ ടൂൾസെറ്റ് നൽകിക്കൊണ്ട് ഈ വിടവുകൾ നികത്താനാണ് ലാറവേൽ ലക്ഷ്യമിടുന്നത്. ലാറവേലിൻ്റെ ആദ്യ ബീറ്റ പതിപ്പ് 2011 ജൂൺ 9-ന് പുറത്തിറങ്ങി, ആ മാസം അവസാനം ലാറവേൽ 1 പതിപ്പ് പുറത്തിറങ്ങി. ഡോക്യുമെന്റേഷൻ, ലോക്കലൈസേഷൻ, മോഡലുകൾ, വ്യൂസ്, സെഷനുകൾ, റൂട്ടിംഗ് എന്നിവയ്ക്കുള്ള ബിൽറ്റ്-ഇൻ പിന്തുണ പോലെയുള്ള ഉപയോഗപ്രദമായ സവിശേഷതകൾ ലാറവേൽ 1-ൽ ഉണ്ടായിരുന്നു. എന്നിരുന്നാലും, ഇതിന് കൺട്രോളറുകൾ ഇല്ലായിരുന്നു, അതിനർത്ഥം അത് അക്കാലത്ത് ഒരു സമ്പൂർണ്ണ എംവിസി(MVC എന്നത് മോഡൽ-വ്യൂ-കൺട്രോളർ ആണ്) ചട്ടക്കൂടായിരുന്നില്ല എന്നാണ്[1].
2011 സെപ്റ്റംബറിൽ നിരവധി മെച്ചപ്പെടുത്തലുകളോടെ ലാറവൽ 2 പുറത്തിറങ്ങി. ഇതിന് കൺട്രോളറുകൾ നൽകുക വഴി, ഇതിനെ ഒരു സമ്പൂർണ്ണ എംവിസി ചട്ടക്കൂടാക്കി (കോഡ് മികച്ച രീതിയിൽ കൈകാര്യം ചെയ്യാൻ സഹായിക്കുന്നു) മാറ്റുവാൻ സാധിച്ചു. ഇത് ഐഒസി (IoC-ഇൻവേർഷൻ ഓഫ് കൺട്രോൾ), ഡിപൻഡൻസികൾ കൈകാര്യം ചെയ്യുന്നതിനുള്ള ഒരു മാർഗം എന്ന നിലയിൽ, എച്ച്ടിഎംഎല്ലുമായി പ്രവർത്തിക്കുന്നത് എളുപ്പമാക്കുന്നതിന് ഒരു പുതിയ ബ്ലേഡ് ടെംപ്ലേറ്റിംഗ് സിസ്റ്റം എന്നിവയും അവതരിപ്പിച്ചു. എന്നിരുന്നാലും, അധിക ഫീച്ചറുകൾ ചേർക്കാൻ വേണ്ടി മറ്റുള്ളവർ ഉണ്ടാക്കിയ ടൂളുകളായ മൂന്നാം കക്ഷി പാക്കേജുകളെ ഈ ഫ്രേയിംവർക്ക് പിന്തുണ നൽകിയില്ല.
ഉപയോഗപ്രദമായ പുതിയ ടൂളുകളുമായി 2012 ഫെബ്രുവരിയിൽ ലാറവേൽ 3 പുറത്തിറങ്ങി. ഇത് അവതരിപ്പിച്ചു ആർട്ടിസാൻ, ലളിതമായ കമാൻഡുകൾ ഉപയോഗിച്ച് കാര്യങ്ങൾ നിയന്ത്രിക്കാൻ അനുവദിക്കുന്ന ഒരു ടൂൾ മൂലം, വ്യത്യസ്ത തരം ഡാറ്റാബേസുകളിൽ പ്രവർത്തിക്കുന്നത് എളുപ്പമാക്കുന്നു, കൂടാതെ ഡാറ്റാബേസിലെ മാറ്റങ്ങൾ ട്രാക്ക് ചെയ്യാൻ മൈഗ്രേഷനുകൾ ചേർത്തു. ബണ്ടിലുകൾ ഉപയോഗിച്ച് ഇവൻ്റുകൾ നിയന്ത്രിക്കാനും കോഡ് മികച്ച രീതിയിൽ ഓർഗനൈസ് ചെയ്യാനും ഈ ഫ്രെയിംവർക്ക് അനുവദിക്കുന്നു. ഈ മെച്ചപ്പെടുത്തലുകൾ കാരണം, കൂടുതൽ ആളുകൾ ലാറവേൽ ഉപയോഗിക്കാൻ തുടങ്ങി, അത് കൂടുതൽ ജനപ്രിയമായി.
2013 മെയ് മാസത്തിൽ പുറത്തിറങ്ങിയ ലാറവേൽ 4, പൂർണ്ണമായും പുനർനിർമ്മിക്കുകയും പാക്കേജുകൾ എന്ന പേരിൽ ചെറിയ ഭാഗങ്ങളായി വിഭജിക്കുകയും ചെയ്തു, കമ്പോസർ എന്ന ഒരു ടൂൾ കൈകാര്യം ചെയ്യുന്നു. ഇത് എക്സെന്റ് ചെയ്യുന്നതും, അപ്ഡേറ്റ് ചെയ്യുന്നതും എളുപ്പമാക്കി. സ്റ്റാർട്ടർ ഡാറ്റ ഉപയോഗിച്ച് ഡാറ്റാബേസുകൾ ഫിൽ ചെയ്യുന്നതിനായി ഡാറ്റാബേസ് സീഡിംഗ്, പശ്ചാത്തലത്തിൽ ടാസ്ക്കുകൾ കൈകാര്യം ചെയ്യുന്നതിനുള്ള മെസേജ് ക്യൂകൾ, ഇമെയിലുകൾ അയയ്ക്കുന്നതിനുള്ള ബിൽറ്റ്-ഇൻ ടൂളുകൾ, സോഫ്റ്റ് ഡിലീഷൻ എന്നിവ പുതിയ ഫീച്ചറുകളായി ഉൾപ്പെടുത്തിയിരിക്കുന്നു. രേഖകൾ ഉടനടി നീക്കം ചെയ്യാതെ തന്നെ ഇല്ലാതാക്കുന്നതിലേക്കായി അടയാളപ്പെടുത്താൻ ഇത് നിങ്ങളെ അനുവദിക്കുന്നു. ലാറവേൽ 4 ഓരോ ആറു മാസത്തിലും ഒരു സാധാരണ അപ്ഡേറ്റ് ഷെഡ്യൂൾ പിന്തുടരുന്നു[1][9].
2015 ഫെബ്രുവരിയിൽ പുറത്തിറങ്ങിയ ലാറവേൽ 5, ഡെവലപ്പർമാർക്ക് കാര്യങ്ങൾ എളുപ്പമാക്കി. ടാസ്ക്കുകൾ ഓട്ടോമേറ്റ് ചെയ്യുന്നതിന് ഇത് ഷെഡ്യൂളർ എന്നൊരു ടൂൾ ചേർത്തു, ഫയലുകൾ കമ്പ്യൂട്ടറിൽ സേവ് ചെയ്യുന്നത് പോലെ ഫ്ലൈസിസ്റ്റം ഉപയോഗിച്ച് റിമോട്ട് സ്റ്റോറേജിൽ സംരക്ഷിക്കാൻ അനുവദിച്ചു, കൂടാതെ എലിക്സിർ(Elixir) ഉപയോഗിച്ച് സിഎസ്എസ്/ജെഎസ്(CSS/JS) ഫയലുകൾ കൈകാര്യം ചെയ്യുന്നത് ലളിതമാക്കി. ഇത് സോഷ്യലൈറ്റ് വഴി സോഷ്യൽ മീഡിയയിൽ ലോഗിൻ ചെയ്യുന്നത് എളുപ്പമാക്കുകയും ഒരു പുതിയ ഫോൾഡർ ഘടന ഉപയോഗിച്ച് പ്രോജക്റ്റുകൾ സംഘടിപ്പിക്കുന്ന രീതി മാറ്റുകയും ചെയ്തു[5]:13–14[10].
വേഗതയ്ക്കായി രൂപകൽപ്പന ചെയ്ത ഭാരം കുറഞ്ഞ പിഎച്ച്പി ചട്ടക്കൂടിൻ്റെ ആദ്യ പതിപ്പായിരുന്നു ലൂമെൻ 5.0. ഇത് ലാറവേലിനെ അടിസ്ഥാനമാക്കിയുള്ളതാണെങ്കിലും മികച്ച പ്രകടനത്തിനായി ലളിതമാക്കിയിരുന്നു. എന്നിരുന്നാലും, ലാറവേലിന്റെ പ്രകടനം മെച്ചപ്പെടുത്തിയതുമൂലം ലുമനെ ആവശ്യമില്ലാത്തതാക്കി[11]. ലാറവേൽ ഒക്ടേൻ ആണ് ഇപ്പോൾ ഹൈ-സ്പീഡ് ലാറവേൽ ആപ്ലിക്കേഷനുകൾക്കുള്ള മികച്ച ചോയ്സ്[12].
2015 ജൂണിൽ പുറത്തിറങ്ങിയ ലാറവേൽ 5.1, ദീർഘകാല പിന്തുണ (LTS) ലഭിക്കുന്ന ലാറവേലിന്റെ ആദ്യ പതിപ്പായിരുന്നു. പുതിയ എൽടിഎസ് പതിപ്പുകൾ രണ്ട് വർഷത്തിലൊരിക്കൽ പുറത്തിറക്കാൻ തീരുമാനിച്ചു.[13]
ലാറവേൽ 5.3 2016 ഓഗസ്റ്റ് 23-ന് പുറത്തിറങ്ങി, ഡെവലപ്മെന്റിന് സഹായകമായ ബിൽറ്റ്-ഇൻ ടൂളുകൾ ചേർത്തതുമൂലം ഡെവലപ്പർമാർക്ക് ദൈനംദിന ജോലികൾ കൂടുതൽ വേഗത്തിൽ ചെയ്യാൻ സാധിക്കുന്നു[14].
2017 ജനുവരിയിൽ ആരംഭിച്ച ലാറവേൽ 5.4, വെബ്സൈറ്റുകൾ പരിശോധിക്കുന്നതിന് ലാറവേൽ ഡസ്ക്(Laravel Dusk), സിഎസ്എസ്/ജാവാസ്ക്രിപ്റ്റ് (CSS/JavaScript) കൈകാര്യം ചെയ്യുന്നതിനായി ലാറവേൽ മിക്സ്(Laravel Mix) ടെംപ്ലേറ്റുകൾ വൃത്തിയുള്ളതാക്കാൻ വേണ്ടി ബ്ലേഡ് കമ്പോണന്റ്സ് (Blade Components) എന്നിവ പോലുള്ള ഫീച്ചറുകൾ ചേർത്ത് ഡെവലപ്പർമാർക്ക് കാര്യങ്ങൾ എളുപ്പമാക്കി. ഇമെയിൽ ഫോർമാറ്റിംഗ് എളുപ്പമാക്കുന്നതിനുള്ള മാർക്ക്ഡൗൺ ഇമെയിലുകൾ, റൂട്ടുകളും ശേഖരങ്ങളും എങ്ങനെ പ്രവർത്തിക്കുന്നു എന്നത് മെച്ചപ്പെടുത്തി, തന്മൂലം കോഡ് വേഗത്തിൽ എഴുതാൻ ഡെവലപ്പർമാരെ സഹായിക്കുന്നു.[15].
നിരവധി പ്രധാന അപ്ഡേറ്റുകൾ കൊണ്ടുവന്ന് 2019 സെപ്റ്റംബർ 3-ന് ലാറവേൽ 6 ആരംഭിച്ചു. ഇവയിൽ ഷിഫ്റ്റ് ബ്ലൂപ്രിൻ്റ് കോഡ് ജനറേഷൻ, സെമാൻ്റിക് വെർഷനിംഗിലൂടെയുള്ള മികച്ച വെർഷൻ കണ്ട്രോൾ, ലാറവേൽ വേപ്പറുമായുള്ള (സെർവർലെസ്സ് ഡിപ്ലോയ്മെന്റ് പ്ലാറ്റ്ഫോം) കംമ്പാറ്റിബിലിറ്റി എന്നിവ ഉൾപ്പെടുന്നു. മെച്ചപ്പെടുത്തിയ ഓതറൈസേഷൻ റെസ്പോൺസസ്, മെച്ചപ്പെട്ട ജോബ് മിഡിൽവെയർ, മെച്ചപ്പെട്ട മെമ്മറി കാര്യക്ഷമതയ്ക്ക് വേണ്ടിയുള്ള ലേസി കളക്ഷൻസ്, സബ്-ക്വറി മെച്ചപ്പെടുത്തലുകൾ എന്നിവയും ഇത് അവതരിപ്പിച്ചു. കൂടാതെ, ഫ്രണ്ട്എൻഡ് സ്കാർഫോൾഡിംഗ് പ്രധാന പാക്കേജിൽ നിന്ന് വേർപെടുത്തി ഒരു ഡെഡിക്കേറ്റഡ് `laravel/ui` പാക്കേജിലേക്ക് മാറ്റി[16].
അവലംബം
തിരുത്തുക- ↑ 1.0 1.1 1.2 ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ 5.0 5.1 ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value
- ↑ ലുവ പിഴവ് ഘടകം:Citation/CS1/Configuration-ൽ 2083 വരിയിൽ : attempt to index a boolean value