Статическая и динамическая типизация

Dmitriy V. Simonov пишет

Php существенно сгладил проблемы с типами, когда ввел strict_types – проверка типов аргументов методов (в рантайме). Если в классах нет методов на 1000 строк, то вы избавлены от большинства тупых ошибок слабой типизации. Php гораздо, гораздо лучше, чем javascript! В js в 10 раз больше [хитровывернутой] магии.

Однако статическая типизация, конечно, все равно рулит. Пописав на java с большой неохотой возвращаешься к php.

Новый веб проект начинать на php не вижу большого смысла. Лучше взять kotlin + spring. Или typescript под ноду.

Аргумент про то, что на php можно быстро написать продукт, невалиден. Быстро написать можно только говнокод в стиле вордпресса. Но это похоронит будущее проекта. Если же использовать хорошие современные фреймворки, то они не дают профита по скорости написания перед такими же из мира java. Написать код на spring можно также быстро, если не быстрее, чем на symfony/laravel.
Короче. Php сейчас более менее нормальный язык, и сложные проекты на нем писать можно. Я руковожу разработкой большого проекта на php, например.

Но новый проект я точно не начну писать на php, это не даст никакого профита по сравнению со статически типизированной джавой, к примеру.

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

Мой ответ

Быстро написать можно только говнокод в стиле вордпресса. … Но это похоронит будущее проекта

WP используется на 30% сайтов – 10 млн сайтов
из рейтинга Amazon Alexa
отметку в 25% платформа достигла в ноябре 2015 года
Рост распространенности – это похороны?

Или вот еще с моего доклада о смерти старых технологий. Говорят jQuery умер
300K загрузок каждый день.
300% рост, в сравнении с началом 2017
npm-stat.com: jquery
И не только загрузок.
90% топовых 500K все еще используют jQuery.

Это называется умер?

сложные проекты на нем писать можно

вот в этом, в количественном определении, в отличии сложного проекта от простого проекта и порылась собака.

они не дают профита по скорости написания перед такими же из мира java.

неправда. еще как дают. не только php. На Rails и Django разработка тоже гораздо быстрее чем на Java. но – “простых” проектов.

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

именно что – “когда”. а когда нет этого “когда” – то не дают.

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

Написать код на spring можно также быстро

Я писал на Джава, и десктопные приложения на Swing, и спринговые. также быстро ни на джаве ни на C# нельзя писать как на php, ruby, python.

даже не выходя из мира php это можно увидеть.
разработка на таких “джавовских” фреймворках как Zend и Symfony дольше чем на более phpшных типа Laravel и Yii2.
Но, Zend и Symfony дают прирост в разработке через пару лет(!!!) существенного развития проекта и разрастания команды за десятки человек. То есть когда проект становится – сложным: по функционалу и управлению разработкой.
А большинство проектов – никогда такими не станут, потому что бизнес, который их заказал никогда не превратится в “корпорацию”. А даже если превраится, то на старте – более медленная разработка на энтерпрайзном, правильном, “статически типизрованном” фреймворке для него будет убийственна, чем тяп-ляп на “WP”

именно бизнес(его размер) определяет – на чем более быстро разрабатывать, а не программисты.

Добавить комментарий

HTML отключен, используйте Markdown. Размещение кода: [pastebin id=fs23] или [gistgit id=2926827] или [gistgit id=2926827 file=foo.txt]