06.08.2022

Сергей Немчинский: Что пишут на Python? ПЛЮСЫ и МИНУСЫ Python

Сергей Немчинский
7 минут просмотра
Сергей Немчинский: Что пишут на Python? ПЛЮСЫ и МИНУСЫ Python

Python – один из многофункциональных языков программирования и на Python пишут много всего и разного.

Автоматизация

Python является самым распространенным и самым простым в использовании скриптовым языком. Т.е. если есть задача, которая ранее делалась вручную, но ее можно автоматизировать при помощи скрипта, в подавляющем большинстве случаев скрипт реализовывают на Python. Такие задачи ставятся в рамках различных профессий: QA Automation, DevOps, Data Scientist и другие. Почти любая профессия, которая поддерживает автоматизацию, будет требовать Python.

Если вам говорят, что вам нужно что-то автоматизировать, первая мысль должна быть сразу о Python. У этого языка огромное количество библиотек практически на все случаи жизни – очень много людей уже что-то автоматизировало и делало свои библиотеки для этого. Вам даже не нужно что-то изобретать, вы просто гуглите «Python для оптимизации <ваш вид деятельности>» и, скорее всего, найдете по меньшей мере десяток библиотек.

Web-разработка

Если говорить о программистских профессиях, то на Python это Web-разработка. У языка есть два широко распространенных фреймворка: Flask и Django.

Flask считается микро-фреймворком. Он довольно широко используется для небольших сайтов, когда нужно сделать что-то простенькое и быстренькое. Flask позднее можно заменить (но с некоторыми трудностями) на Django, который является более мощным фреймворком.

Python в рамках веб-разработки является прямым конкурентом PHP и Ruby. Т.е. разработка e-commerce решений – разработка любых не типичных сайтов для интернета. Что такое «типичный сайт»? Это лендинг и сайт-визитка. Чаще всего, в 80% случаев, их разрабатывают на WordPress. А вот к «нетипичным» я отношу кабинеты пользователей, где человек записывается на какие-то занятия, или процедуры (например, салон-красоты), или ставит оценки и проходит тесты, учится и прочее (тут огромное количество вариаций). Такие сайты WordPress явно не тянет. По сложности это будет сопоставимо с разработкой сайта с нуля. Т.е. в какой-то момент, когда сложность вырастет, разрабатывать с нуля будет проще, чем мучить WordPress, натягивая на него весь функционал. Вот тут в действие вступает Python. Фрейморк (Flask или Django) выбирается в зависимости от объема работ, которые нужны.

Proof of concept

Python прекрасно подходит для того, чтобы сделать proof of concept для каких-либо стартапов. Как вы знаете, развитие стартапа имеет несколько стадий. На первой стадии, когда нужно получить первые инвестиции, или, как минимум, произвести впечатление на потенциальных инвесторов, нужно что-то быстренько наваять. Умные предприниматели стараются осуществить это вообще без программирования. Сделали шаблон на Figma или в похожей программе, подключили Exel, какой-то другой функционал – т.е. что-то простенькое и без программирования. Если стартап требует именно разработки, то нужно сделать proof of concept. Вот эту proof of concept можно делать на Python, PHP и Ruby. По готовности proof of concept, когда стартап пошел дальше в разработку, редко когда кто-то меняет технологию. Максимум, могут поменять фреймворк.

Плюсы и минусы работы на Python

Вам очень часто придется начинать проект с нуля. А значит, что все чисто и еще нет говнокода. У написания проекта с нуля есть и свои минусы. Во-первых, проекты обычно не большие, во-вторых, вы редко попадаете на этап поддержки. В обоих случаях сложно оценить ценность clean code. Поэтому обычно чистота кода оставляет желать лучшего.

На Python редко пишут очень большие приложения. Да, есть проекты, в которых энтерпрайз пишут на Python. Верю, что так можно, но это крайне неудачное решение. Для таких целей используется Java или C#, потому что это языки строгой типизации, а не динамической, и там сложнее наговнокодить. 

Из-за того, что приложения обычно не большие, стать мощным архитектором на Python очень сложно. Но пути развития все равно есть: вы можете пойти в руководство, можете основать собственную компанию.

Невысокий порог входа в язык. Python даже изучают в школе.

Синтаксис Python – вопрос вкуса. Мне не нравится, но знаю большое количество людей, кому вполне нормально.

Ходит много рассказов, что Python тормозит, но тут нужно понимать, что сама процедура построчной интерпретации не может быть очень быстрой. Но в последний версиях Python над этим хорошо поработали и на сегодняшний момент у языка достаточно неплохая производительность.

Python – классный язык, на котором хочется кодить даже на выходных. Сейчас он находится на пике популярности. Он универсален и одна из сфер, где он широко используется – это web. 

Курс Python FoxmindEd

Курс Python FoxmindEd состоит из 16 практических заданий. В процессе обучения вы научитесь писать приложения с использованием Flask и Django, получите навыки проектирования структуры для баз данных, создадите собственную структуру с несколькими сервисами и воспользуетесь фронтенд-инструментами. Также научитесь писать Unit-тесты, напишите собственные Python-пакеты. А созданные вами web-приложения сможете добавить в собственное портфолио. 

Для старта необходим минимальный опыт программирования на любом языке, понимание ООП и базовые знания SQL. Вы можете начать уже сейчас и уже через несколько месяцев в вашем портфолио будут качественные web-приложения. 

Всегда ваш Сергей Немчинский.