2012/06/13

Өгөгдлийн төрлүүд

Өгөгдлийн төрлүүдийн тухай

Ямар ч програмчлалын хэлэнд өгөгдөл үндсэн хэдэн төрөл хэлбэрээр оршдог. Жишээлбэл тоо, тэмдэгт, бутархай тоо буль гэх мэт. Эдгээрийг примитив төрөл гэдэг.

Java хэлэнд бол :
  • byte - нэг байт буюу 8 битэд тоон утга хадгална. Утга нь -128 ба 127 -ийн хооронд байх боломжтой.
  • short - 16 битэд тоон утга хадгална.  -32,768 ба  32,767-ийн хооронд утга авна.
  • int - бүхэл тоон төрөл 32 битэд санах ой эзэлнэ.  -2,147,483,648 ба  2,147,483,647-ийн хооронд утга авна.
  • long - 64 бит санах ой эзэлнэ.  -9,223,372,036,854,775,808 ба  9,223,372,036,854,775,807 -ийн хооронд утга авна.
  • float - бутархай тоо. float number = 1.24f,  float number =   253.5151f гэх мэтээр утга өгнө
  • double - бутархай тоо. double num = 1.24d, 325.515d гэх мэтээр утга өгдөг. float болон double төрөл санах ойд яаж байршдаг тухай бичвэл нилээн их юм болно. Ерөнхийд нь бутархай тоо гэж ойлгож болно.
  • char - 16 битийн нэг unicode тэмдэгт авна. Жишээлбэл : char c = 'g', эсвэл '#', '1' гэх мэт. ' хаалтаар ялгаж бичнэ.
  • String - текст. String str = "text"
  • Boolean - булийн төрөл true ба false /үнэн, худал/ гэсэн хоёр утга авна. Санах ойд 1 бит эзэлнэ.
Java хэлэнд том жижиг үсэг ялгаатай тул том жижиг үсэг андуурч бичихэд л алдаа гардаг. 
Мөн хувьсагчдын нэр,  функцын нэр, параметрийн нэрэнд : camelCasing
Классын нэрэнд : PascalCasing  стандарт ашиглана

camelCasing - энэ нь нэр өгөхдөө сул зай авахгүй жижиг үсгээр эхэлж түүнээс хойш үг бүрийн эхний үсгийг томоор бичнэ гэсэн үг. Жишээлбэл : camelCasing, smallCar, bigCar ...

PascalCasing  - дээрхтэй адил боловч хамгийн эхний үсгийг томоор. 
Жишээлбэл : PascalCasing, SmallCar, BigCar ...

Дараа нь reference буюу заагч төрөл. Энэ нь класс, массив (array) зэрэг примитив төрлөөс бүтсэн комплекс төрлүүд юм. Жишээлбэл :

 class MyType{  
     int doorNumber;  
     String firstName;  
     String lastName  
 }  

Энэ тохиолдолд класс нь дотроо хаалганы дугаар, овог нэр гэсэн текст утга авч байна. Гэвч эдгээр нь текстийн уртаас хамаарч санах ойд эзлэх зай нь тодорхойгүй байна. Тиймээс санах ойн хаяг буюу reference авдаг.

Дэлгэрэнгүй...

2012/06/01

JAVA суулгах, тохируулах

Суулгах, жишээнд ашиглахад хамгийн амархан бөгөөд цаашид хэрэгтэй гэж үзээд JAVA суулгах тохируулах тухай оруулахаар шийдэв.
JAVA нь платформ хамаарахгүй ажилладаг, өөрөөр хэлбэл Windows, Linux, Android гэх мэт төхөөрөмж, үйлдлийн систем хамаарахгүй ажилладаг гэсэн үг. Үүний тулд тухайн платформ нь жаваг дэмждэг байх шаардлагатай. Гэхдээ өнөө үед жава дэмждэггүй гар утас төхөөрөмж ховор болсон тул энэ тал дээр санаа зовоод байх шаардлагагүй байх.

JAVA нь Java Runtime Environment(JRE) ба Java Development Kit (JDK) гэсэн setup файлаар олддог. JRE нь жаваг ажиллуулах виртуал машин буюу таны жава байт кодыг машины код руу хөрвүүлж ажиллуулдаг виртуал машин, JDK нь таны бичсэн жава кодыг жава байт код руу хөрвүүлэгч юм.

Жава програмуудыг ажиллуулахын тулд JRE шаардлагатай зарим интернетийн сайт, эсвэл програм суулгахад жава суулгадаг нь JRE юм. Харин жава програм бичихэд JDK хувилбар нь хэрэгтэй. Жавагийн сайтнаас татаж авч болно.

За ингээд жава суулгасаны дараа зарим нэг тохиргоо хийж өгөх шаардлагатай байдаг.

Control Panel/ System and Security/ System/Advanced System Settings -ийн Environment Variables руу орно. 
User Variables хэсэгт шинээр PATH гэсэн нэртэй утга нь JDK суулгасан зам дотор байгаа bin folder-ийн замыг зааж өгнө. Мөн System Variables дээр нь JAVA_HOME нэртэй jdk зам бүхий утга үүсгэнэ. Ингээд жаваг ашиглахад бэлэн болно. /Ард талд нь ; бичихээ мартваа/

Шалгахын тулд cmd ажиллуулаад javac гэж бичээд enter daraad uz зөв тохируулсан бол олон командын лист гарч ирнэ буруу бол not recognized command javac гэж гарна.

 Жава код бичиж ажиллуулахын тулд Notepad, Notepad++ гэх мэт текст editor ашиглаж болно.  Эдгээр нь жижиг хэмжээний код бичихэд тохиромжтой. Гэхдээ Eclipse, NetBeans, JDeveloper гэх мэт IDE Tools ашиглавал илүү том програм бичихэд хялбар.

За одоо 2 тооны нийлбэр гаргадаг энгийн жишээ програм хийж үзье.

Классын нэр нь файлын нэртэй адилхан бөгөөд том үсгээр эхлэх ёстойг анхаар. Тоо, жижиг үсэг бусад тэмдэгт байж болохгүй.

Ажиллуулж туршихдаа 

javac - TestProgram.java жава source файлыг жава класс руу хөрвүүлнэ.
java - үүссэн жава класс файлыг виртуал машин дээр ажиллуулна. TestProgram.class файлыг class гэсэн өргөтгөлийг өгөхгүй ажиллуулж байгааг анхаараарай.

Дэлгэрэнгүй...

2012/05/30

IT 101

Мэргэжлийхээ чиглэлээр олж мэдсэн зүйлсээ нэг найзыхаа хатгалгаар бичиж эхлэхээр шийдэв. Мартагдсан мөрөөдлөө сэргээе дээ : )
Компьютерийн шинжлэх ухаан
Компьютерийн шинжлэх ухаан нь hardware буюу техник хангамж, software буюу програм хангамж гэсэн үндсэн 2 төрөлд хуваагддаг. Би голчлон software талаар мэдэх тул энэ талаар л бичиж байх болвуу. Програм хангамж/ПХ гэж цаашид товчилъё/ нь :
  • Алгоритм
  • Өгөгдлийн бүтэц
  • Алгоритм дээрх анализ буюу шинжилгээ гэсэн үндсэн ойлголтуудтай.



За ингээд Алгоритм 101

Ер нь бол алгоритмийг математикийн томъёо гэж ойлгоход нээх буруудахгүй байхаа. Алгоритм нь компьютер буюу машинд хийх үйлдлүүдийг заасан командуудын дараалал юм. Хийсвэрлэж жишээ татвал : хоол хийх гэсэн алгоритм нь 1.сав суулга бэлтгэх, 2.ногоо арилгах, 3.угаах,4. мах татах, хуурах, амтлах гэх мэт дарааллаар явна. /Яс юман дээр би хоол хийдгүй л дээ хэхэх/

За тэгээд алгоритмийг хэд хэдэн аргаар илэрхийлдэг.

  • Блок схем /зүүн талын зураг/
  • Pseudo code /Багш нар псевдо гэж яриад байдаг байсан дуудлага шүүмжиллээ гэнэ дээ нөхдүүд намайг/ if a=b then c = a+b гэх мэт
  • Тэгээд мэдээж програмчлалын хэлүүд дээр код болж бичигдэнэ дээ.
Блок схем нь илэрхийлэхэд нүдэнд дулаахан, ойлгоход энгийн гэхдээ зай эзэлдэг програмчлалын хэл рүү буулгахад бага зэрэг төвөгтэй. Тиймээс ерөнхий бүтэц, хүнд хүнд логикуудыг илэрхийлэх, танилцуулах, шийдэл олоход ихэвчлэн ашиглаад байх шиг байгаан.
Тэмдэглэгээ дүрснүүдийг хүсвэл дараа тавьж өгнөө.


Псевдо код нь бараг л програмчлалын хэл. Гэхдээ арай энгийн, дүрэм, түлхүүр үгүүд нь хэл бүрийн алтан дундаж гэж би төсөөлөөд байгаа. За тэгээд их сургуульд л хичээл дээр ашиглаад байгаа байх.

Би алгоритм оруулахаар бол шууд аль нэг хэл дээр код, бүр хүнд ойлгогдохооргүй логикуудыг блок схем зэргээр тайлбарлах байх.

За тэгээд ганц нэг алгоритмын бодлогуудыг http://projecteuler.net/ сайтаас жишээ авж тавъя.
Ер нь өөрөө бүртгүүлж байгаад бодлогуудыг бодож үзэхэд гэмгүй. Энгийн амарханаас авахуулаад би байтугай нь бодож чадахгүй хүнд бодлогууд байгаа.

За хамгийн энгийн алгоритм :
1 -ээс 20 хүртэлх тооны нийлбэр олох

sum = 0
for ( i =1 ; i < = 20 ; i++ ) /
      sum = sum + i;
print (sum)

Тайлбар :

sum = 0  //энд нийлбэрийн анхны утга тэгээс эхэлж байна


for ( i =1 ; i < = 20 ; i++ )   //энд for буюу давталт i гэсэн хувьсагчийн хувьд утгыг нэгээр нэмж     нэгээс 20 хүртэл завсарт буюу 20 удаа давтана
      sum = sum + i;  //энд нийлбэрийн утгыг i -ээр нэмж байна i-ийн утга нь  давталтын алхам бүрт 1,2,3.. гэх мэтээр өөрчлөгдөнө.
print (sum) //хариуг харуулах

За унтах болчиж маргааш хэдэн хэрэгтэй програмууд тэд нарыг яаж суулгах талаар чадвал дахиад хэдэн алгоритм оруулнаа.

Дэлгэрэнгүй...