Хамтрагчид

Tuesday, August 3, 2010

Джанго

Сүүлийн 7 сарын хугацаанд энэхүү веб програмчлалын орчинтой танилцсан болохоор өөрийнхөө хэмжээнд бага сага мэддэг болсон. Тэрийгээ хүмүүст хүргэх сонирхолтой байгаа учраас Джангогийн талаар бичиж тэмдэглэж, яаж ашиглавал үр дүнтэй байх вэ? гэдэг талаар баримтжуулж байхаар бодож тогтлоо. Анх компьютерийн програмчлалын элдэв зүйлтэй танилцаж байхдаа дараах зүйлүүдийг би лаг гэж боддог байсан юм. Бараг л бүгдээрээ тэгж боддог байх:
  1. Алгоритмдаа сайн бол би компьютерийг маш сайн ойлгоно. Хэнийг ч дагуулахааргүй мундаг болох юм байна.
  2. Ассемблер, Си хэлнүүдийг сайн мэддэг бол би Cool!
  3. Үйлдлийн системийн ажиллагаанд гүнзгий суралцах хэрэгтэй.
За энэ мэтчилэн Hard-Core юмнууд үргэлжилнэ байх. Энэ зөв санагдаж байж магадгүй. "1"-р хэсэгт алгоритмдаа бүгд сайн байх хэрэгтэй гэхдээ бид нар эрдэмтэн биш. Хэн ч өгөгдлийн сангаас ирж байгаа өгөгдөл дээр "Quick-Sort" алгоритмаар эрэмбэлэлт хийдэггүй. "2"-р хэсэгт Ассемблер бол сурахад илүүц харин Си хэлийг мэддэг л байх хэрэгтэй, шаардлагатай юм хийхгүй бол түүнээс би аль болох дөлнө. "3"-р хэсэгт онолын мэдлэгтэй байхад л хангалттай. Түүний эх код байнга л өөрчлөгдөнө. Дээрээс нь хэлэхэд олон зүйлд суралцах хэрэггүй. 10-н хуруугаа л сайхан ашигладаг байхад болно шүү дээ :)

Джанго хэд хэдэн давуу талтай:
  1. Өгөгдлийн сангаас хамааралгүй. Sqlite, MsSql, MySQL байна уу, үгүй юу, тэр өгөгдлийн сангаас бид нар хамаарч код бичихгүй.
  2. Урьдчилан бэлдэж өгсөн файлууд нь зөв арга барилд сургана (MVC - Model View Controller)
  3. Python хэл дээр бичнэ. Энэ хэл бол үнэхээр гайхалтай. Бүхий л шаардлагатай модуль элдэв зүйлийг асуудалгүй татаж суулгана. Гэхдээ хөрвүүлсэн модулиас аль болох зайлсхийгээрэй! ийш тийшээ шилжүүлэхэд хөрвүүлэх хэрэгтэй болдог. Мянга, мянган модуль пэкежүүд энэ хэл дээр бичигдсэн бүх юм байгаа гэдгийг баттай хэлье. Текст засварлагчаас эхлээд сервер хүртэл бий! Интерпретер хэл учраас бид нар ямар ч DLL, SO, EXE, BIN файл хэрэглэхгүй, цэвэр кодтой нь харилцана "Жинхэнэ адал явдал!" Гоё шүү.
  4. Темплэйтэнд зориулсан тусгай хэлтэй. Python хэл дээр бичлээ гээд "HTML"-ийг python кодоор өрөхгүй шүү дээ.
  5. "URL"-ийг бол янз янзаар нь янзалж болно. Дотоод ажиллагаа нь директор бүтэцгүй.
  6. Веб нь "application" гэж нэрлэгдэх хэд хэдэн дэд хэсгүүдээс тогтдог. Нэг "Апп" нь нөгөө "Апп"-аасаа хамааралтай өөрөөр хэлбэл түүн дээрээ бичигдсэн байж болно. Жишээ нь: Удирдлагын хэсэгт зориулсан "Апп" нь Хэрэглэгчидтэй ажиллах "Апп"-ыг шаарддаг. Урьдчилан бэлдэж ирсэн олон Апп-тай болохоор тэндээс шаардлагатай хэсгүүдээ аваад ашиглаж болно. Хэрвээ хакерын зүрх сэтгэлээр суралцъя гэвэл тэдгээрийн эх код руу үсрээрэй :)
Миний хувьд Джанго дээр хөгжүүлэхэд асуудал бол гарч ирсэн. Зөв юмыг зөв аргаар нь хийвэл асуудал ядаргаатай байлаа ч дараа нь үүсэхгүй. Энэ хэдийгээр хүчээ авч байгаа платформ боловч нийтэд тийм их түгээгүй. Өөрөө сервергүй л бол "Hosting" асуудал. Гэхдээ энэнд бол тийм айхтар санаа зовох хэрэггүй. Google ахын "App Engine"-тай хамт байхад болно. Хэдийгээр би дөнгөж "App Engine"-тай найзалж эхэлж байгаа ч гэсэн тэр талаар хийсэн зүйлүүдээ тэмдэглэж үлдээх болно. Дараагийн нийтлэлүүд дээрээсээ эхлээд Джангод хэдүүлээ гараа дүрж бохирдуулнаа.

6 comments:

  1. Гоё гоё юм унших нь ээ! Хүлээж байя!

    ReplyDelete
  2. За жангочиндоо шинэ блогт нь амжилт хүсье! :D

    ReplyDelete
  3. Дөлгөөн хамт бичвэл гоё юм байна даа :D Илүү далайцтай авна байх ;)

    ReplyDelete
  4. Хамтрах нээлттэй :)

    ReplyDelete
  5. за бичээд байгаарай! байнга орж байна шүү

    ReplyDelete