<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Комментарии на: OSGi. Первое приближение. Модульность в Java.</title>
	<atom:link href="http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/feed/" rel="self" type="application/rss+xml" />
	<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/</link>
	<description>Блог о разработке Enterprise-приложений на Java</description>
	<lastBuildDate>Sat, 28 Jan 2012 18:59:59 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.3</generator>
	<item>
		<title>От: Дмитрий Леонтьев</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-5257</link>
		<dc:creator>Дмитрий Леонтьев</dc:creator>
		<pubDate>Mon, 13 Sep 2010 10:56:08 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-5257</guid>
		<description>vit34, спасибо за полезную информацию! Если честно, то спецификацию настолько подробно я не читал.</description>
		<content:encoded><![CDATA[<p>vit34, спасибо за полезную информацию! Если честно, то спецификацию настолько подробно я не читал.</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: vit34</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-5055</link>
		<dc:creator>vit34</dc:creator>
		<pubDate>Thu, 02 Sep 2010 15:09:16 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-5055</guid>
		<description>Все разобрался. Просто нужно было заглянуть в спецификацию. Там все отлично описано.  Класслоадер бандла имеет не одного а множество класслоадеров длугих бандлов, которым и делегирует загрузку.</description>
		<content:encoded><![CDATA[<p>Все разобрался. Просто нужно было заглянуть в спецификацию. Там все отлично описано.  Класслоадер бандла имеет не одного а множество класслоадеров длугих бандлов, которым и делегирует загрузку.</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: vit34</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-5029</link>
		<dc:creator>vit34</dc:creator>
		<pubDate>Wed, 01 Sep 2010 11:38:41 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-5029</guid>
		<description>Тогда вообще ничего не понятно. Возьмем на пример бандлы с вашей картинки. Допустим что на самом верху  есть самый главный бандл mainBundle и он загружается своим класслоадером MainBundleLoader. Если у бандлов Foo,Bar,Qib будет один родительский класслоадер - MainBundleLoader - то бандлы Bar и Qib не увидят Foo вообще и не смогут воспользоватся его сервисами или расширить его. Foo,Bar и Qib будут находится на одном уровне иерархии.</description>
		<content:encoded><![CDATA[<p>Тогда вообще ничего не понятно. Возьмем на пример бандлы с вашей картинки. Допустим что на самом верху  есть самый главный бандл mainBundle и он загружается своим класслоадером MainBundleLoader. Если у бандлов Foo,Bar,Qib будет один родительский класслоадер &#8211; MainBundleLoader &#8211; то бандлы Bar и Qib не увидят Foo вообще и не смогут воспользоватся его сервисами или расширить его. Foo,Bar и Qib будут находится на одном уровне иерархии.</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Дмитрий Леонтьев</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-5024</link>
		<dc:creator>Дмитрий Леонтьев</dc:creator>
		<pubDate>Wed, 01 Sep 2010 05:35:53 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-5024</guid>
		<description>У каждого бандла есть свой класслоадер, но родителем всех этих класслоадеров будет один и тот же класслоадер независимо от глубины иерархии зависимостей.

Проверял вызовами: obj1.getClass().getClassLoader() и obj1.getClass().getClassLoader().getParent().</description>
		<content:encoded><![CDATA[<p>У каждого бандла есть свой класслоадер, но родителем всех этих класслоадеров будет один и тот же класслоадер независимо от глубины иерархии зависимостей.</p>
<p>Проверял вызовами: obj1.getClass().getClassLoader() и obj1.getClass().getClassLoader().getParent().</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: vit34</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-5017</link>
		<dc:creator>vit34</dc:creator>
		<pubDate>Tue, 31 Aug 2010 16:19:49 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-5017</guid>
		<description>Презентация конечно хорошая, но описанный мной случай там не рассматривается</description>
		<content:encoded><![CDATA[<p>Презентация конечно хорошая, но описанный мной случай там не рассматривается</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Дмитрий Леонтьев</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-5002</link>
		<dc:creator>Дмитрий Леонтьев</dc:creator>
		<pubDate>Mon, 30 Aug 2010 12:11:24 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-5002</guid>
		<description>Здравствуйте, vit34!

По адресу http://www.martinlippert.org/events/WJAX2008-ClassloadingTypeVisibilityOSGi.pdf находится презентация с названием Classloading and Type Visibility in OSGi от Martin Lippert. 

В ней подробно и в картинках рассматривается механизм Classloader per Bundle, который используется в OSGi.

Лучше чем в этой презентации я все равно не расскажу :-)</description>
		<content:encoded><![CDATA[<p>Здравствуйте, vit34!</p>
<p>По адресу <a href="http://www.martinlippert.org/events/WJAX2008-ClassloadingTypeVisibilityOSGi.pdf" rel="nofollow">http://www.martinlippert.org/events/WJAX2008-ClassloadingTypeVisibilityOSGi.pdf</a> находится презентация с названием Classloading and Type Visibility in OSGi от Martin Lippert. </p>
<p>В ней подробно и в картинках рассматривается механизм Classloader per Bundle, который используется в OSGi.</p>
<p>Лучше чем в этой презентации я все равно не расскажу <img src='http://topcode.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>От: vit34</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-4999</link>
		<dc:creator>vit34</dc:creator>
		<pubDate>Sun, 29 Aug 2010 23:00:55 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-4999</guid>
		<description>Здравствуйте Дмитрий, есть один вопрос по внутреннему механизму работы OSGI который меня терзает:
Как вы пишите &quot;каждый бандл загружается в своем собственном пространстве классов&quot;, т.е. как я понимаю  это означает в терминах JVM, что каждый бандл загружается в своем собственном класслоадере. Это также означает что некий бандл (допустим bundle B), зависимый от другого бандла (Bundle A), должен быть загружен в класслоадере, являющимся потомком того класслоадера, в котором был загружен Bundle A (т.е. чтобы классы из Bundle A были видны в Bundle B). Если это так, то что будет в следующем случае:
Допустим у нас есть Bundle A и два ничего не знающих друг о друге  B и  С, но зависящих от A. В том случае, если я пишу новый  Bundle D, который зависит и от B и от С, то как OSGI контейнер его загрузит? А именно, какой класслоадер будет взят в качестве  родительского класслоадера при загрузке бандла D?</description>
		<content:encoded><![CDATA[<p>Здравствуйте Дмитрий, есть один вопрос по внутреннему механизму работы OSGI который меня терзает:<br />
Как вы пишите &#8220;каждый бандл загружается в своем собственном пространстве классов&#8221;, т.е. как я понимаю  это означает в терминах JVM, что каждый бандл загружается в своем собственном класслоадере. Это также означает что некий бандл (допустим bundle B), зависимый от другого бандла (Bundle A), должен быть загружен в класслоадере, являющимся потомком того класслоадера, в котором был загружен Bundle A (т.е. чтобы классы из Bundle A были видны в Bundle B). Если это так, то что будет в следующем случае:<br />
Допустим у нас есть Bundle A и два ничего не знающих друг о друге  B и  С, но зависящих от A. В том случае, если я пишу новый  Bundle D, который зависит и от B и от С, то как OSGI контейнер его загрузит? А именно, какой класслоадер будет взят в качестве  родительского класслоадера при загрузке бандла D?</p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Дмитрий Леонтьев</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-4903</link>
		<dc:creator>Дмитрий Леонтьев</dc:creator>
		<pubDate>Sat, 21 Aug 2010 09:49:43 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-4903</guid>
		<description>Здравствуйте, Phyro! Перевод этих двух словосочетаний варьируется от статьи к статье в Интернете. Поправил перевод по вашей рекомендации :-)</description>
		<content:encoded><![CDATA[<p>Здравствуйте, Phyro! Перевод этих двух словосочетаний варьируется от статьи к статье в Интернете. Поправил перевод по вашей рекомендации <img src='http://topcode.ru/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Phyro</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-4897</link>
		<dc:creator>Phyro</dc:creator>
		<pubDate>Fri, 20 Aug 2010 23:37:31 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-4897</guid>
		<description>Приветствую. Хорошо пишешь. Зачитался. Прослезился что пишу на пхп.

но: hight cohesion - высокое зацепление 
low coupling - слабая связанность 

лучше поправить. а то не хорошо получается. я понимаю что на русском мы эти слова обычно не юзаем :)</description>
		<content:encoded><![CDATA[<p>Приветствую. Хорошо пишешь. Зачитался. Прослезился что пишу на пхп.</p>
<p>но: hight cohesion &#8211; высокое зацепление<br />
low coupling &#8211; слабая связанность </p>
<p>лучше поправить. а то не хорошо получается. я понимаю что на русском мы эти слова обычно не юзаем <img src='http://topcode.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>От: Pablo</title>
		<link>http://topcode.ru/2009/10/03/osgi-pervoe-priblizhenie-modulnost-v-java/comment-page-1/#comment-4220</link>
		<dc:creator>Pablo</dc:creator>
		<pubDate>Fri, 11 Jun 2010 07:42:25 +0000</pubDate>
		<guid isPermaLink="false">http://topcode.ru/?p=530#comment-4220</guid>
		<description>и ни слова для чего нужна эта модульность</description>
		<content:encoded><![CDATA[<p>и ни слова для чего нужна эта модульность</p>
]]></content:encoded>
	</item>
</channel>
</rss>

