Я пытаюсь написать «стандартный» бизнес-сайт. Под «стандартным» я подразумеваю, что этот сайт работает с обычным HTML5, CSS и Javascript для внешнего интерфейса, внутреннего интерфейса (для обработки содержимого) и MySQL для базы данных. Это базовый сайт CRUD: внешний интерфейс просто создает все, что хранится в базе данных; бэкэнд записывает в базу данных все, что вводит пользователь, и выполняет некоторую обработку. Как и большинство сайтов там.
Создавая свои репозитории Github для начала кодирования, я понял, что не понимаю различия между интерфейсной частью и API . Другой способ сформулировать мой вопрос: откуда API входит в эту картину?
Я собираюсь перечислить еще некоторые детали и затем вопросы, которые у меня есть - надеюсь, это даст вам, ребята, лучшее представление о том, каков мой настоящий вопрос, потому что я так растерялся, что не знаю, какой конкретный вопрос задать.
Еще несколько деталей:
- Я хотел бы попробовать шаблон Model-View-Controller. Я не знаю, меняет ли это вопрос / ответ.
- API будет RESTful
- Мне бы хотелось, чтобы мой бэкэнд использовал свой собственный API вместо того, чтобы позволить бэкэнду обманывать и вызывать специальные запросы. Я думаю, что этот стиль более последовательный.
Мои вопросы:
- Вызывает ли передний конец серверный, который вызывает API? Или внешний интерфейс просто вызывает API вместо вызова внутреннего?
- Бэкэнд только выполняет API, и API возвращает управление бэкэнду (где бэкэнд действует как главный контроллер, делегируя задачи)?
Приветствуются длинные и подробные ответы, объясняющие роль API наряду с интерфейсной частью. Если ответ зависит от модели программирования (модели, отличные от модели Model-View-Controller), пожалуйста, опишите эти другие способы мышления API. Благодарю. Я очень смущен.