Api කියන්නේ මොකක්ද?

Hi, I’m Harsha Fernando. I love coding, learning new tech, and sharing knowledge in Sinhala. I write about programming, web development, and real-world projects.
මොකක්ද මේ API කියන්නේ?
හරි, “API” කියන්නේ මොකද්ද කියලා අපි මුලින්ම තේරුම් ගමු.
API කියන්නේ Application Programming Interface කියන එකට. මේක අහපු ගමන් බොහෝ දෙනා හිතන්නේ,
“මේක නම් හුඟක් ලොකු, කම්පලෙක්ස් දෙයක්”
“ඩිවලපර් කෙනෙක් වෙන්න ගියොත් විතරයි මේක තේරුම් ගන්න පුළුවන්”
කියලා.
ඇත්තටම API කියන දේ අපි හිතන තරම් අමුතු දෙයක් නෙමෙයි.
ඔයා programming language එකක් ඉගෙන ගන්නකොට, framework එකක් භාවිතා කරනකොට, හෝ application එකක් හදනකොට — මේ හැම තැනකම API කියන concept එක ලොකු role එකක් play කරනවා.
“You don’t need to reinvent the wheel”
තාක්ෂණික ලෝකේ තියෙන ලොකුම concept එකක් තමයි:
You don’t need to reinvent the wheel
ඒ කියන්නේ, කව්රුහරි කලින් හදලා තියෙන දෙයක් නැවත මුල සිට හදන්න ඕනේ නෑ.
Programming වලට apply කරලා බලනකොට:
කලින් කව්රුහරි හදලා තියෙන code එකක් තියෙනවනම්
ඒ code එක API එකක් විදිහට expose කරලා තියෙනවනම්
ඔයා කරන්න ඕනේ,
👉 ඒ API එක call කරලා use කරන එක
👉 නැතුව ඒ code එක නැවත නැවත ලියන එක නෙමෙයි
එතකොට “API call කරනවා” කියන්නේ මොකද්ද කියලා අපි ඉදිරියට පැහැදිලි කරගමු.
API එක තේරුම් ගන්න හොඳම උදාහරණය – රේඩියෝව
API concept එක තේරුම් ගන්න හොඳම උදාහරණයක් තමයි රේඩියෝව.
රේඩියෝවක තියෙන දේවල් බලන්න:
Volume වැඩි / අඩු කරන බටන්
Channel මාරු කරන බටන්
Power button
👉 මේ බටන් ටික තමයි interface එක.
ඔයා volume button එක එබුවාම:
ඇතුළේ තියෙන transistor,
circuit,
signal processing
මේවා ඔයාට පේනවද?
❌ නැහැ.
ඔයාට කරන්න තියෙන්නේ:
- button එක press කරන එක විතරයි
👉 ඇතුළේ වෙන්නේ මොනවද කියලා දැනගන්න ඔයාට අවශ්ය නෑ.
මේක API එකට කොහොමද සම්බන්ධ වෙන්නේ?
Buttons → API Interface
Radio ඇතුළේ process වෙන දේ → Application logic / implementation
Userට පේන්නේ interface එක විතරයි → Abstraction
Abstraction කියන්නේ මොකද්ද?
API concept එකේ මුලින්ම තියෙන core idea එකක් තමයි Abstraction.
Abstraction කියන්නේ:
Userට අවශ්ය නැති
කම්පලෙක්ස්
ඇතුළේ වෙන process
👉 ඒවා පෙන්වන්නේ නැතුව,
👉 Userට use කරන්න විතරක් chance එක දෙන එක.
Userට:
process එක බලන්න ඕනේ නෑ
logic එක තේරුම් ගන්න ඕනේ නෑ
Use කරන්න පුළුවන් නම් ඒක enough.
API එකක් කරන්නෙත් ඒකමයි.
API කියන්නේ Web API විතරක්ද?
මේක හුඟක් දෙනාට තියෙන common misunderstanding එකක්.
බොහෝ දෙනා හිතන්නේ:
“API කියන්නේ Web API විතරයි”
❌ ඒක වැරදි.
👉 Web API කියන්නේ API වලින් එක කොටසක් විතරයි
👉 API කියන concept එක හුඟක් විශාලයි
Local API කියන්නේ මොකද්ද?
උදාහරණයක් ගමු.
මං Ruby language එකෙන් මෙහෙම ලියනවා කියලා හිතමු:
name = "harsha"
puts name.upcase
Output එක:
HARSHA
දැන් ප්රශ්නය:
👉 upcase කියන එක කොහෙන්ද ආවේ?
ඒක ඔයා හදපු function එකක් නෙමෙයි
Ruby language එකේ String class එකට අදාලව කලින්ම දීලා තියෙන API එකක්
👉 මේක තමයි local API එකක්.
ඔයා:
String.upcaseකියන endpoint එක call කරනවාRuby internally ඒ process එක handle කරනවා
JavaScript APIs – Browser එකේ උදාහරණය
JavaScript console එක Chrome, Firefox, Edge වල run කරලා බලන්න.
Output එක හැම browser එකේම එක වගේ.
ඇයි?
👉 ඒ browser ඔක්කොම use කරන්නේ same JavaScript APIs
ඒ APIs:
browser vendors විසින් implement කරලා
developersලාට expose කරලා තියෙනවා
Libraries & Frameworks කියන්නෙත් APIs
ඇත්තටම:
Library
Framework
මේ දෙකම API collections කියලා හිතන්න පුළුවන්.
උදාහරණයක්:
Image processing library එකක් තියෙනවා කියලා හිතමු
ඔයා ඒ library එක import කරලා
resize(),crop()වගේ functions call කරනවා
👉 ඔයා:
image processing logic එක මුල සිට ලියන්නේ නෑ
API එක call කරලා result එක ගන්නවා
Endpoint කියන්නේ මොකද්ද?
Endpoint කියන්නේ API එකක specific access point එකක්.
Company එකක් හිතන්න:
HR department
Finance department
Support department
Money related ප්රශ්නයක් තියෙනව නම්:
Company hotline එකට call කරන එක pointless
Finance department එකට call කරන එක correct
👉 ඒ වගේමයි API වලත්.
Spotify API එක උදාහරණයක් ගමු:
Artist details ගන්න endpoint එකක්
Albums ගන්න වෙන endpoint එකක්
Artist details ඕනේ නම්:
- Artist endpoint එක call කරනවා
Album details ඕනේ නම්:
- Album endpoint එක call කරනවා
👉 වැරදි endpoint එක call කරලා හරි result එකක් ගන්න බැහැ.
Radio උදාහරණය නැවත
Volume අඩු කරන්න ඕනේ නම් → Volume button
Channel මාරු කරන්න ඕනේ නම් → Channel button
Volume button එකෙන් channel මාරු වෙන්නෙ නෑ.
👉 ඒ වගේමයි:
එක endpoint එකකට තියෙන්නේ එක් responsibility එකක් විතරයි
Web API & REST API ගැන පොඩි සටහනක්
හුඟක් දෙනා REST API කියලා කියනවා.
මෙතන වැදගත් දෙයක්:
REST කියන්නේ API එකක් නෙමෙයි
REST කියන්නේ architecture style / guideline set එකක්
👉 Web-based APIs design කරනකොට follow කරන principles ටිකක්.
REST API ගැන අපි වෙනම දවසක detail එකට කතා කරමු.
Web API එකක් real-life උදාහරණයක් – Google Translate
ඔයා Google Translate app එක use කරනවද?
Photo එකක් upload කරනවා
OCR කරලා text extract කරනවා
Translate කරලා result එක දෙනවා
👉 මේ ඔක්කොම:
- ඔයාගේ phone එකේ CPU එකෙන් locally කරන දෙයක් නෙමෙයි
👉 වෙන්නේ:
Client side (phone / browser) → API call එකක් යවනවා
Google servers → heavy processing කරනවා
Result එක → client side එකට ආපහු එනවා
👉 මේක තමයි Web API එකක් practically work කරන හැටි.
සාරාංශයක්
API = Application Programming Interface
API කියන්නේ Web API විතරක් නෙමෙයි
Local APIs, Library APIs, Framework APIs, Web APIs තියෙනවා
API එකක core idea එක = Abstraction
Endpoint කියන්නේ specific function / responsibility එකක්
මොනවහරි තව ප්රශ්න තියෙනවනම් comments වල දාන්න.
ඊලඟට අපි REST API කියන්නේ මොකද්ද, කොහොමද work කරන්නේ කියලා කතා කරමු. 👍






