Веб-приложения аналогичны настольным приложениям с точки зрения того, как их следует разрабатывать:
Шаг 1) Напишите функциональную спецификацию того, что вы хотите. Поскольку это новая область разработки для вас, я рекомендую метод итеративной разработки проекта, такой как Agile.
Шаг 2) Создайте базовый дизайн из вашей спецификации. Первая итерация является / должна быть независимой от языка / платформы. Определите, откуда будут поступать запросы (пользовательский ввод), какой (общий) компонент будет обрабатывать запросы и направлять соответствующий компонент для их обработки.
Шаг 3) Посмотрите на несколько технологий. Посмотрите, какие компоненты / функции, которые они имеют, будут соответствовать потребностям вашего приложения.
Шаг 4) Выберите язык / структуру и напишите самую базовую часть, которую вы сможете продемонстрировать работающим приложением. Например, страница отображения имени пользователя и имени пользователя. Это может быть, например, установка Drupal и вывод данных из пользовательской таблицы на странице входа / приветствия.
Шаг 5) Посмотрите, хотите ли вы уже вырвать свои волосы и высунуть свои глаза. Если вы делаете в этот момент, вернитесь к шагу 4 и сделайте это с чем-то другим. Каждый из этих шагов 4-5 итераций должен занимать не более 2-3 дней. Даже если ваше самое первое приложение не заставляет вас хотеть убивать себя, вы можете захотеть дать еще 2-3 дня, чтобы попробовать еще одно приложение, просто чтобы убедиться, что у вас есть нужные вещи.
Шаг 6) Придерживайтесь своего выбора и напишите несколько дополнительных мелких компонентов. Если вы обнаружите, что хотите убить себя в первые две недели, вам следует указать на бумаге, в чем конкретно заключаются недостатки, и посмотреть, сможете ли вы написать библиотеку для этого материала или сделать последний шаг для выбора другой платформы.
Шаг 7) Соси его и собери приложение. Надеемся, что вы можете выпустить компоненты и документацию с открытым исходным кодом для библиотек, которые вы использовали, чтобы сделать вашу жизнь жизнеспособной при создании приложения и сэкономить нам много времени.