Microsoft .NET: C#         Лекц №1
Агуулга   .NET Framework танилцуулга   .NET доторх хэлүүдийн танилцуулга   С# дээрх эхний програм   Хувьсагч зарлах  ...
.NET Framework   Microsoft компаниас гаргасан. Дотроо дараах    програмчлалын хэлүүдийг агуулна:       C# .NET       Vi...
C#   Microsoft-н өмнө нь хөгжүүлж байсан хэлүүд нь Windows хөгжих    тусам гарч ирсэн онцлогуудыг нь тусгахын тулд хувилб...
Visual Basic .NET (VB .NET)   Basic хэлнээс үүдэлтэй.   Microsoft-с гаргасан хамгийн анхны Visual хэл юм. VB 1.0-c VB   ...
Visual C++ .NET (VC++ .NET)   Visual C++ хэлнээс үүдэлтэй.   C++ хэлийг Windows орчны програм бичихэд хялбар болгон    ө...
Visual J++ .NET (VJ++ .NET)   Visual J++ хэлнээс үүдэлтэй.   Java хэлтэй тун төстэй харагдах боловч ондоо.   Давуу тал:...
ASP .NET   Динамик вэб хийхэд хэрэглэгддэг хэл юм.   ASP хэлийг сайжруулан гарсан хувилбар.   Давуу тал:       Windows...
.NET Framework   Эдгээр хэлүүд нь синтаксаараа ялгаатай бичигдэх боловч    бүгд цаана нэг л .NET Framework-н обьектуудыг ...
C# дээрх эхний програм   1. Дараах кодыг first.cs нэртэй файлд бичин хадгална уу.   2. csc first.cs командыг команд пром...
Хувьсагч зарлалт   Ер нь Java-тай адил. Байж болох өгөгдлийн төрлүүд нь:       sbyte : -127 127 хүртэлх утгыг авах 8 бит...
Хувьсагч зарлалт   Үнэндээ C# дээр зарласан хувьсагчийн төрөл нь тусгай C#-д л байдаг зүйл биш    бөгөөд энэ нь цаана .NE...
Хувьсагч зарлалт                   13
Тогтмол ашиглах   Програмд тогтмолыг ашигласнаар дараах давуу    талуудтай:       Програмыг уншиж ойлгоход хялбар болно....
Хувьсагчийн төрөл   C#-д хоѐр янзын хувьсагчийн төрөл байдаг нь:     Утган төрөл (value type)     Заалт төрөл (referenc...
Хувьсагчийн төрөл   Утган төрөл (value type)   Заалт төрөл (reference type)   Энд x ба y нь нэг л обьектийг заана.     ...
Хувьсагчийн төрөл   Хэрэглэгчийн зарласан класс бүр нь заалт төрөл    болно.   C#-д цаанаасаа хоѐр заалт төрөлтэй ирдэг....
Хувьсагчийн төрөл                    18
Хувьсагчийн төрөл    тэмдэгтийг ашиглан тусгай тэмдэгтүүдийг тэмдэгт мөр дотор    бичиж болно:   Гэвч олон удаа  тэмдэгт...
Нөхцөл шалгалт   Нөхцөл шалгалт нь Java – тай ижил.   Switch операторын жишээ: Java-с ялгаатай нь String төрлийн    утгы...
Нөхцөл шалгалт   Жишээ :                 21
Давталт   Java-тай ижил :                      22
Давталт   While давталт :   Do while давталт :                         23
Давталт   Foreach давталт. Энэ давталт нь бүлэг обьектуудыг ( жишээ нь    массив, вектор, ...) эхнээс нь эцэс хүртэл нь д...
Goto   Goto – г ашиглан програмын удирдлагыг өөр хэсэгт шилжүүлж    болно:   Гэхдээ давталт руу үсрэн орох, класаас үсрэ...
Enumeration   Хэрэглэгчийн үүсгэсэн бүтэц төрөл юм. Програмыг илүү    ойлгомжтой хялбар болгож өгдөг.   Enum түлхүүр үги...
Enumeration              27
Массив         28
Namespace   Энэ нь Java-н пакэжтэй ижил зүйл юм. Том системд ижил нэртэй    классууд олон гарч ирдэг ба үүнийг өөр өөр па...
Namespace   Аз болоход namespace – г using ашиглан илүү товчоор бичиж    болдог :                                        ...
Compile options   Бид өмнө нь зөвхөн консол дээр програмыг ажиллуулж үзсэн.    Тэгвэл өөрөөр классыг яаж compile хийх вэ?...
Compile options   Жишээ нь дотроо хоѐр тоо нэмдэг функцтэй MathLibrary.dll файл    үүсгээд өөр нэг програм дотроос энэ dl...
Compile options   MathLibrary.dll файлыг ашиглах MathClient.cs програм:   Гаргаж авахдаа :                  Ажиллуулахда...
Console input output   Консол дээр оролт гаралт гүйцэтгэх :                                           34
C# түлхүүр үгс   Түлхүүр үгсийг жагсаавал:                                35
C# түлхүүр үгс   Түлхүүр үгсийг жагсаавал:                                36
Upcoming SlideShare
Loading in...5
×

Lec1

1,036

Published on

hicheel-1

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,036
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
39
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Lec1

  1. 1. Microsoft .NET: C# Лекц №1
  2. 2. Агуулга .NET Framework танилцуулга .NET доторх хэлүүдийн танилцуулга С# дээрх эхний програм Хувьсагч зарлах Өгөгдлийн төрлүүд Нөхцөл шалгалт, давталтууд Goto, enumeration Namespace Compile options C# хэлний түлхүүр үгс 2
  3. 3. .NET Framework Microsoft компаниас гаргасан. Дотроо дараах програмчлалын хэлүүдийг агуулна:  C# .NET  Visual Basic .NET  Visual C++ .NET  Visual J# .NET  ASP .NET Эдгээрээс C# нь шинэ хэл юм. Visual Basic .NET нь Visual Basic 6.0-с ялгаатай. 3
  4. 4. C# Microsoft-н өмнө нь хөгжүүлж байсан хэлүүд нь Windows хөгжих тусам гарч ирсэн онцлогуудыг нь тусгахын тулд хувилбар бүртээ өөрчлөлт оруулж байснаас хэрэгтэй хэрэггүй зүйлсээр дүүрч ирсэн. Энэ асуудлыг шийдэхийн тулд .NET Framework үүсгэн энд C# хэлийг шинээр оруулж ирсэн. Энэ хэлийн давуу тал:  Хэрэглэгчийн интерфэйсийг Visual Basic-тэй адил хялбар хийнэ.  Java шиг бүрэн обьект хандалтат  C++ хэлний хурдыг агуулсан, бичиглэл нь төстэй.  Синтакс нь Java-тай төстэй тул Java програмистуудад ашиглахад хялбар байдаг.  Доод төвшинд програмчлах боломжтой.  Заагчаар хангагдсан. 4
  5. 5. Visual Basic .NET (VB .NET) Basic хэлнээс үүдэлтэй. Microsoft-с гаргасан хамгийн анхны Visual хэл юм. VB 1.0-c VB 6.0 хүртэл хөгжөөд хамгийн сүүлд VB .NET болсон байна. Давуу тал:  Хэрэглэгчийн интерфэйсыг маш хялбар гаргаж өгдөг.  Кодонд том жижиг үсэг ялгаагүй.  Хурдтай ажилладаг. Дутагдалтай тал:  Нэгэнт Basic хэлний синтаксыг өвлөсөн тул том хэмжээний төслийг амжилттай хийхэд асуудал гарч ирдэг.  Бүрэн обьект хандалтат биш тул мөн л том төсөлд код нь хяналтаас хурдан гарна.  Илүү нарийн төвөгтэй доод төвшинд програмчлахдаа тааруу.  Заагч байхгүй. 5
  6. 6. Visual C++ .NET (VC++ .NET) Visual C++ хэлнээс үүдэлтэй. C++ хэлийг Windows орчны програм бичихэд хялбар болгон өөрчилсөн хувилбар юм. Давуу тал:  Маш доод төвшинд програмчлах боломжтой.  Илүү хурдан ажиллах програм хийж болно. Дутагдалтай тал:  Windows-г маш сайн мэдэх туршлагатай програмист л хэрэглэх боломжтой.  Хэрэглэгчийн интерфэйсийг хийхийн тулд маш их зүйл бичих хэрэгтэй болно. 6
  7. 7. Visual J++ .NET (VJ++ .NET) Visual J++ хэлнээс үүдэлтэй. Java хэлтэй тун төстэй харагдах боловч ондоо. Давуу тал:  Java дээр ажиллаж байсан хүмүүст .NET дээр програм хурдан бичиж сурах боломж олгоно. Дутагдалтай тал:  Өргөн хэрэглэгддэггүй. 7
  8. 8. ASP .NET Динамик вэб хийхэд хэрэглэгддэг хэл юм. ASP хэлийг сайжруулан гарсан хувилбар. Давуу тал:  Windows-той илүү зохицон ажиллана. 8
  9. 9. .NET Framework Эдгээр хэлүүд нь синтаксаараа ялгаатай бичигдэх боловч бүгд цаана нэг л .NET Framework-н обьектуудыг ашигладаг. Эдгээр хэлийн алин дээр нь ч бичсэн кодыг компилятор хөрвүүлэхэд нэг ижил IL (Intermediate Language) дээр бичигдсэн код гардаг. Тиймээс эдгээр хэлүүд хоорондоо кодоо бие биерүүгээ хөрвүүлэх боломжтой юм. .NET нь үүссэн IL кодыг (Java-н байт кодтой төстэй) JIT (Just in time compiler) ашиглан машины код руу хөрвүүлдэг. .NET дээр бичигдсэн програм ажиллахын тулд .NET Framework суулгагдсан байх шаардлагатай. 9
  10. 10. C# дээрх эхний програм 1. Дараах кодыг first.cs нэртэй файлд бичин хадгална уу. 2. csc first.cs командыг команд промпт дээр өгнө. (start->All Programs->Microsoft Visual Studio 2005->Visual Studio Tools- >Visual Studio 2005 Command Prompt) 3. first командыг өгөхөд програм ажиллана. 10
  11. 11. Хувьсагч зарлалт Ер нь Java-тай адил. Байж болох өгөгдлийн төрлүүд нь:  sbyte : -127 127 хүртэлх утгыг авах 8 битийн тоо (signed byte)  byte : 0-255 утга авна.  short : -32768 32768 хооронд байх тоонуудыг авна. (16 бит)  Ushort : 0-65535 хооронд байх тоонуудыг авна. (16 бит)  Int : 32 битийн тэмдэгтэй тоо  Uint : 32 битийн тэмдэггүй тоо.  Long : 64 битийн тэмдэгтэй тоо.  ulong : 64 битийн тэмдэггүй тоо.  Char : 16 битийн Unicode тэмдэгт  Float : 32 битийн тэмдэгтэй бутархай тоо.  Double : 64 битийн тэмдэгтэй бутархай тоо.  Decimal : 128 битийн тэмдэгтэй бутархай тоо.  Bool : Буулийн утга. 11
  12. 12. Хувьсагч зарлалт Үнэндээ C# дээр зарласан хувьсагчийн төрөл нь тусгай C#-д л байдаг зүйл биш бөгөөд энэ нь цаана .NET-н өгөгдлийн төрлийг ашиглаж байдаг. .NET дотор байх бүх хэлүүд нь мөн л цаана .NET –н өгөгдлийн төрлийг хэрэглэдэг. 12
  13. 13. Хувьсагч зарлалт 13
  14. 14. Тогтмол ашиглах Програмд тогтмолыг ашигласнаар дараах давуу талуудтай:  Програмыг уншиж ойлгоход хялбар болно. Жишээ нь програм дотор энд тэнд 3,1428568 гэсэн утга явж байснаас Pi гэсэн тогтмол зарлаад түүнийгээ хэрэглэх газраа Pi гэсэн нэрээр хэрэглэх гэх мэт  Програмыг хурдан засах боломж өгнө. Хэрэв бид Pi 3.15 байхаар солъѐ гэвэл тогтмолынхоо утгыг л өөрчилснөөр бүх газар өөрчлөлт орно. Тогтмол ашиглаагүй бол 3,14285 тоо бүрийг очиж солих хэрэгтэй болно.  С#-д тогтмолыг const түлхүүр үгээр зарлана: 14
  15. 15. Хувьсагчийн төрөл C#-д хоѐр янзын хувьсагчийн төрөл байдаг нь:  Утган төрөл (value type)  Заалт төрөл (reference type) Гол ялгаа нь утган төрөл нь хувсагчийн утгыг шууд агуулж байдаг бол заалт төрөл нь уг утгыг агуулсан санах ойг зааж байдаг. Эдгээр төрлүүд нь санах ойд өөр өөр хэсэгт байрладаг:  Утган төрөл нь Стект байрлана.  Заалт төрөл нь Heap санах ойд байрлана. 15
  16. 16. Хувьсагчийн төрөл Утган төрөл (value type) Заалт төрөл (reference type) Энд x ба y нь нэг л обьектийг заана. 16
  17. 17. Хувьсагчийн төрөл Хэрэглэгчийн зарласан класс бүр нь заалт төрөл болно. C#-д цаанаасаа хоѐр заалт төрөлтэй ирдэг. Эдгээр нь:  object : Энэ нь Java –н object төрөлтэй ижил. C# - д байх бүх обьектууд эндээс ямар нэг байдлаар удамшин гарсан байна.  string : Java-н String класстай ижилхэн үүрэгтэй. Хэдийгээр string нь заалт төрөл боловч нэг ижил тэмдэгт мөрийг зааж буй хоѐр заалтын нэгийг өөрчлөхөд нөгөөх нь өөрчлөгдөлгүй үлддэг. Жишээн дээр харна уу. 17
  18. 18. Хувьсагчийн төрөл 18
  19. 19. Хувьсагчийн төрөл тэмдэгтийг ашиглан тусгай тэмдэгтүүдийг тэмдэгт мөр дотор бичиж болно: Гэвч олон удаа тэмдэгтийг ашиглах нь ядаргаатай бол C# - д нэг боломж бий: 19
  20. 20. Нөхцөл шалгалт Нөхцөл шалгалт нь Java – тай ижил. Switch операторын жишээ: Java-с ялгаатай нь String төрлийн утгыг switch-д ашиглаж болно 20
  21. 21. Нөхцөл шалгалт Жишээ : 21
  22. 22. Давталт Java-тай ижил : 22
  23. 23. Давталт While давталт : Do while давталт : 23
  24. 24. Давталт Foreach давталт. Энэ давталт нь бүлэг обьектуудыг ( жишээ нь массив, вектор, ...) эхнээс нь эцэс хүртэл нь давтдаг. Анхаарах нэг чухал зүйл бол энэ давталтын үед обьектуудын утгыг нь өөрчилж болдоггүй. Тиймээс доорх давталт ажиллахгүй. 24
  25. 25. Goto Goto – г ашиглан програмын удирдлагыг өөр хэсэгт шилжүүлж болно: Гэхдээ давталт руу үсрэн орох, класаас үсрэн гарах зэрэг үйлдлийг энэ оператороор хийх боломжгүй. Ер нь goto-г ашиглах нь сайн обьект хандалтат системд бараг тохиолддоггүй боловч switch ашиглах үед дотор нь шилжих зорилгоор ашиглахад их зүгээр байдаг байна. 25
  26. 26. Enumeration Хэрэглэгчийн үүсгэсэн бүтэц төрөл юм. Програмыг илүү ойлгомжтой хялбар болгож өгдөг. Enum түлхүүр үгийг ашиглан зарлана. 26
  27. 27. Enumeration 27
  28. 28. Массив 28
  29. 29. Namespace Энэ нь Java-н пакэжтэй ижил зүйл юм. Том системд ижил нэртэй классууд олон гарч ирдэг ба үүнийг өөр өөр пакэжд хийснээр шийддэг. Үүнтэй адилаар C# -н namespace дотор классууд байрладаг ба ижил нэртэй классууд нь namespace-ээрээ ялгарна. Дараах хоѐр код ижилхэн: 29
  30. 30. Namespace Аз болоход namespace – г using ашиглан илүү товчоор бичиж болдог : 30
  31. 31. Compile options Бид өмнө нь зөвхөн консол дээр програмыг ажиллуулж үзсэн. Тэгвэл өөрөөр классыг яаж compile хийх вэ? Csc командыг дараах тохиргоотойгоор өгч өөр өөрөөр компиляци хийж болно: 31
  32. 32. Compile options Жишээ нь дотроо хоѐр тоо нэмдэг функцтэй MathLibrary.dll файл үүсгээд өөр нэг програм дотроос энэ dll-н хоѐр тоо нэмдэг функцийг ашиглан ажиллах жишээ хийж үзье. MathLibrary.dll файлын код : Гаргаж авахдаа : 32
  33. 33. Compile options MathLibrary.dll файлыг ашиглах MathClient.cs програм: Гаргаж авахдаа : Ажиллуулахдаа : Mathclient 33
  34. 34. Console input output Консол дээр оролт гаралт гүйцэтгэх : 34
  35. 35. C# түлхүүр үгс Түлхүүр үгсийг жагсаавал: 35
  36. 36. C# түлхүүр үгс Түлхүүр үгсийг жагсаавал: 36
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×