<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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>Сообщество разработчиков Татарстана в сфере ИТ</title>
	<atom:link href="http://tatsoft.ru/feed/" rel="self" type="application/rss+xml" />
	<link>http://tatsoft.ru</link>
	<description>Сообщество разработчиков Татарстана в сфере ИТ</description>
	<pubDate>Thu, 11 Jun 2009 11:22:53 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Про нас написали Отцы! :)</title>
		<link>http://tatsoft.ru/2009/04/13/pro-nas-napisali-ottsyi/</link>
		<comments>http://tatsoft.ru/2009/04/13/pro-nas-napisali-ottsyi/#comments</comments>
		<pubDate>Mon, 13 Apr 2009 10:09:42 +0000</pubDate>
		<dc:creator>Артем Голубев</dc:creator>
		
		<category><![CDATA[Анонсы]]></category>

		<guid isPermaLink="false">http://www.tatsoft.ru/2009/04/13/pro-nas-napisali-ottsyi/</guid>
		<description><![CDATA[Вот тут: http://weborbworld.blogspot.com/2008/10/weborb-localization-efforts.html есть ссылочка на этот сайт.
]]></description>
			<content:encoded><![CDATA[<p>Вот тут: http://weborbworld.blogspot.com/2008/10/weborb-localization-efforts.html есть ссылочка на этот сайт.</p>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2009/04/13/pro-nas-napisali-ottsyi/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Встреча стартаперов в Казани</title>
		<link>http://tatsoft.ru/2009/03/16/vstrecha-startaperov-v-kazani/</link>
		<comments>http://tatsoft.ru/2009/03/16/vstrecha-startaperov-v-kazani/#comments</comments>
		<pubDate>Mon, 16 Mar 2009 19:09:10 +0000</pubDate>
		<dc:creator>Ярослав Швецов</dc:creator>
		
		<category><![CDATA[Анонсы]]></category>

		<guid isPermaLink="false">http://www.tatsoft.ru/2009/03/16/vstrecha-startaperov-v-kazani/</guid>
		<description><![CDATA[Друзья, скоро в Казани будет организована встреча стартаперов. Если среди вас есть те люди, кто готов внятно изложить свои, пусть даже просто идеи, но с более-менее четким пониманием бизнес модели милости прошу ко мне в электронную почту yaroslav@knockknock.ru. На встрече будут инвесторы.
Формат: презентация проекта/идеи на 2-5 минут, потом общение с залом. Спасибо.
]]></description>
			<content:encoded><![CDATA[<p>Друзья, скоро в Казани будет организована встреча стартаперов. Если среди вас есть те люди, кто готов внятно изложить свои, пусть даже просто идеи, но с более-менее четким пониманием бизнес модели милости прошу ко мне в электронную почту <a href="mailto:yaroslav@knockknock.ru">yaroslav@knockknock.ru</a>. На встрече будут инвесторы.</p>
<p>Формат: презентация проекта/идеи на 2-5 минут, потом общение с залом. Спасибо.</p>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2009/03/16/vstrecha-startaperov-v-kazani/feed/</wfw:commentRss>
		</item>
		<item>
		<title>CSS фреймворки &#8212; антисемантическая верстка</title>
		<link>http://tatsoft.ru/2008/12/10/css-freymvorki-antisemanticheskaya-verstka/</link>
		<comments>http://tatsoft.ru/2008/12/10/css-freymvorki-antisemanticheskaya-verstka/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 10:05:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Главное]]></category>

		<category><![CDATA[Дизайн, языки разметки]]></category>

		<category><![CDATA[CSS]]></category>

		<category><![CDATA[framework]]></category>

		<category><![CDATA[Дизайн]]></category>

		<category><![CDATA[языки разметки]]></category>

		<guid isPermaLink="false">http://www.tatsoft.ru/2008/12/09/css-freymvorki-antisemanticheskaya-verstka/</guid>
		<description><![CDATA[Есть куча замечательных css фреймворков, маленькие большие и прочее. Общий смысл таков, что вам дают классы, которые позволяют компоновать блоки на странице удобным для вас образом, задавая для них классы что то вроде &#8220;span-18 last&#8221;, &#8220;span-18 suffix-1&#8243;. Не кажется ли вам, что это нарушает идею семантической верстки и фактически ни чем не лучше style=&#8221;width:80; float: [...]]]></description>
			<content:encoded><![CDATA[<p>Есть куча замечательных <a href="http://en.wikipedia.org/wiki/CSS_framework">css фреймворков</a>, маленькие большие и прочее. Общий смысл таков, что вам дают классы, которые позволяют компоновать блоки на странице удобным для вас образом, задавая для них классы что то вроде &#8220;span-18 last&#8221;, &#8220;span-18 suffix-1&#8243;. Не кажется ли вам, что это нарушает идею семантической верстки и фактически ни чем не лучше style=&#8221;width:80; float: left&#8221;?<span style="text-decoration: underline"> </span><span id="more-294"></span> Было бы намного лучше, если бы соответствующие блоки назывались &#8220;head&#8221;, &#8220;news-item&#8221;, т.е. название класса для блока отражает содержимое блока. Или это непрактично, так как не знаешь, что в каком блоке окажется в конце проекта?</p>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2008/12/10/css-freymvorki-antisemanticheskaya-verstka/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Практическая автоматизация : Сборка проектов Java с помощью Raven</title>
		<link>http://tatsoft.ru/2008/11/10/prakticheskaya-avtomatizatsiya-sborka-proektov-java-s-pomoschyu-raven/</link>
		<comments>http://tatsoft.ru/2008/11/10/prakticheskaya-avtomatizatsiya-sborka-proektov-java-s-pomoschyu-raven/#comments</comments>
		<pubDate>Mon, 10 Nov 2008 15:56:49 +0000</pubDate>
		<dc:creator>maratische</dc:creator>
		
		<category><![CDATA[RubyOnRails]]></category>

		<category><![CDATA[java]]></category>

		<category><![CDATA[ruby]]></category>
<category></category>
		<guid isPermaLink="false">http://www.tatsoft.ru/2008/11/10/prakticheskaya-avtomatizatsiya-sborka-proektov-java-s-pomoschyu-raven/</guid>
		<description><![CDATA[Не так давно были жуткие холивары, что сборка Ant это плохо, не кошерно и рулит идеальный XML, когда все там разложено по полочкам(зависимостям) в Maven сборке.
Сейчас все тихо и спокойно и для каждой ситуации используют конкретный их этих. не считая кучи менее популярных сборщиков.
Но, опять нашлись ребята, которые говорят что XML это НЕ рулез! поэтому [...]]]></description>
			<content:encoded><![CDATA[<p>Не так давно были жуткие холивары, что сборка Ant это плохо, не кошерно и рулит идеальный XML, когда все там разложено по полочкам(зависимостям) в Maven сборке.<br />
Сейчас все тихо и спокойно и для каждой ситуации используют конкретный их этих. не считая кучи менее популярных сборщиков.<br />
Но, опять нашлись ребята, которые говорят что XML это НЕ рулез! поэтому мы будем сборку полностью писать руками на &#8230;.Ruby&#8230;.</p>
<p>http://www.ibm.com/developerworks/ru/library/j-ap11067/index.html?ca=drs-ru-1031</p>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2008/11/10/prakticheskaya-avtomatizatsiya-sborka-proektov-java-s-pomoschyu-raven/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Задача Эйнштейна</title>
		<link>http://tatsoft.ru/2008/11/07/zadacha-eynshteyna/</link>
		<comments>http://tatsoft.ru/2008/11/07/zadacha-eynshteyna/#comments</comments>
		<pubDate>Fri, 07 Nov 2008 03:24:59 +0000</pubDate>
		<dc:creator>Артем Голубев</dc:creator>
		
		<category><![CDATA[Главное]]></category>

		<category><![CDATA[Руководителям]]></category>

		<category><![CDATA[Задачка]]></category>
<category></category>
		<guid isPermaLink="false">http://www.tatsoft.ru/2008/11/07/zadacha-eynshteyna/</guid>
		<description><![CDATA[Великий физик Альберт Эйнштейн придумал загадку, с помощью которой можно отличить интеллектуальную элиту от серой массы. 98% людей не в состоянии решить эту загадку! Итак, вашему вниманию великая Загадка Эйнштейна:
ЗАДАЧА ЭЙНШТЕЙНА
1.Есть 5 домов, каждый разного цвета.
2.В каждом доме живёт один человек, отличающийся от соседнего по национальности: немец, англичанин, швед, датчанин, норвежец.
3.Каждый пьёт только один определённый [...]]]></description>
			<content:encoded><![CDATA[<p>Великий физик Альберт Эйнштейн придумал загадку, с помощью которой можно отличить интеллектуальную элиту от серой массы. 98% людей не в состоянии решить эту загадку! Итак, вашему вниманию великая Загадка Эйнштейна:</p>
<p>ЗАДАЧА ЭЙНШТЕЙНА</p>
<p>1.Есть 5 домов, каждый разного цвета.<br />
2.В каждом доме живёт один человек, отличающийся от соседнего по национальности: немец, англичанин, швед, датчанин, норвежец.<br />
3.Каждый пьёт только один определённый напиток, курит определённую марку сигарет идержит определённое животное.<br />
4.Никто из 5 человек не пьёт одинаковые сдругими напитки, не курит одинаковые сигареты ине держит одинаковое животное.</p>
<p><span id="more-292"></span></p>
<p>ВОПРОС: Кому принадлежит рыба?</p>
<p>Подсказки:<br />
1.Англичанин живёт вкрасном доме.<br />
2.Швед держит собаку.<br />
3.Датчанин пьёт чай.<br />
4.Зелёный дом стоит слева от белого.<br />
5.Жилец зелёного дома пьёт кофе.<br />
6.Человек, который курит „Pall Mall“, держит птицу.<br />
7.Жилец из среднего дома пьёт молоко.<br />
8.Жилец изжёлтого дома курит „Dunhill“.<br />
9.Норвежец живёт впервом доме.<br />
10.Курильщик „Marlboro“ живёт около того, кто держит кошку.<br />
11.Человек, который содержит лошадь, живёт около того, кто курит „Dunhill“.<br />
12.Курильщик сигарет „Winfield“ пьёт пиво.<br />
13.Норвежец живёт около голубого дома.<br />
14.Немец курит „Rothmans“.<br />
15.Курильщик „Marlboro“ живёт по соседству счеловеком, который пьёт воду.</p>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2008/11/07/zadacha-eynshteyna/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Изучаем Flex</title>
		<link>http://tatsoft.ru/2008/10/30/izuchaem-flex/</link>
		<comments>http://tatsoft.ru/2008/10/30/izuchaem-flex/#comments</comments>
		<pubDate>Thu, 30 Oct 2008 01:33:54 +0000</pubDate>
		<dc:creator>Артем Голубев</dc:creator>
		
		<category><![CDATA[Главное]]></category>

		<category><![CDATA[Flex]]></category>
<category></category>
		<guid isPermaLink="false">http://www.tatsoft.ru/2008/10/30/izuchaem-flex/</guid>
		<description><![CDATA[Загрузить Flex компилятор и среду разработки Flex Builder последних версий можно тут: http://www.adobe.com/products/flex/
Документация по Flex находится тут: http://www.adobe.com/support/documentation/en/flex/
Неплохой, постоянно обновляющий блог по Flex можно найти тут: http://www.onflex.org/ted/
Похуже, но тоже ничего, тут: http://artemgolubev.com/  На Русском: http://yarovoy.com/
Вот с бумажными книжками по Flex в России напряженка. Так что можно воспользоваться ситуацией и что-нибудь перевести на Русский язык.
Книжку, [...]]]></description>
			<content:encoded><![CDATA[<p>Загрузить Flex компилятор и среду разработки Flex Builder последних версий можно тут: http://www.adobe.com/products/flex/</p>
<p>Документация по Flex находится тут: http://www.adobe.com/support/documentation/en/flex/</p>
<p>Неплохой, постоянно обновляющий блог по Flex можно найти тут: http://www.onflex.org/ted/<br />
Похуже, но тоже ничего, тут: http://artemgolubev.com/ <img src='http://tatsoft.ru/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> На Русском: http://yarovoy.com/</p>
<p>Вот с бумажными книжками по Flex в России напряженка.<span id="more-291"></span> Так что можно воспользоваться ситуацией и что-нибудь перевести на Русский язык.<br />
Книжку, которую я рекомендую прочитать обязательно: Learning Flex 3</p>
<p>Другие можно найти на amazon.com: http://www.amazon.com/s/ref=nb_ss_gw?url=search-alias%3Dstripbooks&amp;field-keywords=Flex&amp;x=0&amp;y=0<br />
там всегда можно прочитать отзывы и посмотреть рейтинг для любых книжек.<br />
Не мне Вам рассказывать, где достать книжки.</p>
<p>Как привинтить Flex к Ruby on Rails читайте в моем предыдущем посте: http://www.tatsoft.ru/2008/10/26/flex-dlya-ruby-on-rails/</p>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2008/10/30/izuchaem-flex/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Flex для Ruby on Rails</title>
		<link>http://tatsoft.ru/2008/10/26/flex-dlya-ruby-on-rails/</link>
		<comments>http://tatsoft.ru/2008/10/26/flex-dlya-ruby-on-rails/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 17:49:07 +0000</pubDate>
		<dc:creator>Артем Голубев</dc:creator>
		
		<category><![CDATA[RubyOnRails]]></category>

		<category><![CDATA[Flex]]></category>
<category></category>
		<guid isPermaLink="false">http://www.tatsoft.ru/2008/10/26/flex-dlya-ruby-on-rails/</guid>
		<description><![CDATA[Введение
Flex - это очень продвинутая версия  всем хорошо известного Flash, откомпилированный байт-код которого  работает на Flash интерпретаторах. Т.е. вы используете приличный язычек для того, чтобы написать толстенького клиентика, а потом компилируете его в SWF файл который работает как обычный Flash. С Flex-ом есть только одна засада: приличный IDE для него платный. Flex компилятор [...]]]></description>
			<content:encoded><![CDATA[<h2>Введение</h2>
<p>Flex - это очень продвинутая версия  всем хорошо известного Flash, откомпилированный байт-код которого  работает на Flash интерпретаторах. Т.е. вы используете приличный язычек для того, чтобы написать толстенького клиентика, а потом компилируете его в SWF файл который работает как обычный Flash. С Flex-ом есть только одна засада: приличный IDE для него платный. Flex компилятор сам по себе бесплатный.</p>
<p>Flex к RoR можно привинтить по крайней мере 3 способами<span id="more-283"></span>:</p>
<ol>
<li>Самописным сервисом</li>
<li>WebService возможностями RoR</li>
<li>При помощи проприетарного бинарного протокола AMF3 или AMF0 работающего поверх HTTP</li>
</ol>
<p>О первом способе говорить ничего не буду, т.к. никогда не занимался, 2-й дествительно работает без всяких добавочных библиотек, проблема только в том, что он будет всегда гонять тучки жирненького XML-а по сети, а вот о 3-м способе сейчас Вы сможете узнать поподробнее.</p>
<p>Сначала немножко о стандартах:<br />
AMF0 - это доставшийя в наследство от Flash слегка устаревший протокольчик, необходимый только если вы из каких-то мазохистских соображений вдруг решите писать на Flash вместо Flex. AMF3, соответственно, более новый и продвинутый протокольчик, которым вы, по-видимому, и будете пользоваться. Мне известен только один плагин для RoR который позволяет использовать AMF3 для доступа из флекса к рубиевским серверным кодам: это WebORB.</p>
<p>WebORB для Ruby on Rails - это реализация RPC функциональности Adobe&#8217;s Flex Data Services. Используя WebORB Ruby разработчик может интегрировать клиентские приложения на Flex с сервисами, заделоиными в Rails приложениях.</p>
<p>Этот пост предлагает обзор процесса создания Flex RPC клиента, используя Flex Builder 3.0 и соединения его с приложением на Ruby on Rails. В результате рассмотренных шагов Вы получите приложение на Flex, общающееся с Ruby объектом в Rails через WebORB.</p>
<h2>Инсталляция WebORB</h2>
<p>Убедитесь, что у Вас уже установлено:</p>
<ul>
<li>Ruby версии 1.8 или новее</li>
<li>Ruby on Rails версии 1.1.4 или новее</li>
</ul>
<p><a href="http://www.themidnightcoders.com/weborb/rubyonrails/index.htm">Здесь</a> находится достаточно полная документация по WebORB и его привинчиванию к RoR.</p>
<p>Мы же с вами разберем <a href="http://www.themidnightcoders.com/weborb/rubyonrails/gettingstarted.htm">эту</a> статейку о том как начать работу с WebORB. Часть картинок взята с оригинального сайта (<a href="http://www.themidnightcoders.com/weborb/rubyonrails/gettingstarted.htm">http://www.themidnightcoders.com/weborb/rubyonrails/gettingstarted.htm</a>).</p>
<p>Итак, задача: установить WebORB плагин к RoR и законнектится Flex-овым приложением к RoR серверу. Сразу оговорка: мы будем использовать <a href="http://www.adobe.com/products/flex/">Flex Builder</a> для того, чтобы создать Flex приложение. Как поставить RoR описано <a href="http://wiki.rubyonrails.org/rails/pages/GettingStartedWithRails">тут</a>.</p>
<h2>Создание Rails приложения</h2>
<p>После того, как Ruby and Rails и Flex Builder у Вас уже установлены, можно перейти к созданию приложения Rails.</p>
<p>Создаем новое приложение так:<br />
&nbsp;<br />
<table width="90%" bgcolor="#d7e8e6" border="0" cellpadding="5">
<tbody>
<tr>
<td><font face="Courier New">&gt; rails myrailsapp</font></td>
</tr>
</tbody>
</table>
<p><a href='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin2.jpg' title='gettin2.jpg'><img src='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin2.jpg' alt='gettin2.jpg' /></a></p>
<p>Затем переходим из текущей папки в папку новосозданного приложения и запускаем команду для скачки и установки плагина WebORB в текущее Rails приложение:<br />
&nbsp;<br />
<table width="90%" bgcolor="#d7e8e6" border="0" cellpadding="5">
<tbody>
<tr>
<td><font face="Courier New">&gt; ruby script/plugin install http://themidnightcoders.net:8089/svn/weborb</font></td>
</tr>
</tbody>
</table>
<p><a href='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin3.jpg' title='gettin3.jpg'><img src='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin3.jpg' alt='gettin3.jpg' /></a></p>
<p>Теперь WebORB проинсталлирован и готов обрабатывать Flex и Flash удаленные вызовы. Запустите web-сервер Rails приложения командой &#8220;ruby script/server&#8221;:<br />
&nbsp;<br />
<table width="90%" bgcolor="#d7e8e6" border="0" cellpadding="5">
<tbody>
<tr>
<td><font face="Courier New">&gt; ruby script/server</font></td>
</tr>
</tbody>
</table>
<p><a href='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin4.jpg' title='gettin4.jpg'><img src='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin4.jpg' alt='gettin4.jpg' /></a></p>
<p>Вы можете проверить, что приложение было создано и плагин проинсталлирован корректно при помощи запуска тестового приложения, которое идет в составе плагина WebORB. Откройте <a href="http://localhost:3000/examples/main.html">http://localhost:3000/examples/main.html</a> в Вашем браузере. Если приложение загружено корректно, то вы сможете запустить различные тесты. Каждый тест вызывает методы Ruby классов, установленных вместе с плагином WebORB.</p>
<h2>Создание Flex приложения</h2>
<p>Запускаем Flex Builder, выбираем в меню File-&gt;New-&gt;Flex project,<br />
<a href='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin5.png' title='gettin5.png'><img src='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin5.png' alt='gettin5.png' /></a></p>
<p>Задаем имя проекта, например SampleFlexToRubyProject, выбираем Application Server Type: Other, жмем Next,<br />
<a href='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin6.png' title='gettin6.png'><img src='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin6.png' alt='gettin6.png' /></a></p>
<p>Следующий шаг в создании Flex проекта - указать папку, куда будут складываться откомпилированные файлы и URL, который будет соответствовать этой папке. Для того, чтобы папка была доступна из Rails приложения она должна находиться в подпапке <code>/public</code> внутри Вашего приложения (в нашем случае это будет <code>c:\ruby\myrailsapp\public</code>). Не забудьте, что URL должен соответствовать указанной Вами папке.</p>
<p>Выбираем куда у нас будут складываться откомпилированные файлы, например<br />
<code><br />
c:\ruby\myrailsapp\public\examples<br />
</code><br />
жмем Next,<br />
<a href='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin7.png' title='gettin7.png'><img src='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin7.png' alt='gettin7.png' /></a></p>
<p>Внизу выбираем URL который будет соответствовать папке <code>c:\ruby\myrailsapp\public\examples</code>, указанной не предыдущем шаге <a href="http://localhost:3000/examples">http://localhost:3000/examples</a>, жмем Finish.<br />
<a href='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin8.png' title='gettin8.png'><img src='http://tatsoft.wpmu.flatsoft.com/files/2008/10/gettin8.png' alt='gettin8.png' /></a></p>
<p>После того, как Вы нажали &#8216;Finish&#8217;, Flex Builder создаст пустое Flex приложение. Шаги, описанные ниже, помогут Вам создать Flex приложение которое будет соединяться с Ruby объектом на Rails сервере.</p>
<p>WebORB для Rails содержит пример Flex приложения демонстрирующий работу Flex с WebORB для удаленных вызовов. Скопируйте содержимое файла example.mxml из папки<br />
<code><br />
\public\examples\<br />
</code><br />
в файл mxml который создался во Flex Builder-е. Код приложения соединяется c Ruby объектами и получает информацию о компьютере, на котором работают эти руби-объекты.</p>
<h2>Конфигуриция WebORB</h2>
<p>Для работы с RoR Flex приложение требует описания классов как сервисов, с которыми будет происходить работа как &#8220;destinations&#8221;. Они должны быть сконфигурированы в файле <code>remoting-config.xml</code> расположенном в папке <code>\config\WEB-INF\flex</code>. В данном примере приложение использует сервис &#8220;InfoService&#8221;, определенный для класса &#8220;InfoService&#8221; следующим образом:</p>
<table width="400" bgcolor="#d7e8e6" border="0" cellpadding="2" cellspacing="3" align="center">
<tbody>
<tr>
<td><font face="Courier New">&nbsp;&lt;destination 	id=&#8221;InfoService&#8221;&gt;</p>
<p>&nbsp;&nbsp; &lt;properties&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp; &lt;source&gt;InfoService&lt;/source&gt;<br />
&nbsp;&nbsp; &lt;/properties&gt;<br />
								&lt;/destination&gt;</font></td>
</tr>
</tbody>
</table>
<p>Flex Builder подгружает эту конфигурацию во время компиляции проекта.</p>
<p>Когда Вы запускаете приложение во Flex Builder, оно открывается в окне браузера и подгружает Ваше приложение:<br />
<a href="http://localhost:3000/examples/SampleFlexToRubyProject.html">http://localhost:3000/examples/SampleFlexToRubyProject.html</a></p>
<p>Приложение соеденяется с RoR сервисом во время запуска или когда юзер нажмет на кнопку &#8220;Send Request&#8221;.</p>
<h2>Обзор кода</h2>
<p>Flex приложение объявляет удаленный объект используя RemoteObject API:</p>
<table width="600" bgcolor="#d7e8e6" border="0" cellpadding="2" cellspacing="3">
<tbody>
<tr>
<td><font face="Courier New">remoteObject = new RemoteObject();<br />
								remoteObject.destination = &#8220;InfoService&#8221;;<br />
								remoteObject.getComputerInfo.addEventListener(&#8221;result&#8221;, onResult);<br />
								remoteObject.addEventListener(&#8221;fault&#8221;, onFault);</font></td>
</tr>
</tbody>
</table>
<p>Обратите внимание, что имя destination соответствует destination объявленном в remoting-config.xml.<br />
Когда пользователь ныжимает кнопку &#8216;Get Computer Info&#8217;, следующая функция производит удаленный вызов:</p>
<table width="600" bgcolor="#d7e8e6" border="0" cellpadding="2" cellspacing="3">
<tbody>
<tr>
<td><font face="Courier New">private function 	getInfo():void <br />
								{<br />
&nbsp; invokeButton.enabled = false;<br />
&nbsp; serverInfoText.text = &#8220;&#8221;;<br />
&nbsp; requestIdText.text = &#8220;&#8221;;<br />
&nbsp; osText.text = &#8220;&#8221;;<br />
&nbsp; timeText.text = &#8220;&#8221;;<br />
&nbsp; remoteObject.getComputerInfo(&#8221;ABC123&#8243;);<br />
								} </font></td>
</tr>
</tbody>
</table>
<p>Когда приложение получает ответ от сервера, Flex вызывает обработчик ответа определенный в тэге &#8220;RemoteObject&#8221;. В данном примере обработчик ответа достает текстовые поля из объекта, пришедшего с сервера:</p>
<table width="600" bgcolor="#d7e8e6" border="0" cellpadding="2" cellspacing="3">
<tbody>
<tr>
<td><font face="Courier New">private function onResult(event:ResultEvent):void <br />
								{<br />
&nbsp; var computerInfo:Object = event.result;<br />
&nbsp; serverInfoText.text = computerInfo.serverName;<br />
&nbsp; requestIdText.text = computerInfo.requestId;<br />
&nbsp; osText.text = computerInfo.os;<br />
&nbsp; timeText.text = computerInfo.currentTime.toString();<br />
&nbsp; invokeButton.enabled = true;<br />
								}</font></td>
</tr>
</tbody>
</table>
<p>Исходный код для серверной стороны такой:</p>
<table width="600" bgcolor="#d7e8e6" border="0" cellpadding="2" cellspacing="3">
<tbody>
<tr>
<td><font face="Courier New">require &#8216;weborb/context&#8217;<br />
								require &#8216;rbconfig&#8217;</p>
<p>								class InfoService<br />
&nbsp; def getComputerInfo( requestId )<br />
&nbsp;&nbsp;&nbsp; computer_info = Hash.new<br />
&nbsp;&nbsp;&nbsp; request = RequestContext.get_request<br />
&nbsp;&nbsp;&nbsp; computer_info['serverName'] = request.server_software<br />
&nbsp;&nbsp;&nbsp; computer_info['requestId'] = requestId<br />
&nbsp;&nbsp;&nbsp; computer_info['os'] = Config::CONFIG["arch"].to_s<br />
&nbsp;&nbsp;&nbsp; computer_info['currentTime'] = Time.now<br />
&nbsp;&nbsp;&nbsp; computer_info<br />
&nbsp; end<br />
								end</font></td>
</tr>
</tbody>
</table>
<h2>Соответствие типов</h2>
<p>Соответствие типов Flex - Ruby я разбирал <a href="http://artemgolubev.com/creating-web-20-ria-applications-with-flex-and-rails/">тут</a>:</p>
<ol>
<li>int - Fixnum</li>
<li>Numeric - Float</li>
<li>Date - Time</li>
<li>String - String</li>
<li>Boolean - Boolean</li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2008/10/26/flex-dlya-ruby-on-rails/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Джонатан Вортингтон, perl хацкер 14 октября в Казани</title>
		<link>http://tatsoft.ru/2008/09/09/dzhonatan-vortington-perl-hatsker-14-oktyabrya-v-kazani/</link>
		<comments>http://tatsoft.ru/2008/09/09/dzhonatan-vortington-perl-hatsker-14-oktyabrya-v-kazani/#comments</comments>
		<pubDate>Tue, 09 Sep 2008 10:27:26 +0000</pubDate>
		<dc:creator>Timur Vafin</dc:creator>
		
		<category><![CDATA[Анонсы]]></category>

		<guid isPermaLink="false">http://www.tatsoft.ru/2008/09/09/dzhonatan-vortington-perl-hatsker-14-oktyabrya-v-kazani/</guid>
		<description><![CDATA[Денис Ибаев рассказал, что Джонатан Вортингтон, широко известный в узких кругах Perl-хакер, будет в Казани 14 октября.
Он предложил желающим встретиться пообедать, попить пивка или просто поболтать. Думаю, можно поддрежать предложение и попить сока марковного как водится  
]]></description>
			<content:encoded><![CDATA[<p>Денис Ибаев рассказал, что <a href="http://www.jnthn.net/index.shtml">Джонатан Вортингтон</a>, широко известный в узких кругах Perl-хакер, будет в Казани 14 октября.</p>
<p>Он предложил желающим встретиться пообедать, попить пивка или просто поболтать. Думаю, можно поддрежать предложение и попить сока марковного как водится <img src='http://tatsoft.ru/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2008/09/09/dzhonatan-vortington-perl-hatsker-14-oktyabrya-v-kazani/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Интересная задачка 2-я серия :)</title>
		<link>http://tatsoft.ru/2008/07/30/interesnaya-zadachka-2-ya-seriya/</link>
		<comments>http://tatsoft.ru/2008/07/30/interesnaya-zadachka-2-ya-seriya/#comments</comments>
		<pubDate>Wed, 30 Jul 2008 14:53:19 +0000</pubDate>
		<dc:creator>Артем Голубев</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[RubyOnRails]]></category>

		<guid isPermaLink="false">http://www.tatsoft.ru/2008/07/30/interesnaya-zadachka-2-ya-seriya/</guid>
		<description><![CDATA[Чтобы переходить к этой части вам надо ознакомится с 1-й:
http://www.tatsoft.ru/2008/07/25/interesnaya-zadachka/
В 1-й части был груз целой массы и грузики степени 3 по 1 экземпляру каждый.
Теперь предположим, что у нас опять есть груз целой массы, который также нужно уравновесить на весах, кладя грузики на обе чашки весов. Только грузики теперь степеней k (т.е. 1, k, k^2, k^3, [...]]]></description>
			<content:encoded><![CDATA[<p>Чтобы переходить к этой части вам надо ознакомится с 1-й:<br />
http://www.tatsoft.ru/2008/07/25/interesnaya-zadachka/</p>
<p>В 1-й части был груз целой массы и грузики степени 3 по 1 экземпляру каждый.</p>
<p>Теперь предположим, что у нас опять есть груз целой массы, который также нужно уравновесить на весах, кладя грузики на обе чашки весов. Только грузики теперь степеней k (т.е. 1, k, k^2, k^3, &#8230;). Вопрос, вывести функцию F зависимости минимально необходимого кол-ва грузиков массы k^i для всех i для уравновешивания от k. Например, из предыдущей серии мы знаем, что F(3) = 1, т.е. для k=3 достаточно только 1 грузика каждой массы 3^i.</p>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2008/07/30/interesnaya-zadachka-2-ya-seriya/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Интересная задачка :)</title>
		<link>http://tatsoft.ru/2008/07/25/interesnaya-zadachka/</link>
		<comments>http://tatsoft.ru/2008/07/25/interesnaya-zadachka/#comments</comments>
		<pubDate>Fri, 25 Jul 2008 04:14:39 +0000</pubDate>
		<dc:creator>Артем Голубев</dc:creator>
		
		<category><![CDATA[RubyOnRails]]></category>

		<guid isPermaLink="false">http://www.tatsoft.ru/2008/07/25/interesnaya-zadachka/</guid>
		<description><![CDATA[Задачка, если честно, из моего дества. В школе мне попалась.
Собственно: дан грузик некоторого целого веса, аптекарские весы (с чашачками такие) и
набор грузиков с весами 1, 3, 9, 27, &#8230; (в наборе каждого веса грузик есть только в 1 экземпляре).
Требуется написать программу (скажем на руби), которая будет уравновешивать 1-й грузик грузиками
из набора, причем класть грузики можно [...]]]></description>
			<content:encoded><![CDATA[<p>Задачка, если честно, из моего дества. В школе мне попалась.</p>
<p>Собственно: дан грузик некоторого целого веса, аптекарские весы (с чашачками такие) и<br />
набор грузиков с весами 1, 3, 9, 27, &#8230; (в наборе каждого веса грузик есть только в 1 экземпляре).<br />
Требуется написать программу (скажем на руби), которая будет уравновешивать 1-й грузик грузиками<br />
из набора, причем класть грузики можно на обе чашечки.</p>
<p>А для Настоящих Программистов продолжение: выяснить будет ли алгоритм конечным (доказать конечность или бесконечность).<br />
В случае если вы считаете его конечным, оценить его сложность и кол-во необходимых грузиков (опять же с доказательством, ну или доказать невозможность такой оценки) <img src='http://tatsoft.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Удачи в развлекаловке! <img src='http://tatsoft.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://tatsoft.ru/2008/07/25/interesnaya-zadachka/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
