30
December
2005

Новый год 2006

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

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

30
December
2005

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

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

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

23
December
2005

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

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

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

19
December
2005

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

Posted in: Паттерны проектирования | 19 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: Ваш досуг. Полезные советы | 61 Comments

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

13
December
2005

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

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

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

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

13
December
2005

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

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

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