Это копия, сохраненная 20 июля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
>Python - django и немножко Flask
Pyramid, web2py, Pylons, Bottle.
>У руби - рельсы
Sinatra, Lotus, Padrino, Grape.
>js вообще тысячи фреймворков
Angular, React, Backbone, Ember на фронте, да и то реакт не фреймворк. На тысячи не тянет.
Ты даже не попытался загуглить перед тем, как рожать свою простыню.
Питонисты - люди дисциплинированные, ходят строем, чтут прилежание и аккуратность - человек другого склада на этом васике, разумеется, писать просто не сможет. Выдали им Джангу - пишут на джанге.
>во времена перла
Во-первых, во времена перла страсти к фреймворкам не было - их и в PHP еще не было тогда.
Во-вторых, на перле каждый запиливал за полдня свой мини-фреймворк на коленке, используя разные подходы, как кому нравилось - Единственно Верное MVC-Учение тогда еще не победило и не отключило всем мозги. Да и мозги у средней перловой веб-макаки тогда еще были, полных ебанатов тогда к программированию на перле не подпускали, для них был PHP.
В-третьих, фреймворки тоже со временем появились и было их немало. Сейчас всех вытеснили Catalyst, Mojo и Dancer.
Сравнение client-side JS-фреймворков с server-side фреймворками для других языков выдает в тебе глубокий аналитический ум.
Какой тред - такой и анализ.
Да не гони, это все хуйня и, например, для встройства джуну не требуется. А вот ангуляр с бэкбоном увидеть можно в каждой второй вакансии.
Потому что хайп. И доля рынка значительно отличается.
Не понимаю. Хайп чего? Жс - понятно. Доля рынка у всех разная. Назвать пхп с его огромной долей хайпом язык не поворачивается. У жс альтернатив пока нет, ну а в остальных областях его хайпят, да. Но я про фреймворки в его классической области применения.
Ну макакам же надо чем-то заниматься когда работы нет. Вот одни макаки выпускают фреймворки, а другие их учат. Все в выигрыше.
> почему так много PHP-фреймворков?
Потому что PHP развивается, обзаводится с каждой новой версии все большим количество фич и благодаря этому увеличиваются количество возможных подходов к разработке. Плюс меняется мода: раньше были популярно MVC-фреймворки, теперь все угорели по миддлварям (Sillex, Zend Expressive и.т.д..)
В PHP вообще сейчас столько всего добавлено, что существуют абсолютно разные стили кода. Если ты любишь Java-блядство с ExceptionHandleAdapterPrototypeInterface, то ты выбираешь Zend или Symfony. Если у тебя питон головного мозга и ты любитель динамической типизации, то юзаешь Yii. Ты прибежал с ноды и у тебя смузи с бороды капает? Го силлекс/зенд экспрессив. Твоя руби? Laravel.
Просто пхп-обезъянкам очень хочется быть как в нормальных языках, вот и выдумывают замены. Это как вегетарианцы, делающие ОТБИВНЫЕ ИЗ МОРКОВИ.
Жирно как твоя мать шлюха
>функционалу
Как же бесят безграмотные уёбки, которые употребляют слова не зная их значения.
Все кругом говорят неправильно. Правильно - только как неведомые пердуны 50 лет назад в словарях написал. Ряяяя
Что не так?
У пхп всегда было плохо с гибкостью. Пхп это шаблонизатор, который случайно стал языком. Два еврея учились программировать, а теперь вот уже десяток лет успешно барыжат сертификатами. В целом это такая ловушка для бизнеса - показать что-то работающее можно очень быстро даже при нулевых знаниях, но грести говны потом можно очень долго. Разработка на пхп традиционно отличается крайне низкой квалификацией программистов и наличием сотни неразрешимых проблем, которые во всём остальном мире давно решены.
В питоне и рубях всё намного лучше, часто можно встретить гибридные проекты, которые вроде как на джанге, но на деле от джанги там уже процентов 20. То есть смысла писать ещё одну джангу очень мало, учитывая что модули вроде WSGI и вся подкапотная работа уже давно чуть ли не в стдлибе. У питонов болезнь другая - проекты часто вырастают до невозможных размеров вместе с тестами и прочей поебенью, до состояний когда их уже никто не хочет трогать. Сам несколько раз сталкивался, но пожалуй рефакторинг здесь на порядок дешевле чем в том же пхп, где решение каждой обыденной проблемы в сложном фреймворке превращается в подвиг.
Жс это для одержимых идеей знать один язык для всего. Что-то вроде сишников от мира веба. Последние годы жс по сути вынули из гроба и страшными темпами заливают в него смуззи. Ничего плохого в принципе в этом нет, но жс сильно болен хотя бы своей системов типов (слабая типизация это ужас и пиздец уровня пхп) и классов (попробуй узнай issubclass ты или нет, охуеешь), у которых вместо апи концентрированная боль из var и легаси. То есть несмотря на здоровенную выгоду изготовления всего на одном языке, количество страданий таково, что бекенды чаще всего пишутся на чём угодно кроме жс.
С перлом и его репозиториями была другая болезнь - бюрократия. Дохуя требований, дохуя формализмов. Сегоднешняя инфраструктура с гитхабами, pypi, npm и прочим позволяет заливать "официально" любое говно от любого мудака, эдакая анархия где каждый сам себе король, свободный рыночек. Иногда даже популярный проект никуда не заливается, а тянется прямо с гитхабов. Ну и перл сам по себе умер, так как на его развитие в своё время положили болт. И когда они там очухались со своей шестёрочкой, мир уже поделили между собой другие языки.
Грубо говоря, если в каком-то языке доминирует пара-тройка де-факто стандартных решений, это значит что решения очень хорошие и сделаны правильно, и значит что сам язык справляется с хотелками людей. Если же фреймворков как грибов после дождя это значит что язык полный отстой и работа сравнима с чисткой туалетов вилками.
У пхп всегда было плохо с гибкостью. Пхп это шаблонизатор, который случайно стал языком. Два еврея учились программировать, а теперь вот уже десяток лет успешно барыжат сертификатами. В целом это такая ловушка для бизнеса - показать что-то работающее можно очень быстро даже при нулевых знаниях, но грести говны потом можно очень долго. Разработка на пхп традиционно отличается крайне низкой квалификацией программистов и наличием сотни неразрешимых проблем, которые во всём остальном мире давно решены.
В питоне и рубях всё намного лучше, часто можно встретить гибридные проекты, которые вроде как на джанге, но на деле от джанги там уже процентов 20. То есть смысла писать ещё одну джангу очень мало, учитывая что модули вроде WSGI и вся подкапотная работа уже давно чуть ли не в стдлибе. У питонов болезнь другая - проекты часто вырастают до невозможных размеров вместе с тестами и прочей поебенью, до состояний когда их уже никто не хочет трогать. Сам несколько раз сталкивался, но пожалуй рефакторинг здесь на порядок дешевле чем в том же пхп, где решение каждой обыденной проблемы в сложном фреймворке превращается в подвиг.
Жс это для одержимых идеей знать один язык для всего. Что-то вроде сишников от мира веба. Последние годы жс по сути вынули из гроба и страшными темпами заливают в него смуззи. Ничего плохого в принципе в этом нет, но жс сильно болен хотя бы своей системов типов (слабая типизация это ужас и пиздец уровня пхп) и классов (попробуй узнай issubclass ты или нет, охуеешь), у которых вместо апи концентрированная боль из var и легаси. То есть несмотря на здоровенную выгоду изготовления всего на одном языке, количество страданий таково, что бекенды чаще всего пишутся на чём угодно кроме жс.
С перлом и его репозиториями была другая болезнь - бюрократия. Дохуя требований, дохуя формализмов. Сегоднешняя инфраструктура с гитхабами, pypi, npm и прочим позволяет заливать "официально" любое говно от любого мудака, эдакая анархия где каждый сам себе король, свободный рыночек. Иногда даже популярный проект никуда не заливается, а тянется прямо с гитхабов. Ну и перл сам по себе умер, так как на его развитие в своё время положили болт. И когда они там очухались со своей шестёрочкой, мир уже поделили между собой другие языки.
Грубо говоря, если в каком-то языке доминирует пара-тройка де-факто стандартных решений, это значит что решения очень хорошие и сделаны правильно, и значит что сам язык справляется с хотелками людей. Если же фреймворков как грибов после дождя это значит что язык полный отстой и работа сравнима с чисткой туалетов вилками.
>У пхп всегда было плохо с гибкостью. Пхп это шаблонизатор, который случайно стал языком. Два еврея учились программировать, а теперь вот уже десяток лет успешно барыжат сертификатами. В целом это такая ловушка для бизнеса - показать что-то работающее можно очень быстро даже при нулевых знаниях, но грести говны потом можно очень долго. Разработка на пхп традиционно отличается крайне низкой квалификацией программистов и наличием сотни неразрешимых проблем, которые во всём остальном мире давно решены.
Слово в слово то же самое можно сказать про Java.
>(слабая типизация это ужас и пиздец уровня пхп)
Ясно.
>С перлом и его репозиториями была другая болезнь - бюрократия.
Точно болезнь?
> Дохуя требований, дохуя формализмов
Справку о том что все прививки сделаны заставляли приносить?
> перл сам по себе умер
Серьезно? http://search.cpan.org/recent
> когда они там очухались со своей шестёрочкой
Она тут при чем? Это другой язык.
По сравнению с нормальными - да что с номральными, даже с примитивным хаскелем - языками, типизация в Java не далеко от PHP ушла.
В какой реальный код не заглянешь - ехали касты через касты.
> перл работает и на нём можно делать всё то же что и на других языках
Вот именно. Но в широких массах - не делают. Мысли о том что дело вовсе не в нем - не возникает из сопоставления этих двух тривиальных фактов?
История и причины того почему он утерял былую популярность совсем не в каких-то виртуальных бюрократиях - напротив, CPAN был и остается (хотя те кто им никогда не пользовался до сих пор не понимают разницы между ним и своими кривыми его недокопиями, не слишком отличающимися от свалки пакетов на ftp) единственным приличным репозиторием библиотек.
Причин было несколько. Одна из них, довольно важная, в том что на волне неебательского успеха решили пилить Perl6, и победить им сразу всю Вселенную, потому что Земля перлу уже была тесна. Причем победить сразу и окончательно, с одного удара. Поэтому радиус замаха был выбран как расстояние до Альфы Центавра, умноженный для пущей верности на пи в степени е.
И главный проеб был даже не в том что результата пришлось ждать столько, что Perl6 оказался уже никому не нужен через пять веков его разработки, и даже не в том что он был никому не нужен и изначально, а в том что самим запуском этого грандиозного (действительно грандиозного, его рантайм должен был стать базой чуть ли не для всех существоваших к тому времени динамических языков, причем гораздо лучшей чем у них всех самих была к тому времени, вместе взятых) проекта не слишком вникающим во внутренние перипетии perl5-porters программистам - это примерно 90% писавших на перле и 100% всех остальных - был дан четкий и недвусмысленный сигнал о том что "с перлом все плохо". Кто-то воспринял это как "не жилец, смысла что-то начинать на нем нет, подождем чтоб сразу на Perl6", кто-то как "я перла не знаю, но наверное это не очень хороший язык раз перепиливают, изучу я лучше PHP (Ruby, Python, Lua, Java)", кто-то еще как-то. Но вывод все сделали один и тот же - надо погодить, и пока взять что-то другое.
Вторая причина называется mod_perl, она же главная причина перлового веб-успеха. Как раз к тому времени когда все решили годить, подобных модулей для апача, решавших главную тогдашнюю проблему ("что ж оно все так тормозит") запилили и для других языков, максимально облегчив решение масс "взять пока что-нибудь другое".
Третья причина - появление моды на фреймворки, вкупе с резким падением уровня типичной веб-макаки. Перловые фреймворки сначала долго вообще не строились - потому что непонятно зачем, всех компонентов море, бери и собирай как тебе нужно. Потом стали понемногу строиться, но с тем же прицелом - как можно более широкой взаимозаменяемости компонентов, прибить один темплейтинг, один ORM и один роутер гвоздями - такое в перловом сообществе никому не приходило в голову, потому что вызвало бы только возмущенные плевки в сторону такого деятеля. There's more than one way to do it is a Perl programming motto, как справедливо написано в Википедии, и это не пустые слова. Однако хлынувшим в веб к тому времени макакам этой комбинаторики было нахрен не надо, а надо хуяк-хуяк и в продакшн, и посмотрев на перловое раздолье, они широким строем отправлялись в сторону рельс, не задерживаясь.
> перл работает и на нём можно делать всё то же что и на других языках
Вот именно. Но в широких массах - не делают. Мысли о том что дело вовсе не в нем - не возникает из сопоставления этих двух тривиальных фактов?
История и причины того почему он утерял былую популярность совсем не в каких-то виртуальных бюрократиях - напротив, CPAN был и остается (хотя те кто им никогда не пользовался до сих пор не понимают разницы между ним и своими кривыми его недокопиями, не слишком отличающимися от свалки пакетов на ftp) единственным приличным репозиторием библиотек.
Причин было несколько. Одна из них, довольно важная, в том что на волне неебательского успеха решили пилить Perl6, и победить им сразу всю Вселенную, потому что Земля перлу уже была тесна. Причем победить сразу и окончательно, с одного удара. Поэтому радиус замаха был выбран как расстояние до Альфы Центавра, умноженный для пущей верности на пи в степени е.
И главный проеб был даже не в том что результата пришлось ждать столько, что Perl6 оказался уже никому не нужен через пять веков его разработки, и даже не в том что он был никому не нужен и изначально, а в том что самим запуском этого грандиозного (действительно грандиозного, его рантайм должен был стать базой чуть ли не для всех существоваших к тому времени динамических языков, причем гораздо лучшей чем у них всех самих была к тому времени, вместе взятых) проекта не слишком вникающим во внутренние перипетии perl5-porters программистам - это примерно 90% писавших на перле и 100% всех остальных - был дан четкий и недвусмысленный сигнал о том что "с перлом все плохо". Кто-то воспринял это как "не жилец, смысла что-то начинать на нем нет, подождем чтоб сразу на Perl6", кто-то как "я перла не знаю, но наверное это не очень хороший язык раз перепиливают, изучу я лучше PHP (Ruby, Python, Lua, Java)", кто-то еще как-то. Но вывод все сделали один и тот же - надо погодить, и пока взять что-то другое.
Вторая причина называется mod_perl, она же главная причина перлового веб-успеха. Как раз к тому времени когда все решили годить, подобных модулей для апача, решавших главную тогдашнюю проблему ("что ж оно все так тормозит") запилили и для других языков, максимально облегчив решение масс "взять пока что-нибудь другое".
Третья причина - появление моды на фреймворки, вкупе с резким падением уровня типичной веб-макаки. Перловые фреймворки сначала долго вообще не строились - потому что непонятно зачем, всех компонентов море, бери и собирай как тебе нужно. Потом стали понемногу строиться, но с тем же прицелом - как можно более широкой взаимозаменяемости компонентов, прибить один темплейтинг, один ORM и один роутер гвоздями - такое в перловом сообществе никому не приходило в голову, потому что вызвало бы только возмущенные плевки в сторону такого деятеля. There's more than one way to do it is a Perl programming motto, как справедливо написано в Википедии, и это не пустые слова. Однако хлынувшим в веб к тому времени макакам этой комбинаторики было нахрен не надо, а надо хуяк-хуяк и в продакшн, и посмотрев на перловое раздолье, они широким строем отправлялись в сторону рельс, не задерживаясь.
Ну собсна что я и говорил, дюже долго рожали. История чем-то похожа на отмирание XHTML в пользу HTML5. XHTML вроде бы развивался в логически правильном направлении, но HTML5 взял и покрыл реальные потребности людей без всякой tl;dr-нудятины. Как видно есть много всяких скрытых моментов, которые сами собой решаются дай только массам волю повелосипедить. Десять тысяч голов en masse могут неимоверно больше, чем десяток избранных, пусть и охуенно умных.
Ок, тем не менее, какого-то увеличения полезной информации твоя простыня не несет, но зато ты отлично увел все в срач с намеком "питон - крута".
Вот это ты умную мысль, кстати выдал. Я сам, когда принялся ощупывать рельсы, заметил, то же самое, что и уи. А уж об идентичности всех этих бесчисленных цмс и фреймворков в похапе и говорить не стоит. И при этом зак хочет, чтобы ты на каждом, на каждом сука фреймворке и цмс написал по фейсбуку и не понимает, что они одинаковы, как братцы из ларца. Знаешь один - знаешь все, детали гуглятся по ходу пьесы. Или тот же веб в жаве, зачем вот зачем делать многопоточность в пхп, если язык заточен только под небольшие веб проекты (а какая в бложике многопоточность), а под многопоточность заточены всякие жавы. И вот эта вот бесмысленность, кривость и переусложнение - они на каждом шагу. Зачем зачем! Только остается восклицать и разводить руками.
> а под многопоточность заточены всякие жавы
нет
когда создавали жаву про многопоточность не очень-то думали
реально под многопоточность заточен эрланг
>Pyramid, web2py, Pylons, Bottle.
В вакансиях чаще все-таки джанго
>Sinatra, Lotus, Padrino, Grape.
Везде где требуется руби для веба - это будут рельсы с вероятностью в 90 блять процентов
Паровоз с фотосинтезом еще сравни.
> Java came out of a research lab at Sun and in its earliest
> incarnation was called Oak. Oak was originally conceived as a
> tiny, fast, garbage-collected, object-oriented language for
> embedded systems. Its conservative approach to abstraction related
> to two design goals for an embedded system programming language: 1)
> It had to be fast on slow and simple CPUs and able to run in tight
> memory; 2) It had to be "crash proof" in the sense that run-time
> failures due to programming errors should always be detected and
> handled as exceptions, never allowed to cause random data
> corruption or executing corrupted code.
>Ну собсна что я и говорил, дюже долго рожали
Прочитай еще раз, внимательно. Проблема не в том что "дюже долго", родили бы быстрей было бы то же самое.
В правильную сторону развивался SGML с DSSSL, сейчас - SXML (http://okmij.org/ftp/Scheme/xml.html).
> покрыл реальные потребности людей без всякой нудятины
Потребности изменились, и люди. Первое продолжает стремиться к "хуяк-хуяк", второе - к "как научить бомжа джанге", потому что людей с каждым днем требуется все больше, а научиться программировать по-прежнему могут не все.
> есть много всяких скрытых моментов, которые сами собой решаются дай только массам волю повелосипедить
Не решаются. Наслоения велосипедов, как мы можем наблюдать в мире джаваскриптов, где массам эту волю дали, превышают все разумные пределы, а проблемы так и не решены.
> Десять тысяч голов en masse могут неимоверно больше, чем десяток избранных, пусть и охуенно умных
Может ли миллиард обезьян написать "Войну и мир" если будет с утра до вечера стучать по клавишам?
Неимоверно больше - чего именно больше? Перекидать навоза лопатами - несомненно. Построить бульдозер и перестать кидать навоз лопатами - нет.
Касательно полезной информации. Давай я тебе так скажу: чтобы рубить бабло нужно освоить хорошо один, желательно популярный (чтобы больше готового было), фреймворк и стать в нём рокстар-ниндзя. Язык похуй, фреймворк похуй. Куда душа лежит туда и иди. Но всё же я настоятельно рекомендую сильную типизацию (undefined is not a function, привет) и нормальный процесс запуска (перезапуск всего на каждый чих как в пхп - плохо).
>>773883
Да ну, про бомжей с джангой это уже слишком. Я наоборот считаю что старый вебдев это каменный век и борьба с ветряными мельницами.
>где массам эту волю дали
>а проблемы так и не решены
Я бы так не сказал. Сделано очень много.
>миллиард обезьян написать "Войну и мир"
Ты наверное ещё веришь что весь линукс написал лично Линус.
> старый вебдев это каменный век и борьба с ветряными мельницами
Ничего нового не появилось, борьба с лапшой из каллбэков (заменой их на лапшу из промисов) это не прогресс.
> Сделано очень много.
Если мерилом работы считать усталость, то это большой шаг вперед. Если нет - то нет.
> Ты наверное ещё веришь что весь линукс написал лично Линус
Сетевой стек (практически полностью новый) в 2.4, который фактически работает и по сей день написал Алексей Кузнецов. Предыдущий - Алан Кокс и Дэвид Миллер. ext4 - Теодор Tso (и в ней никто ничего кроме него до сих пор не понимает). ZFS в Sun сделала команда из пяти человек.
Я могу приводить примеры дольше чем ты готов слушать.
Миллион макак хороши, если их правильно применять. Вордпресс, например, поднялся именно за счет них - они писали тысячи (кривейших, но кого это волнует в мире вордпресса) плагинов, с простой сермяжной функциональностью. Современным ботоводам вордпресс-экосистема еще долго будет служить вкусным питательным перегноем.
>Выбрать один фреймворк и терпеть?
Зачем терпеть? Начни пиздеть с его авторами на IRC, напиши несколько патчей, заведи блог со всякими хитростями этого фреймворка, надстрой к нему какую-нибудь модную поебень, увиденную через забор у хипстеров из NodeJS.
Останется написать в твиттере что тебе не помешала бы подработка, и выставляй рейт $75 в час смело.
Тебе одному недостаточно будет оставшихся в мире 5% случаев когда нужен именно этот фреймворк?
Мне одному - безусловно, хватит. А вот на всех не хватит. С учетом того, что вакансий по yii может быть меньше, чем по django/rails.
В новом жс есть асинхронность. И нодоёбы насколько мне известно уже используют её. В браузеры оно будет завозиться с лагом.
Алсо не так много популярных проектов от откровенных макак даже в мире жс. Они либо вырастали в толковых разрабов, либо их идеи кто-то допиливал до правильных кондиций. Например я не считаю что sizzle, да как и сам жквери сейчас плохи. Вначале да, это была редкостная говнина, но с зерном рациональности внутри. До этого народ катал на прототипе и в хуй не дул. Оказалось что на жквери это делать намного проще и короче, хотя по сути ничего нового.
>>774195
Даже эта ваша затычка не отменяет факта, что весь код выполняется заново на каждый запрос.
>>774199
Ну если удобно, то охуенно жи.
Асинхронность есть везде где ты напишешь конечный автомат. Перловый POE, предоставлявший не просто асинхронность, а очень удобную асинхронность был уже в 1998 году.
> не так много популярных проектов от откровенных макак даже в мире жс
Бери любой, не промахнешься.
> весь код выполняется заново на каждый запрос
Выполняется, как и в любом другом языке, способе исполнения и апп-сервере, роль которого здесь играют апач или nginx с php-fpm код, обрабатывающий запрос - всегда, иначе запрос не будет обработан.
Разница между традиционной моделью CGI и моделью апп-сервера, которую начал mod_perl, и которая и дает охрененное преимущество в производительности, в том что во втором случае этот код один раз (а не на каждый запрос) загружается и компилируется - и не выгружается оттуда почем зря.
1)Ты не учитываешь версию yii
2) Ты смотришь среди пидорашек
3) yii - это почти всегда что-то кроме yii
sage
Всегда проигрывал с фразы "Angular фреймворк, а React нет".
Внешний по отношению к чему?
JBoss, принимающий от фронтендного nginx реквесты по протоколу FastCGI чем отличается от JBoss, принимающего от фронтендного nginx реквесты по протоколу HTTP - расскажи?
После этого расскажи чем принципиально отличается от JBoss любой другой апп-сервер, принимающий реквесты по протоколу FastCGI.
Понятно, но и на пхп есть всякие фальконы, о которых...много кто знает, все не перечислишь же.
Чем большее язык говно, тем больше у него будет говнофреймворков - попыток сделать из него конфетку. И тем больше аспектов языка/платформы/стандартной библиотеки будет пытаться поменять каждый недофреймворк (т.к. они сломаны и говно).
двощую вот у дидов вобще никаких фриймворкав не было а какие праграмы хорошие писали
студентик-питурдик порвался и решил отмахнуться смишной картинкай
оросил веберов-говнофреймворкщиков париной урией
Это копия, сохраненная 20 июля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.