මේ ලිපියත් එක්ක පටන් ගන්න යන්නේ Laravel කියන Framework එකත් එක්ක කොහොමද වැඩ කරන්නේ කියලා උගන්වන්න යන ලිපි මාලාවක්. මේ පාඩම් මාලාව පදනම් වෙන්නේ PHP එක්ක. ඒක හින්දා PHP ගැන Basic ටිකක් වත් දැනගෙන තිබුණොත් මේක ගොඩක් වැදගත් වෙයි. ( Pure PHP වලින් Application එකක් ගහන්න කන කට්ට දන්නෝ දනිති. 😀 ) ඒ වගේම HTML, CSS, JS ගැනත් පොඩි දැනුමක් තියෙන්න ඕන. ඒ දේවල් වල ගැන දැනටමත් දන්න කෙනෙක් නම් මේ ලිපි Set එක මාර වැදගත් වෙයි. Web Application එකක් ලේසියෙන්ම හදා ගන්න.
හරි මේ ටික කියවන්න ඕන උඩින් කියපු Requirements නැති කට්ටිය. තියන කට්ටිය මේ ටික Skip කරගෙන ඉස්සරහට යමු. මම මේ කියන්න හදන්නේ ඔයාලට උඩදි කියපු Skills ටික හදා ගන්න පුළුවන් ක්රමයක්. ඒ තමයි W3School එක. මම එක එක Topic එකට අදාල Link එක මෙතනට දාන්නම්. අවශ්ය නම් ඒ ටික බලලා දැනුමක් එකතු කර ගන්න. (පිළිවෙලට බලාගෙන යන්න)
HTML : https://www.w3schools.com/html/
CSS : https://www.w3schools.com/css
JS : https://www.w3schools.com/js/default.asp
PHP : https://www.w3schools.com/php/default.asp
Framework එකක් කියන්නේ මොකද්ද?
සරල උදාහරණයක් ගමු. අපි හිතමු අපිට ඕන වෙනවා කොටුවක දිග හා පළල අඟල් 8 X 8 වෙන වෙසක් කූඩුවක් හදා ගන්න. අපි මුලින්ම කරන්නේ එක උණ ලීයක් අරගෙන අදාල දිග ප්රමාණයට මැනලා හදාගෙන ඒ ලී කෑල්ල යොදාගෙන අනිත් අවශ්ය ලී කෑලි 23 ම හදා ගන්නවානේ. නැතුව එක එක ලීය මැන මැන හදන්න යන්නේ නෑනේ. අන්න ඒ වගේ තමයි framework එකත් වැඩ කරන්නේ. ඒ කියන්නේ framework එක හරියට අර දිග මැනලා හදා ගත්ත ලී කෑල්ල වගේ. framework එකෙන් අපිට ඒ විදියට අපිට අවශ්ය කරන ඒවා හදලා දීලා තියෙනවා. අපි කරන්නේ ඒ දේවල් නැවත නැවත පාවිච්චි කරන එක. සරලවම මොකද්ද framework එකකින් කරන්නේ කියලා තේරෙන්න ඇති කියලා හිතනවා.
Laravel විශේෂ වෙන්නේ ඇයි?
මේ Laravel වල Official Site එකට ගියොත් ඔයාලට බලන්න පුළුවන් මේ Framework එකේ තියෙන features මොනවද කියලා. මම හැමදෙයක් ගැනම විස්තර කරන්න යන්නේ නෑ. අවශ්යයි කියලා හිතෙන දේවල් විතරක් කියන්නම්.
Laravel කියන්නේ අපිට තියෙන එකම PHP Framework එක නෙවෙයි. අපිට ඕන තරම් Alternatives තියෙනවා. උදාහරණ විදියට yii2, codeigniter, zend framwork, symfony වගේ ගොඩක් ඒවා තියෙනවා. මේ තියෙන්නේ ගොඩක් ජනප්රිය කිහිපයක්. මේ වෙද්දී Google Trends Chart එක තමයි මෙ පහළින් තියෙන්නේ. දැන් හිතාගන්න අපි මේ ඉගෙන ගන්න යන Framework එකේ තියෙන වටිනාකම ගැන.
දැනට තියෙන ජනප්රියම Framework එක කියලා ඔයාලට පේනවා ඇති.
අපි මේ framework එකේ ඉතිහාසය ගැන ටිකක් බලමු. මේක මුලින්ම හදලා තියෙන්නේ මම මුලින් කියපු Codeigniter කියන framework එකේ තිබුණු අඩුපාඩුකම් නැති කරන්න.
මේ framework එක හදපු පුද්ගලයාගේ නම Taylor Otwell. පළමු සංස්කරණය නිකුත් කරලා තියෙන්නේ 2011 ජූනි 08 වෙනිදා (Laravel 1.0). මේ ලිපිය ලියන අද දවස (10/04/2018) වෙද්දී නිකුත් වෙලා තියෙන අන්තිම Version එක තමයි Laravel 5.6
දැන් අපි කතා කරමු Laravel මෙච්චර ප්රසිද්ධ වෙන්න එහෙම නැත්නම් විශේෂ වෙන්න හේතුව මොකද්ද කියලා.
1. Modularity or Multi-app: මේ කියන්නේ අපිට අවශ්ය විදියට System එක Module විදියට Develop කරන්නත් Module කරපු කොටස් නැවත එකතු කරන්නත් පුළුවන්.
2. Authentication: Laravel 5 වලින් පස්සේ ආපු Version එක්ක Authentication ගොඩක් පහසු වෙන විදියට නිර්මාණය කරලා තියෙනවා
3. Caching : Caching කියන්නේ Site එකක වේගය පිළිබඳ තීර්ණාත්මක සාධකයක්. laravel වලින් Caching හරහා Site එකේ වේගය වැඩි කරලා තියෙනවා.
4. Routing : Routing කියන්නේ Web Application එකක වැදගත්ම කොටසක්. මේ Framework එකෙන් ලේසියෙන්ම මේ වැඩේ කරගන්න පුළුවන්.
හරි මේ තියෙන්නේ Basic ම Features ටිකක්. ඒ වගේම මම ගොඩක් කෙටියෙන් තමයි මේවා එකින් එක හඳුන්වලා දීලා තියෙන්නේ. අපි ඉස්සරහට මේ දේවල් විස්තර ඇතිව කතා කරමු. අද කරන්නේ හැඳින්වීමක් විතරයි.
MVC ගැන දැනගනිමු
MVC කියලා කෙටියෙන් කියන්නේ Model, View සහ Controller කියන වචන තුනට. මේ MVC කියන එක ගොඩක් වෙලාවට භාවිතා කරන්නේ User Interfaces හදන්න. මේක ගොඩක් Programming Languages වලදි භාවිතා කරනවා. Wiki එකත් පොඩ්ඩක් බලන්න.
මේ තුන එකතු වෙලා කරන්නේ මේ රූපයේ තියෙනවා වගේ වැඩක්. අපේ Browser එක Http Request එකක් හරහා Web Application එකේ Controller එකට කතා කරනවා. දැන් Controller එක කරන්නේ Model එකට කතා කරලා එතනින් Data ඉල්ලගෙන ඒ Data අවශ්ය විදියට හදලා HTML එකේ View එකක් හදනවා. මේ Model එකෙන් තමයි අපි Database එකත් එක්ක සම්බන්ධ වෙන්නේ.
ඉස්සරහදි අපි මේ එකින් එක හදන විදිය සහ ඒවා එකිනෙකට සම්බන්ධ කරන විදිය ගැන කතා කරමු. අදට හැඳින්වීමේ කොටස ඉවරයි. ඊළඟ ලිපියෙන් බලමු කොහොමද Laravel Framework එක ඔයාගෙ Machine එකේ Install කරගන්නේ කියලා.
1 Comment
Laravel වලින් Database Migrations කරමු. - The SIGMA · September 17, 2018 at 11:54 pm
[…] laravel post එක නම් අපේ අනිත් ලිපි Set එකත් මෙතනින් […]