я правильно понял, что каждый их этих 10 сайтов - это уникальный набор функций, написанный под каждый сайт индивидуально с учетом всех нюансов верстки, поведения, ссылок и т.д.? т.е. даже если и есть файлы с одинаковыми названиями и в них есть функции с одинаковыми названиями, то это либо кописаст, либо вообще каждая функция в каждом проекте выполняет свою уникальную задачу?
за учеты нюансов верстки отвечает 1 файл инклуд…. состоит из функций, содержащих оформление элементов сайта. это разбитый шаблон по частям. выше я показывал пример.
есть универсальные для всех проектов функции. типа регистрации (меняю только названия полей и количество), поиска какого-то элемента в базе, обновление элемента в базе, поддержание сессии, счетчики всякие по базе, запись логов.
а есть уникальные…
например в одном проекте мне нужно смс обрабатывать и пдф файлы делать, в другом мне нужно icq бот реализовать, работу со списком юзеров построить.
многие функции просто копипасчу из предыдущего проекта, изменяю некоторые значения и она готова к использованию.
так как проекты самоделки, то смысл писать блог нету, проще скачать готовый на вордпрессе. и форум свой нет смысла делать, уже куча гтоовых форумов. А вот уникальный функционал естесственно с нуля писать. (Добавление)
digi пишет:
в случае если будешь владельцем бизнеса, то разумеется нужно будет нанять менеджера проектов, который в курсе что и как надо делать по нормальному
вот об этом я и хотел тут пост создать… обычно я менеджер проектов (своих собственнных) иу меня много вопросов по теории создания сайтов и насколько важно ООП
интересно как у тебя работа с формами устроена ;) особенно если одна и таже форма может применяться в разных местах, например банально: форма аутентификация юзера ;)
// определение что выводить в блоке для быстрого входа на сайт или отображения своего ника, если заход на сайт произошел
function login_block($session){
if(login($session)==1){//если проверка сессии совпала с записью в базе
выводим ник и ссылку на личный кабинет, например.
}
else{
выводим форму логиния
}
}
дальше также подумываешь кодить? ;)
да. до тех пор пока не придет ясность смысла ООП. и после прихода этой ясности не придет необходимость использования ООП.
самостоятельно пишу небольшие проекты или для себя полезные програмки. хватает и функциональной модели.
более менее большие проекты одному уже не справиться, привлекаю еще людей… они уже понимают ООП. Я помогаю функциями, они их встраивают в ооп.
большие проекты уже пусть пишут профессионалы. главное правильно распределить работу, их взаимодействие и четко представлять что должен делать сайт… вобщем тут уже лучше разбираться в составлении ТЗ и управлении командой, чем в ООП)))
я примерно так ситуацию вижу, но ментальный смысл ООП не дает мне покоя.. если все тоже самое на функциях можно сделать, то в чем то должна быть очевидная выгода ООП
Soft, ты один програмишь? или в твоём коде кто-то еще разбирается? ;)
в основном один. несколько раз было еще пару помощников. проекты не такие огромные, чтобы там можно было запутаться. Учитывая коммент над каждой функцией (для чего она, какие параметры принимает и что возвращает, особо вопросов не возникало.
как Вы думаете, что будет, если вызвать подобную функцию в одном файле дважды ?
если вызвать подобнную моей 2 раза подряд - ничего, она исполнится дважды. Единственное, если функция читает какие то данные, потом их меняет и записывает, то повторный вызов её уже не будет корректным.
один раз приходилось фнкцию внутри самой себя же вызывать - такая уж универсальная и нужная получилась))
как я смутно понимаю ООП- это способ объеденить (структурировать) функции для выполнения разных задач. Типа вот группа функций для того то… вот группа функций для того-то.
Пхп в качестве хобби увлекаюсь около 3 лет. разнообразные самоделки делал (ICQ боты, прием смс сообщений от смс биллинга) и обходился функциональным методом (или процедурным - такое тут название встретил).
Принцип построения кода делал таким же как ООП - тут пытались объяснить. Мол вызываешь готовый класс, метод и не паришься че там происходит, главное чтобы задача была выполнена. И так поэтапно классами строишь весь функционал.
Абсолютно тоже самое делаю функциями. Есть возможность встроить функцию в функцию. И таким образом каждая функция содержит не том кода, а несколько встроенных подфункций. и так далее...
На карйняк отделяю функции комментами типа
##################################
# ниже функции управления регистрацией
тут кучка функций
# закончились функции управления регистрацией
##################################
# функции админки
тут кучка функций
# закончились функции админки
##################################
# ниже базовые функции запросов к базе и тп., применимые везде.
тут кучка функций
На крайняк отдельные файлы инклуды для разного типа функций.
В отдельный файл кидаю оформление страницы и разбиение шаблона на куски, чтобы в основной странице не маячило много кода. Собственно построение основной страницы в плане оформления обходится печатанием нескольких функций типа:
print meta($title); // начальные метатеги, разметка страницы + возможность вставить свой заголовок страницы
print navigation(1, "login"); // верхнее меню сайта, первый параметр - активный пункт меню, второй параметр тип менюшки (для админки одни пункты меню, для юзеров другие, для зарегистрированных юзеров третьи)
тело сайта
print footer($type); // подвал, копирайты... тоже на всякий случай имеет параметр типов
Является мой метод написания кода аналогом ООП или ооп еще как то понимать нужно?
Проект небольшого сайта - программы (подобие онлайн напоминалки) для тех кто хочет улучшить качество своей жизни.
Финансы практически отсутствуют на данный момент, поэтому готов в будущем расплатиться или отработать на ваших заданиях, так как сам являюсь ПХП кодером.
Энтузиастов приветствую, но оплату труда все равно произведу.
Если вы увлекаетесь личностным ростом и саморазвитием, читаете книги, занимаетесь спортом и у вас есть хобби, то смело можете писать в ЛС / почту / аську
Если вы целыми днями сидите вконтакте, считаете что опаздывать на мероприятия на 10 мин это ничего страшного, вы можете сказать и не сделать, считаете что люди читающие книги тратят в пустую свое время, считаете что личностный рост это для неудачников, при этом не находя утром 10 минут для зарядки или разминки, то просьба не отнимать времени.
Если вы:
1. Держите слово которое даете любой ценой (если конечно его даёте)
2. Определяете реальные сроки и соблюдаете их (или заранее предупреждаете о невозможности выполнения в срок)
, то буду рад сотрудничеству. Дам ссылку на тему в другом форуме, где расположено более полное описание и ведется опрос о целесообразности такого сайта.
От себя гарантирую:
честность,
помощь по мере возможностей,
понятное объяснение,
сервер.