Friday, December 2, 2016

2 Java සමග වැඩ අරඹමු (Start with Java)

Java සමග ක්‍රෙමලේඛ කිරිමට පෙර අප Java Development Kit (JDK) වැඩසටහන පරිගණකය තුල ස්ථාපනය කර ගත යුතුය. ඒ සදහා ඔබේ පරිගණකයේ මෙහෙයුම් පද්ධතිය සදහා ගැලපෙන JDK වැඩසටහන පහත link එකට ගොස් ලබාගන්න.

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

මෙහිදී ඔබ පරිගණක භාවිතය සම්බන්ධයෙන් යම් දැනුමක් ඇති අයකු ලෙස සැෙලකෙන බැවින් JDK වැඩසටහන ස්ථාපනය කරගන්නා ආකාරය පියෙවරෙන් පියවර මෙහි පල කිරීමට බලාපොරොත්තු නොවෙමි. නමුත් ඔබ සතුව යම් ගැටලුවක් ඇත්නම් පහත comment තීරුවේ හෝ පහත සදහන් Email ලිපිනයට යොමු කිරීමෙන් පිළිතුරු ලබාගත හැකි බව දන්වනු කැමැත්තෙමි.

මෙම ලිපි මාලාව තුල මවිසින් Ubuntu Linux මෙහෙයුම් පද්ධතිය භාවිතා කරන අතර ඔබ දකින තිර සටහන් වල Linux Terminal එක දිස් විය හැක. නමුත් හුදෙක් Java විධානයන් (Command) සෑම මෙහෙයුම් පද්ධතියකටම බොහෝදුරට සමාන වේ.

ජාවා Hello, World 

public class Hello{
  public static void main(String[] args){
    System.out.println("Hello, World");
  }
}

මෙහි දැක්වෙන්නේ Java පරිගණක ක්‍රමලේඛ භාෂාවේ සරලතම යෙදුමයි. අපි එය හදුනාගනිමු.

මුලින්ම මෙහි සදහන් වෙන්නේ class නිර්චවචනයයි. මෙය ඕනෑම class එකක් ආරම්භයේදී යොදාගන්නා පදයයි. class එකෙහි අන්තර්තගතය සගල වරහන් ({}) මගින් දක්වා ඇත. Hello යනු මෙම class එක සදහා අපි විසින් ලබා දෙන නමයි. එම නමම මෙම class file එක save කරගන්නා විට file name එක ලෙසද යොදා ගත යුතුය. (උදා: Hello.java)

class එකෙහි අන්රතර්තගතය ලෙස මෙහි main method එක අර්ත දක්වා ඇත. මෙවැනි main method අර්ථදැක්යවිය හැෙක්කේ ඕනෑම program එකකට එකක් පමණි. මෙය වැඩසටහන ක්‍රියාත්කමක කිරීමේදී මුලින්ම run වන method එකයි. මේ පිළිබද වැඩි විස්රතර ඉදිරියේදී  method/function පිළිබද යොමුවෙන් බලාපොරොත්තු වන්න.

ඒ යටතේ ඇති System.out.println("Hello, World"); පද පෙළ මගින් Hello, World ලෙස Console output එක ලබා දීම සිදු කරයි.

Java වැඩසටහනක් Compile කරගැනීම සහ Run කිරීම.

ජාවා වැඩසටහනක් ධාවනය කිරීමට ප්‍රථම එම වැඩසටහන Compile කර ගත යුතුය. මෙමගින් Java Source Code එනම් ක්‍රම ලේඛනය Java Bitecode වෙත පරිවර්ථනය කිරීම සිදුවේ. JVM එනම් Java Virtual Machine මගින් ධාවනය කල හැක්කේ මෙලෙස  bytecode ලෙස පරිවර්ථනය කර ගත් වැඩසටහන් පමණි.

මේ සදහා ප්‍රථමයෙන් Terminal (වින්ඩෝස් සදහා නම් CMD) එක අදාල Source file එක ඇති Directory තුල Open කර ගන්න.

දැන් පහත සදහන් Command එක භාවිතයෙන් ඔබේ කේතය Compile කර ගත හැක. 
$ javac Hello.java

ඔබේ කේත සටහනේ වැරදි (Errors) කිසිවක් නැති නම් Compile වීමෙන් පසු class ෆයිල් එක සෑදිය යුතුය. 

දැන් අපි මෙම වැඩසටහන ධාවනය කර බලමු. මේ සදහා පහත command එක භාවිතා කළ යුතුය. 
$ java Hello

එවිට ප්‍රථිපලය පහත පරිදි දිස් වනු ඇත.



ඔබ සාර්ථක ලෙස Java ක්‍රමලේඛයක් සකස් කරන ලදි!!!




Read More

Saturday, October 15, 2016

Arduino සිංහලෙන් - උෂ්ණත්වමානයක් හඳමු 3



අද අපි උෂ්ණත්වමාණයේ coding කොහොමද කරන්නේ කියල බලමු. මේ සඳහා අපිට Arduino IDE එක අවශ්‍ය වෙනවා, එය ඔබට නොමිලේම Arduino වෙබ් අඩවියෙන් download කරගත හැකියි.
දැන් මේ IDE එක සාමාන්‍ය software එකක් install කරන ආකාරයට install කර ගන්න. අපි දැන් coding part එක කරන්න සූදානම්.

Arduino IDE

මුලින්ම අපි අපේ code file එක save කර ගෙන ඉමු. ඔයාල කැමති තැනක කැමති නමකින් save කර ගන්න. මම Thermometer 1 කියල නම් කලා. අපිට Arduino library 2ක් ඕන වෙනවා ඒ දෙකම ඔයාලට Arduino IDE එක හරහා install කරගන්න පුළුවන්.

මීලගට අපි බලමු මේ download කර ගත්ත Libraries Arduino IDE එකට add කර ගන්න විදිහ. මුලින්ම IDE එකේ sketch menu එක හරහා පහත රූපයේ ආකාරයට manage libraries click කරන්න.

Manage Libraries

එවිට ලැබෙන popup window එකේදී DS18B20 ලෙස search කරන්න, එහිදී පහත රූපයේ දැක්වෙන ආකාරයට 3.7.6 හෝ ඊට වඩා අළුත් version එකක් install කරගන්න.

Arduino Library Manager

එලෙසම one wire library එකේ 2.3.2 හෝ ඊට වඩා අළුත් version එකක් install කරගන්න.

One Wire Library

දැන් අපි coding පටන් ගන්න සූදානම්. thermometer 1 file එකේ දැනටමත් method දෙකක් තිබෙන බව ඔබට පෙනේවි, ඒ සියල්ල මකල දාල අපි මුල ඉදලම අපි පටන් ගමු.

මුලින්ම කරන්න තියෙන්නේ අපි මීට සුළු වෙලාවකට පෙර install කර ගත්ත library දෙක අපේ code එකට add කර ගන්න ඒක. ඒක හරිම ලේසියෙන්ම, sketch menu එකේ include library sub menu එක හරහා අපිට කරගන්න පුළුවන්. 

Include Library
පහත දැක්වෙන්නේ උෂ්ණත්ව මානයේ Arduino code එක.


#include <onewire.h>

#include <dallastemperature.h>

// Data wire is plugged into pin 2 on the Arduino
define ONE_WIRE_BUS 2
 
// Setup a oneWire instance to communicate with any OneWire devices
OneWire oneWire(ONE_WIRE_BUS);
 
// Pass our oneWire reference to Dallas Temperature.
DallasTemperature sensors(&oneWire);
 
void setup(void)
{
  // start serial port
  Serial.begin(9600);
  Serial.println("Thermometer Demo");

  // Start up the library
  sensors.begin();
}
 
void loop(void)
{
  // call sensors.requestTemperatures() to issue a global temperature
  // request to all devices on the bus
  Serial.print(" Requesting temperatures...");
// Send the command to get temperatures
sensors.requestTemperatures(); 
  Serial.println("DONE");

  Serial.print("Temperature for Device 1 is: ");
  Serial.print(sensors.getTempCByIndex(0));
  // You can have more than one IC on the same bus. 
  // 0 refers to the first IC on the wire
}



දැන් ඔබේ Arduino board එක computer එක හා සම්බන්ද කර ගන්න. එවිට Arduino IDE එකේ එය නිවැරදිව හඳුනාගෙන පහත රූපයේ ආකාරයට ඔබට දැක ගත හැකි වනු ඇත.

Arduino board in IDE

මීලගට Upload button එක click කර ඔබගේ code එක Arduino board එකට Upload කර ගන්න. දැන් උෂ්ණත්වය මනින්න සියල්ල සූදානම්. උෂ්ණත්වට කියවා ගන්න Arduino IDE එකේ serial monitor එක පහත රූපයේ පරිදි on කර ගන්න.

Serial Monitor


එහි මෙලෙස උෂ්ණත්වය සඳහන් වනු ඇති.

Serial Monitor

අපි සාර්ථකව digital උෂ්ණත්වමානයක් සදාගෙන අවසානයි, මේය අපිට අවශ්‍ය විදිහට වැඩි දියුණු කර ගත හැකියි ඒ ඔබේ අවශ්‍යතාවය අනුව තීරණය වේවි. මීලග අපියේන් උෂ්ණත්වමානය සඳහා යොදා ගත් code එක සවිස්තරාත්මකව පැහැදිලි කරගමු.


Read More

Sunday, October 9, 2016

Arduino සිංහලෙන් - උෂ්ණත්වමානයක් හඳමු 2



කාලෙකට පස්සේ අද පොඩි ඉඩක් ලැබුනා උෂ්ණත්වමානයක් හඳමු ලිපි පෙලේ දෙවෙනි ලිපිය ඉදිරිපත් කරන්න. පලවෙනි ලිපිය පල කරල දැන් ගොඩක් කල්, ඒ වගේම ඒකට හොඳ ප්‍රතිචාරත් ලැබිය තිබුනා. දැන් නම් කට්ටිය DS18B20 සෙන්සර් එක ගෙන්න ගෙන ඇති නේද?. වැඩි ගානකුත් නැති නිසා දෙක තුනක්ම අරගන්න.

අපි අද බලමු මේ sensor එක අපේ Arduino UNO board එකත් එකක් සම්බන්ද කරගන්න ආකාරය හා උෂ්ණත්වය කියවන්න ඕන කරන programming code එක ලියන ආකාරය. මුලින්ම මම ඔයාලට අවශ්‍ය උපාංග හඳුනාගනිමු 2 ලිපියේදී සඳහන් කරපු Project board එකයි Jumper wires ටිකයි, ඔයාල මිලදී ගත්ත DS18B20 temperature sensor එකයි ගන්න. දැන් Female to Male Jumper wires 3ක් අරගෙන පහත ආකාරයට අපේ temperature sensor හා සම්බන්ද කර ගන්න එවිට එය Project board එක හා පහසුවෙන් සම්බන්ද කර ගත හැකි වෙනවා වගේම පහසුවෙන් එහා මෙහා කිරීම හැකියාවද ලැබෙනවා.

 


දැන් Project board එක අරගෙන ඒකට මේ sensor එක සම්බන්ද කර ගන්න. (ඔයාල Project board එකක වයර් සම්බන්ද කරන විදහ දන්නව කියල හිතනවා මම, දන්නෙ නැත්තම් අහන්න කියල දෙන්නම්) 

දැන් Arduino board එක හා පහත රූපයේ ආකාරයට සම්බන්ද කර ගන්න.




DS18B20 temperature sensor එක wire කර ගන්න ඕන විදිහ මම කලින් ලිපියේදී කියල දුන්නා මතක නැත්තම් මේ රූපය බලන්න. 




අපි මෙතනදී DS18B20 temperature sensor එකේ දෙවැනි pin එකේ එහෙමත් නැත්තම් data in/out pin එකේ වෝල්ටීයතා මට්ටම ඉහල දමා ගැනීමට එයට 4.7K resister එකක් හරහා 5V විදුලි සැපයුමට සම්බන්ද කරනු ලැබ ඇත. නොමැති නම් Arduino board එකට මෙම sensor එක සමග සම්බන්දතාවය පහත්වා ගැනීම අපහසු වේ.

DS18B20 temperature sensor එකෙහි පළමු වෙනි අග්‍රය Arduino board එකේ GND (Ground) අග්‍රය සමගද, දෙවැනි අග්‍රය Arduino board එකේ දෙවැනි digital අග්‍රය (D2) සමගදල තෙවැනි අග්‍රය Arduino board එකේ 5V output අග්‍රය සමගින්ද සම්බන්ද කරන්න. දැන් අපි DS18B20 temperature sensor සාර්ථකව Arduino board සමග සම්බන්ද කරගෙන අවසන්. 

මීලග ලිපියෙන් අපි programming code එක ගැන කතා කරමු.


Read More

Thursday, April 14, 2016

1 වන පාඩම - හැඳින්වීම (Java Introduction)

ජාවා පරිගණක භාෂාව ස්ථාපනය කරගැනීම සහ මූලික අංග ගැන අපි මෙම ලිපියෙන් සලකා බලමු.
ජාවා සමග වැඩකිරීමට ඔබ සතුව JDK (Java Development Kit) එක පැවතිය යුතුය.

මෙම සබැඳියෙන් ඔබට JDK 8 නවතම සංස්කරණය බාගත කරගත හැකිය.

ජාවා යනු විවෘත කේත (Open source) පරිගණක භාෂාවකි. එමෙන්ම දැනට ලොව ජනප්‍රියතම පරිගණක භාෂා අතර පෙරමුණේ රැඳී සිටිමට ජාවා පරිගණක භාෂාවට හැකිවී ඇත.

JVM (Java virtual machine)

ජාවා පරිගණක වැඩසටහන Cross Platform පරිගණක වැඩසටහනක් ලෙස හඳුන්වයි. එනම් ජාවා පරිගණක භාෂාවෙන් ලියන ලද වැඩසටහනක් ඕනෑම පරිගණකයක JVM වැඩසටහන මත ධාවනව කල හැකිය. මෙසේ වන්නෙ ජාවා වැඩසටහන් ධාවනය වන්නෙ JVM නමැති අතථ්‍ය යන්ත්‍රය මත වීමයි. එනම් windows හෝ වේවා Mac හෝ වේවා Linux හෝ වේවා ඕනෑම OS එකක් මත JVM එක ස්තාපනය කිරීමෙන් Java වැඩසටහන් සඳහා සහය ලබාගත හැකියි. මෙම JVM වැඩසටහන එක් එක් OS එක සදහා වෙනමම (Native Application) එකක් ලෙස ලබා දී ඇත. ඔබේ පරිගණකයේ OS එකට අදාල JVM එක සථාපනය කරගැනීමෙන් ඕනෑම පරිගණකයකදී නිර්මාණයක කරන ලද Java වැඩසටහනක් ධාවනය කරීමේ හැකියාව එමගින් ලැබේ.


Java source file (.java) java කම්පයිලරය හරහා byte code file(.class) එක බවට හරවන අතර එම byte code files, JVM එක මත ධාවනය කල හැකිය.  

JRE Vs JDK (Java Runtime Environment Vs Java Development Kit)

JRE යනු Java Runtime Environment යන්නයි. එනම් JVM එකෙහි අන්තර්ගතයයි. මෙහි අන්තර්ගතය වශයෙන් JVM පද්ධතිය ධාවනය වන අවස්ථාවේදී භාවිතා වන Files සහ Libraries අඩංගු වේ.

JDK යනු Java Development Kit යන්නයි. මෙහිදී JRE + Development Tools අඩංගු වේ. එනම් සාමාන්‍ය JRE පද්ධතිය වගේම මෙහි Compiler එක ඇතුලු අනෙකුත් Java Development සදහා දායක වන Files සහ Libraries අඩංගු වේ.
Read More

Friday, March 25, 2016

Arduino සිංහලෙන් - උෂ්ණත්වමානයක් හඳමු 1


උෂ්ණත්වමානයක් නිවසේදීම හදාන්න හැටි අද අපි මේ ලිපි පෙලින් කතා කරමු. මේ දවස් වල තිබෙන අධික උෂ්ණත්වයත් එක්ක මේය ඔබට ඉතාමත් වැදගත් වේවි යැයි මම හිතනවා.

මේ සඳහා මම කලින් ලිපි වල සදහන් කල උපාංග වලට අමතරව Temperature Sensor එකක් අවශ්‍ය වෙනවා. වෙළද පොලේ ඔබට විවිධ Temperature Sensor දැකගත හැකියි. නමුත් මම තෝරා ගත්තේ DS18B20 නැමැති Temperature Sensor එකයි. DS18B20 මේ සඳහා උචිත වීමට පහත කරුණු දැක්විය හැකියි.

DS18B20
Pin Arrangement

  • Digital Sensor එකක් වීම.
Analog sensor එකක් මෙන් උෂ්ණත්වයට අනුව වෝල්ටීයතා වෙනස් වීමක් මෙයින් සිදු නොවන අතර උෂ්ණත්ව මිනුම නිවැරදිව 8bit හෝ 12bit digital signal එකක් ලෙස අපේ ප්‍රධාන Arduino board එකට ලබා දෙයි. මෙහි ප්‍රධානම වාසිය නම් උෂ්ණත්ව අගය සෙල්සියස් අංශක වලින්ම ලබා දෙන නිසා අපිට analog sensor එකක මෙන් වෝල්ටීයතා ක්‍රමාංකනයක් අවශ්‍ය නොවේ. (සේල්සියස් අංශක 0 දී හා 100 දී වොල්ටීයතා අගයන් ලබා ගෙන එක් එක් වෝල්ටීයතාවයෙදී උෂ්ණත්වය නිර්ණය කිරීම)

  • 1-Wire® තාක්ෂණය
එනම් විදුලිය සපයන වයර් දෙකට අමතරව තවත් එක් වයරයක් පමණක් භාවිතා කරමින් (one data line) DS18B20 උපාංග Arduino board එක හා සම්බන්ධ කල හැකි වීම. 



සෑම DS18B20 උපාංගයකටම අනන්‍ය වූ 64bit serial code එකක් ඇති නිසා මේවායේ දත්ත එකම වරයකින් Arduino board එක වෙත පැමිණියද එ්වා වෙන් වෙන්ව හඳුනා ගැනීමේ හැකියාව ඇත. 

එසේම මෙම උපාංගය Parasitic Power Mode නැමැති ආකාරයට සම්බන්ධ කිරීමෙන් ඔබට පෙර සඳහන් පරිදි වයර් 3ක් නොමැතිව වයර් 2ක් පමණක් භාවිතා කර සම්බන්ධ කර ගත හැකිය. (ground and data line only)


  • පරාසය
DS18B20 උපාංගයකට -55°C to +125°C (-67°F to +257°F) අතර උෂ්ණත්වය කියවිය හැකිය, -10°C to +85°C අතර දී ±0.5°C නිර්වද්‍යතාවයක් එය සතුවෙයි.

  • මිල
ඔබට මෙය වෙළද පොලෙන් රුපියල් 150ක් වැනි මුදලකට මිලදී ගත හැකියි. ebay මගින් උවද ඔබට ඉතා පහසුවෙන් නිවසටම ගෙන්වාගත හැකියි. 


අද ලිපියෙන් මම කතා කලේ Temperature Sensor එක ගැනයි. මීලග ලිපියෙන් මම මෙය Arduino board එක හා සම්බන්ධ කර ගන්නා ආකාරය හා 1-Wire® තාක්ෂණය යොදා ගන්නා ආකාරය ගැන ඉදිරිපත් කරන්නම්. ඔබට මේ සම්බන්ධයෙන් ඇති ගැටළු comment මගින් හෝ email මගින් විමසන්න.
Read More

Monday, January 11, 2016

Arduino සිංහලෙන් - අවශ්‍ය උපාංග හඳුනාගනිමු 2


අපි පසුගිය ලිපියෙන් Arduino සමග නිර්මාණකරනයේ යෙදෙන්නට අවශ්‍ය මූලික උපාංග අඳුනාගන්න පුළුවන් වුනා, ඒත් අපිට ඊට අමතරව තව උපාංග කිහිපයක් අවශ්‍ය වෙනවා ඒ Arduino සම්බන්ධ කරගනිමින් පරිපථ නිර්මාණය කිරීමට අවශ්‍ය උපාංගයි. ඔබට මේ සියලුම උපාංග පිටකොටුවේ 1 වෙනි හරස් වීදියේ ඉලෙක්ට්‍රොනික උපාංග කඩවලින් හෝ eBay වලින් ලබා හැකියි. අපේ ඉදිරි පාඩම් වලට වැදගත් වන නිසා මේ උපාංග මිලදී ගැනීම අත්‍යවශ්‍ය වේ. 


1. Project Board



අපේ පරිපථයේ උපාංග පෑස්සීමකින් තොරව එකලස් කර ගෙන පරිපථය ක්‍රියාකාරීත්වය පරීක්ෂා කීරීමට අපිට project board එක ඉතාමත් වැදගත් වෙනවා. ඒ වගේම පරිපථයේ යම් යම් වෙනස් කම් කරමින් විවිධ දේ අත්හදා බලන්න අපිට මෙමගින් හැකිවෙනවා


2. Jumper Wires


Project board එක මතට විවිධ ඉලෙක්ට්‍රොනික උපාංග සම්බන්ධ කිරීමට හා වෙනත් පරිපථ කොටස් සමග සම්බන්ධතා ඇති කර ගැනීමට Jumper wires ඉතාමත් වැදගත් වනවා. Jumper wires වර්ග 3ක් තිබෙනවා, ඒ Male to Male, Female to Male හා Female to Female වශයෙනුයි. අපිට මේ වර්ග තුනෙන්ම Jumper wires අවශ්‍ය වෙනවා.


Project board එක මත ස්ථාන 2ක් සම්බන්ධ කිරීමේදී Male to Male වර්ගයද, බාහිර ඉලෙක්ට්‍රොනික උපාංගයක් Project board හා සම්බන්ධ කිරීමේදී Female to Male වර්ගයද, ඉලෙක්ට්‍රොනික උපාංග 2ක් එකිනෙක සම්බන්ධ කිරීමේදී Female to Female වර්ගයද වැදගත් වේ.

දැන් කට්ටයම Arduino Uno වගේ board එකක් මිලදී ගෙන අපේ ඉදිරි ලිපි වලදි කියල දෙන Projects කරන්න ආසාවෙන් ඇති කියල හිතනවා. ඒ වගේම Arduino IDE එක ඔයාලගේ computer එකේ දැනටමත් install කරගෙන ඇති කියල මම හිතනවා. අපි ඊලග ලිපියෙදී Arduino භාවිතා කරල සරල නිර්මාණයක් කරන්නයි බලාපොරොත්තු වෙන්නේ. Board එකක් ගන්න බැරි වුන අය ඉන්නවා නම් මට email කරන්න මට පුළුවන් එකක් ගන්න උදව් කරන්න. ඊට අමතරව ඔබට ඇති මේ සම්බන්ධව ඇති ඕනෑම ප්‍රශ්ණයක් comment මගින් හෝ email මගින් විමසන්න.



Read More

Thursday, December 31, 2015

Arduino සිංහලෙන් - අවශ්‍ය උපාංග හඳුනාගනිමු



ඔබ සැම Arduino ලිපි මාලාවේ දෙවැනි ලිපියට සාදරයෙන් පිළිගන්නව. පළමු ලිපියට ඔබ සැමගෙන් ඉතා උණුසුම් ප්‍රතිචාර ලැබුනත් කාර්ය්‍යබහුල බව නිසා තමයි දෙවැනි ලිපිය ලියන්න මෙච්චර කාලයක් ගත වුනේ. මාව මේ සඳහා උනන්දු කල ඔබ සැමට ගොඩක් ස්තූතියි.

අපි අද ලිපියෙන් මම කතා කරන්න බලාපොරොත්තු වෙන්නේ Arduino සමඟ නිර්මාණකරනයේ යෙදෙන්න ඔබට අවශ්‍ය කරන උපාංග එහෙමත් නැත්තම් අවශ්‍ය කරන දෘඩාංග (hardware) හා මෘදුකාංග (software) හඳුන්වා දෙන්නයි. (මෙහිදී මම මූලිකවම අවශ්‍ය කරන දේවල් පමණක් සඳහන් කරන අතර මීට අමතරව අවශ්‍ය කරන උපාංග පසු ලිපි වලදී සාකච්ඡා කරනු ලැබේ)


1. Arduino Board


අපිට මූලිකවම Arduino board එකක් අවශ්‍ය වෙනව. මේක හරියට computer එකේ motherboard එක වගේ, අපි සියළුම දේ සම්බන්ධ කරන්නේ මේ board එකටයි. Arduino අළුතින් ඉගෙන ගන්න ඔබට ඉතාමත්ම සුදුසු වන්නේ Arduino Uno වගේ entry level board එකක්. මේ board එක computer එක හා සම්බන්ධ කර ගැනීමට ඔබට USB cable එකක්ද අවශ්‍ය වේ.


මේ board එකේ ප්‍රධාන තාක්ෂණික දත්ත පහත පරිදි දැක්විය හැකිය :

MicrocontrollerATmega328P
Operating Voltage5V
Input Voltage (recommended)7-12V
Input Voltage (limit)6-20V
Digital I/O Pins14 (of which 6 provide PWM output)
PWM Digital I/O Pins6
Analog Input Pins6
DC Current per I/O Pin20 mA
DC Current for 3.3V Pin50 mA
Flash Memory32 KB (ATmega328P)
of which 0.5 KB used by bootloader
SRAM2 KB (ATmega328P)
EEPROM1 KB (ATmega328P)
Clock Speed16 MHz
Length68.6 mm
Width53.4 mm
Weight25 g
ඉහත දැක්වෙන තාක්ෂණික දත්ත අපි පසු ලිපියකදී සවිස්තරාත්මකව සාකච්ඡා කරමු.


2. Arduino IDE

Arduino වල code ලියන්න අපිට IDE (Integrated Development Environment) එකක් අවශ්‍යයි, මෙය අපිට පහසුවෙන්ම Arduino වෙබ් අඩවියෙන් download කර ගත හැකියි.


දැනටමත් programming කරන අයට නම් මෙවැනි IDE හොඳට හුරු ඇති. මේ IDE එක ගැනත් මම පසුව සවිස්තරාත්මක ලිපියක් ඉදිරිපත් කරන්නම්.


3. Arduino Shields

Arduino Shields අපි යොදා ගන්නේ Arduino board එකට අපට අවශ්‍ය විවිධ හැකියාවන් එක් කර ගන්නයි. හරියට computer motherboard එකකට VGA Card එකක්, Sound Card එකක් හෝ TV Card එකක් සම්බන්ධ කරනවා වගේ දෙයක් තමයි මේක. විවිධ හැකියාවන්ගෙන් යුත් Shield රැසක් අද වන විට හදුන්වා දී තිබෙනවා.



මීට අමතරව තව බොහෝ Shield වර්ග Arduino සඳහා වෙලඳ පොළේ ඇත. මේ එක් එක් Shield ගැන අපි ඒවා සම්බන්ධ කරගෙන නිර්මාණ කරන විටදී සාකච්ඡා කරමු.


4. Sensors

බොහෝ විට අපිට අවට පරිසරයේ දත්ත අපේ නිර්මාණය සඳහා යොදා ගැනීමට සිදු වෙනවා. ඉතින් මේ දත්ත ලබා ගන්න අපිට විවිධ sensors වල සහය අවශ්‍ය වෙනව. පහතින් මම උදාහරන කිහිපයක් පමණක් සඳහන් කරන්නම්.

  • Temperature Sensors
  • Motion Sensors
  • Humidity Sensors
  • Light Sensors
  • Distance Measuring Transducer Sensor
  • IR Sensor
මම ඉහත සඳහන් කර ඇත්ත Sensors කිහිපයක් පමණයි. Sensors ගැනත් අපි ඉදිරි පාඩම් වලදී කතා කරමු.

මේ බොහෝ උපාංග ebay හරහා ඔබට ඉතා පහසුවෙන් නිවසටම ගෙන්වා ගැනීමට හැකියි. Arduino copy එකක් ඔබට රුපියල් 1000 කට අඩුවෙන් මිලදී ගත හැකියි.

ඔබට ඇති මේ සම්බන්ධව ඇති ඕනෑම ප්‍රශ්ණයක් comment මගින් හෝ email මගින් විමසන්න.



Read More

Friday, August 14, 2015

Arduino සිංහලෙන් - හැඳින්වීම



කෝඩින් සිංහලෙන් හි මේ අලුත් පාඩම් මාලාව මම පොඩි කියමනකින්ම පටන් ගන්නම්,


"Creativity is just connecting things." - Steve Jobs


අපේ මේ පාඩම් මාලාවට මේ කියමන හරි අපූරුවට ගැලපෙනව, ඒ මේ මගින් ඔබේ Electronic හෝ Computer Programming පිළිබඳව ඇති දැනුම හෝ වෙනයම් එවැනි කරුණුමත පදනම් නොවී ඔබේ නිර්මාණශීලීතාවට ඉඩක් ලබා දීමට ඇති හැකියාව නිසයි. Arduino ගැන දැනටමත් දන්න අයට හෝ යම් කිසි අදහසක් තියෙන අයට මම අදහස් කල දේ දැනටමත් තේරුම් ඒන්න ඇති. එ්ත් මේ අතරේ Arduino අලුතෙන්ම ඉගෙන ගන්න ආපු අයටනම් පොඩ්ඩකක් අන්ඩර දෙමළ වගේ ඇති. :D පොදුවේ මේ හැම දෙනාටම මෙම හැඳින්වීමේ ලිපියේදී හොඳ අවබෝධයක් ලබා දෙන්නයි අපේ බලාපොරොත්තුව.

Arduino ගැන එයාලගෙම වෙබ් අඩවියේ සඳහන් වෙන්නේ මෙහෙමයි, 

"Arduino is an open-source prototyping platform based on easy-to-use hardware and software."


Arduino උපත ලබන්නේ 2005 දී ඉතාලියේ "Ivrea Interaction Design Institute" හිදීයි. මෙහිදී මොවුන්ගේ ප්‍රධාන අරමුණ වනුයේ electronics හෝ programming පිළිබඳව දැනුමක් නොමැති සිසුන් සඳහා, විවිධ වු පරේෂණ කිරීමට හැකි පහසු platform එකක් සකස් කර දීමයි. අපි අතරත් මේ වගේ අය බොහෝ ඉන්න නිසා අපිටත් මේ තාක්ෂණය එකසේ වැදගත්. Arduino වල හදවත වන්නේ micro controller එකක් සහිත board එකකි. (පහත රූපයේ දැක්වෙන්නේ Arduino Uno නැමැති board එකයි)



Arduino වල සුවිශේෂීත්වය තමයි අපිට ඔවුන්ගේ හැම Board එකකම පරිපථ සටහන් ලබා ගැනීමට හැකි වීම. එම නිසා මෙම තාක්ෂණය අපිට රිසි සේ භාවිතා කළ හැකියි. මේ නිසාම විවිධ ආයතන විසින් Aduino board වල ක්ලෝන (Clones) සාදා විකුණනු ලබනවා. Original Arduino board එකක් හා සංසන්ඳනය කිරීෙම්දී මේ ක්ලෝන ඉතා පහසු මිලකට ලබා ගැනීමේ හැකියාව තිබෙනව. ඒකත් අපි රටේ මේ තාක්ෂණය ඉක්මනින් ප්‍රචලිත වීමට හේතුවක්.

Arduino වලින් ප්‍රයෝජනයක් ගන්න මේ board එක විතරක් තිබිල මදි. මේ board වලට වවිධ වූ සංවේදක(Sensors) වලින් දත්ත ලබා ගැනීමේ හැකියාව තිබෙනව. එම ලබාගත් දත්ත අනුව තවත් යම් යම් උපකරණ සඳහා දත්ත ලබා දීම හෝ යම් කිසි කාර්යයක් කිරීමේ හැකියාව මේවා සතුයි.

දැන් ඔබ කල්පනා කරනවා ඇති Arduino හා programming සම්බන්ධ වන්නේ කොහොමද කියන දේ, ඒක තමයි Arduino හි සුවිශේෂීත්වය, ඒ අපිට මේ board සඳහා program එකක් ඇළුලත් කර ගැනීමේ හැකියාවයි. මේ සඳහා අපි යොදා ගන්නේ "The Arduino Software" නැමැති IDE (Integrated Development Environment) එකයි. (පහත රූපය බලන්න)



ඒවගේම මේ board වල හැකියාවන් තව දුරටත් වර්ධනය කර ගැනීමට අපිට Arduino විසින්ම විවිධ වූ expansion boards හඳුන්වා දී තිබෙනවා. ඔවුන් ඒවා හඳුන් වන්නේ Shields කියායි. මේ Shields වල සුවිශේෂීත්වය තමයි ප්‍රධාන board එක මත මේ shields ඉතා පහසුවෙන් සවිකර භාවිතයට ගැනීමේ හැකියාවයි.  (පහත රූපය බලන්න, මෙහිදී Arduino Uno board එකට Shileds දෙකක් සවි කර තිබෙනව)



දැන් ඔබට මම මුළින් උපුටා දක්වපු වැකියේ අදහස වඩාත් පැහැදිලි ලෙස අවබෝධ වනවා ඇති. මේ විදිහට Arduino යොදාගෙන අපිට කරන්න පුළුවන් නිර්මාණ ඉතා විශාලයි එය ඔබේ නිර්මාණශීලීත්වය හා අවශ්‍යතාවය මත රදා පවතිනු ඇත. 

අපි Arduino ගැන තවත් විස්තර රැගත් තව ලිපියකින් ලගදීම හමු වෙමු. ඔබට ඇති ගැටළු හා අදහස් මෙහි comment කරල යන්න අමතක කරන්න එපා ඒක අපිට ඊලග ලිපිට සඳහා දිරිමත් කිරීමක් වනු අැති.

References 

https://en.wikipedia.org/wiki/Arduino 
https://www.arduino.cc/
Read More

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

Sunday, February 16, 2014

Bootstrap සිංහලෙන් - 1 හැදින්වීම

වෙබ් නිර්මාණ කැරුවෙකු විදිහට කාලය ඉතාම වැදගක් සාදකයකි. වෙබ් නිර්මාණ කැරුවන් තම සක්‍රීයතාවය ඉහල නංවාගැනීම සදහා විවිධ උපක්‍රම භාවිතා කරයි. ඒ උපක්‍රම අතුරින් Framework සදහා හිමි වන්නේ මුල් තැනකි. එනම් Framework යනු පෙර සාදන ලද Styles සහ plugins එකතුන්ය. සැබැවින්ම Framework එකක් උපයෝගී කරගැනීමෙන් විශාල කාලයක් ඉතිරි කරගත හැකිය.

දැනට බොහොමයක් ජනප්‍රිය Framework අතුරින් Bootstrap සදහා හිමිවන්නේ මුල් තැනකි. Bootstrap යනු කලින් ලියනලද CSS හා JS කේත සමූහයකි. වෙබ් නිර්මානයේ දී අවශ්‍ය වන element ගණනාවක මූලික් කේතයන් Bootstrap තුල අඩංගු වේ. ඒසේම  නවීන වෙබ් නිර්මාණය සදහා අවශ්‍යවන උපාංගද බොහොමයකි. ඉදිරි පාඩම් තුලින් අපි ඒවා පිලිබඳ සාකච්චා කරමු.


Bootstrap නිර්මාණය කරන ලද්දේ twitter හී සේවය කරන මාර්ක් ඔට්ටෝ (Mark Otto) ජෙකබ් තොරටන් (Jacob Thornton) විසිනි. ඒ 2011 වසරෙදීය.මෙය සම්පුර්නයෙන්ම නොමිලයේ ලබා දීම සිදුකරයි (free & Open-source). මේ වන විට Bootstrap හී තෙවන සංස්කරණය වන Bootstrap3 ද එලිදක්වා ඇත.
Bootstrap හී ප්‍රධාන වෙබ් පිටුවට මෙතනින් පිවිසෙන්න

මාර්ක් ඔට්ටෝ (Mark Otto)

ජෙකබ් තොරටන් (Jacob Thornton)

Bootstrap පාඩම් මාලාව සදහා ඔබ කලින් දැනගෙන සිටිය යුතු මුලික දැනීමක් අවශ්‍ය වේ. ඒවා නම්. HTML CSS හා JS ය. අඩුම තරමේ HTML පිලිබඳ දැනුම අවශ්‍ය වේ.


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