<?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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Dev4Food &#187; Ruby</title>
	<atom:link href="http://dev4food.ru/tag/ruby/feed/" rel="self" type="application/rss+xml" />
	<link>http://dev4food.ru</link>
	<description>Всё о работе за актуальные деньги</description>
	<lastBuildDate>Mon, 19 Jul 2010 08:56:36 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>&#171;nmake&#187; не является внутренней или внешней командой, исполняемой программой или пакетным файлом</title>
		<link>http://dev4food.ru/2009/09/nmake-ne-yavlyaetsya-vnutrennej-ili-vneshnej-komandoj-ispolnyaemoj-programmoj-ili-paketnym-fajlom/</link>
		<comments>http://dev4food.ru/2009/09/nmake-ne-yavlyaetsya-vnutrennej-ili-vneshnej-komandoj-ispolnyaemoj-programmoj-ili-paketnym-fajlom/#comments</comments>
		<pubDate>Tue, 01 Sep 2009 18:19:43 +0000</pubDate>
		<dc:creator>2-й фрилансер</dc:creator>
				<category><![CDATA[Остальное]]></category>
		<category><![CDATA[Программинг]]></category>
		<category><![CDATA[Gems]]></category>
		<category><![CDATA[Nmake]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://dev4food.ru/?p=627</guid>
		<description><![CDATA[Вот такую ошибку вы можете получить при попытке установить gems пакет для ruby.
Не нужно поддаваться панике - в вашей системе просто не установлено сборщика nmake.
Для Windows системы, скачиваем его с офф сайта Microsoft, и устанавливаем к примеру в папку \Ruby\bin\
]]></description>
			<content:encoded><![CDATA[<p>Вот такую ошибку вы можете получить при попытке установить <strong>gems </strong>пакет для <strong>ruby</strong>.</p>
<p>Не нужно поддаваться <a  href="http://drkwv.name/note/id?id=321" target="_blank">панике</a> - в вашей системе просто не установлено сборщика <strong>nmake</strong>.</p>
<p>Для Windows системы, скачиваем его с офф сайта <a  href="http://download.microsoft.com/download/vc15/patch/1.52/w95/en-us/nmake15.exe">Microsoft</a>, и устанавливаем к примеру в папку \Ruby\bin\</p>
]]></content:encoded>
			<wfw:commentRss>http://dev4food.ru/2009/09/nmake-ne-yavlyaetsya-vnutrennej-ili-vneshnej-komandoj-ispolnyaemoj-programmoj-ili-paketnym-fajlom/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Первая Ruby халтура</title>
		<link>http://dev4food.ru/2009/07/pervaya-ruby-xaltura/</link>
		<comments>http://dev4food.ru/2009/07/pervaya-ruby-xaltura/#comments</comments>
		<pubDate>Thu, 16 Jul 2009 15:59:18 +0000</pubDate>
		<dc:creator>2-й фрилансер</dc:creator>
				<category><![CDATA[Новости]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://dev4food.ru/2009/07/pervaya-ruby-xaltura/</guid>
		<description><![CDATA[Получил заказ, и решил делать его на ruby.
Благо задание позволяет - статистика + математика.
Update
Выполнил заказ. Очень гибко и просто.
]]></description>
			<content:encoded><![CDATA[<p>Получил заказ, и решил делать его на ruby.</p>
<p>Благо задание позволяет - статистика + математика.</p>
<p class="first-child ">Update</p>
<p>Выполнил заказ. Очень гибко и просто.</p>
]]></content:encoded>
			<wfw:commentRss>http://dev4food.ru/2009/07/pervaya-ruby-xaltura/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby IDE. Для начинающих Aptana Studio, 3rdRail, TurboRuby, RubyMine, NetBeans</title>
		<link>http://dev4food.ru/2009/06/ruby-ide-aptana-3drrail-turboruby-rubymine-netbeans/</link>
		<comments>http://dev4food.ru/2009/06/ruby-ide-aptana-3drrail-turboruby-rubymine-netbeans/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 11:34:11 +0000</pubDate>
		<dc:creator>2-й фрилансер</dc:creator>
				<category><![CDATA[Остальное]]></category>
		<category><![CDATA[Программинг]]></category>
		<category><![CDATA[3rdRail]]></category>
		<category><![CDATA[Aptana Studio]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[NetBeans]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[RubyMine]]></category>
		<category><![CDATA[TurboRuby]]></category>

		<guid isPermaLink="false">http://dev4food.ru/?p=510</guid>
		<description><![CDATA[Начал достаточно серьезно изучать Ruby. Заинтересовал сам язык, его отличная от классики (c++/java/pascal/c#) концепция.  Для изучения новых языков нам нужен стандартный набор - книги, справки, доки, а для практики - компилятор, соединенный с ide. Вот созданию этого испытательного полигона, а именно компилятор плюс ide и будет повещен данный обзор.
Исходная предпосылка: достаточно мощный, двух ядерный [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-thumbnail wp-image-540" style="margin: 10px;" title="Ruby" src="http://dev4food.ru/wp-content/uploads/2009/06/93-150x150.jpg" alt="Ruby" width="150" height="150" />Начал достаточно серьезно изучать <strong>Ruby</strong>. Заинтересовал сам язык, его отличная от классики (c++/java/pascal/c#) концепция.  Для изучения новых языков нам нужен стандартный набор - книги, справки, доки, а для практики - компилятор, соединенный с ide. Вот созданию этого испытательного полигона, а именно компилятор плюс ide и будет повещен данный обзор.</p>
<p>Исходная предпосылка: достаточно мощный, двух ядерный компьютер с 4 гб оперативки под управлением Windows XP, runtime java последней версии и Ruby (Onclick Installer 1.86.xx)</p>
<p>Что мне хочется получить от ide для начала:</p>
<ul style="text-align: left;">
<li>Подсветку синтаксиса</li>
<li>Завершение кода (code completion)</li>
<li>Работу с отладчиком</li>
<li>Удобную навигацию по коду</li>
<li>Рефакторинг</li>
</ul>
<p>Интеграцию с CVS, сайтостроение Rails, интергация с unit тестами и т.д. оставим на 2-й план. Для меня это пока не важно. На рынке представлено много различных IDE, много бесплатных проектов, попадаются и коммерческие решения. Я не буду составлять список тех или иных фич продуктов, т.к. зачастую заявленные функции или работают неверно или находятся в совершенно зачаточном состоянии.</p>
<h2><strong><a  href="http://aptana.com/" target="_blank">Aptana Studio</a></strong></h2>
<p><strong>Бесплатная/Java</strong> Тестирование версии 1. 2.7.xxxxx</p>
<p class="first-child ">IDE разработана не с нуля, собрана на базе <strong>Eclipse</strong>. Скорость запуска IDE достаточно большая, на более медленных компьютерах это будет заметно еще более. Подсветка  синтаксиса Ruby присутствует, редактор работает нормально,  "задумчивой"  реакции я не наблюдаю. Есть сворачивание кода.</p>
<p>Заявлен Code Completion, но в реальности он работает плоховато. В коде примера явно указан Array, а где поддерживаемые им  методы <strong>map</strong>, <strong>each</strong> ? Самые ходовые методы из <strong>Kernel</strong>, <strong>Array</strong>, <strong>Object</strong> и <strong>Enumerable</strong> как раз и отсутствуют:</p>
<p style="text-align: center;"><img class="size-full wp-image-514 aligncenter" title="Aptana Code Completion" src="http://dev4food.ru/wp-content/uploads/2009/06/aptana_array.jpg" alt="Aptana Code Completion" width="426" height="268" /></p>
<p><span id="more-510"></span>У строкового типа данных чуток получше, но опять не полно:</p>
<p style="text-align: center;"><img class="size-full wp-image-515 aligncenter" title="Aptana Studio Code Complition String" src="http://dev4food.ru/wp-content/uploads/2009/06/aptana_string.jpg" alt="aptana_string" width="524" height="398" /></p>
<p>Точно так же не показаны методы численного типа. После не продолжительной работы (3-5) минут получаем:</p>
<p style="text-align: center;"><img class="size-full wp-image-516 aligncenter" style="margin-top: 10px; margin-bottom: 10px;" title="Aptana Studio Error" src="http://dev4food.ru/wp-content/uploads/2009/06/aptana_error.jpg" alt="aptana_error" width="441" height="159" /></p>
<p>Дебагер заработал сразу и без проблем. Основные  функции работают, нареканий никаких нет:</p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/aptana_debug.jpg"><img class="size-medium wp-image-526 aligncenter" title="Aptana Studio Debuger" src="http://dev4food.ru/wp-content/uploads/2009/06/aptana_debug-300x222.jpg" alt="aptana debug" width="300" height="222" /></a></p>
<p>Рефакторинг не работает вообще. Причем, 1-2 раза мне удалось запустить обычный <strong>Rename</strong>, в дальнейшем ни один из его видов не запускалось.</p>
<p>Навигация по коду стандартна - список классов, методов, переменных, модулей в файле. Быстрого перехода к файлу из <strong>require</strong> 'LibName' нет.</p>
<p>Итог - не очень стабильна работа IDE. Заявленного Code Completion считаем что и нет. Проблема падания ide возможно в большом количество включенный по умолчанию плагинов.</p>
<h2><strong><a  href="http://www.embarcadero.com/products/3rdrail/" target="_blank">3rdRail</a></strong></h2>
<p><strong>Платная/Java</strong> Тестирование версии 2.xxxxx</p>
<p>Продукт от фирмы <strong>CodeGear</strong> (ранее фирмы <strong>Borland</strong>) построен на базе бесплатного <strong>Eclipse</strong>'а. IDE стартует быстрее предыдущего IDE <strong>Aptana</strong>, в процессе загрузки предлагается выбрать текущее рабочее место workspace, и далее тот проект с которым будем работать.</p>
<p>Подсветка синтаксиса присутствует, так же как и свёртка отдельных логических блоков кода. Код нельзя свернуть до класса, а можно сворачивать только до методов. Это вообще странное поведение, т.к. обе ide собраны на базе одного opensource eclipse. Возможно, что данная функция запрятана в настройках.</p>
<p>Авто завершение строки работает на все 100%. Показываются методы, и их краткое описание и <strong>примеры использования</strong>. Методы отсортированы в удобном алфавитно классовом порядке, т.е. если мы стоим на типе Array, сначала будут показаны методы относящиеся к нему и Enumerable, а уже потом в общей группе Kernel, Object и прочие.</p>
<p>Единственный минус - Code Complition работает не всегда, т.е. бывают случаи (причем частные), когда появляется пустой список. Так же этот механизм достаточно задумчив, на более слабых машинах подтормаживание будет заметным.</p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/3drail_a.jpg"><img class="size-medium wp-image-545 aligncenter" style="margin-top: 10px; margin-bottom: 10px;" title="3rdrail Code Complition Array" src="http://dev4food.ru/wp-content/uploads/2009/06/3drail_a-300x161.jpg" alt="3drail" width="300" height="161" /></a></p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/3drail_fixnum.jpg"><img class="size-medium wp-image-547 aligncenter" style="margin-top: 10px; margin-bottom: 10px;" title="3rdrail Code Complition fixnum" src="http://dev4food.ru/wp-content/uploads/2009/06/3drail_fixnum-300x139.jpg" alt="3drail_fixnum" width="300" height="139" /></a></p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/3drail_string.jpg"><img class="size-medium wp-image-551 aligncenter" style="margin-top: 10px; margin-bottom: 10px;" title="3rdrail Code Complition String" src="http://dev4food.ru/wp-content/uploads/2009/06/3drail_string-300x134.jpg" alt="3drail_string" width="300" height="134" /></a></p>
<p style="text-align: left;">Отладчик работает аналогично предыдущему IDE. Переменные, вызовы, глобальные переменные, переменные среды - все доступно для просмотра:</p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/3drail_debug.jpg"><img class="size-medium wp-image-546 aligncenter" style="margin-top: 10px; margin-bottom: 10px;" title="3rdrail Code Complition Debuger" src="http://dev4food.ru/wp-content/uploads/2009/06/3drail_debug-300x191.jpg" alt="3drail debug" width="300" height="191" /></a></p>
<p style="text-align: left;">Рефакторинга как такового нет, даже самого простого вида - изменение имени переменной.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-569" title="3rdrail refactor" src="http://dev4food.ru/wp-content/uploads/2009/06/3rdrail_refactor.gif" alt="3rdrail refactor" width="441" height="172" /></p>
<p style="text-align: left;">Возможно, что под <strong>рефакторингом</strong> в данной ide понимается изменение названий моделей, модулей, т.е. как я понимаю он более ориентирован на Ruby On Rails.</p>
<p style="text-align: left;">Навигация по коду на уровне Aptana.</p>
<h2><strong><a  href="http://www.embarcadero.com/products/turboruby/index.php" target="_blank">TurboRuby</a></strong></h2>
<p><strong>Платная/Java</strong> Тестирование версии 2.xxxxx</p>
<p>Если 3rdRail ориентирован на ROR разработку, то эта вариация IDE ориентирована на разработку именно Ruby приложений. Все то же самое, что и в описанном выше 3rdRail. По моему это просто маркетинговый финт с разделением одного продукта на два.</p>
<p>Подводя итог по продуктам <strong>Embarcadero -</strong> судя по последнему билду, а он датирован аж 06.2008 (сейчас конец 06.2009) я думаю, что о этих продуктах можно смело забывать - <span style="color: #ff0000;">они не развиваются</span>.</p>
<p style="text-align: center;"><strong>Скриншоты редактора кода из наиболее интересных ide для ruby</strong></p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/rubyide.gif"><img class="size-medium wp-image-575 aligncenter" style="margin-top: 10px; margin-bottom: 10px;" title="Ruby Ide : Aptana, 3rdRail, TurboRuby, NetBeans, RubyMine" src="http://dev4food.ru/wp-content/uploads/2009/06/rubyide-300x85.gif" alt="Ruby Ide : Aptana, 3rdRail, TurboRuby, NetBeans, RubyMine" width="300" height="85" /></a></p>
<h2 style="text-align: left;"><a  href="http://www.netbeans.org/features/ruby/" target="_blank">NetBeans</a></h2>
<p><strong>Безплатная/Java</strong> Тестирование версии 6.5 (6.7 RC)</p>
<p>Я тестировал как продакшен версию 6.5, так и релиз кандидат 6.7 и могу сказать, что этой ide я очень доволен. Быстрый старт, "отзывчивая" реакция ide, цветовые схемы, плагины - всё на высочайшем уровне. В редакторе присутствует завершение кода и возможность просмотра примеров использования методов. Представление этой информации в NetBeans, пожалуй самое лучшее, из всех, рассмотренных мною сред.  Посмотрите на скриншоты, очень удобное разделение методов:</p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_1.gif"><img class="aligncenter size-medium wp-image-581" title="netbeans ide" src="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_1-300x224.gif" alt="netbeans ide" width="300" height="224" /></a></p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_2.gif"><img class="size-medium wp-image-582 aligncenter" title="netbeanS IDE" src="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_2-300x197.gif" alt="netbeanS IDE" width="300" height="197" /></a></p>
<p style="text-align: left;">Среда поддерживает собственные Code Templates и для каждого языка можно создавать свои наборы. Эта фича есть во всех более менее современных языках и позволяет значительно сокращать время набора кода.</p>
<p>Следующая интересная возможность <strong>NetBeans </strong>это работа с <strong>Ruby Gems</strong>. В окне показывается список установленных пакетов и доступных для установки. Так же есть возможность поиска и обновления:</p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_gems.gif"><img class="size-medium wp-image-586 aligncenter" title="netbeans gems" src="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_gems-300x200.gif" alt="netbeans gems" width="300" height="200" /></a></p>
<p><strong>Local History</strong> - еще одна замечательная штука. В ide нет кнопки save(принудительная Save All конечно же есть). Все изменения по проекту ведутся в виде локальной истории. Имеется возможность откатиться до нужного состояния.</p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_localhistory.gif"><img class="size-medium wp-image-588 aligncenter" title="netbeans localhistory" src="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_localhistory-300x219.gif" alt="netbeans localhistory" width="300" height="219" /></a></p>
<p style="text-align: left;"><strong>Рефакторинг </strong>работает именно так как нужно, пример rename:</p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_refactor.gif"><img class="size-medium wp-image-589 aligncenter" title="netbeans refactor" src="http://dev4food.ru/wp-content/uploads/2009/06/netbeans_refactor-300x109.gif" alt="netbeans refactor" width="300" height="109" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">Навигация по коду так же на высоте - дерево проектов, файлы проекта, классы/модули открытого файла, мониторинг изменений в бакграунде - все это конечно же присутствует и работает. Так же порадовала удобная навигация к файлам в секции require.</p>
<p style="text-align: left;">
<h2 style="text-align: left;"><a  href="http://www.jetbrains.com/ruby/" target="_blank">RubyMine</a></h2>
<p><strong>Платная/Java</strong> Тестирование версии 1.xxx</p>
<p>Функционал этой IDE, как редактора, находится на высоте - используются все наработки IntelliJ IDEA:</p>
<p>- свертка кода по классам и модулям<br />
- удобная возможность просмотра проекта в файловом виде и в виде классовой структуры<br />
- навигация по коду<br />
- поиск<br />
- встроенный отладчик<br />
...</p>
<p>Всё это присутствует и работает на 5+</p>
<p>Система авто-завершения кода работает стабильно, есть правда один минус - это <strong>сортировка</strong>.</p>
<p>Методы типа помещаются в общую кашу к родительским (в самом простом случае  Object и Kernal) и на мой взгляд, это не удобно. Пишем мы, к примеру, класс BClass, добавляем ему методы some_p. Логично, что в 99% мы будем использовать именно эти методы: а при наборе кода:</p>
<p>b = BClass.new<br />
b.</p>
<p>мы получим список из методов Object, Kernal и BClass. На мой взгляд, логичнее методы класса BClass выделять ставить выше в списке сортировки:</p>
<p style="text-align: center;"><a href="http://dev4food.ru/wp-content/uploads/2009/06/rubymime_3.gif"><img class="size-full wp-image-619 aligncenter" title="rubymine" src="http://dev4food.ru/wp-content/uploads/2009/06/rubymime_3.gif" alt="rubymine" width="431" height="451" /></a></p>
<p>Второй минус - нет возможности посмотреть подсказки к методам, как это сделано, к примеру, у <strong>NetBeans</strong>.  По моему мнению, система Code Completion у <strong>NetBeans</strong> самая удобная и более интеллектуальная - <strong>RubyMine </strong>тут явно проигрывает (надеюсь что пока).</p>
<p>Большим плюсом является стабильность среды - за всё время тестирования (~ 2-3 месяца) не рухнула ни одного раза. Стандартные Local History, RubyGems, интеграция с Version Control системами - в наличии. Так же присутствуют встроенные системы тестирования Rake</p>
<p>У <strong>RubyMine</strong> присутствуют и некоторый уникальный функционал, например инспектор кода. Достаточно удобная штука - даёт советы по улучшению кода <img src='http://dev4food.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Иногда бывает полезна встроенная в IDE IRB консоль, и редактор reg expo'в (plugin).</p>
<p>Общее впечатление о среде могу охарактеризовать как крайне положительные. Среда заточена именно под <strong>Ruby</strong> и постоянно развивается.  Минусом может стать только цена продукта - для начинающих она будет кусаться.</p>
<p>Еще один не понятный мне момент. Фирма по сути продает два продукта для работы с ruby - RubyMine и  <a  href="http://www.jetbrains.com/idea/features/ruby_rails.html" target="_blank">IDEA</a>...</p>
<p>Ссылки:</p>
<p>Анлгоязычный обзор :  <a  href="http://tnlessone.wordpress.com/2007/02/28/ruby-rails-ide-comparison-idea-netbeans-radrails/" target="_blank">Ruby / Rails IDE Comparison : Idea, Netbeans, RadRails</a></p>
]]></content:encoded>
			<wfw:commentRss>http://dev4food.ru/2009/06/ruby-ide-aptana-3drrail-turboruby-rubymine-netbeans/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
