Нет, Python не будет языком программирования будущего. Но почему? По популярности он превзошел C, C ++, C # и Java, у него есть ряд недостатков, которые могут стать фатальными для его шансов стать языком программирования будущего.

Скорость

Python медленный. Действительно медленно. Если вы запустите Python, это займет от 2 до 10 раз больше времени, чем ЛЮБОЙ другой язык программирования. На то есть много причин.

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

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

Пробелы (отступы)

В Python вы используете пробелы и отступы для обозначения разных уровней кода. Это делает его визуально привлекательным и интуитивно понятным.

Другие языки, например C ++, больше полагаются на фигурные скобки и точки с запятой. Хотя это может быть визуально не привлекательным и не подходящим для новичков, это делает код намного более удобным в сопровождении. Для более крупных проектов это намного полезнее.

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

Мобильная разработка

Сейчас, когда мы наблюдаем переход от настольных компьютеров к смартфонам, становится ясно, что нам нужны надежные языки для создания мобильного программного обеспечения.

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

Но Python создавался не для мобильных устройств. Поэтому, даже если он может дать удовлетворительные результаты для основных задач, лучше всего использовать язык, созданный для разработки мобильных приложений. Некоторые широко используемые среды программирования для мобильных устройств включают React Native, Flutter, Ionic и Cordova.

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

Ошибки времени выполнения

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

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

Если вам понравился этот пост, пожалуйста, дайте этому блогу как минимум 10 аплодисментов и подпишитесь на меня на Medium.