<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
	<title>Хабрахабр:  Метки / java</title>
	<link>http://habrahabr.ru/rss/tag/java/</link>
	<description><![CDATA[]]></description>
	<language>ru</language>
	<managingEditor>editor@habrahabr.ru</managingEditor>
	<generator>habrahabr.ru</generator>
	<pubDate>Sat, 11 Feb 2012 00:48:49 GMT</pubDate>
	<lastBuildDate></lastBuildDate>
	<image>
		<link>http://habrahabr.ru/</link>
		<url>http://habrahabr.ru/i/logo.gif</url>
		<title>Хабрахабр</title>
	</image>
	
			
		<item>		
			<title><![CDATA[JAVA / Непрерывный мониторинг JVM с помощью Zabbix]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/137641/</guid>
			<link>http://habrahabr.ru/blogs/java/137641/</link>			
			<description><![CDATA[Предположим, у вас есть большое приложение написанное на Java. Это может быть web-сервлет размещенный в контейнере или standalone-сервис. В процессе разработки (да и во время эксплуатации) возникает необходимость отслеживать процессы, протекающие в JVM: работу garbage collector, использование памяти, жизненный цикл потоков, а так же иные специфичные для вашего проекта показатели по средствам MBean. Самый простой вариант — использовать профилировщик. Но увы, проблемы не случаются по расписанию, и невозможно заранее знать, когда нужно подключить профилировщик, а держать его постоянно включенным тоже не вариант. В таких случаях идеальное решение — непрерывный мониторинг. О нем и пойдет речь. Но для начала пара слов о классической профилировке.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/137641/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Fri, 10 Feb 2012 01:48:12 GMT</pubDate>
			<author>redcraft</author>
			<category>jvm</category><category>java</category><category>zabbix</category><category>monitoring</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[JAVA / Размер Java объектов. Используем полученные знания]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/136883/</guid>
			<link>http://habrahabr.ru/blogs/java/136883/</link>			
			<description><![CDATA[В <a href="http://habrahabr.ru/blogs/java/134102/">предыдущей статье</a> много комментаторов были не согласны в необходимости наличия знаний о размере объектов в java. Я категорически не согласен с этим мнением и поэтому подготовил несколько практических приемов, которые потенциально могут пригодится для оптимизации в Вашем приложении. Хочу сразу отметить, что не все из данных приемов могут применяться сразу во время разработки. Для придания большего драматизма, все расчеты и цифры будут приводится для 64-х разрядной HotSpot JVM.<br/>
<br/>
<h6>Денормализация модели</h6><br/>
Итак, давайте рассмотрим следующий код:<br/>
<pre><code class="java">class Cursor {
    String icon;
    Position pos;
    Cursor(String icon, int x, int y) {
         this.icon = icon;
         this.pos = new Position(x, y);
    }
}
class Position {
    int x;
    int y;
    Position(int x, int y) {
        this.x = x;
        this.y = y;
    }
}
</code></pre><br/>
А теперь проведем денормализацию:<br/>
<pre><code class="java">class Cursor2 {
    String icon;
    int x;
    int y;
    Cursor2(String icon, int x, int y) {
        this.icon = icon;
        this.x = x;
        this.y = y;
    }
}
</code></pre><br/>
Казалось бы — избавились от композиции и все. Но нет. Объект класса Cursor2 потребляет приблизительно на 20% меньше памяти чем объект класса Cursor (по сути Cursor + Position). Такое вот не очевидное следствие декомпозиции. За счет ссылки и заголовка лишнего объекта. Возможно это кажется не важным и смешным, но только до тех пор, пока объектов у Вас мало, а когда счет идет на миллионы ситуация кардинально меняется. Это не призыв к созданию огромных классов по 100 полей. Ни в коем случаем. Это может пригодится исключительно в случае, когда Вы вплотную подошли к верхней границе Вашей оперативной памяти и в памяти у Вас много однотипных объектов.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/136883/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Wed, 08 Feb 2012 11:32:12 GMT</pubDate>
			<author>doom369</author>
			<category>java</category><category>compressed references</category><category>размер объекта</category><category>оптимизация</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Блог компании Jelastic / Jelastic на Java Day SPB 2012]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/company/jelastic/blog/137775/</guid>
			<link>http://habrahabr.ru/company/jelastic/blog/137775/</link>			
			<description><![CDATA[<img src="http://1efac12d36786c946e0b6842b84a9fb8.app.hivext.com/xssu/cross/download/UzRXUw9RD0tgVTlGQkVaRQgcTUQJQGkceiMmVkcWRgUPDgBCY1VLQEg%3D/view" alt="image" align="left"/>Рады сообщить, что члены команды <a href="http://jelastic.com">Jelastic</a> Дмитрий Лазаренко и Марина Справа будут принимать участие в конференции разработчиков <a href="http://www.javaone.ru/javaday/">Java Day SPB 2012</a>, которая состоится 10 февраля 2012 года. Мы приготовили для вас очень интересный доклад: «Один в поле не воин: как построить кластер GlassFish 3.1.1». Доклад состоится в зале «Stenberg» гостиницы Holiday Inn Московские Ворота (Санкт-Петербург, Московский проспект, 97а) на 17.45. Вы узнаете, как можно построить отказоустойчивый кластер серверов GlassFish. Будут рассмотрены такие вопросы, как регистрация серверов на балансировщике нагрузки, организация sticky sessions, репликация сессий между серверами, администрирование кластера, обновление приложений на кластере и дополнительное потребление ресурсов серверами в данной конфигурации. И конечно же увидите как это все работает на Jelastic. <div class="habracut"> <a class="habracut" href="http://habrahabr.ru/company/jelastic/blog/137775/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Wed, 08 Feb 2012 11:27:43 GMT</pubDate>
			<author>jelastic</author>
			<category>Jelastic</category><category>java</category><category>Java Day</category><category>GlassFish</category><category>кластер</category><category>sticky sessions</category><category>репликация</category><category>сервер</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Блог компании Ciklum / Поделись опытом и послушай Java-гуру на Сиклум Java Субботнике 11 февраля]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/company/Ciklum/blog/137842/</guid>
			<link>http://habrahabr.ru/company/Ciklum/blog/137842/</link>			
			<description><![CDATA[Мы снова открываем сезон Сиклум Субботников в Киеве! Наш <a href="http://habrahabr.ru/company/Ciklum/blog/133628/">прошлый Сиклум Java Субботник</a> в столице Украины был настоящим фуррором — его посетили 150 человек! Видя такой интерес и учитывая пожелания встретиться вновь, мы решили повторить :) и организовать еще одно полезное и приятное мероприятие для всех, кто программирует или только собирается начинать работать на Java.<br/>
<br/>
По традиции, <b>мы приглашаем всех желающих бесплатно посетить Сиклум Java Субботник 11 февраля</b> <a href="http://www.facebook.com/media/set/?set=a.10150189684171883.327702.50593631882">в нашем киевском офисе</a><br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/company/Ciklum/blog/137842/#habracut">Интересные подробности под хабра-катом</a> </div>]]></description>
			
			<pubDate>Wed, 08 Feb 2012 10:54:41 GMT</pubDate>
			<author>atael</author>
			<category>ciklum saturday</category><category>ciklum</category><category>сиклум</category><category>java</category><category>Java SE</category><category>OSGI</category><category>ESB</category><category>RESTful</category><category>Dependency Injection</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Блог компании Jelastic / GlassFish кластеризация в Jelastic]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/company/jelastic/blog/136996/</guid>
			<link>http://habrahabr.ru/company/jelastic/blog/136996/</link>			
			<description><![CDATA[Как вам уже известно, <a href="http://glassfish.java.net/">GlassFish</a> — высоконадежный Java EE сервер приложений с полной поддержкой промышленной кластеризации и широким спектром функций. <br/>
До недавнего времени Glassfish использовался в <a href="http://jelastic.com">Jelastic Java PaaS</a> просто как отдельный сервер, теперь же мы поддерживаем все функции этого сервера, включая высокую доступность (HA). <br/>
<img src="http://1efac12d36786c946e0b6842b84a9fb8.app.hivext.com/xssu/cross/download/U2cFXVRbWB03AjxBEUIJFgVPQkYJEm8bKyBSPRTDhYUSlEPDgBCY1VLQEg%3D/view" alt="image" align="left"/><br/>
Мы сберегли «родную» кластерную архитектуру GlassFish, которая основана на концепции административного домена. Административные домены состоят из кластеров и инстансов, контроль над которыми осуществляется с помощью <b>DAS</b> (Domain Administration Server). <br/>
<br/>
Вы можете управлять центральным репозитарием с помощью <b>админ консоли</b>. Это легкий в использовании GUI, который поддерживает все фичи, доступные в Glassfish. DAS управляет Java инстансами домена, а <b>GMS</b> (Group Management Service) отвечает за предоставление информации о кластере и его инстансах. <br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/company/jelastic/blog/136996/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Wed, 08 Feb 2012 08:55:41 GMT</pubDate>
			<author>jelastic</author>
			<category>Jelastic</category><category>GlassFish</category><category>Java</category><category>PaaS</category><category>кластеризация</category><category>масштабирование</category><category>DAS</category><category>NGINX</category><category>JavaEE</category><category>сервер</category><category>GMS</category>
		</item>
		
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[JAVA / [Из песочницы] Java DNS API, Wikipedia и twitter-марафон в одном флаконе]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/137721/</guid>
			<link>http://habrahabr.ru/blogs/java/137721/</link>			
			<description><![CDATA[Некоторое время назад я решал задачу автоматической покупки домена. Нужно было оформить в виде библиотеки (jar и файл настроек), которая использовалась бы в корпоративном приложении на Java. Я начал поиски DNS провайдеров с public API. Желательно, чтобы API были попроще, и домены подешевле — такой баланс оказалось не просто найти. <div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/137721/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Mon, 06 Feb 2012 18:29:42 GMT</pubDate>
			<author>tekktan</author>
			<category>java</category><category>dns</category><category>twitter</category><category>wikipedia</category>
		</item>
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[NoSQL / Подводные камни в Project Voldemort]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/nosql/137704/</guid>
			<link>http://habrahabr.ru/blogs/nosql/137704/</link>			
			<description><![CDATA[Используется в одном из наших проектов такая штучка как <a href="http://project-voldemort.com">Project Voldemort</a>. <br/>
Если вкратце, то это весьма любопытная реализация key-value storage aka NoSQL database, реализованная в недрах Linkedin. То есть даешь ему ключик и значение, и оно быстро в памяти это хранит/отдает и на диске тоже сохраняет. Интересна она, в принципе, не этим, а своей реализацией кластеризации, неплохой скоростью, ну тем что часто используется в проектах на Java. В принципе, подробного обзора этой БД на Хабре не было, и можно как нибудь сделать. Но рассказать я тут хочу пока о одних граблях, с которыми пришлось столкнуться.<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/nosql/137704/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Mon, 06 Feb 2012 13:27:51 GMT</pubDate>
			<author>deniszh</author>
			<category>bdb je</category><category>berkeley db java edition</category><category>java</category><category>project voldemort</category><category>tuning</category><category>voldemort</category>
		</item>
		
		
		
		
		
		
		
		
	
		
		
			
		<item>		
			<title><![CDATA[JAVA / [PODCAST] «Разбор полетов» — episode 9 — Индусоустойчивость]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/137658/</guid>
			<link>http://habrahabr.ru/blogs/java/137658/</link>
			<description><![CDATA[Творческий коллектив редакции подкаста «Разбор полетов» представляет вашему вниманию очередной девятый выпуск разговорно-болтологического IT-тематического подкаста;.<br/>
В&nbsp;этом выпуске:<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/137658/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Mon, 06 Feb 2012 02:01:35 GMT</pubDate>
			<author>gAmUssA</author>
			<enclosure url="http://moscow-nthost3a.cdn.rpod.ru/00/00/01/01/92/262437-225173/Episode_9_Season_1.mp3?play=1" type="audio/mpeg" />
			<category>java</category><category>scala</category><category>actors</category><category>akka</category><category>ejb</category><category>github</category><category>profiler</category><category>plumbr</category><category>testing</category><category>разбор-полетов</category>
		</item>
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[JAVA / [Из песочницы] SOAP-сервер на Java при участии Apache CXF и Spring]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/137543/</guid>
			<link>http://habrahabr.ru/blogs/java/137543/</link>			
			<description><![CDATA[<img src="http://habrastorage.org/storage2/630/214/588/6302145888c2e1b675b27534d9bc959e.png" alt="image" align="left"/>За последнее время появилось <a href="http://habrahabr.ru/tag/soap/">несколько статей</a>, рассказывающих о протоколе <abbr title="Simple Object Access Protocol">SOAP</abbr>, а также описывающих процесс создания сервера на различных языках и платформах. Продолжим тему. В этой статье будет описываться создание сервера на языке Java с использование Apache CXF и Spring Framework. Предполагается, что читатель уже имеет общее представление об упомянутом протоколе, а также о работе с ant и maven. Для того, чтобы сделать задачу немного интереснее, добавим начальное условие: дана <abbr title="Web Services Definition Language">WSDL</abbr>-схема, описывающая веб-сервис. Итак…<br/>
(Картинка из статьи на <a href="http://ru.wikipedia.org/wiki/SOAP">Wikipedia</a>.)<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/137543/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Fri, 03 Feb 2012 09:13:56 GMT</pubDate>
			<author>artspb</author>
			<category>soap</category><category>wsdl</category><category>java</category><category>cxf</category><category>spring framework</category><category>ant</category><category>maven</category><category>tomcat</category><category>soapui</category><category>idea</category>
		</item>
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[JAVA / Swing. Десять полезных простых вещей]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/137347/</guid>
			<link>http://habrahabr.ru/blogs/java/137347/</link>			
			<description><![CDATA[<img src="http://docs.oracle.com/javase/tutorial/images/ThinkingDuke.png" alt="image" align="right"/><br/>
<br/>
Хочу поделиться недавним опытом разработки апплетов на <a href="http://ru.wikipedia.org/wiki/Swing">Swing</a> и рассказать про подводные камни, приемы найденные и использованные в процессе работы. <br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/137347/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Wed, 01 Feb 2012 02:49:47 GMT</pubDate>
			<author>Akvel</author>
			<category>java</category><category>swing</category><category>applet</category>
		</item>
		
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[JAVA / [Из песочницы] JTable и Serializable или таблицы в Java и танцы с бубном при сохранении объектов в файлы]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/137352/</guid>
			<link>http://habrahabr.ru/blogs/java/137352/</link>			
			<description><![CDATA[<h4>Введение</h4><br/>
Так получилось, что как дизайнеру, мне необходим простор для творчества при реализации любых зачач в написании программ. Давно я положил глаз на такую платформу как Java, так-как всегда мечтал о кроссплатформенном программном обеспечении. И вот недавно, я решил освоить такой прекрассный компонент в Java, как JTable, ну и по той причине, что всегда любил использовать таблицы в своих программах.<br/>
<br/>
В общем, я поставил перед собой не сложную задачу — создать таблицу, которую мог бы сохранять в файл как объект и паралельно отслеживать введенные пользователем данные подсвечивая ошибки и упрощая общение с таблицей моей программы путем подсвечивания наиболее важных элементов таблицы. Так-как я сторонник программирования по принципу пошаговой отладки при написании кода, наличие готовых кусков стабильного кода в сети Интернет, было для меня очень важным… Но… После тщательных поисков, экспериментально было установлено<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/137352/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Tue, 31 Jan 2012 13:30:02 GMT</pubDate>
			<author>aosnec</author>
			<category>Java</category><category>JTable</category><category>MVC</category><category>TableCellRenderer</category><category>JLabel</category><category>Object</category><category>Serializable</category><category>isSelected</category><category>aosnec</category><category>сериализация</category><category>таблица</category>
		</item>
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Блог компании Jelastic / Цена высокой доступности]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/company/jelastic/blog/137313/</guid>
			<link>http://habrahabr.ru/company/jelastic/blog/137313/</link>			
			<description><![CDATA[Теперь, когда <a href="http://jelastic.com">Jelastic</a> предоставляет функции высокой доступности, сам собой возникает вопрос: как это повлияет на количество используемых ресурсов?<br/>
Мы решили поделиться с вами этой информацией. Во-первых, это пока у нас бесплатная бета, но через несколько недель мы все же выйдем на коммерческий режим и за потребляемые ресурсы надо<br/>
будет платить. А во-вторых, и для хостинга вне Jelastic’a все равно вам может захотеться построить отказоустойчивую конфигурацию, так что вопрос ресурсопотребления таковой – не праздный.<br/>
<br/>
Давайте посмотрим, как возрастает потребление ресурсов серверами в конфигурации отказоустойчивого кластера (с репликацией сессий) на примерах серверов, доступных сейчас в Jelastic.<br/>
<br/>
<h5>GlassFish</h5><br/>
<img src="http://1efac12d36786c946e0b6842b84a9fb8.app.hivext.com/xssu/cross/download/BWYAAVtUC0FjADlBRUcKQlVLREVdQ24bdHIiUhEQSlUPDgBCY1VLQEg%3D/view" alt="image" align="left"/> Начнем с <a href="http://glassfish.java.net/">GlassFish</a>. Этот сервер обладает множеством преимуществ: полная поддержка промышленной кластеризации, широкий спектр функций, множество модулей, высокая надежность, административная панель и т.д. Если мы взглянем на следующую таблицу, то может показаться, что GlassFish достаточно «прожорлив», но это полностью оправдано его функциональностью.<br/>
<br/>
<img src="http://1efac12d36786c946e0b6842b84a9fb8.app.hivext.com/xssu/cross/download/Dm8GBFxXWxtkV2lMEUIOFgBEFkAMFTlDenR0VkoXQAMPDgBCY1VLQEg%3D/view.png" alt="image" align="center"/><div class="habracut"> <a class="habracut" href="http://habrahabr.ru/company/jelastic/blog/137313/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Tue, 31 Jan 2012 08:42:39 GMT</pubDate>
			<author>jelastic</author>
			<category>java</category><category>Paas</category><category>Jelastic</category><category>cloud hosting</category><category>cloud computing</category><category>glassfish</category><category>tomcat</category><category>jetty</category><category>high availability</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Тестирование / Selenium: работаем с элементами страницы, используя @FindBy и PageFactory]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/testing/134462/</guid>
			<link>http://habrahabr.ru/blogs/testing/134462/</link>			
			<description><![CDATA[В этой статье будет рассмотрена возможность использования аннотации @FindBy для поиска элементов на странице, а так же создание своих классов для работы с элементами и контейнерами вроде форм, таблиц и т.д.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/testing/134462/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Mon, 30 Jan 2012 19:36:04 GMT</pubDate>
			<author>oraz_ra</author>
			<category>selenium</category><category>java</category><category>tdd</category>
		</item>
		
		
		
		
		
		
		
		
	
		
		
			
		<item>		
			<title><![CDATA[JAVA / [PODCAST] «Разбор полетов» — episode 8 — Много смеха и улыбок]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/137262/</guid>
			<link>http://habrahabr.ru/blogs/java/137262/</link>
			<description><![CDATA[Творческий коллектив редакции подкаста «Разбор полетов» представляет вашему вниманию очередной восьмой выпуск разговорно-болтологического IT-тематического подкаста «Разбор полетов».<br/>
В&nbsp;этом выпуске:<br/>
<ul>
<li>Останови мыло!!! Stop SOAP <a href="http://stopsoap.com/">http://stopsoap.com/</a></li>
<li>Если у&nbsp;тебя есть фонтан, заткни его; дай отдохнуть и&nbsp;фонтану ©&nbsp;К.&nbsp;Прутков. Алгоритм не&nbsp;фонтан <a href="http://blog.notdot.net/2012/01/Damn-Cool-Algorithms-Fountain-Codes">http://blog.notdot.net/2012/01/Damn-Cool-Algorithms-Fountain-Codes</a></li>
<li>Полезняшка&nbsp;&mdash; <a href="http://www.latencytop.org/">http://www.latencytop.org/</a></li>
<li>Называйся правильно&nbsp;&mdash; <a href="http://vanillajava.blogspot.com/2012/01/generic-class-names-to-avoid.html">http://vanillajava.blogspot.com/2012/01/generic-class-names-to-avoid.html</a></li>
<li>Украл&nbsp;&mdash; выпил&nbsp;&mdash; в&nbsp;тюрьму. Романтика! <a href="http://gigaom.com/2012/01/07/desantis-startups-crime-boss/">http://gigaom.com/2012/01/07/desantis-startups-crime-boss/</a></li>
<li>«Товарищи призывники! Надо понимать всю глубину наших глубин» <a href="http://stackoverflow.com/questions/1012402/maven2-property-that-indicates-the-parent-directory">http://stackoverflow.com/questions/1012402/maven2-property-that-indicates-the-parent-directory </a></li>
</ul><br/>
p.s. Спецкорр подкаста <a href="http://twitter.com/a_abashev">@a_abashev</a> разыскивает израильских спецов для записи спецвыпуска на&nbsp;Земле обетованной. Подробности в&nbsp;выпуске<br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/137262/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Mon, 30 Jan 2012 08:20:41 GMT</pubDate>
			<author>aib</author>
			<enclosure url="http://moscow-nthost3a.cdn.rpod.ru/00/00/01/01/92/261718-224372/Episode_8_season_1.mp3" type="audio/mpeg" />
			<category>soap</category><category>wsdl</category><category>rest</category><category>xml-rpc</category><category>algorithms</category><category>java</category><category>maven</category><category>intel</category><category>top</category><category>stackoverflow</category><category>разбор-полетов</category><category>разбор полетов</category>
		</item>
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[JAVA / Multithreading in practice]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/137065/</guid>
			<link>http://habrahabr.ru/blogs/java/137065/</link>			
			<description><![CDATA[Нашел как-то на stack overflow вопрос (<a href="http://stackoverflow.com/questions/7499203/java-multithreaded-file-system-tree-traversal">link</a>).<br/>
 <code> Need to create java CLI programm that searchs for specific files matched some pattern. Need to use multi-threading approach without using util.concurrent package and to provide good performance on parallel controllers. </code><br/>
 Перевод<br/>
 <code> Нужно написать консольную программу, которая ищет файлы по какому-то паттерну. Программа должна быть многопоточная, но нельзя использовать пакет util.concurrent. Требуется добиться максимальной производительности.<br/>
 </code><br/>
<br/>
В общем идея в принципе была не сложная. Т.к. по условию нельзя использовать util.concurrent, то надо реализовать свой пул потоков, плюс написать какие-то таски, которые в этом пуле потоков будут крутиться. <br/>
 Так же я не был уверен в том, что при многопоточном использовании IO будет увеличение производительности.<br/>
 <div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/137065/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Thu, 26 Jan 2012 13:25:06 GMT</pubDate>
			<author>culvert</author>
			<category>java</category><category>multithreading</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Разработка под Android / Сказ о Cocos2d-android]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/android_development/136968/</guid>
			<link>http://habrahabr.ru/blogs/android_development/136968/</link>			
			<description><![CDATA[Так уж получилось, что мне пришлось портировать игру с ios. Фреймворк выбирать не пришлось, им стал Cocos2d. До момента использования фреймворка мне довелось почитать отзывы о нем и они настораживали. Но как всегда надеялся на лучшее. И так, о своем опыте портирования и применения данного фреймворка пойдет этот рассказ. Данный пост будет полезен тем, кто присматривается к Cocos2s-android. <br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/android_development/136968/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Thu, 26 Jan 2012 07:02:21 GMT</pubDate>
			<author>Pyjamec</author>
			<category>android</category><category>java</category><category>cocos2d</category><category>cocos2d-android</category>
		</item>
		
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Разработка под Android / Выполнение задач в бэкграунде]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/android_development/136942/</guid>
			<link>http://habrahabr.ru/blogs/android_development/136942/</link>			
			<description><![CDATA[<img align="left" title="Task-Scheduler" src="http://elifantiev.ru/wp-content/uploads/2011/05/Task-Scheduler.png"/>На Stackoverflow часто встречаются вопросы по выполнению на Android фоновых задач, в т.ч. и повторяющихся с заданным промежутком времени. Как правило, первое, что используется, это <a href="http://developer.android.com/reference/android/app/Service.html">Service</a>.<br/>
<br/>
Такой подход в некоторых случаях может привести к тормозам и низкой скорости ответа пользовательского интерфейса. Расскажу когда так бывает и как с этим бороться…<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/android_development/136942/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Tue, 24 Jan 2012 20:22:21 GMT</pubDate>
			<author>Olegas</author>
			<category>android</category><category>java</category><category>threading</category><category>service</category><category>timer</category>
		</item>
		
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[Разработка под Android / [Из песочницы] Создание простой 2D игры на Android]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/android_development/136802/</guid>
			<link>http://habrahabr.ru/blogs/android_development/136802/</link>			
			<description><![CDATA[Доброго дня всем! <br/>
<br/>
Когда я писал эту «игру» у меня возникала масса вопросов по поводу зацикливания спрайтов так что бы они появлялись через определенное время, так же были проблемы с обнаружением столкновений двух спрайтов и более, все эти вопросы я сегодня хочу осветить в этом посте так как в интернете я не нашел нормального ответа на мои вопросы и пришлось делать самому. Пост ни на что не претендует, я новичок в разработке игр под android и пишу я для новичков в данной отрасли. Кому стало интересно прошу под кат.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/android_development/136802/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Mon, 23 Jan 2012 08:53:03 GMT</pubDate>
			<author>dajver</author>
			<category>android</category><category>java</category><category>gamedev</category>
		</item>
		
		
		
		
		
		
		
	
			
		<item>		
			<title><![CDATA[Android / Улучшенный 9-patch редактор]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/android/136667/</guid>
			<link>http://habrahabr.ru/blogs/android/136667/</link>			
			<description><![CDATA[<b>Добрый день, Хабражитель!</b><br/>
<br/>
<img src="http://s1.hostingkartinok.com/uploads/images/2012/01/fe232a7ecf06a0d0373c932d29970dfd.png" alt="image" align="right"/>Уверен с форматом nine-patch уже все давным-давно знакомы, вероятно даже не раз пользовались им в своих Android-проектах (а может даже и где-то ещё). Также о нём чуть менее года назад <a href="http://habrahabr.ru/users/skkap/" class="user_link">skkap</a> писал небольшую <a href="http://habrahabr.ru/blogs/android_development/113623/">статью</a> о том, что это за формат, и «с чем его едят». Также он описал инструмент, предлагаемый для быстрого редактирования этих самых файлов.<br/>
<br/>
Собственно, прошёл уже почти год с того момента и я, опять наткнувшись на ту статью и вспомнив жалобы знакомых на неудобство этого самого «инструмента», решил посмотреть нет ли каких других вариантов и, к моему большому удивлению, я таковых не нашёл. Вероятно потому, что формат сам из себя ничего сложного и специфичного не представляет (при желании nine-patch файлы можно редактировать почти в любом графическом редакторе поддерживающем png) и тем более уже есть готовый инструмент (пусть и не самый удобный).<br/>
<br/>
Тут я и решил лично взяться за дело…<br/>
<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/android/136667/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Fri, 20 Jan 2012 13:21:42 GMT</pubDate>
			<author>mgarin</author>
			<category>android</category><category>nine-patch</category><category>9-patch</category><category>java</category>
		</item>
		
		
		
		
		
		
		
		
	
		
			
		<item>		
			<title><![CDATA[JAVA / [Из песочницы] Из Басры в Рим. Преобразовываем арабские числа в римские]]></title>
			<guid isPermaLink="true">http://habrahabr.ru/blogs/java/136646/</guid>
			<link>http://habrahabr.ru/blogs/java/136646/</link>			
			<description><![CDATA[Доброе время суток, Хабраюзер. <br/>
<br/>
Разрабатывая в основном для платформы J2ME, я всегда старался вносить какие то изюминки в свои проекты. Так, однажды, мне понадобилось выделить пункты меню.<br/>
<br/>
Стандартное решение, через тире или пронумеровав их, использовать не очень хотелось, но другие варианты тогда у меня отсутствовали. Обдумывая как бы лучше оформить эти пункты, я случайно наткнулся на свою старую школьную тетрадку по истории, в которой пункты были пронумерованы с использованием римских цифр. Бинго!<br/>
<br/>
Стоит признаться, на то время моих познаний в римских цифрах хватало только для подсчета до второго-третьего десятка. Что вообще то для нумерации пунктов должно было хватить. Но как любой программист, захотелось иметь готовое решение, которое смогло бы переводить любые целые десятичные арабские числа в эквивалентные им римские.<br/>
<div class="habracut"> <a class="habracut" href="http://habrahabr.ru/blogs/java/136646/#habracut">Читать дальше &rarr;</a> </div>]]></description>
			
			<pubDate>Fri, 20 Jan 2012 10:51:55 GMT</pubDate>
			<author>SergejKomlach</author>
			<category>римские цифры</category><category>java</category><category>j2me</category><category>алгоритмы</category>
		</item>
		
		
		
		
		
		
		
	
	
	
	
	
	
	
	

	
</channel>
</rss>

