Firebase යනු, Google ආයතනය විසින් නිර්මාණය කරන ලද මෘදුකාංග නිර්මාණය කරන්නන් සඳහා අතිශය වැදගත් යෙදුම් සහිත Backend එකකි. මෙහි මෘදුකාංග සංවර්ධනය කරන්නන්ට වෙන්වූ නොමිලයේ ලබාගත හැකි යෙදවුම් මෙන්ම මුදල් ගෙවා ලබාගත හැකි යෙදවුම්ද විශාල ප්රමාණයක් තිබෙනවා. මෙම සියලු යෙදවුම් අපට Cloud Service ලෙස ලබාගත හැකි නිසා ඕනෑම අවස්ථාවකදී සම්බන්ධ වීමට හැකියාව තිබේ.
එමෙන්ම දැනට නිතර භාවිතා වන ක්රමලේඛන භාෂා විශාල ප්රමාණයකට Firebase විසින්ම නිල වශයෙන් අත්පොත් ලබා දී ඇති නිසා එම ඕනෑම භාෂාවක සිට පහසුවෙන්ම Firebase හි ඇති විශේෂාංග භාවිතා කිරීමට අවස්ථාව සැලසේ. මෙම සේවාවන් වල නොමිලයේ භාවිත කිරීමේ සීමිතකම් ඇති අතර එය අපගේ සංවර්ධක අවදියේදී සෑහීමකට පත් වන අයුරින් සකසා ඇත. එම නිසා වැඩි පාරිභෝගික පිරිසක් සිටින විට මෙම සේවාවන් මුදල් ගෙවා ලබාගැනීමට හැකියාව ඇත. එහෙනම් අපට නිතර අවශ්ය වන යෙදවුම් කිහිපයක් ගැන කෙටියෙන් දැනගනිමු.
Authentication
Firebase සතු බෙහෙවින් ප්රයෝජනනවත් වන මෙවලමක් තමයි මේ Authentication කියල කියන්නේ. ඔබ අප එදිනෙදා භාවිතා කරන Android, iOS හෝ Web Application වල ඇති Sign in with Google / Sign in with Facebook වැනි Login හෝ Sign Up වීමට ඇති පහසුකම මෙම Firebase Authentication හරහා අපට ලබාගත හැකිය. එමෙන්ම ඒ හරහා එම අදාල පුද්ගලයාගේ එම ගිණුමේ නම, E - mail වැනි තොරතුරු මේ හරහා ලබාගැනීමට සංවර්ධකයාට හැකියාව ඇත. මෙම සේවාව මගින් ආරක්ෂාකාරීව අදාල මෘදුකාංගයට ඇතුලුවීමේ හැකියාව පාරිභෝගිකයාට ලැබෙන අතර මෘදුකාංග සංවර්ධනය කරන්නාටද ඉතාමත් පහසු ලෙස මෙය නිර්මාණය කරගැනීමට අවස්ථාව හිමිවේ. මේ හරහා පහත රූපයේ පරිදි කැමති සේවාවක් ලබාගැනීමට සංවර්ධකයාට අවස්ථාව සැලසේ.
Real-Time Database
Firebase හි ඇති සුවිශේෂ ජනප්රිය මෙවලමක් තමයි මෙම Real Time Database එක. මන්ද යත් ඕනෑම විටක ඕනෑම භාෂාවකින් මේ සදහා සම්බන්ධ වී ක්ෂණිකව දත්ත ලබාගැනීම පුලුවන් Database එකක් වීමයි. මෙහි දත්ත යාවත්කාලීන වු සැනින් අදාල මෘදුකාංගයට දැනගැනීමට හැකියාව ද මෙමගින් ලබාදී ඇත. තවද මෙම Database එක IOT නිර්මාණකරුවන් අතර බොහෝ සෙයින් ජනප්රිය වි තිබෙනවා. මෙහි සියලුම දත්ත Key-value ලෙස ගබඩා වන නිසා මෙහි sql භාවිතයක් නොමැත. තවද මෙම Database එකට වෙනම Url එකක් සහිත වන නිසා එමගින් GET Request යොමුකර json ආකාරයටද දත්ත ලබාගැනීමට හැකියාව ඇත. මෙම Real-time database එකට Security Rules ආදියද ලබාදීමට හැකිනිසා පිටස්තර අයගෙන් මෙහි ඇති දත්ත ආරක්ෂා කරගැනීමට හැකියාව ඇත.
Firestore Database
මෙයද Firebase විසින් අපට ලබාදෙන Database එකකි. මෙහි විශේෂත්වය වන්නේ මෙහි දත්ත ගබඩා කරනුයේ Collection සහ Document වශයෙනි. එමගින් විවිධ වර්ගයේ Data Types විශාල සංඛාවක් ගබඩා කල හැකි අතර එයද අදාල Document එක තුල Key Value ලෙස ගබඩාවීම සිදුවේ. මෙයටද Real-Time Database මෙන්ම Security Rules ලබාදීමට හැකියාව ඇත. මෙම Firestore සේවාව මගින් Real-Time ආකාරයට හෝ නැතිනම් One-Time ලෙස දත්ත ලබාගැනීමට හැකියාව ඇත. එය අප භාවිතා කරන පරිගණක භාෂාව මත වෙනස්විය හැකියි. මෙහි දත්ත ඉතා සියුම් ලෙස Filter කර පෙලගැස්විය හැකිවීමත් මෙහි තිබෙන වාසියකි. Firestore වෙත ඔවුන්ගේ නවතම Firestore Extensions ලබාදී ඇති නිසා පෙර නොවූ අද්දැකීමක් ඔබට දැන් ලබාගත හැකියි.
Hosting
Web Site එකක් අන්තර්ජාලයට මුදා හැරීමේදි අපට Domain සහ Web Hosting එකක් ලබාගැනීමට අනිවාර්යයෙන්ම කල යුතු දෙයකි. වෙබ් අඩවියක් නිර්මාණය කරන අවස්ථාවේදී එය පරීක්ෂණ කිරීමට හෝ අපට නොමිලයේ Host කිරීමට ඉතාමත් සීමිත වෙබ් අඩවි කිහිපයක් දැකගැනීමට පුලුවන්. ඒ අතරින් සුවිශේෂ වූ සේවාවක් Firebase Hosting වෙතින් සපයයි. මෙමගින් අපට නොමිලයේම .web.app වසම් නාමය යටතේ Domain එකක් නොමිලයේම ලබාගත හැකියාව ඇත. තවද අපට ඕනෑම වෙනස්කමක් පරිගණකය තුලම සිදුකර එවෙලෙම වෙබ් අඩවිය යාවත්කාලීන කිරීමට මෙම Hosting සේවාව මගින් අවස්ථාව හිමිවේ. මෙම සේවාව Command Line එකක් තුල සිදුවන නිසා ඉතාම වේගවත්ව පරිහරණය කල හැකිය. මෙම Firebase Hosting සේවාව React, Flutter, HTML, Javascript වැනි භාෂාවන්වලට සීමාවූ එකක් නිසා php වැනි භාෂාවන් වලට තවමත් සහාය නොදක්වයි. මෙයට අපට කැමති Domain එකක් සම්බන්ධ කර එයට Deploy කිරීමට හැකියාව ඇති අතර 10GB Storage, 10GB Monthly Downloads ප්රමාණයක් සහ SSL පහසුකම් ඇතුලු සේවා රැසක් ජීවිත කාලයටම නොමිලයේම ලබාදෙයි. තවද මෙය CLI ආකාරයට භාවිතා වන නිසා Files Drag and Drop ක්රමයට Upload කීරීමක් හෝ නොකල හැකි නිසා ආධුනික අයට තරමක් අපහසු වනු ඇත.
Storage
Firebase Storage යනු Media Storage පහසුකම ලබාදෙන සේවාවයි. මෙහි ඔබට අවශ්ය ඕනෑම Images, Videos, Documents ආදී සියලු දේවල් Upload කිරීමට හැකියාව ඇත. මෙම සේවාව ඔබ Firestore හෝ Real-Time සේවාව සමග භාවිතා කරන්නේ නම් මෙහි ඇති එක් එක් ගොනුවට ඇති url එක ඔබගේ Database එක තුල ගබඩා කිරීමෙන් අදාල file එකට සෘජුවම සම්බන්ධ වීමට හැකිව ඇත. මෙම Storage සේවාවටද Security Rules භාවිතා කර ආරක්ෂාව ලබාගත හැකිය.
Analytics
Firebase භාවිතා කර සාදන ලද Web, Android, iOS වැනි Apps සඳහා මෙම සේවාව භාවිතා කිරීමට හැකි අතර එමගින් අපගේ Software එක දැනට භාවිතා කරන පරිශීලකයන්ගේ විස්තර මෙන්ම Software එකෙහිද සියලු විස්තර දින වකවානු සහිතව සවිස්තරව විශ්ලේෂණය කරහැකි අන්දමට ලබාගතහැකි පහසුකමක් ලෙස මෙය හදුන්වා දිය හැකිය. මෙම සේවාව Firebase සමග සියලු අංග නොමිලයේම සපයයි.
Crashlytics
Firebase Crashlytics යනු අපගේ IOS, Flutter, Android සහ Unity මෘදුකාංග Production release කල පසුව ඇතිවන සියලු crash පිලිබදව Report එකක් ලබාගත හැකි අපූරු මෙවලමකි. මෙමගින් ඉතා පහසුවෙන්ම භාවිතා කරන්නට ඇතිවෙන දෝෂ හදුනාගැනීමට හැකිවන නිසා භාවිතා කරන්නන්ගෙන් Feedback ලබාගැනීම අවශ්ය වන්නේ නැත. එම ගැටලුව ඇති වූ අවස්ථාවේදීම Firebase Crashlytics Dashboard එක තුල එම ගැටලුව ඇති වූ ස්ථානය සහ එහි කේතය සමගම අපට දැකගැනීමට හැකිවන නිසා ලේසියෙන්ම එම ගැටලුව සදා මෘදුකාංගයේ යාවත්කාලීනකම් සිදුකල හැකිය.
මේ ආකාරයට Firebase තුල ඇති විශේෂාංග කිහිපයක් අපට සරලව හදුන්වා දිය හැකිය. එහෙනම් තවත් මේ වගේ වැදගත් ලිපියකින් හමුවෙමු. සුභ දවසක්.