@Kirov94_00

Как правильно организовать API?

Всем привет! Учусь писать бэк на PHP и сейчас решил изучить API, но нигде не могу найти вот что:
Как правильно организовать нахождение классов с API в структуре проекта (MVC)? Они хранятся вместе с моделями? Или нужно создавать отдельную папку в папке APP (Или вне ее?)? Или же вовсе, если у меня, скажем, очень простенькое АПИ (Просто показать на собесе, что я умею пользоваться функцией json_encode()), то допускается делать методы внутри Модели\контроллера? Заранее спасибо!
  • Вопрос задан
  • 130 просмотров
Пригласить эксперта
Ответы на вопрос 2
@MikUrrey
Привет!
Как правильно организовать нахождение классов с API в структуре проекта (MVC)? Они хранятся вместе с моделями? Или нужно создавать отдельную папку в папке APP (Или вне ее?)?

Часто применяемая (но не единственно правильная!) схема:
- /App
   | - /Models
   | | - Article.php
   | | - Category.php
   | - /Controllers
   | | - Articles.php
   | | - Categories.php
   | - /views
   | | - /articles
   | | | - articles_list.php 
   | | | - article_page.php 
   | | - /categories
   | | | - my_categories.php 
   | | | - categories_list.php 
   | | | - article_page.php

App - соответственно название вашего приложения, MyFirstSobes ;)
Имейте в виду, что структура не "железная" - могут создаваться папки при необходимости как в App, так и в других папках приложения.
допускается делать методы внутри Модели\контроллера?

И допускается, и приветствуется)
Далее: если вы делаете REST API (сужу по упоминанию json_encode), имейте в виду, что это MVC без "V".
Т. е. "представления" здесь не нужны, обычно контроллер выплевывает клиенту JSON без помощи шаблонов.

Просто показать на собесе, что я умею пользоваться функцией json_encode()

Ой-ой-ой, с таким подходом до собеса дело не дойдет, простите за прямоту)

Коллеги верно пишут - штудируйте ООП, вникайте в паттерны проектирования, пилите личные проекты, изучайте фреймворки и структуру чужих проектов. Развивайтесь, в общем)
Ответ написан
solotony
@solotony
покоряю пик Балмера
как хочешь так и организовывай. исходя из удобства роутинга, всяких там миддлваре итд
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
17 июн. 2021, в 00:44
40000 руб./за проект
17 июн. 2021, в 00:12
100000 руб./за проект
17 июн. 2021, в 00:05
2000 руб./за проект