Рекламное объявление
Python является одним из самых популярных языков программирования последних лет. Его четкий синтаксис и удобочитаемость делают его идеальным языком кодирования для начинающих. Простительно думать, что изучение Python было необходимо, учитывая его широкое использование.
Возникает вопрос: когда Python НЕ правильный ответ? Когда язык программирования Python является неправильным языком для изучения и / или использования?
Для чего хорош Python
Короче говоря, Python становится языком машинного обучения. Большинство курсов машинного языка написаны с использованием языка Python, и обучение программированию в целом принял Python в качестве языка для изучения, с широким использованием в классах, на Raspberry Pi, и в другом месте.
Эти причины, наряду с большим количеством крупных компаний, использующих Python, заставляют многих думать, что это основной язык программирования будущего. Но если Python - это такой швейцарский армейский нож, когда бы вы его не использовали?
1. Вы хотите стать веб-разработчиком
Python более чем способен к крупномасштабной веб-разработке. Instagram является крупнейшим сайтом, на котором работает Django, веб-фреймворк Python. Это не значит подвиг, как Инстаграм Инженер Зекун Ли объясняет:
«Мы начали использовать Python на ранних этапах из-за его простоты, но нам пришлось сделать много хаков за эти годы, чтобы сохранить его простым, поскольку мы масштабируемся».
Тем не менее, Django - это прочная, элегантная структура. Проблема заключается не в ее недостатках как таковых. Простой вопрос: зачем изучать Django, когда JavaScript все еще доминирует?
Фреймворки JavaScript, такие как React 7 лучших бесплатных учебных пособий для изучения React и создания веб-приложенийБесплатные курсы редко бывают настолько всеобъемлющими и полезными, но мы нашли несколько отличных курсов React, которые помогут вам начать с правильной ноги. Подробнее и Vue.js пользуются повышенным спросом. Оба могут использовать Django или другие фоны, такие как Ruby on Rails. Однако, поскольку оба языка основаны на JavaScript, зачем вам использовать что-то кроме Node.js? Это делает приложение JavaScript с полным стеком. Один язык для изучения и освоения.
Это не значит, что JavaScript - идеальный язык; многие бы утверждать обратное Худшие и самые сложные языки программирования, которых следует избегать, как чумыКодирование это сложно. Прежде чем начать, узнайте, какой из худших и сложных языков программирования следует избегать. Вы можете поблагодарить меня позже. Подробнее . Если вы начинаете в веб-разработке, однако, есть все еще нет лучшего выбора Какой язык программирования выучить - веб-программированиеСегодня мы собираемся взглянуть на различные языки веб-программирования, которые питают Интернет. Это четвертая часть серии программ для начинающих. В части 1 мы изучили основы ... Подробнее чем JavaScript.
2. Вы хотите стать разработчиком игр
Пользователи Pygame могут найти этот раздел немного запутанным. Разве не существует уважаемой библиотеки специально для создания компьютерных игр на Python? Да, есть и Pygame - фантастический ресурс для изучения Python и игровой механики.
Некоторые хорошие игры были написаны на Python, и есть даже шутер от первого лица, сделанный полностью в Pygame:
Не отнимая от невероятного достижения, которое DUGA Вы можете увидеть проблему здесь. Большинство (но не все) люди, желающие заняться разработкой игр, ищут что-то большее. Надежная платформа с инструментами разработки и редактором. Потенциал для масштабирования от маленькой идеи до чего-то большего и более массового.
Python не может этого предложить, а игровые движки, такие как Unity и Unreal.
Изучите C # для Unity
Единство основывается исключительно на C #, с большим количеством библиотек, помогающих в разработке игр. Редактор Unity - очень мощный инструмент, позволяющий быстро создавать прототипы и быстро начинающие делают свою первую игру.
Для сравнения масштаба и визуальной красоты Escape From Tarkov - это создание Unity Engine:
Подобно низкоуровневым учебникам по Python, охватывающим основы программирования, Официальные учебные пособия Unity не предполагаю никаких предварительных знаний в области программирования.
Изучите C ++ для Unreal Engine
C ++ несколько печально известен тем, что его трудно освоить. Существуют онлайн ресурсы для начинающихи Нереальный Двигатель На сайте также есть отличные инструменты для начинающих.
Если вам нужны какие-либо доказательства того, что игры Unreal Engine могут быть успешными, смотрите не дальше, чем Fortnite. Это невероятно популярная игра, в которую можно даже играть на своем мобильном, был создан и оптимизирован с использованием Unreal.
Игры, которые выглядят так, и работают с разрешением 1080p с хорошей частотой кадров, в настоящее время невозможны с использованием Python. Это не провал со стороны Python, более простой случай разработки игры, не являющийся ее сильной стороной.
3. Вы хотите работать с системами низкого уровня
Хотя любительское сообщество робототехники любит Python, это не лучший язык для работы. Во многих низкоуровневых и встраиваемых системах Python не вариант.
Встроенные системы
Хотя определение встроенной системы в последние годы стало размытым, есть хорошая аналогия. Небольшие платы для разработки, такие как Arduino, можно считать встроенными. Большие, более сложные устройства, такие как Raspberry Pis или аналогичные одноплатные компьютеры, обычно не рассматриваются как встроенные.
Проблема заключается в том, где память и время необходимы. 8-битный чип в составе встроенного оборудования должен очень тщательно управлять памятью. Это не то, для чего подходит Python, и есть причина, по которой язык Arduino является упрощенной версией C / C ++. Понимание версии C ++ для Arduino менее сложный, чем вы думаете Программирование Arduino для начинающих: учебник по проекту светофораСоздание контроллера светофора Arduino поможет вам развить базовые навыки кодирования! Мы начали. Подробнее .
Язык программирования C настолько мощен, насколько это опасно. Несмотря на высокий уровень, C и его супер-набор C ++ могут получать доступ к процессам низкого уровня. По сути, C был первым переводом машинного кода в то, что люди могли легко понять.
Точность и Скорость
Помимо способности управлять системами на низком уровне, C обладает повышением скорости. Поскольку C - очень сырой язык, нет никаких издержек или сборки мусора, чтобы замедлить его. Именно здесь C получает репутацию опасного, поскольку утечки памяти могут вызвать ужасные проблемы. Это означает, однако, что C светит там, где время и скорость имеют решающее значение.
Любой, кто хочет заняться аппаратным программированием или любой другой формой программирования ядра, должен рассмотреть возможность изучения C. То же самое верно для всех, кто хочет создавать драйверы устройств.
Бонусный факт: Вы использовали VST для создания цифровой музыки и задавались вопросом, как их сделать? Вы можете написать свой собственный, используя C ++.
4. Вам нужен Python?
Хотя это может показаться очевидным - если вы уже знаете другой способный язык кодирования, зачем менять?
Если вы посещали уроки кодирования в школе или начали онлайн курс по программированию 11 лучших сайтов для бесплатных онлайн курсов по компьютерному программированиюИспользуя эти бесплатные онлайн курсы компьютерного программирования, вы можете стать отличным программистом без степени информатики. Подробнее на определенном языке придерживаться его имеет свои преимущества. Изучение вашего первого языка дает вам основы программирования, а переключение на изучение совершенно нового синтаксиса замедляет этот процесс.
Большинство программистов Python высшего уровня не начали работать с языком. Из-за его высокой читабельности и интуитивно понятного синтаксиса многим легче изучать Python из других языков.
Может, тебе стоит изучить Python?
Существует так много языков, что выбор может быть стрессовым. Правда в том, что не может быть идеального языка для всего.
Для получения дополнительной информации см. Наш наиболее часто задаваемые вопросы о Python Наиболее часто задаваемые вопросы о программировании на PythonВ этой статье мы расскажем вам все, что вам нужно знать о Python как новичке. Подробнее . Вы должны знать о другие функциональные языки программирования 5 функциональных языков программирования, которые вы должны знатьХотите узнать больше о программировании? Стоит узнать о функциональном программировании и о том, какие языки программирования его поддерживают. Подробнее тоже.
Ян Бакли - независимый журналист, музыкант, исполнитель и продюсер, живущий в Берлине, Германия. Когда он не пишет или не играет на сцене, он возится с электроникой или кодом «сделай сам» в надежде стать сумасшедшим ученым.