Мдя... наверное сейчас слово Framework - одно из самых популярных... Однако на всех форумах, где касаются вопросов полезности или необходимости написания своего или же использования чужого идут постоянные споры и дебаты! Господа поделитесь своим мнением пожалуйста: Используете ли вы свой фреймворк или же юзаете чужой и насколько эффективно он вам помогает???? Так же было бы неплохо услышать мнения по поводу такого изречения, что "Фреймворк - это на самом деле просто библиотека классов, который каждый сочиняет по себя и что эта библиотека иногда превращается в еще один коряво придуманный велосипед..."???
Я очень редко пользуюсь чужими наработками по двум причинам: 1. я не доверяю никому, кроме себя. 2. мне легче исправлять ошибки, когда я знаю что где и как устроено. Велосипед - безусловно. Вот только, как правило, цель создания любой программы (особенно в рамках OSS) - это желание научится, узнать что-то новое и интересное-полезное. А программировать можно научится только программируя. По поводу помойки - это зависит от человека. Если посмотреть на мои всякие библиотеки год назад и раньше, то там такая помойка, что я сам ничего понять не могу. А вот в последнее время я стараюсь писать не только комментарии, но и обширную документацию отдельно, не зависимо от того, будет ли пользоваться библиотекой кто-то кроме меня. Еще существует два разных подхода к внесению изменений в библиотеки: можно пытаться вставлять до упора "костыли", а можно переписать библиотеку с нуля с учетом появившихся обстоятельств. Еще один момент: осмысленность исходного кода: имен переменных и функций. Я предпочитаю давать функциям и переменным длинные, но точно значащие имена, нежели короткие и непонятные: например, load_template_source_file вместо source. Далее: в коде не очень хорошо смотрятся большие функции. Даже при расковыривании чьего-то кода я всегда выделяю блоки операторов в отдельные функции: когда логика функции не умещается на одной странице очень сложно разобраться в ее работе. Ну и наконец: у хорошего велосипеда ядро должно иметь минимальный размер: как можно больше функций реализуется плагинами. Легко расширяемые системы - это всегда хорошо. Пример: 1С: Предприятие существенно популярнее всех остальных програм бух-учета вместе взятых отчасти из-за того, что это не узко-заточенная под текущие нужды программа, а платформа с собственным языком программирования.
Проще писать самому, что-то лёгкое, ядрышко, остальное всё модулями и библиотеками. Советую использовать классы - реюзабельность кода куда выше и удобнее + расширить класс можно наследованием, не обязательно править исходный класс - очень удобно С первого раза вряд ли получиться идиально, но после 2-3-х раз дойдёте до состояния, когда ядром можно будет уже не заниматься и вообще, чем меньше ядро, тем лучше - как правило сайты разные - всёравно много приходиться подгонять/писать с 0