Showing posts with label Web. Show all posts
Showing posts with label Web. Show all posts

Wednesday, October 8, 2014

ASP.Net WebAPI 2 සිංහලෙන් පාඩම 2 - අවශ්‍ය මෘදුකාංග සකස් කර ගැනීම


අපේ පළමු හැඳින්වීමේ ලිපියෙන් ASP.Net WebAPI 2 ගැන සවිස්තරාත්මක විග්‍රහයක් කලා, අද ලිපියෙන් මම මේ පාඩම් මාලාවට අවශ්‍ය මෘදුකාංග පර්ඝනකයේ පිහිටුවා ගැනීම ගැනයි කතා කරන්නේ.

ඔබට අවශ්‍ය වන ඉතාමත්ම වැදගත් මෘදුකාංගය වනුයේ Visual Studio 2013 යි. එහි අපිට අවශ්‍ය කරන බොහෝ අන්ගෝපාන්ග වලින් සමන් විතයි. මෙහි නොමිලේ ලබා දෙන සංස්කරණය මෙම පාඩම් මාලාව සඳහා හොඳටම ප්‍රමාණවත් (Visual Studio Express 2013 for Web). ඔබට එය www.visualstudio.com වෙබ් අඩවියෙන් ලබා ගත හැකිය. එසේ නොමැතිව ඔබ වෙනත් සංස්කරණයක් දැනටමත් භාවිතා කරයි නම් කිසිදු ගැටළුවක් නොමැතිව එය ඔබට මෙහිදී යොදාගත හැකි වේ.

මේ ළගට අපිට අවශ්‍ය වන්නේ database server එකයි. මේ සඳහා මම යොදා ගන්නේ SQL Server 2014, DBMS (Database Management System) එකයි. මෙහිත් නොමිලේ ලබා දෙන සංස්කරණය වන SQL Server 2014 Express සංස්කරණය www.microsoft.com/en-us/download/details.aspx?id=42299 (SQL Server With Management Studio) සබැඳියෙන් ලබා ගත හැක.

තවද මම මෙහිදී භාවිතා කරන web browser එක google chrome වේ. එයද www.google.com/chrome/browser සබැඳියෙන් ඔබට ලබා ගත හැකි වේවි.

තව එක මෘදුකාංගයක් මට අවශ්‍යයි, ඒ HTTP request වල තොරතුරු අධ්‍යනය කිරීමටයි. එයද ඔබට www.getpostman.com මගින් ලබා ගත හැකි වේවි. එය ඔබේ chrome browser එකට App එකට ලෙසට install වේවි.

දැන් අපි අවශ්‍ය කරන මෘදුකාංග සියල්ල පිහිටුවාගෙන අවසන්. ඔබලාගේ අදහස්, යෝජනා, චෝදනා හා ගැටළු comment මගින් මේ ලිපියට යොමු කරන්න එය මී ලග ලිපිය සඳහා මහගු පිටුවහලක් වනවා ඇති. මීලඟ පාඩමෙන් අපි අයේ හමු වෙමු.
Read More

Friday, August 29, 2014

ASP.Net WebAPI 2 සිංහලෙන් - හැඳින්වීම


ASP.Net Web API 2 සංස්කරණය නිකුත් වෙලත් දැන් ටික කාලයක්, ඉතින් කෝඩින් සිංහලෙන් (Coding Sinhalen) කණ්ඩායමේ අපි හිතුවා Web API සම්බන්ධව අපේ Blog එකේ ලිපි පෙලක් පළ කරන්න මේ හොදම කාලය කියල. මෙහිදී අපි ප්‍රධාන වශයෙන් අපි ASP.Net Web API සම්බන්ධව ඔබට අවශ්‍ය කරන මූලික දැනුමේ සිට ගැඹුරු සංකල්ප දක්වා ගමන් කරන්න බලාපොරොත්තු වෙනව. මම මෙම හැඳින්වීමේ ලිපියෙන් පහත සඳහන් කරුණු කාරනා ගැන අවධානය යොමු කරනව.

  • හැඳින්වීම
  • RESTful Service එකක් කියන්නේ මොකක්ද?
  • මොනවද අවශ්‍ය කරන software?
  • ASP.Net Web API හි විශේෂ ලක්ෂණ මොනවාද?
  • ASP.Net Web API 2 හි විශේෂ ලක්ෂණ මොනවාද?
  • ඔබ ASP.Net Web API තෝරාගත යුත්තේ ඇයි?
  • ASP.Net Web API, Web Services, WCF, WCF REST අතර වෙනස් කම් මොනවාද?

හැඳින්වීම

පරිඝණක පද්ධති (Computer Systems) පසුගිය දස වසර තුල පරිණාමය වී ඇති ආකාරය ඉතාමත්ම විශ්මයජනක වේ. එදා තනි තනිව (Stand Alone) ක්‍රියාත්මක වූ පරිඝණක පද්ධති අද එකට එකතු වී එදා මෙන් සිය දහස් ගුණයක සේවාවක් සපයයි. අද වන විට එවැනි තනිව ක්‍රියාත්මක වන පරිඝණක පද්ධති ඇත්තේ ඉතාමත් සීමිත ප්‍රමාණයක් පමණි. ඒ වාගේම විවිධ වූ ජංගම උපාංග (Mobile Devices) වලින් එම පරිඝණක පද්ධති හා සම්බන්ධ වීමේ පහසුකම් සපයා ඇත. එනම් අන්තර්ජාලය (Internet) හරහා හෝ ජංගම උපාංගයක ඇති App එකක් හරහා පරිඝණක පද්ධති පරිශිලනය කිරීමේ හැකියාව අද නැතුවම බැරි අංගයක් වී ඇත.

මෙසේ විවිධ වූ උපාංග හා පරිඝණක පද්ධති අතර දත්ත(Data) හුවමාරු කර ගැනීමේ අභිලාෂයෙන් බිහිවූ තාක්ෂණික ක්‍රම විශාල ප්‍රමාණයක් ඇත. Microsoft සමාගමේ .Net Framework එකත් සමග අපිට මෙවැනි ක්‍රම කිහිපයක්ම භාවිතා කිරීමේ පහසුකම් සලසා දී තිබෙනව.
  1. Web Services - ඉතාමත්ම පැරණි තාක්ෂණයකි.
  2. WCF (Windows Communication Foundation)
  3. WebAPI
මේ අතරින් web services දැන් කල් පැන ගිය තාක්ෂණයක් වන අතර WCF හා WebAPI කරට කර භාවිතා වේ. Web services සඳහා SOAP(Simple Object Access Protocol) නැමති XML(Extensible Markup Language) මත පදනම් වූ protocalය භාවිතා වේ. එමගින් HTTP(Hyper Text Transfer Protocol) හරහා ඉතා පහසුවෙන් දත්ත හුවමාරු කරගත හැකි විය. එපමනක් නොව .Net, Java වැනි Programming platform සමග සම්බන්ධවීමේ හැකියාව මෙම තාක්ෂණය සතු විය (Cross platform communication). නමුත් එය සතු දුර්වලතාද විය. ප්‍රධාන ලෙස දත්තයට අමතරව එම protocolයේ ක්‍රියාකාරීත්වය සඳහා රැගෙන යා යුතු දත්ත ප්‍රමාණය සාපේක්ෂව විශාල වීම සැලකිය හැකිය. එම නිසා bandwidth එක අඩු සන්නිවේදන මාර්ග හරහා දත්ත හුවමාරුව අපහසු විය. මෙය පරිඝණක පද්ධතියේ අවසාන කාර්යක්ෂමතාව කෙරෙහි ඉතා අහිතකර ලෙස බලපාන ලදී. එමෙන්ම web services භාවිතා කිරීමේදී භාවිතා කරන්නාගේ (Client) අන්තයේදී proxy එකක් හරහා දත්ත හුවමාරු කරගත යුතු වේ. එම නිසා service එකේහි වෙනසක් සිදු කොට නිසි ආකාරව proxy එක update නොකලහොත් මුළු පද්ධතියේම බිඳ වැටීමක් ඇති විය හැකිය. Web Services ක්‍රමයෙන් අභාවයට යද්දී Microsoft සමාගම සිය .Net 3.0 Framework නිකුතුවත් සමගම මේ සඳහා ආදේශකයක් ලෙස WCF හඳුන්වාදෙන ලදී.

WCF, web services වලට වඩා ආරක්ෂිත, පහසු හා පරිණත දත්ත හුවමාරු මාධ්‍යයක් සපයාදෙන ලදී. එමෙන්ම WCF වල විශේෂ පහසුකමක් ලෙස එය HTTP හැරුණු විට වෙනත් protocol සඳහා ඉතා පහසුවෙන් configure කර ගත හැකි වීම සඳහන් කළ හැකිය (HTTP, TCP, IPC සහ Message Queues). එමෙන්ම WCF භාවිතයෙන් අපිට REST(Representational State Transfer) services ද ගොඩනගා ගත හැකි අතර ඒවා WCF REST නමින් හඳුන්වයි (RESTful Services ගැන අපි පසුවට කතා කරමු). WCF RESTful services වල ප්‍රධාන අවාසියක් ලෙස විශාල වශයෙන් configurations අවශ්‍ය වීම දැක්විය හැකිය. නමුත් ඔබට one way messaging, message queues සහ duplex communication වැනි තාක්ෂණයන් භාවිතා කිරීමට අවශ්‍ය නම් අදටත් ඔබට WCF service එකක් භාවිතා කිරීමට සිදුවනු ඇත.

ASP.Net WebAPI යනු මෑත කාලීනව භාවිතයට පැමිණි RESTful service සාදාගත හැකි framework එකකි.එ එහි ප්‍රධානම වාසිය වනුයේ ඉතා පුළුල් වූ සේවාලාභීන් (Clients) සඳහා සේවාව සැපයීමේ හැකියාවයි, එය web browser වල සිට ඔබේ smart phone එක දක්වා විහිදී යියි. ASP.Net WebAPI MVC framework එකේ කොටසක් නොවේ, නමුත් එය MVC ව්‍යාපෘති (Projects) වලදීද Web Forms හෝ standalone web service වලදී වුවද යොදා ගත හැකිය. මෙහිදී database සමඟ දත්ත හුවමාරුව සඳහා අපිට Entity Framework යොදා ගත හැකිවේ. 


RESTful Service එකක් කියන්නේ මොකක්ද?

අපි මීලගට RESTful Service (Representational State Transfer) ගැන කතා කරමු. සරලව මේ ගැන කියනවානම් එය HTTP මත ක්‍රියාත්මක වන distributed environment එකක් හරහා දත්ත හුවමාරු කරගැනීම සඳහා සැකසුණු protocol එකකි. මෙහිදී අපගේ service එක resource එකක් ලෙස සලකා ඒ මත විවිධ වූ ක්‍රියාකාරකම් HTTP හරහා සිදු කිරීම විශේෂ වේ. HTTP methods කිහිපයක් මේ සඳහා භාවිතා වේ.


  • GET - මෙය දත්ත ලබා ගැනීම සඳහා වේ.
  • PUT - දත්ත යාවත්කාලීන (Update) කිරීම සඳහා භාවිතා කරයි.
  • POST - දත්ත තැන්පත් (Create) කිරීම සඳහා යොදා ගනියි.
  • DELETE - දත්ත මකා දැමීම සඳහා වේ.
WCF, RESTfull service එකක් ලෙස සකස් කර ගැනීමට හැකි වුවද එය යම් ප්‍රමාණයකට සංකීර්ණ වූ ක්‍රියාවලියකි. නමුත් ඔබ WebAPI මේ සඳහා යොදාගනී නම් එය වඩාත් සරල සේ දැනෙනු ඇත.

මොනවද අවශ්‍ය කරන software?

  1. ඔබට මේ tutorial එක සඳහා Microst Visual Studio 2013 සංස්කරණය අවශ්‍ය වේ. (Express edition එක වුවද ප්‍රමාණවත්ය). http://www.visualstudio.com/en-us/products/visual-studio-express-vs.aspx
  2. Microsoft SQL Server 2014 (Express edition එක වුවද ප්‍රමාණවත්ය). http://www.microsoft.com/en-us/download/details.aspx?id=42299

ASP.Net Web API හි විශේෂ ලක්ෂණ මොනවාද?

  1. HTTP ප්‍රතිචාර වල Accept Header සහ HTTP status code අන්තර්ගත වීම.
  2. HTTP ප්‍රතිචාර WebAPI හි MediaTypeFormatter මගින් JSON, XML හෝ ඔබ ඊට ඇතුලත් කරන format එකකට format කිරීම.
  3. PDF හෝ Images වැනි objects නොවන දෑ සඳහාද WebAPI සහය දැක්වීම.
  4. IIS(Internet Information Services) වල හෝ Application හි ස්ථාපිත කිරීමේ හැකියාව.
  5. MVC ලක්ෂණ වන routing, controllers, action results, filter, model binders සඳහා සහය දැක්වීම.

ASP.Net Web API 2 හි විශේෂ ලක්ෂණ මොනවාද?

  1. Attribute Routing.
  2. CORS - Cross Origin Resource Sharing.
  3. OWIN(Open Web Interface for .Net) self hosting.
  4. IHttpActionResult.
  5. Web API OData(Open Data Protocol).

ඔබ ASP.Net Web API තෝරාගත යුත්තේ ඇයි?

  1. ඔබට SOAP based service එකක් අනවශ්‍ය විටකදී හොඳම විසඳුම වීම.
  2. ඉතා කරදරකාරී configuration වලින් තොර වීම.
  3. සරලව RESTfull Service එකක් සාදා ගත හැකි වීම (Http මත පමණක් පදනම් වී ඇති නිසා).
  4. Light weight architecture එකක් නිසා අඩු bandwidth එකක් ඇති ජංගම උපාංග සඳහාද හිතකර වීම.
  5. WebAPI, Open Source වීම.

ASP.Net Web API, Web Services, WCF, WCF REST අතර වෙනස් කම් මොනවාද?

  • Web Service සහ WCF, SOAP මත පදනම් වන අතර දත්ත XML ලෙස හුවමාරු කර ගනී.
  • Web Service HTTPට පමණක් සහය දක්වන අතර WCF TCP, HTTP, HTTPS, Named Pipes සහ MSMQ protocols වලට සහය දක්වයි.
  • Web Service,WCF සහ WCF REST, open source නොවන අතර WebAPI open source වෙයි.
  • Web Service හා WCF REST IIS වල පමණක් host කල හැකි අතර WCF හා WebAPI IIS වල හෝ application එක තුල host කල හැකිය.
  • WCF REST, HTTP Get හා Post verbs වලට සහය දක්වද්දී WebAPI HTTP හි සියළුම features භාවිතා කරයි (URIs, request/response headers, cashing, versioning, content formats).
  • WebAPI MVC features වන routing, action results, controllers, model binders වැනි දේ සඳහාද සහය දක්වයි.
  • Web Services හා WCF හි ප්‍රතිචාර XML format එකෙන් ලැබෙන අතර WCF REST XML, JSON සහ ATOM යන format වලයට සහය දක්වයි. WebAPI හිදී ඔබට MediaTypeFormatter මගින් ඔබට අවශ්‍ය ආකාරයට format එක වෙනස් කර ගත හැකිය.
Microsoft සමාගමේ WebAPI ගැන ඔබට යම් දුරකට අවබෝධයක් මෙයින් ලැබෙන්න ඇති, ගොඩක් ගැටළුත් ඇති, ඔබලාගේ අදහස්, යෝජනා, චෝදනා හා ගැටළු comment මගින් මේ ලිපියට යොමු කරන්න එය මී ලග ලිපිය සඳහා මහගු පිටුවහලක් වනවා ඇති.

ආශ්‍රිත ලිපි :


Read More

Monday, March 17, 2014

ASP.Net Web Application එක Browsers කිහිපයක Run කරවමු.

             වෙබ් ඇප්ලිකේෂන් develop කරන ගොඩක් අයට තිබෙන ගැටළුවක තමයි එක web browser එකක ඉතාමත් හොඳින් නිවැරදිව ක්‍රියා කරන මෘදුකාංගය වෙනත් web browser එකක පරීක්ෂා කරන කොට ඊට හාත්පසින්ම වෙනස් විදිහට ක්‍රියා කිරීම. මේක බොහෝ විට Google Chrome web browser එක සමග තමයි සිද්ද වෙන්නේ. ඔබ Telerik වගේ third party controls භාවිතා කරනවානම් මේ අවදානම ඉතාමත් වැඩියි. මොකද එවැනි controls වල අළුත්ම version එක පමණයි බොහෝවිට නවතම web browsers වලට සහාය දක්වන්නේ. 

              මෙවැනි ගැටළු නිසා Visual Studio IDE අපිට පහසුකම් සලසා දීල තියෙනව web browsers කිහිපයක අපේ application එක පරීක්ෂා කිරීමට. ඒ සඳහා අපේ පරිඝණකයේ install කරල තියෙන ඕනම  web browser එකක් භාවිතා කරන්න පුළුවන්.


        
Read More

Saturday, July 28, 2012

HTML සිංහලෙන් පාඩම 8 - More Tags


            කොහොමද කට්ටියට ගොඩක් කාලෙකට පස්සේ තමයි අද මම HTML පාඩමක් අරගෙන ආවේ. ගොඩක් වැඩ තිබුන නිසයි එහෙම වුනේ මීට පස්සෙ ගොඩක් දුරට එමෙහ වෙන එකක් නෑ. හොඳයි අද පාඩමට කලින් මෙතනින් ගිහින් මීට කලින් පාඩමත් බලල ඉමුකෝ!

                අද පාඩමෙන් අපි තව දුරටත් අපිට ඉතා වැදගත් වෙන tags කිහිපයක් ගැන කතා කරන්නම්. මේ Tags වෙබ් පිටු නිර්මාණයේදී නිතර නිතර අවශ්‍ය වන ඒවා වේ.

<h...> Tag එක HTML Headings සඳහා

             මම මේ Tag එක ගැන මීට කලිනුත් කතා කරල තියෙනවා ඒත් මේ වෙලාවෙත් ඒ ගැන කතා කරන්න හිතුනා මොකද මේ Tag එක ඒ තරම්ම භාවිතා වෙන නිසා. මම උඩ මාතෘකාව ලියන කොට h අකුර ගාව තිත් 3ක් තියල තියෙනවවේ අන්න එතනට 1 සිට 6 දක්වා ඉලක්කම් යොදල ඔබට විවිද ප්‍රමාණයේ headings 6ක් සාදාගත හැකියි. තවද <h1> මගින් ඉතාමත් වැදගත්ම මාතෘකාව නිරූපණය කරන අතර <h6> මගින් වැදගත් බවින් අඩුම මාතෘකාව නිරූපණය වේ. අනෙක් මාතෘකා ඒ අතර වෙනස් වේ. code එකට heading එකක් ඇතුලත් කරන්නේ මෙන්න මෙහෙමයි.

<h...>mention your title here </h...>

අපි දැන් මේ headings වෙනස් වෙන ආකාරය පුංචි උදාහරණයකින් බලමු, මම මේක code කරල තියෙන්නේ Notepad++ භාවිතා කරල ඔබත් ඒකට හුරුවන්න.


මේ code එක HTML file එකක් විදිහට save කරල open කරාම පේන හැටි තමයි මේ,



                 ඒ වගේම ඉහත උදාහරණය බලන ඔයාලට පේනවා ඇති මම code එකේ සඳහන් කරල නැතත් browser එක විසින් automatically මේ headings අතර ඉඩ තබා තියෙනවා කියල. සාමාන්‍යෙයන් browser එක විසින් heading එකට පෙර සහ පසු හිස් ඉඩක්  (margin) එකතු කරනු ලබනවා. අනිත් වැදගත් කාරනය තමයි ඔයාල කිසිම වෙලාවක මේ headings තමන්ගේ text bold කරන්න හෝ විශාලව පෙන්නන්න භාවිතා කරන්න එපා. මොකද බොහො search engines මේ headings කියවනවා, එසේම වෙබ් පිටුව නියමාකාර ගලා යාමකට නතු කරන්න මේ headings ඉතා වැදගත්.

<hr/> Tag එක HTML Line සඳහා

                මේ tag එක මගින් සිඳු කරනුයේ අපේ html වෙබ් පිටුවට තිරස් Line එකක් එකතු කිරීමයි. අපිට මේ tag එක අපේ වෙබ් පිටුවේ contents වෙන් කිරීමට යොදා ගන්න පුළුවන්. මේ tag පවන්නේ තනි tag එකක් ලෙසටයි. අපි සරළ උදාහරණයක් බලමු,


මේ code එක HTML file එකක් විදිහට save කරල open කරාම පේන හැටි තමයි මේ,


තව දෙයක් මෙතනදිත් ඔයාලට පේනවා කලින් Headings වලදී වගේම browser එක විසින් paragraph එකට පෙර සහ පසු හිස් ඉඩක්  (margin) එකතු කර තිබෙනවා වගේම මේ තිරස් Line එකටත් පෙර සහ පසු ඒ ආකාරයටම හිස් ඉඩක්  (margin) එකතු කර තිබෙන බව.

<!--...--> Tag එක HTML Comment සඳහා

               අපි ගොඩක් වෙලාවට නොකරන දෙයක් වුනත් කල යුතුම දෙයක් තමයි අපේ code එකෙන් අපි කරන දේ ගැන තව කෙනෙකුට වුනත් කියවල තේරුම් ගන්න පුළුවන් ආකාරයට comment කිරීම. සමහර විට අපිටම වුනත් පසු කාලයකදී code එක කියවන විට අපි කරපු දේවල් තේරුම් ගන්නත් ඒක පහසුවක් වේවි. මේ comments වෙබ් පිටුවේ පෙන්නන්නේ නෑ ඒත් අපි code එකට බැලුවොත් අපිට ඒවා දැක ගන්න පුළුවන්. ඒක ඇත්තටම හොඳ coding පුරුද්දක්. මම හෙඩින් එකේ පෙන්වල තියෙන tag එකෙ තිත් 3 වෙනුවට ඔයාලට අවශ්‍ය comment එක දාගන්න පුළුවන්.මෙන්න මේ වගේ.

<!--This is an HTML comment-->

අපි තව උදාහරණයක් බලමු,


මේ code එක HTML file එකක් විදිහට save කරල open කරාම පේන හැටි තමයි මේ,


comments පේන්නේ නෑ නේද? අද පාඩම නිමයි. ආයේත් අළුත් පාඩමකින් හමු වෙමු.

මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.

Read More

Friday, July 13, 2012

CSS සිංහලෙන් 04


ලිපි පෙලේ හතරවන ලිපිය දාන්න පමාද උනාට සමාවෙන්න කියල මුලින්ම කියනව ....
අපි කථා කලානෙ font ගැන. දැන් බලමු color සහ background ගැන.
මෙහෙමයි, CSS වලදි වර්ණ ක්‍රම කිපයකට භාවිතාකරන්න පුළුවන්.
01 . වර්ණ වල නම භාවිතා කිරීම.
02 . එක් එක් වර්ණය සදහා වන hexadecimal ( දාහසයේ පාදයේ අංක) භාවිතය.
03 . විවිධ වර්ණ සදහා වන RGB අගයන් ලබාදීම.
හරි. බලමු දැන් පිළිවෙලට එකින් එක,

වර්ණ වල නම භාවිතා කිරීම
            මෙන්න මේ කෝඩ් 1 බලන්නකො. ඔයාලටම  තේරෙයි මොකද්ද මේ කියන්නෙ කියල
 h1 { color:red; }
මේ කෝඩ් එකෙන් අපි HTML වල යොදන h1 ටැග් එකට අදාල font color එකේ වර්ණය වෙනස් වෙනව.‍මෙන්න මේ වගේ.

html code

එක් එක් වර්ණය සදහා වන hexadecimal ( දාහසයේ පාදයේ අංක) භාවිතය.
මේහිදී සෑමවර්ණයක් සදහාම වන 16 පාදයේ අගයක් තියනව.මේ බලන්න කොඩ් 1,
h1{ color: #FF7F50;}
අදාල වර්ණය තමයි මේ,




විවිධ වර්ණ සදහා වන RGB අගයන් ලබාදීම
මේකෙදි කරන්නෙ එක් එක් වර්ණයට අදාල RGB අගයන් ලබාදෙන එක.
h1{ color: rgb(123,234,54);}



හරි දැන් බලමු කොහොමද සම්පූර්ණ පිටුවක් වර්ණ කරන හැටි. මෙන්න මේ කොඩ් 1 බලන්නකො,


Body කියන එකෙන් HTML වල body ටැග් 1ට වර්ණය අයිති වෙනව. ඒ කියන්නෙ මුළු page එකටම.දෙවන එකෙන් h1 ටැග් 1ට අ‍දාල කොටසේ වර්ණය වෙනස් වෙනව. මෙන්න මේ වගේ. 


තේරෙනව නේද ... පහත මම දාල තියනව එක් එක් වර්ණ ගැන...
එහෙනම් අයෙමත් අපි හමුවෙමු.
ප්‍රශ්න තිබ්බොත් කමෙන්ට් එකකින් අහන්න...ඊයකින් අහනවනම් harsha.thewalaarachchi@gmail.com
Read More

Wednesday, July 11, 2012

HTML සිංහලෙන් පාඩම 7 - Attributes

                   අපි පසුගිය පාඩමෙන් HTML Elements ගැන දුනුවත් උනානේ අද අපි මේ elements වල ගුණ එහෙමත් නැත්තම් ඒවායේ ගත් ලක්ෂණ, බාහිර පෙනුම එක්ක බැදී ඇති Attributes ගැන කතා කරමු. 

                          මම කලිනුත් කිව්වා වගේ මේ HTML elements වලට තමයි attributes තියෙන්නේ. මේවා මගින් අපේ HTML element එක තව දුරටත් විස්තර කරනු ලබනවා.

           තව දෙයක් තමයි අපි මේ attributes සඳහන් කරන්නේ starting tag එක තුලයි, ඒ වගේම අපි attributes සඳහන් කරන්නේ තුල name/value ජෝඩුවක් ලෙසින්ය. හරියට මෙන්න මේ වගේ name = "value". වැදගත්ම දේ තමයි attribute එකකට ලබා දිය යුතු value එක සෑම විටම පෙරලි කොමා තුල ලබා දිය යුතු වීමයි. තවද එක element එකකට attributes කිහිපයක් වුවුද තිබිය හැකියි. මෙන්න මේ විදහට තමයි attributes code කරන්නේ...

<starting tag name = "value" name = "value" name = "value">


මෙන්න මෙතනින් ඔයාලයට attributes ගැන වැඩි දුරටත් දැනගන්න පුළුවන්. ඒ වගේම පාඩම කරගෙන යද්දී මම ඒ ඒ අදාල තැන් වලදී ඊට අදාල වෙන attributes ගැන කතා කරන්නම්. පොඩි පාඩමක් තමයි අද කලේ. අපි ඊළග පාඩමෙන් HTML formatting Tags ගැන කතා කරමු.

මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.







Read More

Friday, July 6, 2012

HTML පාඩම 6 - HTML Elements

         
         අපි පසුගිය පාඩමේදී HTML වලදී paragraph එකතු කර ගන්නා ආකාරය සහ ඒ හා බැඳි කරුණු කිහිපයක් ඉගෙන ගත්තනේ.  අද පාඩමෙන් අපි HTML Elements ගැන කතා කරමු. මේ විදිහට හදුන්වන්නේ අපි දන්න කියන HTML Tagsම තමයි. ඒක නිසා ඔයාල දැනටමත් දන්නව මම අද කතා කරන්න බලාපොරොත්තු වෙන දේ ගැන. මේවා ගැන වැදගත් කරුණු කිහිපයක් මම මෙහි සදහන් කරන්නම්.


  • HTML element එකක් ආරම්භ වන්නේ starting tag (opening tag) එකකින්ය.
  • එසේම HTML element එකක් අවසන් වන්නේ closing tag (end tag) එකකින්ය.
  • HTML element  එකට අදාල අන්තර්ගතය එම tag දෙක අතර ලියවෙයි.
                උදා:-         <p> this is a paragraph </p>


  • එහෙත් සමහර HTML elements වලට මෙසේ අන්තර්ගතයක් යොදන්නේ නැත (උදා :- <br/> tag එක ) 
  • එවැනි tags starting tag එක තුලදීම close කරනු ලබයි.
  • බොහෝ HTML elements වලට attributes පවතී. (attributes ගැන තව ඉදිරියේදී කියන්නම්)
  • එසේම බොහෝ HTML elements nested කරන්න පුළුවන්. ඒ කියන්නේ එක HTML element එකක අන්තර්ගතයට තවත් HTML elements ඇතුලත් වෙන්න පුළුවන් කියන එක‍.", HTML පිටු නිරමානය කරන්න මෙය ඉතා වැදගත් වෙනව.
                උදා:-         <head> <title> My First Web Page </title> </head>


හොඳයි දැන් අපි බලමු අපි දැනටමත් භාවිතා කරල තියෙන elements කිහිපයක් ගැන,

<p> element

        මෙය මගින් HTML පිටු තුල paragraphs නිර්මාණය කරනු ලබයි. මෙය <p> හා </p> යනුවෙන් ආරම්භක හා අවසානක tags යුගලයකින් සමන්විත වේ. 

                උදා:-         <p> this is a paragraph </p>

<body> element

              මම element එකෙන් සිදු කරනුයේ HTML පිටුවක body කොටස අර්ථදැක්වීමයි. අපි මේ ගැන මීට කලින් පාඩමකදීද කතා කලා. මෙයද <body> හා </body> යනුවෙන් ආරම්භක හා අවසානක tags යුගලයකින් සමන්විත වේ. 


                උදා:-         
                             

       මෙහිදී මම ඉහතින් සඳහන් කළ <p> element එක <body> element එකේ අන්තර්ගතයට ඇතුලත් වී ඇත.

<html> element

            HTML වලින් වෙබ් පිටු නිර්මාණයේදී අපිට  අවශ්‍ය ප්‍රධානම element එකක්, මෙයින් සිදු වනුයේ අප ලියන්නා වු document එක HTML document එකක් බව හැගවීමයි.  මෙයද <html> හා </html> යනුවෙන් ආරම්භක හා අවසානක tags යුගලයකින් සමන්විත වේ. 

                 උදා:-         
                             

<br/> element

            මෙය අපි මීට කලින් කතා කරපු HTML elements වලට වෙනස් වූ එකක්. ඒ මෙයට අන්තර්ගතයක් නැති වීම නිසා closing tag එකක් නොමැති වීමයි. මෙයින් line break එකක් අරුත් ගන්වයි. 


මම පහතින් දෙන උදාරණය code කරල බලන්නකෝ අද අපි කතා කරපු දේවල් ගැන ප්‍රශ්ණ තියෙනවද කියල.


තවත් පාඩමකින් හමු වෙනකම් ගිහින් එන්නම්.

මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.

මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.

Read More

Thursday, June 28, 2012

HTML සිංහලෙන් පාඩම 5 - Paragraph




           මම පසුගිය පාඩමෙන් headings ගැනයි <./br> tag එක ගැනයි කියල දුන්න ඒව මතක ඇතියි කියල හිතනව මම. අද පාඩම මම එතන ඉදලයි ඉදිරියට කරගෙන යන්නේ. අද අපි බලමු HTML වලදී ජේදයක් (paragraph) එකක් කොහොද එකතු කර ගන්නේ කියල. මේ වැඩේට අපි භාවිතා කරන්නේ <p> කියන tag එක මේ tag එකටත් opening හා closing tags තියෙනව. අපි උදාහරණයක් බලමු. තව දෙයක් අපේ මේ පාඩම් මාලාව කියවන Mahesh මිත්‍රයා ඉල්ලීමක් කරල තිබුනා Notepad++ ඔයාලට හඳුන්වාදෙන්න කියල. මේ මෘදුකාංගය භාවිතයෙන් කේතනය කිරීම පහසුයි ඔයාලත් භාවිතා කරලම බලන්නකෝ. 


<html>

           <head><title>My Paragraph</title></head>

           <body><p> This is a paragraph This is a paragraph This is a paragraph </p>

                      <p>This is another paragraph This is another paragraph This is another paragraph</p>

           </body>

</html>


ඉහතින් දැක් වූ code එක පේන්නේ මෙන්න මේ වගේ,


          මේ <p> tag එක මගින් එයට පළමුව හා එහි closing tag එක </p> ට පසුව හිස් පේලියක් එකතු කරනු ලබයි. එම නිසයි ඉහත උදාහරණය මේ ආකාරයට දිස් වන්නේ. අපි දැන් ටිකක් ප්‍රායෝගික දේවල් කරපු නිසා ලබන පාඩමෙන් තවත් න්‍යායාත්මක කරුණු කිහිපයක් ඉගෙන් ගනිමු HTML ගැන.


මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.

මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

Monday, June 25, 2012

CSS සිංහලෙන් - 03

අද අපි CSS වල ‍font properties ගැන කථාකරමු.

CSS වලදි අකුරු වර්ග වෙනස් කරන්න අපි කලින් පාඩමේදි ලියපු කෝඩ් 1 නැවත ගනිමු.
p{
    font-family : Georgia," Times New Roman",Times,serif;
}

දැන් මේ ස්ටයිල් 1 අපි හදල තියෙන්නෙ <p> ටැග් 1ට. මෙහි font යන්න මගින් අනෙක් සියළු ප්‍රොපර්ටිස් ‍‍font වලට අදාලව තියෙන බව කියවෙනව. family යන්නෙන් අකුරු වර්ගය සදහා වු ප්‍රොපර්ටි 1 කියවෙනවා. මෙහි
Georgia  ,  Times New Roman  ,Times කියන්නෙ ‍font වර්ග 3ක්. ඇයි මේ විදිහට ලියන්නෙ. පළවෙනි ‍font 1 වෙබ් බ්‍රව්සරය අදුන ගත්තෙ නැත්නම් ඒ අදාල විස්තරය පෙන්වන්නෙ 2වන font එකෙන්. දෙවන font 1ත් නැත්නම් ඊලග font එකෙන් අදාල විස්තරය පෙන්වනවා. අපි නම් කරල තියන font සේරම නැත්නම් අන්තිමට තියන serif කියන වර්ගයට අයිති වෙන font එකකින් අදාල විස්තරය පෙන්වනවා.



අදාල html code 1
 හරි දැන් බලමු මොනාද මේ font වර්ග කියල. ප්‍රධාන වර්ග තමා, serif , sans-serif , cursive , fantasy , monospace.

තව දෙයක්, අපි <P> ටැග් 1ට සිඑස්එස් ෂිට් 1 හැදුවම මුළු HTML කෝඩ් එකේ පී ටැග් සේරම එකම විදියනෙ. කොහොමද ජේදයෙන් ජේදයට වෙන වෙනම font properties එකතු කරන්නෙ එක ස්ටයිල් ෂිට් 1ක් යොදාගෙන. මෙහෙමයි එතෙන්දි අපි ලියන css කෝඩ් 1 පහත විදියට වෙන්න ඕන.

#para1
{
        font-family:fantasy; }
#para2
{
        font-family:serif; }
#para3
{
        font-family:cursive; }
#para4
{
       font-family:monospace; }
#para5
{
       font-family:sans-serif; } 
මෙතෙන්දි para1,para2,.... කියන්නෙ විවිධ ජේද වලට යොදන්න පහසු විදියට දාපු හැදුනුමක්. HTML code එක පහත තියනව. බලන්න තේරුම් ගන්න පුළුවන්ද කියල.
 <html>
<title>css fonts
</title>
<head>
<link href="text2.css"rel="stylesheet"type="text/css" />

<body>
<p id="para2"> sarif </p>
<p id= "para5"> sans-sarif </p>
<p id= "para1"> fantasy </p>
<p id= "para3"> cursive </p>
<p id= "para4"> monospace</p>

</body>
</html>
වෙබ් බ්‍රව්සර් එකේදි ඒක අපිට මේ විදියට බලාගන්න පුළුවන්.





-----------------------------------------------------------------------------------------------------------
දැන් බලමු තව වැදගත් ප්‍රොපටිකීපයක් ගැන.


‍‍font-style මේහිදි normal , italic , oblique කියල කොටස් 3යි.normal කියන 1 default තියනවා.මේ තියෙන්නෙ css code එක.

#para2
{
    font-family:serif;
    font-style:italic;
}
#para1
{
    font-family:fantasy;
    font-style:oblique;
}
 HTML code එක
<html>
<title>css font style
</title>
<head>
<link href="stil.css"rel="stylesheet"type="text/css" />

<body>
<p id="para2"> italic </p>
<p id= "para1"> oblique </p>
<p> normal</p>

</body>
</html>
-----------------------------------------------------------------------------------------------------------
ඊළගට font-Variant ප්‍රොපර්ටි 1.  මෙමගින් කැපිටල් අකුරු එලෙසමත් සිම්පල් අකුරු කුඩා කැපිටල් අකුරු බවටත් පත් කරනවා.
{font-Variant: small-caps;} තමා සිඑස් එස් කෝඩ් 1.මෙහි භාවිතාවන්නේ normal  සහ small-caps යන ඒවායි.




ඊළගට ‍font-weight ප්‍රොපර්ටි ගැන බලමු.
මෙ‍මගින් අකුරුවල ඝනකම වැඩිකරගත හැකිය.මෙය සාමාන්‍ය බෝල්ඩ් කිරීමක සිට ඊට වැඩි හෝ අඩු ලෙස සැකසිය හැක.මෙහිදි bold , bolder , lighter , 100 , 200 , ... 900 දක්වා වෙනස් කල හැක. සිඑස්එස් කෝඩ් 1 වන්නේ { font-weight : 200 ;} යන්නයි.
CSS හා HTMLකෝඩ්

-------------------------------------------------------------------------------------------------------------
‍‍font-size ප්‍රොපර්ටි එක

CSS තුලදි අකුරුවල ප්‍රමානය සැකසීම සදහා ක්‍රම රාශියක් පවතිනව. ප්‍රධාන වශයෙන් x-small , small , medium , large , x-large , xx-large හා smaller යන ආකාර හෝ සෘජුවම අකුරු වල ප්‍රමානය ලබාදිම හෝ කල හැක.

අකුරුවල ප්‍රමාන ලබා දිමේදි,

{ font-size : 12pt ; }     -   සාමාන්‍ය ආකාරයට
{ font-size : 4cm ; }      -  අකුරුවල ප්‍රමාණය සෙන්ටි මීටර වලින්
{ font-size : 120% ; }    - ප්‍රතිශතයක් ලෙස , ලබාදිය හැක.

හරි. වැදගත් හා වටිනම දේ තමා අපිට පුළුවන් මේ ප්‍රොපර්ටී කිපයක් එකට භාවිතා කරන්න.
මෙන්න මේ ‍වගේ.

අදට එහෙනම් පාඩම ඉවරයි... ඊළගට අපි color සහ background ගැන කථාකරමු.
ප්‍රශ්න තිබ්බොත් කමෙන්ට් එකකින් අහන්න...ඊයකින් අහනවනම් harsha.thewalaarachchi@gmail.com


Read More

Sunday, June 24, 2012

HTML සිංහලෙන් පාඩම 4 - Headings


         අපි පසු ගිය පාඩමෙන් ප්‍රායෝගිකව අපි ඉගෙන ගත්ත දේවල් කරල බැලුවනේ, ඉතින් අද පාඩමෙන් අපි තව දුරටත් HTML වලය අදාල න්‍යායාත්මක කරුණු ඉගෙන ගමු. ඊට පස්සේ ඒවා ප්‍රායෝගිකව අත්හදා බලමු.

HTML මාතෘකා එහෙමත් නැත්තම් HTML Headings

              අපි ලිපියක් සම්පාඳනය කිරීමේදී මෙන්ම වෙබ් පිටු වලදීද මාතෘකා ඉතා වැදගත් කාර්යයක් ඉටු කරනව. HTML වලදී වෙබ් පිටුවට මාතෘකා එක් කිරීමට භාවිතා කරන්නේ <h1> වල සිට <h6> දක්වා වූ tags මගින්. මේවාට closing tag එකක්ද ඇත. <h1> tag එක මගින් විශාලම (කැපීපෙනම) මාතෘකාවද <h6> මගින් කුඩාම මාතෘකාවද නිරූපණය වේ.


උ.දා:-
                  <h1> coding සිංහලෙන් </h1>


 එක් tag එකට අදාල පෙනෙන ආකාරය පහතින් දැක් වේ,


                  <h1> ---------->

                  coding සිංහලෙන්


                            <h2> ---------->

                                         coding සිංහලෙන් 

                   <h3> ---------->

                                 coding සිංහලෙන්

                    <h4> ---------->

                                         coding සිංහලෙන්

                    <h5> ---------->
                                           coding සිංහලෙන්
                    <h6> ---------->
                                                          coding සිංහලෙන්
         දැන් ඔයාලත් පසු ගිය පාඩම් වල දැනුමත් භාවිතා කරල මම පහතින් දෙන HTML code එක web browser එකක් භාවිතා කරල open කරල බලන්නකෝ.....

 <html>

           <head><title>My Headings</title></head>

           <body>


                      <h1>My Headings</h1> <br/>
                      <h2>My Headings</h2> <br/>
                      <h3>My Headings</h3> <br/>
                      <h4>My Headings</h4> <br/>
                      <h5>My Headings</h5> <br/>
                      <h6>My Headings</h6> <br/>   

           </body>
 
</html> 



වැඩේ හරියට කලා නම් මෙන්න මේ වගේ තමයි පෙන්නේ......





    තව දෙයක් ඔයාල දැක්කද දන්නේ නෑ අද මම තව අළුත් tag එකක් භාවිතා කරා code එක ලියන්න. ඒ තමයි <br/> tag එක අපි මේ tag එක භාවිතා කරන්නේ line එකක් break කර ගන්න වුවමනා උනාමයි. උදාහරණයක් වශයෙන් අපිට අවශ්‍ය වුනොත් අළුත් paragraph එකකට යන්න නැතුව අළුත් පේලියකින් නැවත ලිවීම ආරම්භ කරන්න ඕන කියල අන්න ඒ වෙලාවට තමයි මේ tag එක භාවිතා වෙන්නේ. පහත උදාහරණය බලන්නකෝ...


මේ තමයි code එක

 

 <html>

           <head><title>Breaking Tag</title></head>

           <body>


                  <p>coding sinhalen <br/> coding sinhalen coding sinhalen </p> 

           </body>
 
</html>


ඒක පෙන්නේ මෙන්න මේ වගේ




මම හිතනව ඔයාලට ඒ tag එක තේරුනා කියල. ආයෙත් පාඩමකින් හමු වෙනකම් ගිහින් එන්නම්.


මේ ලිපියෙහි හෝ මෙය සිදු කිරීමේදී යම් ගැටලුවක් ඇත්නම් Comments වල දමන්න.
මා අතින් යම් වරදක් වී ඇත්නම් හෝ යමක් මග හැරී ඇත්නම් ඒවාත් නිවැරදි කිරීම පිනිස Comments වල දමන්න.
Read More

Saturday, June 23, 2012

HTML සිංහලෙන් පාඩම 3 - Code කරන හැටි


HTML සිංහලෙන් පාඩම - 3


         අද පාඩමෙන් මම බලාපොරොත්තු වෙන්නේ පොඩි පොඩි ප්‍රායෝගික ක්‍රියාකාරකම් සමග න්‍යායාත්මක කරුණුත් ඉදිරිපත් කරන්නයි. මීට පෙර පාඩම අධ්‍යනය කරල නැත්තම් ඒකට මෙතනින් පිවිසෙන්න. අද පාඩමට අපිට ඕන වෙනව notepad එක සහ web browser එකක්. (නැත්තම් අපි හඳන web pages බලන්නේ මොකෙන්ද?). ඒ වගේම පසුගිය පාඩම් වලින් මම ඉදිරිපත් කළ කරුණු මතක ඇතියි සිතමි. නැත්තම් ආයෙත් ඒ පාඩම් කියවල ඉන්න අද පාඩම පටන් ගන්න කලින්.

                                                                              

HTML වලින් code කරන්න දැන ගත යුතු මූලික කරුණූ.

  • අපි මුලින්ම කරන්න ඕන මේ code එක ලියල තියෙන්නෙ HTML වලින් කියල browser එක දැනුවත් කිරීම එක කරන්නේ <html> කියන Tag එකෙන්. Tag එකක් open කලාම ඒක close කරන්නත් ඕන නේ ඒකට භාවිතා කරන්නේ </html> tag එක.
Figure 1
  •  අපි සාමාන්‍යෙයන් Tags ලියන්නේ simple letters වලින්. ඒක සම්මත ක්‍රමයක්. ඔබ capital letters භාවිතා කලා කියල වැරදි නැහැ.
  • HTML වලින් අපි code කරන හැම දේම ලියන්න ඕන මම කලින් කියපු  <html> සහ </html> tag දෙක අතරෙයි.
  • අපි ප්‍රධාන වශයෙන් HTML වෙබ් පිටුවක් කොටස් දෙකකට බෙදා ගන්නව ඒ,
    • Head කොටස සහ
    • Body කොටස ලෙසයි
  • Head එකට බොහෝ වෙලාවට අන්තර් ගත වෙන කොටස් වලින් අපිට පේන දෙයකට තියෙන්නේ title එක විතරයි. (පහත රූපයේ web page එකක Title එක කුමක් දැයි පෙන්වා තියෙනව) ඒකට භාවිතා කරන්නේ <title> හා </title> tag යුගලය. head කොටසේ භාවිතා වන අනෙකුත් tags ගැන අපි පසුවට දැන ගනිමු. (මම tabs තියල type කරල තියෙන්නේ code එක පැහැදිලි හා ලස්සන වෙන්න ඕන නිසයි මේ විදිහටම type කරන්න ඕන කියල නීතියක් නෑ)
Figure 2



Figure 3

  • Body කොටසේ තමයි අපි වෙබ් පිටුවේ අන්තර්ගත වෙන්න අවශ්‍ය දේවල් code කරන්නේ.

Figure 4
  •  මේ <p> tag යුගලයෙන් කියන්නේ එතන තියෙන්නේ paragraph එකක් කියලයි.
  • දැන් අපි මේ code කර ගත්ත file එක save කරගන්න විදිහ බලමු. notepad එකේ file ----> Save ක්ලික් කරන්න එතකොට එන dialog box එක මෙන්න මේ වගෙයි.
Figure 5
  • ඒකේ save as type කියන property එක All files කියල වෙනස් කරන්න. දැන් file name කියන තැනට ඔයාල කැමති නමක් එකක් .html කියන extention එක දෙන්න හරියට මෙන්න මේ වගේ.
Figure 6
  • දැන් ඔයාල save button එක click කරල file එක save කරගන්න.
  • ඒ save කල file එක මෙන්න මේ වගේ දිස් වේවි ඔයාලට. (මම දුන්න නම My First Web Page)
Figure 7
  • දැන් ඒ file එක double click කරල open කරන්න කෝ. ඒතකොට මෙන්න මේ වගේ ඔයාලගේ web browser එකෙන් ඒක Open වේවි.
Figure 8
        දැන් ඔයාල සාර්ථකව පළමු උත්සාහය දරල ඉවරයි. හරිම ලේසියි නේද?. ගැටළු comment කරන්න. ආයෙත් පාඩමකින් මුණගැසෙමු. එතකම් ගිහින් එන්නම්.
Read More