Фреймворк сам по себе уже стандарт. Наименование, композиция и функциональность классов, довольно хорошо описывается в документации и многочисленных howto и bestpractice.
Уточните пожалуйста что за фреймворки с "закрытым кодом"? И как "закрытость кода" влияет на обучаемость?
фреймворк - это стандарт? да ладно. начните колупать его и увидете такое...
т.е. вы считаете, что можно оценить "наименование, композицию и функциональность классов" без доступа к исходному коду? вы - Ванга?
Чтобы кататься на велосипеде надо изобрести велосипед?
Что значит научиться делать все самому? Написать свой фреймворк? Написать свой язык скриптов, свой веб-сервер, свою ОС, и свою архитектуру ПК, и вообще переоткрыть все физические законы, самому?
Изучая и используя фреймворки, человек сразу получает прививку правильного оформления кода, хорошей композиции объектов и прочего.
Не в обиду но те кто так говорят, мол "надо сначала все самому", им на самом деле лень учить стандарты и читать документацию. Учиться куда сложнее чем говнокодить собственные велосипеды (типа "я не хочу в этом разбираться, сделаю ка я так как понимаю").
Не в обиду но те кто так говорят, мол "надо сначала все самому", им на самом деле лень учить стандарты и читать документацию.
в том то и дело, что по фреймворкам (особенно с закрытым кодом) ты не выучишь никакие стандарты.
Где у вас PHP работает? В Windows в IE 1.0? Это как бы серверный язык. А к серверной части требования свои. Стабильность, безопасность, скорость работы.
Вы посмотрите на современные фреймворки. Там все что надо уже идет из коробки, нужно только правильно сконфигурировать, а не писать километры спагетти кода.
А bootstrap? На нем же в разы проще верстать! И код действительно меньше и понятней становится.
Для тех кто наращивает энтропию в мире программирования в аду заготовлен отдельный котел.
прежде чем начать юзать фреймворки - надо научиться делать все самому. во-первых, чтобы знать как это устроено и как это работает, во-вторых, чтоб быть не обезьяной-хипстером, а нормальным спецом.
Опять таки справедливости ради, речь шла о разработке. Ну да ладно.
Кроме того, ваше утверждение верно не во всех случаях. Например если человек хорошо знающий PHP и например Yii2, Zend и т.д. Вдруг займется изучением Ruby, ему нет никакого смысла отказываться от Rails, даже на этапе изучения. Синтаксис, операторы - все это запоминается очень быстро. Да и основные паттерны во многих языках имеют много общего между собой.
Если мне сейчас дадут проект на Python, который я совершенно не знаю, я опять таки буду подбирать фреймворк для него, а не писать hello world.
у каждого языка по-разному. бывает полезно сперва изучить специфику работы. для интерпретируемых языков одно, для компилируемых другое. при смене ЯП с С++ на Java прежде чем начать кодить - лучше узнать что-нить про java-машину. Если ты уже гуру Java и сел писать под Android - изучи далвик машину. научись писать хоть что-то на AndroidSDK - а уж потом лезь во всяческие фреймворки. я вот что хотел донести;)
Погодите-ка. То есть вы начали отвечать в ветке, где с самого начала обсуждался богомерзкий для вас PHP? Вы ответили на #comment_49787906 , где явно указанно фреймворки какого языка я имею ввиду.
Ок. Что на счет Django и Ruby-on-Rails? Тоже предложите начать писать на чистом Pyton и Ruby?
я УТВЕРЖДАЮ, что изучение ЯП нельзя начинать с изучения фреймворков. что не так? или вы hello world на фреймворках пишете?
Еще раз. Где вы вообще видели PHP фреймворк с закрытым исходным кодом? (нет, ну может и есть такие уникальные решения)
Да, фреймворк диктует стандарты (в широком смысле этого слова, от правил наименования классов и методов, до архитектурных подходов), конечному разработчику. В чем проблема?
Ничто не идеально. И в популярных фреймворках бывают и компромисы и явные баги. Но так или иначе практически любой популярный фреймворк, на голову выше того что пилят доморощенные кулибины, и отдельные веб-студии.
Ну а некоторые фреймворки уже стали действительно в каком-то смысле отраслевыми стандартами. Например тот-же Symfony2.
начнем с того, что я ни слова не сказал про пхп этот богомерзкий) закончим тем, что лучше сначала изучить сам ЯП, а затем уже садиться за фреймворки. ибо вместо а + б будут юзать Math.summ(a, b). Пример утрирован
Я не знаю, насколько тут кривизна рук замешана, но "неработающий" код я сохранил, закрыл, открыл ничего не изменяя и он заработал. Так что