30
December
2005

Новый год 2006

Posted in: Разное (uncategorized) | No Comments

Новый год для многих людей является самым любимым праздником. Как и на любом празднике, без поздравлений тут не обойтись.
Дорогие люди, примите мои искренние поздравления в этот день. Позабудьте все свои беды и неудачи, а в Новый 2006 год возьмите все самое хоро?ое и доброе, что есть в ва?их сердцах. ?дите вперед, к новым победам. Желаю вам, ва?им друзьям и близким всего-всего.
Будьте счастливы!
С наступающим Новым годом.
(more…)

30
December
2005

Паттерн Factory Method (Фабрика)

Posted in: Паттерны проектирования | 22 Comments

Factory Method - это паттерн создания объектов (creational pattern). Данный ?аблон проектирования предоставляет интерфейс для создания экземпляров некоторого класса. В момент создания наследники могут определить, какой класс инстанциировать. ?ными словами, Фабрика делегирует создание объектов наследникам родительского класса. Это позволяет использовать в коде программы не специфические классы, а манипулировать абстрактными объектами на более высоком уровне.
Паттерн проектирования Factory встречается очень часто. Рассмотрим неболь?ой пример на Java.
(more…)

23
December
2005

Старые DOS игры (dos-games)

Posted in: Ваш досуг. Полезные советы | 25 Comments

Кажется, индустрия компьютерных игр движется к краю пропасти. Все боль?е внимания уделяется графике с ее бесконечными возможностями и все мень?е - смысловой нагрузке. ?гра, которая не соответствует современным требованиям к компьютерной графике, заранее обречена. Люди разных возрастов годами с нетерпением ждут выхода нового сиквелла, который натренирует их реакцию, научит жестокости и поможет снять напряжение (неизвестно откуда взяв?ееся, наверное, с предыдущего сиквелла).
Где же вы, старые добрые DOS игры? ?гры, которые завоевывали на?и сердца. Время от времени ностальгия накрывает меня с головой и я вновь окунаюсь в мир сказок и приключений.
(more…)

19
December
2005

Паттерн Strategy (Стратегия)

Posted in: Паттерны проектирования | 22 Comments

Этот паттерн проектирования известен также под названием Policy. Суть его состоит в том, чтобы создать несколько моделей поведения (стратегий) для одного объекта и вынести их в отдельные классы. Вот ряд преимуществ данного паттерна:

  • позволяет выбирать модель поведения объекта динамически;
  • упрощает процесс добавления новых стратегий;
  • является альтернативой наследованию;
  • избавляет от множества условий (if, case);
  • делает еще много всего.

Если вам понятно, что значит каждый из этих пунктов (особенно 5-ый), переходите сразу к примеру на Java. А мы пока рассмотрим эти пункты немного подробнее.
(more…)

16
December
2005

Вся наша Жизнь - Игра (Life)

Posted in: Ваш досуг. Полезные советы, Полезные программы | 5 Comments

Порылся в своих архивах за прошлое тысячелетие и обнаружил одну интересную вещь. Это игру�?ка (если можно так назвать) “Жизнь” (Life), написанная еще на древнем Delphi. После некоторых исправлений, программу удалось переписать под седьмую версию Delphi.
Вернемся к игре. Ее изобретателем был математик Джон Хортон Конвей (John Conway).
Представьте, что у нас есть бесконечное поле в клеточку. Скоростью света назовем скорость, с которой �?ахматный король передвигается по этому полю. Клеточка может быть либо пустой, либо занятой некоторым организмом. Существует всего ли�?ь три правила “Жизни”:
(more…)

15
December
2005

Использование Connection Pool (DBCP) в Tomcat

Posted in: Java open-source проекты, Java technologies, J2SE | 13 Comments

В на�?е время трудно представить себе веб-приложение, которое не использовало бы базу данных для своих нужд. При работе с базой данных очень важно следить за соединениями к базе и вовремя освобождать их. Для этих целей разработчики веб-приложений пи�?ут так называемые Connection Pools (или же используют/исправляют существующие).
Одним из луч�?их сервлет-контейнеров есть Apache Tomcat. Tomcat хоро�?о еще и тем, что он использует свой собственный DBCP (Database Connection Pool).
О том, как в полной мере воспользоваться преимуществами DBCP сервера Tomcat, и будет эта статья.
(more…)

13
December
2005

Java-хостинг в Украине

Posted in: Ваш досуг. Полезные советы | 11 Comments

Спросил у знакомы, поискал в интернете. Нету пока что Java-hosting’a в Украине. Провайдеры, которые предоставляли такие услуги, наверное, посчитали этот хостинг неприбыльным. Но есть альтернатива. п имя ей - co-location.
Co-location - это размещение некоторого оборудования (в на?ем случае - сервера) на площадках провайдера.
Вот что мы имеем:
(more…)

13
December
2005

Шахматная задача

Posted in: Ваш досуг. Полезные советы | 78 Comments

Ва?ему вниманию предлагается интересная ?ахматная задача. Белые ставят мат в один ход. Вы наверное скажете: “Да такую задачку ре?ит любой, кто знает как ходят ?ахматные фигуры.” Не все так просто.
В комментариях уже есть ре?ение этой ?ахматной задачи. Перед тем как его просмотреть, попробуйте все же одолеть ее самостоятельно.
Мат в один ход

13
December
2005

Паттерн Facade (Шаблон Фасад на Java)

Posted in: Паттерны проектирования | 7 Comments

Вернемся к рассмотрению паттернов проектирования. На мой взгляд, паттерн Facade (Фасад) встречается достаточно часто и соответственно заслуживает внимания.

Нужен он вот для чего. При написании кода программисту приходится использовать различные third-party библиотеки. Часто API библиотек довольно абстрактное. Некоторые методы классов могут быть вообще не нужны или содержать параметры, которые не существенны для ре�?ения конкретной задачи. Далее, для получения результата могут понадобиться длинные цепочки вызовов методов или же сам результат будет не совсем в подходящем виде. Худ�?ий вариант - это использование плохо спроектированной библиотеки, с чем тоже иногда приходится работать.
Все эти проблемы можно ре�?ить с помощью паттерна Facade.
(more…)

13
December
2005

Паттерн Singleton (Одиночка)

Posted in: Паттерны проектирования | 36 Comments

English version of this article you can find here.
Этим постом я открываю цикл статей, посвященных паттернам проектирования. Все написанное мной основывается исключительно на личном опыте.
Паттерны проектирования - это описание некоторых проблем, возникающих во время объектно-ориентированного проектирования, а также способов их ре?ения (как практических, так и теоретических). ?ными словами - это примеры правильных подходов к ре?ению типичных задач проектирования.
Одним из самых распространенных паттернов является Singleton (Одиночка). Задача этого паттерна ограничить количество экземпляров некоторого класса. Зачем это может понадобиться? Об этом читайте ниже. Реализовать же паттерн Singleton на языке Java можно следующим образом:
(more…)