මොඩියුලය 19: ජංගම යෙදුම් සංවර්ධනය (Mobile App Development)

බ්‍රවුසරයෙන් ඔබ්බට ගොස්, පරිශීලකයාගේ අතේ රැඳෙන යෙදුම් නිර්මාණය කිරීම.

වෙබ් අඩවි වලින් ඔබ්බට ලෝකයක්

අපි මේ දක්වා නිර්මාණය කළ වෙබ් යෙදුම්, ඕනෑම උපාංගයක බ්‍රවුසරයක් හරහා ප්‍රවේශ විය හැක. නමුත්, පරිශීලකයාගේ ජංගම දුරකථනයේම ස්ථාපනය කරන ජංගම යෙදුම් (Mobile Apps) මගින් ඊට වඩා වැඩි අත්දැකීමක් ලබා දිය හැක. ඒවාට දුරකථනයේ කැමරාව, GPS, ඇඟිලි සලකුණු සංවේදකය වැනි විශේෂාංග වෙත සෘජුවම ප්‍රවේශ වීමට, push notifications යැවීමට සහ බොහෝ විට වඩා වේගවත්, සුමට අත්දැකීමක් ලබා දීමට හැකියාව ඇත.

වර්තමාන ජංගම දුරකථන ලෝකය ප්‍රධාන මෙහෙයුම් පද්ධති (Operating Systems) දෙකක් විසින් පාලනය කරනු ලැබේ: Google හි Android සහ Apple හි iOS. සංවර්ධකයෙකු ලෙස අප මුහුණ දෙන ප්‍රධාන අභියෝගය වන්නේ, මෙම වෙනස් වේදිකා දෙක සඳහාම යෙදුම් නිර්මාණය කරන්නේ කෙසේද යන්නයි. ඒ සඳහා ප්‍රධාන ප්‍රවේශයන් තුනක් ඇත.

ජංගම යෙදුම් සංවර්ධන ප්‍රවේශයන්

1. දේශීය යෙදුම් සංවර්ධනය (Native App Development)

කුමක්ද?: එක් එක් මෙහෙයුම් පද්ධතිය සඳහා, ඔවුන් විසින්ම නිර්දේශ කරන ලද ක්‍රමලේඛන භාෂා සහ මෙවලම් භාවිතයෙන්, යෙදුම වෙන වෙනම නිර්මාණය කිරීම.

  • Android සඳහා: Kotlin (හෝ Java) භාෂාව සහ Android Studio.
  • iOS සඳහා: Swift භාෂාව සහ Xcode.
වාසි: ඉහළම කාර්යසාධනය (performance), මෙහෙයුම් පද්ධතියේ සියලුම විශේෂාංග වෙත පූර්ණ ප්‍රවේශය, සහ හොඳම පරිශීලක අත්දැකීම.
අවාසි: අධික පිරිවැය සහ කාලය. Android සහ iOS සඳහා වෙන වෙනම කේත පදනම් දෙකක් (two codebases) නඩත්තු කිරීමට සිදු වේ.

2. දෙමුහුන් යෙදුම් සංවර්ධනය (Hybrid App Development)

කුමක්ද?: HTML, CSS, සහ JavaScript වැනි වෙබ් තාක්ෂණයන් භාවිතයෙන් යෙදුමක් නිර්මාණය කර, එය Native "කවචයක්" (wrapper) තුළ ඇසිරීම. එමගින්, එකම කේතය Android සහ iOS දෙකෙහිම ක්‍රියාත්මක කිරීමට හැකි වේ.
වාසි: වේගවත් සහ ලාභදායී වේ. එකම කේත පදනමක් නඩත්තු කිරීම ප්‍රමාණවත් වේ.
අවාසි: Native යෙදුම් තරම් වේගවත් හෝ සුමට නොවිය හැක. පරිශීලක අත්දැකීම සමහර විට වෙබ් අඩවියක් ලෙස දැනිය හැක.
උදාහරණ රාමු: Apache Cordova, Ionic.

3. හරස්-වේදිකා යෙදුම් සංවර්ධනය (Cross-Platform App Development)

කුමක්ද?: මෙය නූතන "දෙකේම හොඳම දේ" (best of both worlds) ප්‍රවේශයයි. මෙහිදී, ඔබ එක භාෂාවකින් කේතය ලියන අතර, රාමුව (framework) විසින් එය Android සහ iOS දෙකටම අදාළ, සැබෑ Native යෙදුම් බවට පරිවර්තනය (compile) කරයි.
වාසි: එකම කේත පදනමක් භාවිතයෙන්, Native යෙදුම් වලට ඉතා ආසන්න කාර්යසාධනයක් සහ පෙනුමක් ලබා ගත හැක.
අවාසි: මෙහෙයුම් පද්ධතියට අලුතින්ම එකතු වන විශේෂාංග භාවිතා කිරීමට සුළු කාලයක් ගත විය හැක.
ප්‍රචලිත රාමු:

  • React Native (Facebook): React සහ JavaScript දන්නා අයට ඉතා පහසුවෙන් ඉගෙන ගත හැක.
  • Flutter (Google): Dart නමැති භාෂාව භාවිතා කරන අතර, ඉහළ කාර්යසාධනය සහ අලංකාර UI නිර්මාණය සඳහා ප්‍රසිද්ධය.

අවසාන වශයෙන්

නිවැරදි ප්‍රවේශය තෝරා ගැනීම, ඔබගේ ව්‍යාපෘතියේ අයවැය, කාලසීමාව, සහ අපේක්ෂිත කාර්යසාධනය මත රඳා පවතී. Native ඉහළම ගුණාත්මකභාවය ලබා දෙන අතර, React Native සහ Flutter වැනි Cross-Platform රාමු, වේගය සහ පිරිවැය අතර විශිෂ්ට සමබරතාවයක් ලබා දෙයි. වැදගත්ම දෙය නම්, මෙම බොහෝ යෙදුම් තවමත් අප කලින් ඉගෙන ගත් Cloud (AWS/Azure) මත host කරන ලද Backend එකක් මත යැපීමයි.

අපි දැන් මෘදුකාංග සංවර්ධනයේ න්‍යායේ සිට, වෙබ් යෙදුම් සහ ජංගම යෙදුම් දක්වා වූ පුළුල් පරාසයක් ආවරණය කර ඇත. දැන් කාලයයි, මෙම සියලු දැනුම එකට එකතු කර, සැබෑ ලෝකයේ ව්‍යාපෘතියක් ආරම්භයේ සිට අවසානය දක්වා නිර්මාණය කිරීමට. අපගේ අවසන් මොඩියුලයෙන්, "අවසාන ව්‍යාපෘතිය සහ කළඹ ගොඩනැගීම (Final Project)" සඳහා අපි සූදානම් වෙමු.