Это архивная статья. Блог закрыт.

← на главную

Писать или не писать?

Статья написана очень давно — 19.01.2010

Как много можно встретить «программистов», которые пишут свои движки! Давайте разберёмся в сложившейся ситуации.

Итак, существует достаточно много известных популярных движков, заточеных под те или иные нужды. Например, для блога очень хорошо подойдёт Wordpress, для какого-нибудь мелкого интернет - магазина - osCommerce, а сайт-визитку и вовсе можно сверстать на HTML, без применения PHP... Почти под каждую задачу можно найти тот или иной движок, зачастую его приходится «обрабатывать напильником», после чего он идеально подойдёт. Многие веб-студии и одинокие фрилансеры так и делают - не изобретая велосипед, ставят Wordpress или osCommerce, Drupal или Joomla!, в зависимости от задачи, а штатный программист только и занимается, что сетапом, да настройкой

Нет, я не агитирую за то, чтобы всё ставилось на существующие движки, что писать cms - это плохо - нет! В некоторых (подчёркнуто три раза!) случаях написание собственных движков очень даже и оправдано. Например, некая фирма затратила время своих программистов на создание «корпоративного» движка, а потом повсеместно использует его в своих проектах. Или другая стиуация: собрались пару-тройку/один человек, и написали свою некоммерческую cms. Просто так, потехи ради. Потом они стали серьёзно заниматься веб-разработками, учредили фирму, и в своих проектах, опять таки, используют свою cms. Это оправдано. Но писать движки под каждый проект! Нет уж, увольте... (имеются ввиду однотипные мелкие и средние проекты. Для крупных проектов просто необходимо писать движки, и опять-таки, делать это желательно на основе фреймворков, а не с нуля). Или вообще. Человеку, малознакомому с программированием (ситуация чуть лучше: программисту малознакомому с веб-программированием) ставится сверхзадача: «забацай-ка, нам за недельку такой-вот сайт! Такой весь красивый, вот с такими плюшками... Функционал? Ну, пойди посмотри какой есть у конкурентов...» И наплевать, что у конкурентов полноценная система, которая писалась бобрами-проффесионалами за полтора года. И вот садится этот «студент» и начинает штормить форумы. На 18-й странице флуда его посылают :), он пытается штудировать маны, но времени у него нет (на разработку ему дали всего неделю-то!), и вот он рождает говнокод... А ведь для его целей хорошо Друпал, к примеру, подошёл бы...

Но и хорошее должно быть в меру. Представим другую ситуацию: есть компания, которая куда ни попадя ставит джумлу. И для проектов, где можно было бы обойтись Вордпрессом, и для проектов, где хорошо подошёл бы Друпал, и для проектов, которые неплохо бы вообще написать с нуля. Это тоже не хорошо. «Так что же, всё-таки, хорошо?» - возникает вопрос, читая сей высер опус. Хорошо, когда всему своё время и место. Хорошо, когда для достижения определённой цели используют определённые нужные средства. Когда не ставят, без разбора, Джумлу, или типовые сайты не пишутся с нуля. Хорошо, когда новичёк, без году неделю знающий PHP и HTML (и только их, без всяких там JavaScriptов, JQuery тем более), вооружившись форумами не начинает писать супер-мега-системы, причём на заказ, а садится и учит азы или идёт устраивается даже не джуниором, а бегинер-девелопером. Хорошо, когда специалист в какой-либо области, отличной от программирования и веб-разработок, для разработки себе сайта не начинает вопрошать на форумах «Что означает тег HTML?», а ищет исполнителя-професионала... Это хорошо!

Возвращаясь к теме собственных движков, можно ещё много чего сказать. Я лишь ограничусь списком ситуаций, когда можно и нужно начинать писать:
1. Для больших проектов
2. В академических целях
3. Если Вы хозяин фирмы, и вашим программерам нечем заняться в ближайший месяц-два/для поддержания имиджа
А также списком тех ситуаций, когда нельзя писать ни в коем случае:
1. Если у Вас опыт меньше года
2. «Аффтар мудак! Я поставил вордпресс себе на блог, а в нём нету нужной мне фенечки!» - Вам что-то говорит понятие «обработать напильником»? Идеальных систем под нужды каждого веб-мастера не бывает! Допишите руками или попросите об этом специалиста!
3. «Аффтар мудак! Больно мне надо разбираться в каком-то движке! Там всё сложно/я напишу лучше/нафиг надо» (нужное подчеркнуть). Типичная ошибка начинающего девелопера. Автор сего опуса и сам было попался, но потом, поняв свою ошибку, дал себе слово не писать собственный движок, пока не разберёт остальных

И напоследок, приведу в пример свою историю.
Когда я начинал только учить PHP, когда прочитал только одну книгу, когда попробовал писать первые скрипты типа «Отправка СМС» или Гостевая книга, задумал я написать свою CMS. Это грубейшая ошибка. Сами догадываетесь что получилось? Я даже и не работал тогда - только учился (да ещё и на 2-м курсе). Большие Амбиции... После учёбы устроился я работать, про CMS забыл, ибо не было свободного времени. Много воды утекло с тех пор, и вот решил я всё-таки вспомнить свой велосипед. Посмотрел я на него и... удалил. Слишком уж убогим он мне показался. Начал писать сначала. Много раз я забивал на него, в связи с отсутствием времени, много раз переписывал, узнавая что-то новое, и вот наконец-таки дописал! Заметьте, писал имея практический опыт работы со многими движками (разбирал их чуть ли не до ядра), и каждый раз переписывая или дописывая свой, получая какие-то новые знания

Комментарии удалены

© koz1024 2010, 2019