Как придумывать алгоритмы в веб-программировании

Алгоритм - последовательность действий, которую надо выполнить для достижения конкретного результата. В программировании алгоритм лучше придумать перед написанием кода. Если задача не сложна для понимания, то его не обязательно записывать. В таком случае его можно составить и без этого. Бывает, перед тем как что-то писать, у программиста само складывается понимание, как это должно работать и какие действия, а также в какой последовательности надо запрограммировать. В некоторых случаях, если задача нестандартная и неординарная, приходится размышлять над тем, как ее реализовать, довольно длительное время. Однако, зачастую всё же приходится составлять алгоритм в письменной форме. В таком случае можно выполнить следующие действия:

  1. Определиться, как и где будут храниться данные. Обычно, в случае с веб-программированием, основная часть данных хранится в базе данных. Тогда можно записать список предполагаемых таблиц и их столбцов, а также описание того, для чего нужен каждый конкретный столбец. В процессе написания непосредственно алгоритма этот список может быть скорректирован. Кроме этого, если изначально не ясно, что и как хранить, то можно сначала выполнить пункт 2.
  2. Придумать и записать по шагам требуемые действия. При этом не обязательно записывать их с максимальной детализацией. Зачастую, удобнее и проще поступить по-другому: сначала можно записать эти действия не конкретизировано, а потом для каждого действия написать свой отдельный алгоритм, как его выполнить. Более того, для действий уже из этой последовательности могут быть записаны свои алгоритмы, и так до тех пор, пока способ решения задачи не будет описан с требуемой точностью. Это соответствует концепции функционального программирования.

Однако, тут есть оговорки относительно пункта 2. Не всегда есть нужда использовать функциональный подход. Ведь сейчас популярно и эффективно объектно-ориентированное программирование. Например, в случае с написанием web-приложения на MVC-фреймворке, можно поступить несколько по-другому:

  1. Составить список модулей - к примеру, посты, пользователи, товары и т. д.
  2. Определиться с данными и тем, как они будут храниться (пункт 1 из прошлого списка).
  3. Для каждого функционального модуля создать модель, вид и контроллер.
  4. В моделях придумать набор методов для работы с данными (типа чтения списка постов, удаления поста, редактирования, добавления). В случае же использования систем ORM наподобие Doctrine в модели можно просто описать эти данные с помощью специальных конструкций.
  5. В контроллерах создать нужные методы - действия, соответствующие требуемым возможностям приложения.
  6. Написать шаблоны.
Кроме этого, в процессе разработки надо будет выполнить еще ряд действий. Например, создать роутинги, шаблон главной страницы,  написать JavaScript-код, создать дизайн и таблицы стилей CSS и т. д.

Есть также способ, который можно применить при написании приложений. Дело в том, что хорошим стилем программирования считается комментирование кода. То есть код должен содержать большое количество комментариев. И это можно совместить с созданием алгоритма. Например, при написании метода, — предположим, действия в контроллере веб-приложения, прежде чем писать сам код, можно записать алгоритм прямо внутри этой функции в виде комментариев. Выглядеть это может так:


//Получаем номера страниц

//Проверяем правильность входных данных и преобразуем их к требуемому формату

//Получаем список товаров из модели

//Отображаем список товаров, обращаясь к виду


Затем, составив такие комментарии, уже под каждым из них можно писать код, выполняющий описанные в комментарии действия.


Комментарии

Популярные сообщения из этого блога

Почему не работает header('Location: site.com') в PHP-скрипте