Задать вопрос

Для каких задач в веб-разработке очень хорошо подходит питон?

Я использую и знаю только один JS/Node. Айтишного образования не имею, а значит и опыта/хоть какого-то знания других языков не имею также.

Но стало интересно расширить кругозор опытом с другими ЯП, плюс столкнулся с некоторыми ограничениями Node, например долгие операции блокируют сервер, пришлось заморачиватся с дочерними процессами, очередями и все стало в 10 раз сложнее. Появилось понимание что Node в этом реально плох и простые задачи имеют довольно сложную реализацию.

Стал выбор - какой язык изучать с ориентиром на веб?

Создавать очередную тему - "Посоветуйте что учить - Питон, Руби или Го" глупо (но буду рад советам, ха-ха). Эмоционально тяготею к Питону, т.к. его знания пригодятся для множества сфер, и вообще его изучение как бы "маст-хев". При этом понимаю то для веба наверное все-таки лучше Руби. А вот с Го мне кажется с моим бекграундом (отсутсвием вообще любого опыта в ЯП кроме JS) будет тяжело.

Итак, по Питону - все же, какие задачи в вебе он выполняет на отлично (например, его применение эффективнее и целесообразнее, чем Node)?
Для каких задач он не подходит?
Какие есть библиотеки на Питоне, которым трудно найти конкурентов в Node, и других ЯП (те же очереди может?)
  • Вопрос задан
  • 5190 просмотров
Подписаться 19 Простой 2 комментария
Решения вопроса 3
Для чего юзается питон:

1) Веб-разработка в больших компаниях (экономия на читабельности кода, наличие асинхронных фреймворков, наличие молодняка из вузов - для столиц).

2) Разработка стартапов, которым нужно хорошо в матетику или некий прототип машинного обучения. Например, хорошо на нем пишутся сервисы для сбора аналатики и прогнозов.

3) За счет наличия асинхронных веб-фреймворков можно писать разные чаты и прочее. Но тут не причина, а приятное дополнение.

4) Написание парсеров веб-контента. Есть все инструменты в коробке.

Собственно все

p.s. ну и https://habr.com/ru/post/322332/
Ответ написан
Комментировать
@artinnok
бекенд-программист
Основной список применений Python:
  • Machine Learning
  • Date Science
  • Web App - REST, GraphQL
  • Scraping
  • Различные скрипты, автоматизирующие рутину


Если Вас интересует web - то это Django, Django Rest Framework, Flask и темпы набирает aiohttp.
  • Django - есть все, что пожелает душа, удобно, быстро в разработке, обладает крутым ORM из коробки и встроенной админкой. Проект активно развивается, количество контрибьюторов и экосистемы с возрастом увеличивается
  • Flask - микрофреймворк, который можно расширить так, как захочется. Проект умирает, давно не было релизов, но достаточно много проектов на нем написано, поэтому экосистема достаточно развита. Но каждую фичу надо будет писать самому или искать либу под это дело.
  • aiohttp - асинхронный клиент / сервер, из популярных библиотек самая быстрая. Проект молодой, но активно развивается, экосистема растет


Если использовали Node, то точно знакомы с асинхронным программированием и активно использовали. Но в Python асинхронщину завезли недавно (3 года назад) и только сейчас она приобретает достаточно удобный интерфейс для использования, поэтому большая часть реальных приложений написана в синхронном стиле.

С помощью Django и DRF можно очень быстро создать REST API, которое будет удобно поддерживать или расширять. Бонусом к этому будет удобная администраторская панель.

Python плохо подходит для написания следующих приложений:
  1. GUI приложения
  2. iOS / Android
  3. Разработка игр
  4. Низкоуровневые приложения, которые работают с сетью
Ответ написан
Я думаю, что с вашим бекраундом и задачами нужно в Рельсы. Они позволяют вывести Hello World буквально за несколько комманд. Rails из коробки поддерживают вебпак и JS фреймворки.
Сейчас очень просто сделать SPA c бекендом на Рельсах. И это получается реально быстро.
В рельсах все очень четко разложено, что-где лежит, поэтому легко разобраться будет. И поначалу даже учить руби нет смысла, все будет делать Scaffold.
Попробуй:
rails new appname
cd appname
rails db:create
bundle
rails webpacker:install:vue
rails g scaffold post title:string body:text
rails db:migrate
rails server

localhost:3000
или
heroku create
git push heroku master

https://guides.rubyonrails.org/getting_started.html
Ответ написан
Пригласить эксперта
Ответы на вопрос 6
@procode
Разработчик
Для каких задач в веб-разработке очень хорошо подходит питон?


Стал выбор - какой язык изучать с ориентиром на веб?


По моему скромному мнению, Питон вообще не подходит для веб-разработки. По крайней мере, не в большей степени, чем Java или C++ - попробуйте вывести "Hello world!" в браузер в ответ на банальный get-запрос к Apache2 или nginx - поймете почему ))

Для серверной части веба лучший выбор - однозначно PHP. Он в этом вне конкуренции.

Ну а так, почему бы и не познакомиться с Питоном? Язык достаточно красивый, лаконичный, функциональный. Для Ubuntu является "родным" :)
Ответ написан
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
ИМХО, судя по комментариям и вашим ответам, вы как-то странно выбираете - пассионарно, но зашорено (вот например, ваша нелюбовь к PHP, при том что вы его даже не знаете).

Если хотите быть успешным коммерчески и рубить бабло налево-направо именно в веб - JS, PHP, Ruby, Go как замена Node.js.

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

А если хотите качественно развиваться как разработчик - перестаньте ограничивать себя устаревшими мемчиками типа "пых-говно", изучайте разные языки. Начните с академической Java, поковыряйте С/С++/С#, попробуйте Go, полистайте доку по Swift или Rust, посмотрите особенности Haskell. Гляньте ассемблер, чтобы почувствовать истоки. Perl и Shell/Bash не забудьте. Ну и, конечно же - PHP, Ruby, Python.
Ответ написан
Комментировать
xenon
@xenon
Too drunk to fsck
Скажу как я (давным-давно) выбирал между Руби и Питоном. Это сейчас они более-менее по нишам разделились, а тогда оба были примерно одинаковыми новыми-модными языками. Поглядел список проектов на том и на другом. Везде немало. Но было принципиальное различие. На Руби почти все проекты были "полезные". Дали рубисту задачу, он ее исполнил и код в GPL выложил. А вот на Питоне было дофига "бесполезных" проектов, которые люди делали явно не ради денег. Вывод - на питоне писать приятно. Это важно.

Ну и вряд ли вы когда-либо серьезно пожалеете, вроде "ах, проект - написать магазин авиабилетов, на руби-то я бы это сделал, а на питоне такое не сделать!". Руби для веба удобнее только рубистам. Питонистам удобнее питон.
Ответ написан
Комментировать
KevlarBeaver
@KevlarBeaver
Разработчик
Для задачи заработка денег.
Ответ написан
@KIN1991
Python, PHP developer
Python используется много где, рекомендую посмотреть лекцию Бобука почему они в Яндексе выбрали python.
Ответ написан
Комментировать
@yayashitoya
Нет такого - прямо таки очень хорошо подходит тот или иной язык программирования.
Используемые в вебе в большинстве своем - это языки общего назначения. Выделяется тут разве что PHP.
Все прочие - примерно равны.

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

Войдите, чтобы написать ответ

Похожие вопросы