Как стать автором
Обновить

Комментарии 4

В общем, python для: 1. Скриптов 2. Референсных алгоритмов (эталонов) 3. Обучения программированию с эффектом "Вау" 4. Быстрых прототипов с графиками (и то не всегда) 5. Асинхронного сетевого кода. А для реальных приложений он по большому счету непригоден. Начинаешь программировать обработку чисел и далеко не сразу получается корректно реализовать аналоги fix-point арифметики uint16, uint32, uint8 как это есть по умолчанию в С++. А если и реализовать, например, используя NumPy, то получается громоздко и гадко... А с копиями списков/массивов так это вообще улёт... Более менее реальные вещи лучше сразу писать на С++ или подобных языках: быстро, дешево и сердито :).

Я тут для хобби расчетов использовал питон, но из-за тормозов пришлось пересесть, выбирал на что?

Выбрал Julia. Пока все здорово. Компилируемо но в чем то похоже по вольности на Питон, быстро, и очень легко реализуется мультрединг

Ну это для хобби, а на работе как правило выбора нет

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

Дело в том, что далеко не каждая компания может достичь потолка производительности Python.

Зато порог вхождения в Python минимален, а основной упор языка делается на читабельность. Ну а так как 80% времени мы код читаем и лишь 20% времени пишем, то Python позволяет быстрее фичи пилить, поддерживая архитектуру приложения в должном виде, ну т. е. меньше техдолга получается относительно других языков (я пишу также на TypeScript и С (микроконтроллеры), чуточку Golang, раньше писал на C++, C#, HaXe и Perl)

Например, Python очень хорош для написания бэкенда web-приложений. FastAPI и Robyn дают возможность вывозить более-менее значимые нагрузки, понятно, что полноценный highload лучше на нишевом языке (Go или Rust).

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

Даже в умном доме можно использовать Python при проектировании. Использовать какой-ньть Onion сначала, а по завершению апробации, заменить уже на ESP'шки какие-ньть с кодом на C.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий