Моя библиотека - социальная сеть любителей книг

AJAX-светофорчики

Проектирование 12.08.2008

Интро

Вот появилась свободная минутка… В далеком 2007-ом году у меня была статья о “flash-сообщениях” - сообщения которые мы показываем пользователю после перезагрузки страницы. Очень удобная и нужная штука :)

Но эти сообщения не подходят для AJAX-обработчиков. Что же делать? Ведь AJAX-функций на наших сайтах становится все больше.

И вот сегодня, по служебной необходимости, мне понадобилось уведомлять пользователей о результатах AJAX-функций.

Читать полностью »

35 принципов объектно-ориентированного дизайна

Проектирование 14.03.2008

Я не люблю копировать чужие мысли, но эта статья будет копией =) Копией замечательного перевода отрывка из книги Брюса Эккеля «Thinking in Java.». Автор перевода Анатолий Тутов.

И так приступим:

  1. Изящество всегда вознаграждается. Может показаться, что слишком долго искать действительно красивое решение проблемы, но когда вы сможете легко адапатировать его к новой ситуации, избежав долгих часов, дней, а то и месяцев борьбы с собственным кодом, вы будете вознаграждены(даже если со стороны это будет незаметно). Это позволит вам создать программу, которую легко не только скомпилировать и отладить, но и понимать и изменять, что, собственно, и составляет коммерческую ценность. Понимание этого пункта требует некоторого опыта, поскольку, пока вы делаете фрагмент кода элегантным, кажется, что вы мало продуктивны. Не поддавайтесь спешке и суете, они только замедлят вашу работу.
  2. Сначала заставь работать, потом ускоряй.
    Это верно, даже если вы уверены, что фрагмент кода действительно важен и будет основным узким местом в вашей системе. Не торопитесь. Сперва заставьте систему работать с настолько простым решением задачи, насколько это возможно. Уже потом, если решение оказалось не достаточно быстрым, профилируйте его. Почти всегда вы обнаружите, что ваше мнимое узкое место не проблема. Потратьте время на более важные вещи.
  3. Читать полностью »

UML - это просто. Диаграммы последовательностей.

Проектирование 05.12.2007

Интро

В своей первой статье “UML - это просто” я описывал диаграммы классов, хотя правильнее было бы начать с общего описыния языка, потом перейти на описание сущностей и собственно начать с диаграмм последовательностей. Но, мне просто хотелось вас заинтересовать. :) И я решил подать в доступной форме довольно сложный материал. Судя по комментариям, у меня это получилось. :)

В общем, как понятно из названия, в этой статье, я постараюсь рассказть о втором (а зачастую и первом) типе диаграмм - диаграммах последовательностей. Забегая вперед, скажу, что эти диаграммы покроют, практически, 90% ваших потребностей при проектировании интернет-приложений. При этом они намного легче диаграмм классов.

Читать полностью »

UML - это просто

Программирование, Проектирование 09.11.2007

Сегодня я постараюсь рассказать о трех буквах, которые слышали практически все программисты… нет, это не те буквы… :) Это UML.

В двух словах

UML (Unified Modeling Language) - унифицированный язык моделирования - это язык графического описания для объектного моделирования в области разработки программного обеспечения. UML является языком широкого профиля, это открытый стандарт, использующий графические обозначения для создания абстрактной модели системы, называемой UML моделью. UML был создан для определения, визуализации, проектирования и документирования в основном программных систем.

Использование UML не ограничивается моделированием программного обеспечения. Его также используют для моделирования бизнес-процессов, системного проектирования и отображения организационных структур.

Разновидности

Существует 13 официальных диаграмм UML 2.0, каждая из которых представляет собой различное представление разных аспектов системы:

  • Диаграмма активности;
  • Диаграмма классов;
  • Диаграмма связей;
  • Диаграмма компонентов;
  • Диаграмма составных структур;
  • Диаграмма развертывания;
  • Диаграмма обзора взаимодействий;
  • Диаграмма объектов;
  • Диаграмма пакетов;
  • Циклограмма;
  • Диаграмма машин состояния;
  • Диаграмма синхронизации;
  • Диаграмма прецедентов.

Но мы себе сразу выносить мозг не собираемся (мы будем делать это постепенно), так что сегодня поговорим только об одном виде диаграмм - диаграммах классов. И проиллюстрируем все примерами на PHP.
Читать полностью »

Скажи кэшированию… иногда :)

Программирование, Проектирование 16.10.2007

Когда я писал статью о Smaty, я не думал, что она вызовет столько внимания со стороны программистов. Как выяснилось шаблонизаторы, все еще остаются актуальной темой.

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

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

Мы не будем кэшировать старницу целиком, данный подход устарел. В реалиях “двух нулей” активно используется кэширование отдельных блоков. А если еще точнее, то мы будем кэшировать только чистые данные, т.е. никакого HTML.

Читать полностью »


Copyright, 1983 – 2010