За последние 24 часа нас посетили 20297 программистов и 1093 робота. Сейчас ищет 821 программист ...

Как организовать файлы при процедурной разработке

Тема в разделе "PHP для новичков", создана пользователем viktor72, 11 сен 2018.

  1. viktor72

    viktor72 Активный пользователь

    С нами с:
    20 дек 2015
    Сообщения:
    326
    Симпатии:
    6
    Добрый день!
    Ситуация:
    С ооп не знаком. Разрабатываю проект процедурно на php+mysql . Предположительно будет создано 40-50 может больше файлов.
    Вопрос - есть информация как правильно размещать папки и файлы при процедурном подходе? Если есть, дайте ссылку или конкретные рекомендации.
    ( то что надо изучать ооп , спасибо, знаю, но если можно по делу. спасибо).
    Спасибо.
     
  2. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    [​IMG]
     
    viktor72 нравится это.
  3. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.548
    Симпатии:
    1.754
    @viktor72, так, чтобы ты потом понял, что у тебя где валяется. И желательно, чтоб другой человек тоже мог разобраться, т.е. чтоб в папке под названием posts, к примеру, не лежал код, относящийся к администрированию рекламы, ну грубо говоря. Плюс всё равно делай шаблоны отдельно от кода, даже при процедурном программировании (в котором нет ничего плохого, кстати, если по-нормальному всё сделать). Т.е. сначала все данные получаешь из базы, потом выводишь. Обработчики post-запросов не в том же файле, который выводит форму. И т.п.
     
    viktor72 нравится это.
  4. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.789
    Симпатии:
    646
    @viktor72, посмотрите описание нашего простейшего каркаса, написанного на процедурке и для процедурки (хотя в коде «модулей» вам никто не запрещает использовать ООП):
    Знакомьтесь: G-Drive DBE 3
    G-Drive. Быстрый старт
    Установка G-Drive

    Ядро объединено с точкой входа, код которой вы можете изменять, т.е. подключать в ней доп. файлы, например в форумах, ЛК и т.п. общий файл для выполнения авторизации обычно подключают прямо в точке входа или прописывают соотв. код непосредственно в ней.
    --- Добавлено ---
    Обратите внимание, что код приложения (содержимое папки mods) обычно выносится за пределы корня сайта.
     
    viktor72 нравится это.
  5. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.789
    Симпатии:
    646
    P.S. Еще забыл написать, что никто не запрещает вместо использования «суффиксов» в именах файлов раскидать их частично или полностью по разным папкам, например:
    mods
    --include (это дефолтная папка для включаемых файлов)
    --stage1
    --stage2
    --theme
     
    viktor72 нравится это.
  6. keren

    keren Новичок

    С нами с:
    15 ноя 2017
    Сообщения:
    513
    Симпатии:
    42
    viktor72 нравится это.
  7. viktor72

    viktor72 Активный пользователь

    С нами с:
    20 дек 2015
    Сообщения:
    326
    Симпатии:
    6
    а можно описание этой картинки? что куда сохранять?
    --- Добавлено ---
    Да, вообщих черах я это понимаю.
    У меня было предварительное такое решение разложить файлы по таким папкам: isert, updet, forms, htmlpags, css, selectmysql... что то в этом роде.
    Но возникли сомнения. хочу почитать на эту тему.
    --- Добавлено ---
    спасибо. приступаю к чтению
     
  8. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.548
    Симпатии:
    1.754
    Это на каком языке? Я так понимаю, insert, update? Лучше организовать файлы на основе сущностей, с которыми этот файл работает. В одном файле всё про посты, в другом - про баннеры, в третьем - ещё про что-то. Это лучше, чем в одном файле будут функции с запросами insert и по постам, и по баннерам, и по категориям, и по картинкам, и т.п., мало ли где понадобится запрос insert
     
    viktor72 нравится это.
  9. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.789
    Симпатии:
    646
    Вам намекают, что MVC можно и на процедурке реализовать, если поднатужиться.

    Но по-моему начать можно с DAT (D&T), о чем mkramer писал:
    В описанном мной каркасе дефолтом заложен именно такой подход. В d-файлах (stage1) – рулежка и подготовка данных из БД. В файлах шаблонов (theme, stage3) – вывод. «Заголовочные» файлы (stage2) – это особый случай: они могу брать на себя роль и stage1, особенно когда данные нужно получать не из БД, и stage3, и еще выполнять много др. ф-ций.
     
    viktor72 нравится это.
  10. viktor72

    viktor72 Активный пользователь

    С нами с:
    20 дек 2015
    Сообщения:
    326
    Симпатии:
    6
    прочитал. к сожалению не понял. спасибо.
     
  11. viktor72

    viktor72 Активный пользователь

    С нами с:
    20 дек 2015
    Сообщения:
    326
    Симпатии:
    6
    Спасибо. Это более понятный материал. Пока что нее до конца понимаю отличие наполнения контролеров от файлов моделей.
     
  12. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.789
    Симпатии:
    646
    Первое – это «быстрый старт» из моего списка, только менее продвинутое.
    Второе – фигня какая-то:
    Б-Э-Э-Э :confused:
    --- Добавлено ---
    Вместо второго лучше почитайте мою статью Как сделать вывод списка статей?
     
  13. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.789
    Симпатии:
    646
    Почитайте нормальное описание MVC. Контроллер – что делать (конвейер этапов для выполнения конечного действия; один контроллер может содержать целую коллекцию конвейеров, по одному на каждое конечное действие). Модель – как делать, чтобы получить нужные данные.
     
  14. keren

    keren Новичок

    С нами с:
    15 ноя 2017
    Сообщения:
    513
    Симпатии:
    42
    Ну это субъективно, в ангуляре например с центрального дива подключается роутер, а там роутер подключает шаблоны. Проще не всегда хуже. Можно городить битовые слаги вместо обычных гет параметров, но новичку оно надо?
     
  15. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.789
    Симпатии:
    646
    Пожалуйста, не сравнивайте твердое с холодным. Вы читали статью по вашей ссылке? Автор пытается описывать классическую серверную реализацию MVC и по большей части несет пургу.
    --- Добавлено ---
    Т.е. вы и это прочитали поверхностно. Биты отдельно, слаги отдельно. Один GET-параметр в обычном понимании этого слова там все-таки поддерживается.