Ачааллж байна...
Өмнөх хичээлд бид энэ сургалт хэрхэн явагдахыг ярьсан. Одоо таны сурах гэж буй зүйлтэй өөртэй нь танилцъя: Python. Энэ нэрийг та магадгүй хаа нэгтээ сонсож байсан байх — мэдээний гарчигт, ажлын зарын шаардлагад, эсвэл "хүүхдэд программчлал заая" гэсэн ярианд. Хамгийн энгийнээр хэлбэл, Python бол программчлалын хэл юм. Программчлалын хэл гэдэг нь хүн компьютерт зааварчилгаа бичиж өгөхөд ашигладаг тусгай хэл гэсэн үг. Бид хүнтэй монголоор эсвэл англиар ярьдаг шиг, компьютертэй "ярихын" тулд компьютерын ойлгож чадах хэлээр бичих хэрэгтэй болдог бөгөөд Python бол яг тийм хэлүүдийн нэг нь билээ. Программ гэж чухам юу болох, компьютер зааварчилгааг хэрхэн биелүүлдэг талаар бид дараагийн хичээлд гүнзгий ярих учраас энэ хичээлд Python-ы өөрийнх нь түүх, хэрэглээ, яагаад олон сая хүн яг үүнийг сонгодог тухай л ярина.
Нэг зүйлийг эхэнд нь тодруулъя: программчлалын хэл гэдэг нь Python ганцаараа биш. Дэлхий дээр олон зуун программчлалын хэл байдаг — JavaScript, Java, C++, C# гэх мэт нэрсийг та цаашдаа сонсох болно. Тэдгээр нь монгол, англи, япон хэл шиг өөр өөр "хэлүүд" бөгөөд тус бүр өөрийн давуу болон сул талтай. Тэгвэл яагаад энэ сургалт, мөн дэлхийн ихэнх багш нар анхны хэл болгож яг Python-ыг зөвлөдөг юм бэ? Энэ асуултын хариулт энэ хичээлийн гол сэдэв бөгөөд хариултыг нь мэдчихвэл та "би зөв зүйл сурч байна" гэсэн итгэлтэйгээр цааш явах болно.
Программчлалын хэлүүдийг гар багажтай зүйрлэж болно. Мужааны хайрцагт алх, хөрөө, халив гээд олон багаж байдаг бөгөөд ажил бүрд тохирсон багаж нь өөр байдаг. Хадаас хадахад алх тохиромжтой, банз хөрөөдөхөд хөрөө хэрэгтэй. Программчлалын хэлүүд ч мөн адил: зарим хэл гар утасны аппликейшн хийхэд илүү тохиромжтой, зарим нь тоглоом бүтээхэд, зарим нь вэбсайт хийхэд түлхүү ашиглагддаг. Тэгвэл Python бол энэ зүйрлэл дотроо "олон үйлдэлт хутга" буюу нэг дор маш олон ажилд ашиглаж болдог багаж юм. Вэбсайтын ард ажилладаг систем, өгөгдлийн шинжилгээ, хиймэл оюун, автоматжуулалт, шинжлэх ухааны тооцоолол — энэ бүхэнд Python-ыг өргөн хэрэглэдэг. Анхлан суралцагчийн хувьд энэ нь нэг том давуу тал болдог: та одоо аль чиглэл рүү явахаа мэдэхгүй байсан ч Python сурснаар бараг бүх зам тань нээлттэй үлдэнэ.
Python бол сургуулийн жишээнд л хэрэглэгддэг "сургалтын" хэл биш, дэлхийн хамгийн том компаниудын өдөр тутмын ажлын хэл юм. Хэдэн бодит жишээ дурдъя. Та YouTube дээр видео үзэж байсан бол Python-ы ажлын үр дүнтэй аль хэдийн харилцсан гэсэн үг — YouTube-ийн системийн томоохон хэсэг Python дээр бичигдсэн байдаг. Instagram-ын ард ажилладаг үндсэн систем мөн Python дээр суурилдаг бөгөөд өдөр бүр олон зуун сая хүний зураг, мессежийг Python код зохицуулж байдаг. Netflix кино санал болгохдоо, Spotify дуу санал болгохдоо Python ашигладаг. Google компани Python-ыг анхнаасаа өргөн хэрэглэж ирсэн бөгөөд NASA хүртэл сансрын судалгааныхаа зарим тооцоололд Python ашигладаг.
Эдгээр том нэрсээс гадна Python-ы жинхэнэ хүч нь өнөөгийн хамгийн халуун салбар болох хиймэл оюун (artificial intelligence) болон өгөгдлийн шинжилгээ (data science) хоёрт байгаа юм. Сүүлийн жилүүдэд дэлхий нийтийг гайхшруулж буй хиймэл оюуны системүүдийн дийлэнх нь Python ашиглан бүтээгдэж, сургагдаж байна. Банк, эмнэлэг, их сургууль, судалгааны байгууллагууд асар их хэмжээний мэдээллээс утга учир олохын тулд Python хэрэглэдэг. Өөрөөр хэлбэл, та Python сурснаар зөвхөн "программ хийж чаддаг" болоод зогсохгүй, ирээдүйн хамгийн эрэлттэй салбаруудын үүдэн дээр очиж зогсоно гэсэн үг. Мөн жижиг, өдөр тутмын түвшинд ч Python хэрэгтэй: уйтгартай, давтагддаг ажлыг (жишээ нь олон зуун файлын нэрийг өөрчлөх, хүснэгтээс мэдээлэл түүх) хэдхэн мөр кодоор автоматжуулж болдог нь Python-ы хамгийн практик увдисуудын нэг билээ.
Эхний бөгөөд хамгийн чухал шалтгаан: Python код хүний нүдэнд уншигдахуйц байдаг. Программчлалын хэлүүд бүгд адилхан "компьютерын нууц бичиг" шиг харагддаг гэж төсөөлдөг бол тийм биш — хэл хоорондын ялгаа асар том. Зарим хэл дээр хамгийн энгийн үйлдэл хийхэд ч хаалт, цэг таслал, тусгай тэмдэгтүүдээр дүүрэн, нүд эрээлжлэм бичиглэл шаардагддаг. Харин Python-ы зохиогчид "код бол бичихээсээ илүү уншигддаг зүйл" гэсэн зарчмыг анхнаасаа баримталсан учраас Python код энгийн англи өгүүлбэртэй ойролцоо харагддаг. Жишээ нь дэлгэц дээр үг хэвлэх Python код нь шууд утгаараа "хэвлэ" гэсэн англи үг дээр суурилдаг. Анхлан суралцагчийн хувьд энэ нь юу гэсэн үг вэ гэвэл: таны тархины бүх хүч "энэ хачин тэмдэгтүүд юу вэ" гэдэгт биш, "би компьютерт юу хийлгэхийг хүсэж байна" гэдэг жинхэнэ асуултад зарцуулагдана.
Хоёр дахь шалтгаан: Python дэлхийн хамгийн түгээмэл хэрэглэгддэг хэлүүдийн нэг бөгөөд олон жил дараалан хамгийн эрэлттэй хэлүүдийн жагсаалтын оройд явж байна. Түгээмэл байх нь суралцагчид шууд ашиг өгдөг. Дэлхий даяар олон сая хүн Python сурч, хэрэглэж байгаа учраас таны тааралдах бараг бүх асуулт, бүх алдааг өмнө нь хэн нэгэн тааралдаж, шийдэж, интернэтэд хариултыг нь бичсэн байдаг. Мөн сурах материал, номын сан, бэлэн хэрэгслүүдийн сан нь баялаг. Ганцаараа сурч буй хүний хувьд "хариулт нь олддог хэл" сурна гэдэг маш том дэмжлэг юм.
Гурав дахь шалтгаан: өмнө дурдсанчлан Python олон салбарт нэвтэрсэн хэл учраас таны цаашдын сонголтыг хязгаарладаггүй. Зарим хэл сурчихаад "энэ чиглэл надад таалагдахгүй байна" гэвэл шинэ хэл дахин сурах хэрэгтэй болдог бол Python-той хүн вэб, өгөгдөл, хиймэл оюун, автоматжуулалт, тоглоомын эхлэл гээд олон чиглэлийг нэг л суурин дээрээс туршиж үзэх боломжтой. Анхны хэл гэдэг бол таны программчлалын сэтгэлгээний суурийг тавьдаг хэл бөгөөд тэр суурь өргөн байх тусам сайн.
Шинэ зүйл сурахдаа түүнийг хэн, хэзээ, яагаад бүтээснийг мэдэх нь тухайн зүйлийг илүү ойр дотно болгодог. Python-ыг Нидерланд улсын программист Guido van Rossum гэдэг хүн бүтээж, 1991 онд анх нийтэд гаргажээ. Тэрээр "хүчирхэг мөртлөө энгийн, уншихад тааламжтай хэл байх ёстой" гэсэн бодлоор Python-ыг бүтээсэн бөгөөд өнөөдрийн бидний ярьсан "уншигдахуйц байдал" тэр анхны зорилгоос улбаатай юм. Өөрөөр хэлбэл Python таны хувьд ойлгомжтой санагдах нь аз тохиол биш — гуч гаруй жилийн өмнө зориуд ингэж загварчилсан хэрэг билээ.
Нэрний тухайд нэг хөгжилтэй баримт бий. Олон хүн Python (англиар "питон могой") гэдэг нэрийг могойтой холбоотой гэж боддог ч үнэндээ тийм биш. Guido van Rossum "Monty Python's Flying Circus" хэмээх Английн алдарт хошин шогийн телевизийн цувралын шүтэн бишрэгч байсан бөгөөд хэлээ түүний нэрээр нэрлэсэн юм. Тиймээс Python-ы нэр могойноос биш, инээдмийн шоунаас гаралтай — гэхдээ могойн дүрс нь хожим нь хэлний албан бус бэлгэ тэмдэг болон тогтсон нь үнэн. Энэ жижиг баримт нь Python-ы соёлыг ч бага зэрэг илтгэдэг: Python-ы ертөнц хөнгөн, нээлттэй, хошин уур амьсгалтай байхыг эрхэмлэдэг.
Бас нэг мэдэхэд илүүдэхгүй зүйл: Python бол үнэ төлбөргүй бөгөөд нээлттэй эхийн (open source) хэл юм. Нээлттэй эх гэдэг нь тухайн программын дотоод бүтэц нь хүн бүрд ил, хэн ч үнэгүй ашиглаж, хөгжүүлэлтэд нь хувь нэмэр оруулж болно гэсэн үг. Та Python сурахын тулд, хэрэглэхийн тулд хэнд ч, хэзээ ч төлбөр төлөхгүй. Дэлхий даяарх сайн дурын мянга мянган программист Python-ыг гуч гаруй жилийн турш хамтдаа сайжруулсаар ирсэн бөгөөд та удахгүй тэр том нийгэмлэгийн нэг гишүүн болно.
Python бол хүн компьютерт зааварчилгаа бичиж өгөхөд ашигладаг программчлалын хэл бөгөөд олон зуун хэлний дотроос анхны хэл болгож хамгийн өргөн зөвлөгддөг нь юм.
YouTube, Instagram, Netflix, Google, NASA зэрэг дэлхийн том байгууллагууд Python-ыг өдөр тутамдаа хэрэглэдэг.
Анхны хэл болгож зөвлөдөг гол шалтгаанууд: код нь хүнд уншигдахуйц, дэлхийд хамгийн түгээмэл тул асуултын хариулт олдоц сайтай, мөн олон салбарт нэвтэрсэн учраас таны ирээдүйн сонголтыг хязгаарладаггүй.
Python-ыг Guido van Rossum бүтээж 1991 онд гаргасан бөгөөд нэр нь могойноос биш, "Monty Python" хошин шоунаас гаралтай.
Python үнэ төлбөргүй, нээлттэй эхийн хэл тул сурахад тань ямар ч төлбөр шаардагдахгүй.
Дараагийн хичээлд бид нэг шат гүнзгийрч, "программ гэж чухам юу юм бэ, компьютер зааварчилгааг хэрхэн биелүүлдэг юм бэ" гэдгийг тэг суурьнаас тайлбарлана. Энэ ойлголт суучихвал таны бичих анхны код санамсаргүй ид шид биш, логиктой, ойлгомжтой үйлдэл болж харагдах болно.
Бүртгэлтэй болсноор энэ сургалтын бүх хичээлд хандах эрх авна.