Дончо Минков за необятните възможности на Python
Дончо Минков е едно от ценните попълнения в лекторския състав на цялостната ни програма по софтуерно инженерство, където води модулът Python Advanced. Той е Technical Lead & System Architect в Dev екипа на СофтУни и се занимава с програмиране вече цели 15 години, през 10 от които е и технологичен трейнър. Преподавал е много технологии, като .NET, ASP.NET Core, Python & Django, Node.js & Express, Android, iOS, React, Angular, алгоритми и други. В момента играе ключова роля в изграждането на системата на СофтУни за провеждане на международни обучения, като тя е изградена с ASP.NET Core, React и работи под Linux, използвайки Docker контейнери.
Днес Дончо ще ни разкаже по-подробно за езика Python - от възможностите, които предосттавя, до перспективите му, предимствата му пред другите езици, до това какво можем да очакваме от предстоящия Python модул в цялостната програма:
Разкажи ни малко повече за Python и неговите възможности
Python е стар език, който все още се приема като модерен. Той е лесен за учене, разбиране и писане и се използва за много различни видове софтуерни приложения - уеб, AI & machine learning, статистики, image recognition, linux kernel, scriping и други.
Защо езикът набира все по-голяма популярност и става по-предпочитан от програмистите?
Основно защото Python е лесен и мощен език. В същото време, езикът не е най-важното, за да е предпочитан от програмистите. По-важни са средите и инструментите, на които работиш с даден език.
В случая с Python:
- Уеб разработка - Django и Flask. И двете са много добре написани, като дават възможност на програмистите да се концентрират върху същинските проблеми, а не да пишат шаблонен код (boilerplate code).
- Machine learning, AI, статистика - NumPy, Pandas и други. Библиотеки с много готови функционалности за улеснение на програмиста
- Linux kernel - Python работи много добре в комбинация със C/C++, което му позволява лесна интеграция.
- Scripting - писане на автоматизирани команди и тестове е много лесно и удобно с Python.
Какви са перспективите на Python в бъдеще?
Python става все по-полулярен и използван, за все по-интересни технологични открития/възможности/разработки. Последните години може да се види ръст в търсенето на Python специалисти, което определено подсказва значително за перспективното му бъдеще.
Какви са предимствата на езика, спрямо другите програмни езици?
Освен, че Python е перфектния език за започване, той е много добър език за писане на "сложен" софтуер. Също така, средите, които поддържат Python (Djangom, NumPy), са едно от основните му предимства. Създаването на уеб приложение с Django е изключително лесно и приятно.
Какво трябва да знае един Advanced Python programmer?
Това е нещо, което е еднакво за всички езици за програмиране. В началото на всеки му е трудно да напише елементарен код - цикъл и масиви/списъци са the hardest thing ever! В последствие, писането на код става тривиално. По-трудно е да се анализира проблемът, да се измисли решение и чак след това да се напише кодът, който решава този проблем.
Един програмист трябва да може да решава проблеми. Колкото по-опитен е, толкова по-бързо и по-трудни проблеми ще решава.
Трудност на усвояване на езика - за начинаещи или напреднали е по-подходящ?
Подходящ е за всички. Накратко - хубав и лесен език за писане и разбиране на код. Има една шега и тя е - "Как да направиш псевдо код на изпълним код?" - "Сложи разширение '.py' на файла" :)
И не на последно място - Python е изключително експресивен език - когато пишеш Python е почти като да пишеш на английски език.
Курсът Python OOP - какво ще научим в него?
Ще разгледаме ядрото на обектно-ориентираното програмиране, като ще ползваме езикът Python. Ще учим как се правят класове и обекти, какво е наследяване, защо това е добра идея и кога е добра идея. Накратко - ще положим първи стъпки в писането на качествен, модулярен код.
Курсът Python Advanced - какво ще научим в него?
Както казва името - ще разгледаме тънкостите на езикът Python. Ще учим за списъци (lists), множества (sets), речници (dictionaries), comprehensions и още много неща, които правят Python един прекрасен език за създаване на софтуерни приложения.
__
Ако искате да учите от практици и лектори като Дончо Минков и да дадете старт на своята мечтаната кариера в IT индустрията, станете част от предстоящите модули по софтуерно инженерство. Обучението е с изключителна практическа насоченост и имате възможността да получите кариерно съдействие за над 70 от най-добрите технологични компании в България!
Ето и предстоящите модули:
JS Advanced
Fundamentals Module
Front-End
JS Web
C# Advanced
Java Advanced
Python Advanced
C# DB
Java Web