livetv

Рейтинг
265
Регистрация
10.02.2015
ghost28:
Я когда-то тоже начинал, и тоже писал свой, самый лучший самопис-фреймворк.

Я не писал лучший самопис-фреймворк. Такой цели не было.

Расскажу, как я написал то ядро, что есть.

Поначалу был html-сайтик с правкой html.

Потом решил добавить обработку параметров адресной строки.

Мне что, гуглить как это делается на фреймворках, если я о них не слыхал?

Языком разработки был выбран ПХП.

Потом добавилась работа БД.

Потом кеширование.

Потом многоязычность/многосайтовость.

Все добавлялось постепенно. А сейчас уже есть ядро.

Ну не выбрасывать же мне его ради моды на фреймворки.

Да и ядро занимает, как уже несколько раз говорил, всего 50КБ.

ghost28:
Даже с MVC моделью.

О, боже, Вы так говорите, будто МВЦ - это что-то такое сложное.

ghost28:
И даже SEO-сайтики на нем ничего выходили, примерно как у livetv.

А что такое в Вашем понимании СЕО-сайтики?

ghost28:

Я не против самописа для поиграться, когда подукт никто другой не увидит. Я не против самописа для себя, когда не важно качество и скорость, и охота побаловаться и соорудить велосипед — охота пуще неволи.

О, хоть это радует. :)

ghost28:

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

1. Не свои велосипеды, а свои проверенные тисячами хитов решения. Если у Вас такого решения нету, то берите в руки то, чем умеете работать.

Если нету молотка для забивания гвоздей, что ж, берите кувалду. :)

И никто не пишет велоипеды при наличии хороших работающих инструментов.

2. В коде часто такого понаписывают, что мелкие правки фиг найдешь где и вносить.

Качество кода зачастую фиговое, что на ЦМС, что на самописи, что на фреймворке.

Если Вы быстро разбираетесь в своем коде - для Вас разработка будет быстрой, и не важно на чем Вы пишете.

3. Очень жаль, но бюджет почти никогда не отражает качество кода.

4. Начинающем программисту, наверное, рано писать на фреймворках, не так ли?

---------- Добавлено 14.11.2015 в 19:44 ----------

levchernenko:
в открытых фреймворках все иначе. но зная штат разработчиков, уязвимости в коде фреймворка практически исключены :)

На самом деле там штат кот наплакал. Так, одна фирма решила свой велосипед сделать достоянием общественности.

---------- Добавлено 14.11.2015 в 19:45 ----------

Ladycharm:
и без собственного программера в штате у клиента будут головняки с доработками/переделками.

Ага, на фреймворке клиент будет программировать сам. :)

Ladycharm:
livetv абстрактно нельзя однозначно сказать что лучше "самопис"/фреймворк/CMS. Поэтому тебя и затюкали.

Я давал ссылку. Там в выводах, что бы использовал я в разных ситуациях.

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

Ladycharm:

Если работаешь в команде - какие там могут быть "самописы". Клиенту - тоже лучше передавать сайт на типовой CMS, ему меньше геморроя с дальнейшей поддержкой.

Легко. Все же продукты ранее были самописью. Некоторые взлетели и стали известными.

А вот на прошлой работе была самописная ЦМС, которую не продвигали для внешних клиентов, только для внутренних.

Ladycharm:

У меня ~30 сайтов, каждый на своем "самописе", сделанном конкретно под текущие задачи сайта (мультиязычность, сложные выборки по БД с кэшированием результатов). Все со своей собственной самописной админкой в минималистском стиле.

Код после программиста откомментирован практически построчно, так, что понять что он делает и зачем - сможет даже домохозяйка:

Вот я и говорю, что все можно качественно реализовать на самописи.

А они не верят.

Я ж не запрещаю им писать на фреймворке.

DenisVS:
Предлагаю закрыть балаган.

Не нравится - не заходите в тему. :)

siv1987:
Насмотрелись на самописы. Гавнокод и полнейшая отсутствие логики это только пол беды, самое интересное начинается при масштабирование системы - чтобы в ней что-то добавить нужно переписать и править половину самописа.

То же самое легко делается и на фреймворках.

siv1987:
Возьмите к примеру DLE, это пример типичного самописца коих livetv так яро здесь пиарит.

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

siv1987:

livetv, от фреймворков мы то хоть знаем что ожидать и какой там код

Вот поэтому я от них ничего не ожидаю, они как пятого колесо.

siv1987:

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

Я не нуждаюсь в ваших оценках. Здесь на форуме такая публика, что только обосрать способна.

siv1987:

Не то уг, что лайвтв нам тут впаривает, а с наличием структуры и функционала и обоснованием почему его нельзя написать на фреймворке.

Ну так вы вообще ничего показать не можете своего.

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

siv1987:
livetv, честно говоря глядя на ваш сайт я начинаю понимать почему вы отрицаете фреймворки и даже склонен с вами согласится. Вам фреймворки действительно не нужны.

Что не так в моем сайте? И почему мне не нужны фреймворки? Спасибо, что согласились.

bay_ebook:
Фреймворк - это набор библиотек и правил.

Фреймворк - это не библиотеки!

Против библиотек ничего не имею против, повторяю в который раз.

Против набора мусора во фреймворках.

Вроде 20 метров, а проблему не решает. Капец. В мусорник. Мое ядро решает мои задачи и занимает 50 КБ.

Ну почему Вы заставляете использовать меня фреймворки?

Остальной код занимает гораздо больше. Новому программисту не так уж и сложно будет выучить 3 файла ядра. Программы должны быть лаконичными. А не писать вроде такого:

edogs:
getVariableAndParse->putItIntoArray->sunNosVChagIVinSuhUm->checkNewFunction();
ghost28:

Поправлять меня? В чем? Или вы имели в виду что мажорный релиз опен-сорс фреймворка (а последним не-опенсорс был первый КодИгнайтер, ну и Битрикс еще живет) "не поддерживается"? Так он на то и опен-сорс, он поддерживается пока есть клиенты на нем.

Изначально я говорил об удобном апгрейде между мажорными версиями...

---------- Добавлено 13.11.2015 в 20:14 ----------

ghost28:
Функция фреймворка только одна - дать каркас.

Нафиг такой каркас, что половину нужного мне не реализовывает.

Я не настолько туп, чтобы все нужное не реализовать самому.

И это все влезает в 50КБ, а не в 20 МБ.

И ничего лишнего, все шустро летает.

ghost28:
Я просил перечислить что-то не реализуемое на фреймворке ☝

Та все можно реализовать. Что-то костылями. Просто это приделывание пятых колес к фреймворку, переизобретение его функций.

ghost28:

Сколько нужно. А вы выбрасываете?:)

Я имел в виду "Сколько можно поправлять вас".

Вы там работали, что можете ручаться за качество кода? Да и не во всех из них ПХП занимает значительную часть.

ghost28:

От вас, как от пользователя, никто и не ждет что вы будете делать библиотеки-парсеры.

А вот как раз для парсера фреймворк вообще лишний.

ghost28:
Т.е. писать с нуля быстрее, чем использовать готовое. Но вы писали что используете модули. Что-то тут не сходится ☝

Я только писал, что я против фреймворков в мире ПХП.

Прекращайте троллить.

ghost28:

такое

У меня показывается какая-то непонятная херь, которую точно, что в блокноте за 20 мин можно сделать. :)

ghost28:

Огласите весь список, пожалуйста.

1. Добавление хедеров Last-Modified и ETag в ответ

2. Приписка даты модификации жс/цсс файла, чтобы браузер не использовал закешированную версию

3. Многоязычность

4. Многосайтововость

5. Та самая админа

6. Отсутствует экспорта пхп-значений в жс

7. Отсутствует понятие загрузки нужного языка, если на текущем нету фразы

8. Статические страницы

ghost28:

А смысл обновлять мажорную (изменения API) версию, если можно обновить минорную с нужным багфиксом?

Старая мажорная уже не поддерживается... Сколько раз поправлять можно?

ghost28:

кхм. Вот, кстати, еще один плюс фреймворкам. В серьезных конторах такого не допускают - но там, увы, самопалы не используют.

Та ну ради бога. Вся эта серьезность - только в цене.

Огласите серьезные конторы. :)

ghost28:

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

Ну а Ваш список поддерживающих где?

И я не поддерживаю кго полностью, только относительео ПХП. :)

ghost28:

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

И я не против фреймворков в принципе, а против бездумного использования фреймворков ПХП. Ну и автор писал о фронте, знал бы он как дела в бекэнде, он бы ужаснулся.

Они уродские.

ghost28:

И вы годами поддерживаете прошлых клиентов бесплатно, и.. ой, нет, ошибочка вышла.

Самопись только для своих проектов.

ghost28:

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

Ну говно в ядре как бы и пох, главное чтобы было нормальное АПИ. Вон у Битрикса местами много говна в ядре. Но нормальное внешнее АПИ, которым все пользуются.

ghost28:

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

Это Вы придумали, что меньше.

По факту там застряли бы минимум на неделю.

И я делал не полных 2 дня, а на выходных от безделья. Также много кода для бекграунда было написано до и после.

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

Да вы даже не сверстали бы за 2 часа.

Расхвастались тут.

ghost28:

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

Оно как правило тупое. Дальше не понял, что Вы написали.

Ну ок, есть руководство пользователя для фреймворка. А кто документирует свой код? Да никто.

ghost28:

Разговор шел о миграциях БД, если вы помните. Миграции минорной версии фреймворка происходят автоматически за счет замороженного API, миграции мажорной версии нужны крайне редко. Хотя по моему опыту - также достаточно быстры для устоявшихся продуктов.

И об этом тоже. Миграции мажорной версии нужны после окончания поддержки старой.

Не будет же пользователь сидеть с багами и без новых фич.

Или Вы предлагате пользователям не обновляться? У Битрикса, например, нормальная обратная совместимость.

П.С.

Большинство программистов, будь-то на CMS, фреймворке, самописи пишут говнокод.

Почему они так пишут.

Потому что им пофиг на этот код, им лишь бы работало, да получать зп.

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

Нет, есть и нормальные программисты.

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

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

Некоторые программисты на фреймворках в чем-то напоминают некоторых программистов на ЦМС, которые дальше своей ЦМС ничего самостоятельно написать-то и не могут.

Речь, как и всегда, о ПХП.

---------- Добавлено 13.11.2015 в 14:08 ----------

П.П.С.

Кто из известных поддерживает фреймворки?

Вот Кент Бек против фреймворков. :)

---------- Добавлено 13.11.2015 в 14:12 ----------

П.П.П.С

Вот еще о фреймворках против здравого смысла

http://habrahabr.ru/post/253297/

---------- Добавлено 13.11.2015 в 14:16 ----------

Процитирую:

Разница в том, что хорошо спроектированное приложение будет с одной стороны расширяемо, а с другой стороны — устроено всё равно проще, чем целый фреймворк. В результате получается, что для того, чтобы продолжать поддерживать мой код потребуется более низкая квалификация, чем для того, чтобы поддерживать код, созданный на ныне почившем фреймворке и при этом наполненный костылями.
ghost28:
Ну, правда, это не "очень высокие ставки" - увидя $50/час от местного заказчика я бы тоже испугался.

Считаем:

50*8*22 = 8800

8800 * 0,3 = 2640 - такие зарплаты есть.

Надеюсь, вам, как программистам, все цифры понятны?

У меня ставка нижа, и я не выступаю фирмой.

Всего: 2575