Архив на категорию : 'Профессиональный php'

Novice

В этой статье я постараюсь описать те проблемы и пути их решения, с которыми я впервые столкнулся при работе с проектами с суточной посещаемостью 300 тысяч человек и более.

Для меня, как начинающего в этой области, было сложно найти некоторую отправную точку. Думаю, я такой не один и информация, изложенная в этой статье, пригодится кому-то еще. Сразу скажу, что когда проект работает на высоких нагрузках, то оптимизация и настройка его производится индивидуально в каждом случае, однако, используемые инструменты одинаковы.

Очевидно, что работа с проектом при таких нагрузках ведется исключительно на выделенных серверах, поэтому далее я буду учитывать, что мы имеем в своем полном распоряжении один или более выделенных сервера.

Все проводимые работы можно условно разделить на несколько фронтов – база данных, сами скрипты и организация группы серверов.
Читать далее »

Novice

Сегодня наконец вернемся к теме шаблонов проектирования и рассмотрим такое шаблон как Итератор.

Для начала давайте рассмотрим в общих чертах некоторые ситуацию в которой этот шаблон может помочь.

Допустим, задача нашей программы – проверка работоспособности какой-то сложной системы из большого кол-во разнообразных объектов-модулей. Для этого нужно будет последовательно обратиться к каждому объекту и проверить его состояние.

В случае, если все объекты в рабочем состоянии, то и сама система тоже работает.
В этом случае нужно как-то реализовать последовательный обход всех объектов. Для этого, предварительно нужно их собрать как-то в коллекцию и организовать удобный доступ к ней через промежуточный интерфейс.
Читать далее »

Novice

Сегодня я попробую в общих чертах описать методологию составления требований к ПО под названием VORD. Расшифровывается это как Viewpoint-Oriented Requirements Definition (”Определение требований на основе точек зрения”).

Главным принципом, положенным в основу этого метода является то, что весь необходимый функционал структурируется в соответствии с группами пользователей системы.

План написания требований методом VORD выглядит так:

  1. Определение всех “точек зрения” на систему. Составление списка пользователей и внешних систем взаимодействующих с системой.
  2. Структурирование точек зрения. Построение иерархии точек зрения.
  3. Документирование точек зрения.

Первый этап обычно выполняет в стиле “мозговой атаки”. Вся система условно делится на сервисы и точки зрения (пользователи системы или внешние системы, взаимодействующие с ней). Результатом этой работы становится длинный список точек зрения и сервисов.
Читать далее »

Novice

Те, кто читал мою последнюю статью про составление требований к программному продукту и попробовали составить требования самостоятельно, должны в полной мере представить себе проблемы, возникающие в этом процессе, особенно, если ПО очень большое.
Если обобщить все проблемы, то они сводятся к двум вещам – как структурировать несколько листов текста с требованиями и как учесть все требования, необходимые конечным пользователям.
Стоит заметить, что вторая проблема стоит особо остро, когда разработчики не разбираются в предметной области, для которой пишется программа (например, систему электронных торгов на бирже). Читать далее »

Novice

В этой статье я решил в общем виде рассмотреть такой этап разработки ПО, как составление требований. Несмотря на то, что большинство программистов пренебрегают этим этапом в своей работе, тот, кто научится выполнять этот этап самостоятельно – перейдет на совершенно новый уровень разработки ПО.

Что же такого классного в этом, я расскажу далее.

Для начала можно перечислить все абстрактные преимущества выполнения этого этапа:

  1. У программиста появляется больше уверенности в процессе кодирования.
  2. Процесс выполнения проекта становится легче отслеживать.
  3. В любое время можно примерно оценить время, оставшееся до конца разработки.

Для менеджеров IT проектов эти вещи, конечно же, являются скорее необходимостью, чем преимуществом, но ведь ими еще надо стать :) И эта статья будет Вашим первым шагом на этом пути.
Читать далее »

Novice

Сегодня рассмотрю один интересный антипаттерн под названием… в оригинале это звучит как “Vendor Lock-in”, но если перевести на русский, то получится что-то вроде “Запертый производителем” или “Зависимость от производителя”.
Суть этого антипаттерна заключается в том, что разрабатываемое ПО использует некоторые функционал ПО другого производителя.

Рассмотрим на явном примере – допустим, что мы разрабатываем программу – почтовый клиент с веб-интерфейсом. Если это ПО пишется на php, то наиболее вероятно, что в нем будет использована библиотека для работы с электронной почтой – phpmailer.
Читать далее »

Novice

Фабричный метод, фабрика или виртуальный конструктор – это все шаблон проектирования, который предоставляет интерфейс для создания объектов имеющих схожие свойства своим подклассам.

Грубо говоря, фабричный метод – это обычный метод класса, который возвращает объекты при обращении к нему (создавая их при этом). Такой прием, в основном, используется для унификации архитектуры системы. Как следствие этого – объекты, порожденные фабричным методом, имеют одинаковые интерфейсы.
Читать далее »


Страница 1 из 3123»


© 2008 - 2010 i-novice.net | Все права защищены.