May
2010
Закончил школу, университет. Ну вот а потом как-то оно так все поехало, закрутилось… Как будто приказы какие-то… Видимо крест такой у меня…
Казалось бы практически любой, -
Не нужно очень много здесь отваги, -
Способен мысли в рифму изложить
На мыслесохраняющей бумаге.
Взял ручку, лучше даже карандаш,
Вдруг опечатка, всякое бывает…
И начинаешь мысли излагать,
Ну а бумага это сохраняет.
На деле ты спустя часок-другой
Морально и физически измотан.
Листок и ручка как бы говорят:
Кончай страдать, иди работай.
Да, видимо сегодня день не тот,
К другому барду муза прилетела…
О, кстати, песню завтра напишу.
Делов-то - два куплета, два припева.
April
2010
Хайку о пессимисте, оптимисте и реалисте
Posted in: Разное (uncategorized), Ваш досуг. Полезные советы | 5 Comments
Здравствуй, читатель.
Как бы так кратко сообщить о том, что блог жив и будет жить.
Пожалуй, напишу хайку…
Солнечный лучик
С каждым днем все теплее.
Но скоро зима…
Язык к ледяной
Трубе прилип мгновенно.
Но скоро лето…
Грязь, лужи, жара,
Сугробы, дождь и ветер.
Но ждет работа…
Ждите в ближайшее время новую статью. Ориентировочно статья будет на тему коллекций в Java.
Всем удачи.
August
2009
Reflection API в Java используется для просмотра информации о классах, интерфейсах, методах, полях, конструкторах, аннотациях во время выполнения java программ.
При этом знать названия исследуемых элементов заранее не обязательно.
Все классы для работы с reflection расположены в пакете java.lang.reflect. Это метод (Method), конструктор (Constructor), массив (Array), поле (Field) и многие другие.
Вместо изучения каждого из этих элементов в отдельности, для знакомства с reflection я предлагаю вам неболь?ой пример. Мы попытаемся в runtime вывести всю возможную информацию о следующем java-классе:
package some;
public abstract class Test implements Serializable, Cloneable {
private int field;
public Test(Object field) { }
@Deprecated
protected static void method(String[] params) { }
}
?так, приступим.
March
2009
Сколько нужно потоков для обработки пользовательских запросов или крайности при использовании Singleton
Posted in: Java Web Design, J2EE, Java technologies, J2SE, Паттерны проектирования | 16 Comments
Более трех лет назад, когда я только пере?ел на Java, написал статью об использовании паттерна Singleton. Статья доступна по этой ссылке - Паттерн Singleton. Не смотря на про?ествие значительного промежутка времени, статью до сих пор читают и комментируют. Меня заинтересовала одна ссылка из комментариев, в которой довольно неплохо рассказываются нюансы реализации паттерна Singleton.
В статье говорится о том, что следующая реализация с lazy инициализацией является не оптимальной при достаточно частом обращении к getInstance():
public final class Singleton {
private static Singleton _instance = null;
private Singleton() {}
public static synchronized Singleton getInstance() {
if (_instance == null)
_instance = new Singleton();
return _instance;
}
}
Давайте попробуем определить, что же такое “достаточно часто”. Так же в статье я хочу показать Вам одну достаточно сме?ную реализацию Singleton, идею которой рассказал мне мой друг.
February
2009
Генерация Google Sitemap и нюансы его использования (googlesitemap)
Posted in: Интернет Маркетинг, SEO, Java technologies, J2SE | 12 Comments
Sitemap позволяет владельцам сайтов и веб-мастерам сообщить поисковым системам о структуре сайта и обновлении контента на его страницах. Таким образом при правильном использовании sitemap можно добиться луч?его индексирования страниц веб-ресурса поисковыми системами. Соответственно, при неправильном использовании данной технологии можно навредить самому себе (точнее своему интернет детищу).
В этой статье я хочу коротко рассказать вам о Google Sitemap, предоставить программный код на Java для простой генерации sitemap.xml, ну и открыть некоторые нюансы обнаруженные моим другом и мной, и о которых, как мне кажется, многие не знают.
(more…)
December
2008
Модель памяти Java и атомарность операций (java memory model)
Posted in: Java technologies, J2SE | 7 Comments
Бывает, что иногда почитываю разные интересные книжки.
Вот например, для собственного развития всякие JSR читаю :).
?з недавнего - просматривал JSR-133 Java Memory Model and Thread Specification (Модель памяти Java).
В данной статье хочу в который раз показать, насколько важна синхронизация потоков, на примере такого понятия как атомарность (Atomicity) операций.
Рассмотрим такой программный код:
(more…)
October
2008
Вот скажите, где могут выполняются скрипты написанные на javascript: на сервере, на клиенте? На клиенте, говорите? Это устарев?ая информация…
С введением в Java версии 1.6 Scripting API стало очень просто и удобно писать extension поинты и динамические конфигурации для серверной логики.
В этой статье я хочу коротко рассказать вам о ScriptEngine, ну и еще кое о чем.
(more…)
May
2008
Продолжаю серию статей о нововведениях в Java (начиная с версии 1.5). На этот раз разговор пойдет об аннотациях (annotation type).
Аннотации представляют собой некие метаданные, которые могут добавлятся в исходный код программы и семантически не влияют на нее, но могут использоваться в процессе анализа кода, компиляции и даже во время выполнения.
Вот основные варианты использования аннтоаций:
(more…)
April
2008
Работа с CSV. Чтение и запись CSV файлов в Java (comma separated values file)
Posted in: Java open-source проекты, Java technologies, J2SE, Полезные программы | 21 Comments
Ре?ил сделать свой вклад в мировое open-source сообщество. Как вы уже догадались из названия статьи, на этот раз речь пойдет о формате CSV.
?так, проблема заключалась в том, что генерация отчетов в формате Excel через библиотеку POI ку?ала много оперативной памяти и процессорного времени.
Сам по себе Excel, наверное, один из немногих хоро?их продуктов компании Microsoft, но вот формат файлов оставляет желать луч?его. Короче говоря, при генерации документа необходимо полностью держать его в памяти.
Выходом из ситуации является использование формата CSV (comma-separated values file format), который к счастью тоже читается с помощью Excel.
(more…)
March
2008
Социальные сети, Co-working Центры, Стартапы и Фрилансеры
Posted in: Разное (uncategorized), Ваш досуг. Полезные советы | 27 Comments
[Disclamer: все персонажы этого стёба выдуманы и не имеют реальных аналогов. Автор статьи не несет ответственности за то, что после ее прочтения вы организуете свой собственный co-working центр или как минимум стартап.]
Читая хабр я обнаружил, что каждая 10-ая статья посвящена Co-working Центрам и Стартапам (скорее всего, пока я напи?у этот пост, там добавится еще одна-две статьи о co-working центрах и уж точно не мень?е о Стартапах).
Поэтому появилась идея СТАРТАПА - создать социальную сеть (social network), посвященную Co-working центрам и Стартапам (startups). Естественно главной сущностью в этом проекте будет не кто иной как Фрилансер (freelancer).
Смысл социальной сети достаточно прост:
(more…)