Мне нужна помощь с созданием роадмапа для разработчика, который занимается веб-сайтами. Необходимо ли использовать файл WADL в этом процессе?

У меня есть опыт работы с HTML, CSS, JS, PHP и другими технологиями. Я знаком с фреймворком Bootstrap и его производными, такими как AdminLTE, а также использовал YII и YII2. В области PHP достиг определенных успехов, но часто сталкиваюсь с проблемами, особенно когда приходит время разрабатывать что-то новое. В своей работе я использую стек OpenBSD+NGINX+MariaDB+PHP. Ранее я использовал Eclipse, но он кажется мне слишком тяжелым и часто находит ошибки в стандартных фреймворках. PHPStorm тоже не пришелся мне по душе, поэтому сейчас предпочитаю Far или mcedit, а недавно начал использовать Notepad++.

Недавно я узнал о двух новых для себя концепциях — SOAP и RESTful, и у меня возникли несколько вопросов:

1. Нужно ли создавать файлы WSDL и WADL вручную, или существуют инструменты для их автоматической генерации? Насколько они необходимы? Я понимаю, что SoapUI требует их для тестирования API веб-приложений. Я уже придумал приложение и представляю необходимые функции, однако, когда начну их реализовывать, понимаю, что могут возникнуть непредусмотренные состояния. Нужно ли документировать функции в виде таких файлов, чтобы затем обеспечить полное покрытие тестами на серверной стороне?

2. Я планирую разработать приложение в формате REST, поскольку данные из БД будут передаваться в формате JSON, а не XML. У меня нет опыта передачи XML данных на веб-страницу "на лету", но я помню, что работал с JSON через HTTP Request. Нужно ли попробовать использовать XML для этой задачи, или стоит сосредоточиться на JSON?

3. Каковы приблизительные сроки разработки веб-приложения для разработчиков? Я бы хотел составить таймлайн с разбивкой по дням, ведь мне было бы идеально завершить проект за пару дней. Однако я понимаю, что имертельный объем работы никто не отменял, и...
  • 12 ноября 2024 г. 12:03
Ответы на вопрос 1
Создание роадмапа для разработчика, который фокусируется на веб-разработке, — это важный шаг для достижения успеха в проекте. Давайте разберёмся с вашими вопросами и подготовим на основе этого роадмап.

### 1. WSDL и WADL

**Необходимость создания WSDL/WADL:**
- WSDL (Web Services Description Language) используется для описания SOAP-сервисов, а WADL (Web Application Description Language) — для описания RESTful API. 
- Если вы разрабатываете RESTful API, вам не обязательно использовать WADL, так как многие разработчики предпочитают писать документацию вручную или использовать более современные инструменты, такие как OpenAPI (Swagger), для документирования API.

**Генерация WSDL/WADL:**
- Существуют инструменты для автоматической генерации WSDL/WADL, но чаще всего более популярным является использование OpenAPI для RESTful API. Многие фреймворки также предлагают плагины, которые позволяют генерировать документацию автоматически.

**Документация:**
- Документирование функций и API важно для обеспечения понимания и поддержки вашего приложения. Это помогает не только в тестировании, но и в понимании, как использовать ваше API другим разработчикам или пользователям.

### 2. JSON против XML

При разработке RESTful приложения лучше всего использовать JSON, потому что:
- JSON проще в использовании и легче воспринимается для разработчиков, чем XML.
- Большинство современных веб-приложений и библиотек поддерживают JSON атрибуты для работы с данными и позволяют их отправлять и получать гораздо легче.
  
Если у вас ранее не было опыта с XML, разумнее сосредоточиться на JSON и разработать приложение именно с его использованием. XML можно использовать при необходимости, но это может усложнить ваш проект.

### 3. Сроки разработки

При планировании сроков разработки, важно учитывать различные факторы, такие как масштаб проекта, наличие требований, опыт и сложности, с которыми вам придётся столкнуться. Учитывая ваш опыт, вот примерный таймлайн для разработки простого веб-приложения на REST:

- **День 1:** 
  - Определение требований и планирование архитектуры приложения.
  - Составление схемы базы данных (если применимо).
  
- **День 2:** 
  - Настройка окружения (NGINX, MariaDB, PHP).
  - Разработка REST API (создание маршрутной системы, контроллеры, модели).

- **Дни 3-4:**
  - Реализация логики приложения (взаимодействие с базой данных).
  - Написание дальнейшей логики для API, включая обработку ошибок.

- **День 5:** 
  - Подготовка фронтенда (HTML, CSS, JS, использование Bootstrap).
  - Связывание фронтенда с бэкендом (AJAX-запросы).

- **Дни 6-7:** 
  - Тестирование API и фронтенда.
  - Написание документации и устранение найденных ошибок.

**Итого:** Основное приложение может быть завершено за 1-2 недели в зависимости от сложности. Не забывайте оставить время для возможных доработок и исправлений.

### Роадмап
1. Подготовительный этап (определение требований + торговая платформа)
2. Настройка окружения
3. Разработка бэкенда
4. Разработка фронтенда
5. Тестирование
6. Итоговая документация и исправления

Этот роадмап можно детализировать в зависимости от требований вашего проекта. Удачи с разработкой!
Похожие вопросы