UNIX FreeBSD — небольшой FAQ

Как сделать?
На этой странице собраны документы, которые помогут вам в повседневной работе.

читать тут — http://www.ngu.ru/how-to/

Аспектно-ориентированная разработка программного обеспечения (AOSD)

Уже много лет объектно-ориентированный подход к программированию пользуется широкой популярностью. В небольших краткосрочных проектах едва ли будут заметны его преимущество, но без него любой крупный проект фактически обречен. Именно объектно-ориентированные языки программирования имеют все необходимое, для того, что бы представить бизнес-логику проекта в наглядном виде. Даже при проектировании самой логики системы ныне напрашивается диаграмма классов UML. Наглядная бизнес логика позволяет легко включаться в проект новым участникам, бережет время авторам кода, вернувшимся в проект после длительного перерыва. Наглядная бизнес логика ощутимо сокращает число ошибок в проекте. Но достаточно ли использования объектно-ориентированного подхода к программированию для того, что бы достичь столь желанной наглядной бизнес логики? Очевидно — нет. Добиться изящной объектно-ориентированной программной архитектуры достаточно сложно. Но если вы использовали приемы из книги “Refactoring: Improving the Design of Existing Code”, Martin Fowler, возможно вам это удалось.

Однако даже теперь мы можем найти в коде сквозную функциональность (crosscutting concerns), участвующую в самых различных классах (протоколирование, кеширование, синхронизация, трассировка, контроль безопасности, контроль транзацкий). Организовать подобную программную логику поможет AOSD (Апектно-ориентированная разработка программного обеспечения, http://en.wikipedia.org/wiki/Aspect-oriented_programming).

Что такое AOSD?

Аспектно-ориентированная разработка программного обеспечения (AOSD) относительно новая парадигма разработки бизнес приложений. Основа данного подхода – Аспект. Это точка зрения, с которой может быть рассмотрено какое-либо понятие, процесс, перспектива. Что бы быстрее вникнуть в суть подхода давайте, рассмотрим веб-сайт в различных аспектах. Информационная архитектура описывает сайт в аспекте организации его структуры. Юзабилити описывает сайт в аспекте удобства его использования. Графический дизайн представляет сайт в аспекте его визуального восприятия. Функциональная модель описывает сайт в аспекте его бизнес-логики. Все это различные составляющие процесса разработки веб-сайта, каждая из которых требует специфичных ресурсов, подходов и реализаций. Успешный проект подразумевает качественное решение со стороны каждого их этих аспектов. Если кому-либо данный пример покажется сложным, можно обратиться к более простой и универсальной схеме. Когда проектируется жилой дом, архитекторы проектируют каркасный чертеж, далее подготавливается схема электропроводки, схема водоснабжения и прочее. Очевидно, что каждый этап является самостоятельным, но необходимым для успеха всего проекта. Каждый этап – это аспект, в котором можно рассматривать проект. Как это ни банально, но в разработке программного обеспечения может быть использован тот же принцип выделения аспектов бизнес логики приложений.

продолжение — http://www.cmsdevelopment.com/ru/articles/aosdinphp/

код — http://www.phpclasses.org/browse/package/2633.html

ERP система ipi-manager.ru

Системы управления задачами в настоящее время широко применяются в крупных организациях, и требуют глубокого систематизированного подхода при внедрении и развертывании. Однако, в SMB-сегменте рынка, системы класса HelpDesk, ServiceDesk и TaskManager применяются крайне редко, по причине высокой стоимости программного обеспечения и сложности в конфигурации и настройке.

приоритеты, связи задач, AJAX