<?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>AjaxBlog &#187; Инструмент разработчика</title>
	<atom:link href="http://ajaxblog.ru/tag/instrument-razrabotchika/feed/" rel="self" type="application/rss+xml" />
	<link>http://ajaxblog.ru</link>
	<description>ajax, javascript, css, php</description>
	<lastBuildDate>Tue, 12 Jan 2010 16:54:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Гаджет из фотошопа</title>
		<link>http://ajaxblog.ru/2009/10/gadzhet-iz-fotoshopa/</link>
		<comments>http://ajaxblog.ru/2009/10/gadzhet-iz-fotoshopa/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 11:28:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Мои проекты]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=254</guid>
		<description><![CDATA[Для одного рабочего проекта нужно было создать &#171;по быстрому&#187; прототип системы. Основная логика интерфейса была,  все что видеть пользователь &#8211; это гаджет. К сожалению интерфейс не был одобрен руководством, а прототип остался, по этому, если кто-то использует его в своем &#8230; <a href="http://ajaxblog.ru/2009/10/gadzhet-iz-fotoshopa/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Для одного рабочего проекта нужно было создать &laquo;по быстрому&raquo; прототип системы. Основная логика интерфейса была,  все что видеть пользователь &#8211; это гаджет. К сожалению интерфейс не был одобрен руководством, а прототип остался, по этому, если кто-то использует его в своем проекте, я не буду против. Обращаю ваше внимания, так как это прототип делали &laquo;по быстрому&raquo; &#8211; то дизайн и логика поведения была взята с одной очень уважаемой мною программы.</p>
<p><span id="more-254"></span></p>
<p>И так что он умеет:</p>
<ol>
<li>Двигаться по странице (move)</li>
<li>Изменять размеры (resize)</li>
<li>Имеет возможность настроить максимальную ширину панели (max width)</li>
<li>Имеет два состояния: нормальное (normal) и компактное (compact)</li>
<li>Имеет возможность сортировать гаджеты внутри панельки (sort)</li>
<li>Просмотр в компактном режиме</li>
</ol>
<p>Нормальный режим</p>
<p><img class="alignnone size-full wp-image-256" title="gadget-normal" src="http://ajaxblog.ru/wp-content/uploads/2009/10/gadget-normal.gif" alt="gadget-normal" width="428" height="663" /></p>
<p>Компактный режим</p>
<p><img class="alignnone size-full wp-image-255" title="gadget-compact" src="http://ajaxblog.ru/wp-content/uploads/2009/10/gadget-compact.gif" alt="gadget-compact" width="310" height="500" /></p>
<p>Смотрим:  <a href="http://samples.ajaxblog.ru/work/gadget/panel.html">рабочий пример гаджета</a></p>
<p>Технология:  jQuery + UI, CSS, HTML &#8211; все просто. Если кому-то нужно будет доработать гаджет или адаптировать к своим требованием, пишите &#8211; договоримся.</p>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2009/10/gadzhet-iz-fotoshopa/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Krumo &#8211; средство для отладки php кода</title>
		<link>http://ajaxblog.ru/2008/10/krumo-sredstvo-dlya-otladki-php-koda/</link>
		<comments>http://ajaxblog.ru/2008/10/krumo-sredstvo-dlya-otladki-php-koda/#comments</comments>
		<pubDate>Wed, 29 Oct 2008 07:52:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=184</guid>
		<description><![CDATA[Чем хорошо этот Kumo, он позволяет отказаться от ставших привычных операций echo, print_r(), var_dump(). В замен использовать krumo(). Библиотека достаточно интеллектуальна, чтобы понять какой тип переменой вы передали (String, Array, Object, Clasи т.д.) и сама проводит соответствующие преобразование в нужный &#8230; <a href="http://ajaxblog.ru/2008/10/krumo-sredstvo-dlya-otladki-php-koda/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img style="float: left; margin: 0px 10px 10px 0px" title="krumo" src="http://ajaxblog.ru/wp-content/uploads/2008/10/krumo.gif" alt="" width="288" height="97" /></p>
<p>Чем хорошо этот <a href="http://kaloyan.info/krumo/#top">Kumo</a>, он позволяет отказаться от ставших привычных операций echo, print_r(), var_dump(). В замен использовать krumo(). Библиотека достаточно интеллектуальна, чтобы понять какой тип переменой вы передали (String, Array, Object, Clasи т.д.) и сама проводит соответствующие преобразование в нужный html код для выдачи в отформатированном виде в ваш браузер.<br />
<span id="more-184"></span><br />
Как работает:</p>
<ul>
<li>Скачиваем: на <a href="http://sourceforge.net/project/showfiles.php?group_id=194198">официальном сайте</a> или <a href="http://ajaxblog.ru/article/2008/10/krumo.rar">у меня</a>. В последнем случае вы получите немного модифицированную библиотеку.
<ul>
<li>Добавил подержу оператора <strong>__()</strong>. Теперь можно вывести переменные как с помощью оператора krumo(), так и __().</li>
<li>Убрал в отладочном выводе  следующию строчку, <strong>Krumo version 0.2.1a | http://krumo.sourceforge.net/</strong>. Да простят меня разработчики, но я думаю где взять и какая версия вас мало будет интересовать во время отладки кода.</li>
</ul>
</li>
<li>Подключаем
<pre class="prettyprint">include "class.krumo.php";</pre>
</li>
<li>Используем
<pre class="prettyprint">krumo($var);
или так
__($var);</pre>
</li>
<li>Дополнительные настройки
<pre class="prettyprint">// показ debug backgrace
 krumo::backtrace();
 // показ всех подключенных классов
 krumo::includes();
 // показ всех функций
 krumo::functions();
 // показ всех декларированных классов
 krumo::classes();
 // показ всех объявленных констант
 krumo::defines();
 // запретить вывод отладочных сообщений всего что ниже
 krumo::disable();
 // Этот вывод показан не будет
 krumo::includes();
 // Разрешить отладочный вывод
 krumo::enable();
 // Этот вывод будет показан
 krumo::classes();</pre>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2008/10/krumo-sredstvo-dlya-otladki-php-koda/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Pencil – зарисовки и наброски прототипов интерфейсов с помощью Firefox</title>
		<link>http://ajaxblog.ru/2008/10/pencil-zarisovki-i-nabroski-prototipov-interfejjsov-s-pomoshhyu-firefox/</link>
		<comments>http://ajaxblog.ru/2008/10/pencil-zarisovki-i-nabroski-prototipov-interfejjsov-s-pomoshhyu-firefox/#comments</comments>
		<pubDate>Tue, 21 Oct 2008 18:41:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>
		<category><![CDATA[Находки]]></category>
		<category><![CDATA[Плагины]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=172</guid>
		<description><![CDATA[Для одного заказа, мне нужно было очень быстро отослать прототип будущей вэб страницы клиенту. Она была перегружена формами, и нужно было согласовать их расположение с заказчиком. К сожалению под рукой не оказалось сканера и поэтому я решил сделать прототип системы &#8230; <a href="http://ajaxblog.ru/2008/10/pencil-zarisovki-i-nabroski-prototipov-interfejjsov-s-pomoshhyu-firefox/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Для одного заказа, мне нужно было очень быстро отослать прототип будущей вэб страницы клиенту. Она была перегружена формами, и нужно было согласовать их расположение с заказчиком.</p>
<p>К сожалению под рукой не оказалось сканера и поэтому я решил сделать прототип системы в фотошопе. После второй кнопки, я понял что не успею. Поэтому решил поискать в Интернете, что-то, что позволило решить мою задачу.</p>
<p>Вот что я нашёл – <a href="http://www.evolus.vn/Pencil/Home.html">Pencil</a>.</p>
<p><span id="more-172"></span> Доступ ко всем свойствам формы</p>
<ul>
<li>
<div><img src="http://ajaxblog.ru/wp-content/uploads/2008/10/property-dialog.jpg" alt="" width="270" height="167" /></div>
</li>
<li>Создание прототипа GUI для настольных приложений Windows.
<div><img src="http://ajaxblog.ru/wp-content/uploads/2008/10/complex-gui-design.jpg" alt="" width="270" height="167" /></div>
</li>
<li>Страница Свойства диалог с возможностью выбрать другую страницу в качестве фонового.
<div><img src="http://ajaxblog.ru/wp-content/uploads/2008/10/page-properties.jpg" alt="" width="270" height="167" /></div>
</li>
<li>Текст на экране поддерживает возможность редактирование, как простого текста так и форматированного.
<div><img src="http://ajaxblog.ru/wp-content/uploads/2008/10/onscreen-text-editing.jpg" alt="" width="270" height="167" /></div>
</li>
<li>Pencil поддерживает возможность конвертировать ваш проект в PNG.
<div><img src="http://ajaxblog.ru/wp-content/uploads/2008/10/export-pngs.jpg" alt="" width="270" height="167" /></div>
</li>
</ul>
<p>Самая приятная фича этого проекта, в том, что он сделан как плагин к Firefox. Мой любимый Firefox – уже перестает быть просто браузером, а становится средой для разработки приложений.</p>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2008/10/pencil-zarisovki-i-nabroski-prototipov-interfejjsov-s-pomoshhyu-firefox/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Скажи «здравствуй» Blackbird и «до свидание» alert()</title>
		<link>http://ajaxblog.ru/2008/10/skazhi-zdravstvujj-blackbird-i-do-svidanie-alert/</link>
		<comments>http://ajaxblog.ru/2008/10/skazhi-zdravstvujj-blackbird-i-do-svidanie-alert/#comments</comments>
		<pubDate>Thu, 16 Oct 2008 12:37:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=136</guid>
		<description><![CDATA[Вот такой громкий заголовок венчает сайт авторов Blackbird. Что такое Blackbird – это js скрипт который позволяет забыть о существовании оператора JavaScript&#8217;а &#8211; alert(). Для разработчика javascript – интересный инструмент дебагинка кода. Конечно, «монстры» JavaScript программирования скажут, зачем нам это &#8230; <a href="http://ajaxblog.ru/2008/10/skazhi-zdravstvujj-blackbird-i-do-svidanie-alert/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img style="margin: 0px 10px 10px; float: left " title="Blackbird javascript debaging" src="http://ajaxblog.ru/wp-content/uploads/2008/10/blackbird.png" alt="Blackbird javascript debaging" width="297" height="285" /></p>
<p>Вот такой громкий заголовок венчает сайт авторов <a href="http://www.gscottolson.com/blackbirdjs/">Blackbird</a>.</p>
<p>Что такое Blackbird – это js скрипт который позволяет забыть о существовании оператора JavaScript&#8217;а &#8211; alert(). Для разработчика javascript – интересный инструмент дебагинка кода.</p>
<p>Конечно, «монстры» JavaScript программирования скажут, зачем нам это нужно. Когда есть Firebug с его console.log(message). Для отладки кода в браузерах отличном от Firefox, есть от встроенных средств браузера до Firebug Lite.</p>
<p>Конечно, они будут правы, но…. я сторонник идеи – чем больше возможности выбора у человека, тем лучше. Каждый программист решает, каким инструментом ему удобнее воспользоваться для данной задачи и возможно это будет Blackbird.</p>
<p><span id="more-136"></span></p>
<h3 style='clear: left;'>Как подключить</h3>
<ul>
<li><a href="http://blackbirdjs.googlecode.com/files/blackbirdjs-1.0.zip">скачать код</a></li>
<li>прописать в html файле следующие строчки</li>
</ul>
<pre>&lt;html&gt;
    &lt;head&gt;
       &lt;script type="text/javascript" src="/PATH/TO/blackbird.js"&gt;&lt;/script&gt;
      &lt;link type="text/css" rel="Stylesheet" href="/PATH/TO/blackbird.css" /&gt;
      ...
   &lt;/head&gt;
...</pre>
<h3>Что умеет</h3>
<dl>
<dt><strong>log.toggle()</strong></dt>
<dd>Скрыть/Показать Blackbird</dd>
<dt><strong>log.move()</strong></dt>
<dd>Перемещение Blackbird к следующей фиксированной позиции: верхней-левой, верхней-правой, нижней-левой, нижней-правой.</dd>
<dt><strong>log.resize()</strong></dt>
<dd>Развернуть / Свернуть Blackbird</dd>
<dt><strong>log.clear()</strong></dt>
<dd>Очистить от содержимого Blackbird</dd>
<dt><strong>log.debug(message)</strong></dt>
<dd>Добавить отладочную информацию в Blackbird</dd>
<dt><strong>log.info(message)</strong></dt>
<dd>Добавить сообщение в Blackbird</dd>
<dt><strong>log.warn(message)</strong></dt>
<dd>Добавить предупреждение в Blackbird</dd>
<dt><strong>log.error(message)</strong></dt>
<dd>Добавить ошибку в Blackbird</dd>
<dt><strong>log.profile(label)</strong></dt>
<dd>Профайлер кода. Это метка должна стоять в начале и конце тестируемого кода. Очень удобно чтобы узнать время выполнение вашего кусочка кода.</dd>
</dl>
<h3>Какие клавиши понимает</h3>
<dl>
<dt><strong>F2</strong></dt>
<dd>Скрыть/Показать</dd>
<dt><strong>Shift+F2</strong></dt>
<dd>Переместить</dd>
<dt><strong>Alt+Shift+F2</strong></dt>
<dd>Очистить Blackbird от сообщений</dd>
</dl>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2008/10/skazhi-zdravstvujj-blackbird-i-do-svidanie-alert/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Drosera &#8211; отладчик javascript для Safari</title>
		<link>http://ajaxblog.ru/2008/08/drosera-otladchik-javascript-dlya-safari/</link>
		<comments>http://ajaxblog.ru/2008/08/drosera-otladchik-javascript-dlya-safari/#comments</comments>
		<pubDate>Tue, 05 Aug 2008 09:48:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Safari]]></category>
		<category><![CDATA[WebKit]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=107</guid>
		<description><![CDATA[Webkit &#8211; движок Safari получил мощный javascript отладчик &#8211; Drosera. Это сообщение было опубликовано на блоке Safari. Загрузив последнюю ночную сборку Webkit вы сразу получите этот инструмент. По функциональности он не сильно уступает известному Firebug. Теперь, кто сможет сказать, что &#8230; <a href="http://ajaxblog.ru/2008/08/drosera-otladchik-javascript-dlya-safari/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img style="float: left; margin-right: 10px;" title="drosera" src="http://ajaxblog.ru/wp-content/uploads/2008/08/drosera.png" alt="" width="285" height="355" />Webkit &#8211; движок Safari получил мощный javascript отладчик &#8211; Drosera. Это сообщение было опубликовано на <a href="http://webkit.org/blog/">блоке Safari</a>. Загрузив последнюю <a href="http://nightly.webkit.org/">ночную сборку Webkit</a> вы сразу получите этот инструмент. По функциональности он не сильно уступает известному Firebug.</p>
<p>Теперь, кто сможет сказать, что javascript &#8211; не настоящий язык программирования.</p>
<p><br style="clear: left;"></p>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2008/08/drosera-otladchik-javascript-dlya-safari/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>[Denwer, Xdebug , Notepad++] &#8211; полноценная среда разработки</title>
		<link>http://ajaxblog.ru/2008/07/denwer-xdebug-notepad/</link>
		<comments>http://ajaxblog.ru/2008/07/denwer-xdebug-notepad/#comments</comments>
		<pubDate>Thu, 31 Jul 2008 12:38:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Xdebug]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=92</guid>
		<description><![CDATA[Существует много хороших редакторов кода для PHP, я выбрал для себя Notepad++. Что-бы не разводить &#171;религиозные войны&#187; я перечислю те свойство редактора которые важны для меня: Скорость работы редактора Малый размер и возможность работы с флешки Подсветка текста и возможность &#8230; <a href="http://ajaxblog.ru/2008/07/denwer-xdebug-notepad/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img style="float: right;" title="Найдите ошибки в PHP-приложениях при помощи Xdebug" src="http://ajaxblog.ru/wp-content/uploads/2008/07/xdebug-logo.png" alt="Найдите ошибки в PHP-приложениях при помощи Xdebug" width="200" height="116" /><br />
Существует много хороших редакторов кода для PHP, я выбрал для себя <a href="http://notepad-plus.sourceforge.net/ru/site.htm">Notepad++</a>.<br />
Что-бы не разводить &laquo;религиозные войны&raquo; я перечислю те свойство редактора которые важны для меня:</p>
<ol>
<li>Скорость работы редактора</li>
<li>Малый размер и возможность работы с флешки</li>
<li> Подсветка текста и возможность сворачивания блоков, согласно синтаксису языка программирования</li>
<li>Авто-завершение набираемого слова</li>
<li>Одновременная работа с множеством документов</li>
<li>Одновременный просмотр нескольких документов</li>
<li>Динамическое изменение окон просмотра</li>
<li>Автоматическое определение состояния файла</li>
<li>Поддержка большого количества языков</li>
<li>Выделение скобок при редактировании текста</li>
</ol>
<p>Всем хорош редактор, вот только нету в нем полноценной отладки кода &#8211; думал я, и был не прав.</p>
<p>Оказываетесь для него есть плагин <a href="http://sourceforge.net/project/showfiles.php?group_id=189927&amp;package_id=236520" target="_blank"><strong>DBGP plugin</strong></a>, который превращает Notepad++ в полноценную php IDE.</p>
<p>Дальше расскажу как &laquo;подружить&raquo; между собой Denver + Xdebug + Notepad++</p>
<p><span id="more-92"></span></p>
<ol>
<li>Скачиваем <a href="http://www.denwer.ru/dis/Base/latest?from=index">Денвер</a> и устанавливаем у себя на компьютере, все просто. Для тех кто это делает первый раз, <a href="http://www.denwer.ru/base.html">инструкция</a>.</li>
<li>Скачиваем <a href="http://notepad-plus.sourceforge.net/ru/site.htm">Notepad++</a> и инсталлируем его.</li>
<li>Запускаем Денвер в браузере набираем <em>http://localhost/Tests/PHP5/index.php5</em> и смотрим версию php, у меня 5.2.4</li>
<li>Скачиваем <a href="http://pecl4win.php.net/ext.php/php_xdebug.dll">Xdebug</a>, обратите внимание нужно скачать dll нужной версии под конкретную версию php</li>
<li>Скаченую dll помещаем в папку <strong>путь</strong>\usr\local\php5\ext\, где <strong>путь</strong> (у меня <em>C:\WebServers</em>) -диск и папка куда вы установили свой Денвер</li>
<li>В файле <strong>путь</strong>\usr\local\php5\php.ini дописываем следующие строчки
<pre>
extension=php_xdebug.dll

zend_extension_ts = C:\WebServers\usr\local\php5\ext\php_xdebug.dll 

xdebug.remote_enable = On
xdebug.remote_autostart = On
xdebug.auto_trace = On
xdebug.remote_host = 127.0.0.1
xdebug.remote_enable = 1
xdebug.remote_handler = dbgp
xdebug.remote_mode=req
xdebug.idekey=default

xdebug.profiler_enable  = 1
xdebug.profiler_output_dir = C:\T\xdebug_prof\</pre>
<p>Обратите внимание, что  <em>C:\WebServers</em> &#8211; нужно заменить на вашпуть, а<br />
<em>C:\tmp\xdebug_prof\</em> &#8211; на папку где будет хранитьса ваши профайлы.<br />
<strong><br />
Замечание:</strong> в название путе лучше отказаться от использование не латинских букв и спецсимволов.</li>
<li>Перезагружаем Денвер, в браузере набираем http://localhost/Tests/PHP5/index.php5 и смотрим<br />
<img class="alignnone size-full wp-image-94" title="zend-with-xdebug" src="http://ajaxblog.ru/wp-content/uploads/2008/07/zend-with-xdebug.gif" alt="" width="490" height="80" /><br />
<img class="alignnone size-full wp-image-95" title="apache-xdebug" src="http://ajaxblog.ru/wp-content/uploads/2008/07/apache-xdebug.gif" alt="" width="315" height="370" /><br />
если вы это увидели. то вы все сделали правильно, если нет, еще раз перечитайте пункты выше.</li>
<li>Практически вы уже получили сильный инструмент в своей работе программиста.<br />
<img class="alignnone size-full wp-image-96" title="deep" src="http://ajaxblog.ru/wp-content/uploads/2008/07/deep.jpg" alt="" width="485" height="220" /><br />
Вот очень хорошая статья <a href="http://www.ibm.com/developerworks/ru/library/os-php-xdebug/index.html">&laquo;Найдите ошибки в PHP-приложениях при помощи Xdebug&raquo;</a>, о том как это расширение увеличивает ваш возможности поиска ошибок.<br />
Но наша цель IDE &#8211; продолжаем идти к ней&#8230;</li>
<li>Скачиваем <a href="http://sourceforge.net/project/showfiles.php?group_id=189927&amp;package_id=236520" target="_blank"><strong>DBGP plugin</strong></a> и устанавливаем его в папочку <em>C:\Program Files\Notepad++\plugins\</em> (ну или куда вы установили Notepad++)<br />
<img class="alignnone size-full wp-image-97" title="dbgpplugin-notepad" src="http://ajaxblog.ru/wp-content/uploads/2008/07/dbgpplugin-notepad.gif" alt="" width="362" height="426" /></li>
<li>Залускаем Notepadd++, заходим Дополнение&gt;&gt;DBGp&gt;&gt;Config<br />
<img class="alignnone size-full wp-image-98" title="dbgp-configuration" src="http://ajaxblog.ru/wp-content/uploads/2008/07/dbgp-configuration.gif" alt="" width="500" height="436" /><br />
<strong>Замечание</strong>: после home должна идти имя папки, где лежат скрипты которые вы собираетесь дебажить</li>
<li>После этого вроде вроде все должно работать, но у меня так и неполучилось стартовать debug сессию. Но не беда нас выручить плагин для ФФ -<a href="https://addons.mozilla.org/ru/firefox/addon/3960">Xdebug Helper</a>. Заходим по сылочки и устанавливаем в своем браузере.<br />
<img class="alignnone size-full wp-image-99" title="xdebug-helper" src="http://ajaxblog.ru/wp-content/uploads/2008/07/xdebug-helper.png" alt="" width="165" height="138" /></li>
<li>Ну вроде и все. Как все это работаем:
<ul>
<li>открываем файл со скриптом в Notepad++</li>
<li>ставим точку остановки</li>
<li>запускаем браузер с url &#8211; нашего проекта</li>
<li>активизируем Xdebug session &#8211; кликом по иконки (если она не активизирована)<br />
<strong>Замечание:</strong> после активизации сессии, нужно перегрузить страничку (F5)</li>
<li>Вываливаемся в Notepad++ и начинаем пошагово дебажить код <img src='http://ajaxblog.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
</ul>
<p><img class="alignnone size-full wp-image-100" title="xdebug-dbgp-notepad" src="http://ajaxblog.ru/wp-content/uploads/2008/07/xdebug-dbgp-notepad.gif" alt="" width="449" height="348" /></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2008/07/denwer-xdebug-notepad/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Opera Dragonfly</title>
		<link>http://ajaxblog.ru/2008/07/opera-dragonfly/</link>
		<comments>http://ajaxblog.ru/2008/07/opera-dragonfly/#comments</comments>
		<pubDate>Tue, 22 Jul 2008 08:25:13 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Новости]]></category>
		<category><![CDATA[Opera]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=79</guid>
		<description><![CDATA[Новость не нова, но я не мог пройти мимо нее и не осветить в своем блоге. Opera выложила свои инструмент для веб-разработчиков под названием Dragonfly. Правда пока альфа релиз, но по моему мнению уже можно во всю пользоваться. Инструкция по &#8230; <a href="http://ajaxblog.ru/2008/07/opera-dragonfly/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img title="opera dragonfly" src="http://ajaxblog.ru/wp-content/uploads/2008/07/opera-dragonfly.jpg" alt="opera dragonfly" width="442" height="300" /></p>
<p>Новость не нова, но я не мог пройти мимо нее и не осветить в своем блоге.<br />
Opera выложила свои инструмент для веб-разработчиков под названием <a href="http://www.opera.com/products/dragonfly/">Dragonfly</a>. Правда пока альфа релиз, но по моему мнению уже можно во  всю пользоваться.</p>
<p><span id="more-79"></span></p>
<p><strong>Инструкция по инсталляции</strong></p>
<ul>
<li><a href="http://www.opera.com/products/dragonfly/">Заходим на сайт</a> и заканчиваем Оперу.</li>
<li>Запускаем Оперу.</li>
<li>После находим надпись <strong>&laquo;<a href="http://dragonfly.opera.com/app/debugmenu/DebugMenu.ini">debug menu</a></strong>&raquo; в разделе &laquo;<strong>The Opera debug menu</strong>&raquo; и кликаем по ссылки (кликать обязательно в Опере).</li>
<li>В панель Оперы добавилься новый пункт &laquo;<strong>Debug</strong>&raquo;<br />
<img title="opera debug" src="http://ajaxblog.ru/wp-content/uploads/2008/07/opera-debug.gif" alt="opera debug" width="298" height="199" /></li>
</ul>
<p><strong>Из плюсов</strong> &#8211; создатели не стали изобретать велосипед и взяли дизайн и функционал Firebug. Поэтому сразу все понятно и привычно. Мне нравится такой подход.</p>
<p><strong>Из минусов</strong></p>
<ul>
<li>невозможно на лету менять DOM обьекты</li>
<li>невозможно налету менять Styleshett для элемента если он default values</li>
<li>нет вкладке Layout</li>
<li>нет вкладке Watch, вместо нее Inspection c полным списком переменных что очень неудобно если нужно отслеживать изменения значений у некоторых переменных</li>
<li>не всегда сразу загружается</li>
</ul>
<p>Как видем минусы не настолько существенны по сравнению с теми плюсами который дает этот инструмент.</p>
<p>P.S. Интересная тенденция в именования инструментов:</p>
<ul>
<li>Firefox &#8211; <a href="https://addons.mozilla.org/ru/firefox/addon/1843">Firebug</a> (cветлячок)</li>
<li>Opera &#8211;  <a href="http://www.opera.com/products/dragonfly/">Dragonfly</a> (cтрекоза)</li>
</ul>
<p>Осталось IE своий инструмент назвать как нибудь &#8211; Butterfly.</p>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2008/07/opera-dragonfly/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Js Decoder или как распутать запутаный код</title>
		<link>http://ajaxblog.ru/2008/07/js-decoder-ili-kak-rasputat-zaputanyjj-kod/</link>
		<comments>http://ajaxblog.ru/2008/07/js-decoder-ili-kak-rasputat-zaputanyjj-kod/#comments</comments>
		<pubDate>Fri, 11 Jul 2008 11:02:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>
		<category><![CDATA[Находки]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=77</guid>
		<description><![CDATA[Нашел в сети замечательный онлайн инструмент Js Decoder. Он позволяет декодировать обфускационный код. Часто можно встретить код такого вида var base_code='';var jsdecoder;var jscolorizer;var code='';var time=0;function decode() {code='';base_code='';jsdecoder=new JsDecoder();jscolorizer=new JsColorizer();if($('msg').innerHTML.length){do_clean_init();}else{jsdecoder.s=$("a1").value;do_decode_init();}} function do_decode_init() {$('msg').innerHTML+='Decoding .. ';setTimeout(do_decode,50);}... И не всегда это делается для &#8230; <a href="http://ajaxblog.ru/2008/07/js-decoder-ili-kak-rasputat-zaputanyjj-kod/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Нашел в сети замечательный онлайн инструмент <a href="http://code.gosu.pl/dl/JsDecoder/demo/JsDecoder.html">Js Decoder</a>. Он позволяет декодировать<a href="http://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%84%D1%83%D1%81%D0%BA%D0%B0%D1%86%D0%B8%D1%8F"> обфускационный</a> код.</p>
<p>Часто можно встретить код такого вида<br />
<code><br />
var base_code='';var jsdecoder;var jscolorizer;var code='';var time=0;function decode()<br />
{code='';base_code='';jsdecoder=new JsDecoder();jscolorizer=new JsColorizer();if($('msg').innerHTML.length){do_clean_init();}else{jsdecoder.s=$("a1").value;do_decode_init();}} function do_decode_init() {$('msg').innerHTML+='Decoding .. ';setTimeout(do_decode,50);}...<br />
</code></p>
<p>И не всегда это делается для того чтобы максимально усложнить жизнь программисту который хочет понять логику работы кода. Очень часто для того, что-бы уменьшить размер кода, за счет удаления лишних пробелов, переводов строк и пустых строк разделителей.</p>
<p>Вот для того что-бы привести код в человекопонятный вид и служит этот инструмент.</p>
<p><img class="alignleft size-full wp-image-78" title="js-decoder" src="http://ajaxblog.ru/wp-content/uploads/2008/07/js-decoder.gif" alt="js-decoder" width="413" height="615" /></p>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2008/07/js-decoder-ili-kak-rasputat-zaputanyjj-kod/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Meteora &#8211; новый javascript фреймворк</title>
		<link>http://ajaxblog.ru/2008/07/meteora-novyjj-javascript-frejjmvrk/</link>
		<comments>http://ajaxblog.ru/2008/07/meteora-novyjj-javascript-frejjmvrk/#comments</comments>
		<pubDate>Wed, 09 Jul 2008 07:31:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=75</guid>
		<description><![CDATA[На данный момент существует достаточно разнообразное количество javascript фреймворков. На любой вкус. Причем как очень популярных, так и мало известных. Я хочу поговорить о достаточно новом проекте Meteora построенной на библиотеке mootools. Основная идея &#8211; создание уже готовых виджетов. Как &#8230; <a href="http://ajaxblog.ru/2008/07/meteora-novyjj-javascript-frejjmvrk/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img style="margin: 5px 10px 10px 0px; float: left;" title="meteora - новый javascript фреймворк" src="http://ajaxblog.ru/wp-content/uploads/2008/07/meteora.png" alt="meteora - новый javascript фреймворк" width="81" height="84" /> На данный момент существует достаточно разнообразное количество javascript фреймворков. На любой вкус. Причем как очень популярных, так и мало известных.</p>
<p>Я хочу поговорить о достаточно новом проекте <a href="http://meteora.astrata.com.mx/">Meteora</a> построенной на библиотеке <a href="http://mootools.net/">mootools</a>. Основная идея &#8211; создание уже готовых виджетов.</p>
<p>Как пишут сами разработчики:</p>
<blockquote><p>Meteora сборка кросс браузерных виджетов и элементов управления, который позволяет   Вам быстро писать богатые и настраиваемые web-приложения,   без необходимости напрасно тратить время, читая страницы документации или   программируя чрезмерный javascript, отладка которого в    каждом браузере является мучением.</p></blockquote>
<p>Немного корявый перевод, но я старался близко к тексту оригинала <img src='http://ajaxblog.ru/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Текущая сборка содержит:</p>
<ul class="menu">
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-autocomplete">Autocomplete Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-bubble">Bubble Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-calendar">Calendar Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-datagrid">Datagrid Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-dialog">Dialog Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-editor">Editor Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-filebrowser">Filebrowser Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-form">Form Control</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/core-jsonrpc">JsonRpc Core</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-menu">Menu Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-notebook">Notebook Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-picbox">Picbox Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-popup">Popup Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-searchlist">Searchlist Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-selection">Selection Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-spinbutton">Spinbutton Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-tablesort">Tablesort Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-treeview">Treeview Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/control-toolbox">Toolbox Widget</a></li>
<li><a href="http://meteora.astrata.com.mx/pages/demo/fx-visual">Visual effects</a></li>
</ul>
<p>Для каждого есть демо версия и документация, что в целом производит хорошее впечатление. Хотя я больше сторонник <a href="http://ui.jquery.com/">jQuery UI</a>, но скорее всего я попробую использовать этот фреймворк в своей работе.</p>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2008/07/meteora-novyjj-javascript-frejjmvrk/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Отладка PHP средствами FirePHP</title>
		<link>http://ajaxblog.ru/2008/07/otladka-php-sredstvami-firephp/</link>
		<comments>http://ajaxblog.ru/2008/07/otladka-php-sredstvami-firephp/#comments</comments>
		<pubDate>Tue, 08 Jul 2008 06:24:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Инструмент разработчика]]></category>

		<guid isPermaLink="false">http://ajaxblog.ru/?p=71</guid>
		<description><![CDATA[Все хорошо знают плагин для Firefox &#8211; Firebug. Но мало кто знает про другой не менее интересный плагин &#8211; FirePHP. Я постараюсь исправить этот недостаток. Что для успешной работы нужно: PHP: 5 Firefox: 2, 3 Firebug: 1.05, 1.1, 1.2 FirePHP &#8230; <a href="http://ajaxblog.ru/2008/07/otladka-php-sredstvami-firephp/">Далее, еще интереснее <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img style="margin: 5px; float: left;" title="firephp" src="http://ajaxblog.ru/wp-content/uploads/2008/07/firephp.gif" alt="firephp" width="200" height="150" />Все хорошо знают плагин для Firefox &#8211; Firebug. Но мало кто знает про другой не менее интересный плагин &#8211; <a href="http://www.firephp.org/">FirePHP</a>. Я постараюсь исправить этот недостаток.</p>
<p>Что для успешной работы нужно:</p>
<ul style="margin-left: 220px;">
<li><a href="http://www.php.net/" target="_blank">PHP</a>:     5</li>
<li><a href="http://www.mozilla.com/en-US/firefox/?from=getfirefox" target="_blank">Firefox</a>:     2, 3</li>
<li><a href="http://www.getfirebug.com/" target="_blank">Firebug</a>:     1.05, 1.1, 1.2</li>
</ul>
<p><span id="more-71"></span></p>
<p>FirePHP позволяет выводить информацию в консоль Firebug непосредственно из PHP. Делается это довольно просто:</p>
<pre class="prettyprint">require('FirePHP.class.php');
$firephp -&gt; fb('Log message'  ,FirePHP::LOG);
$firephp -&gt; fb('Info message' ,FirePHP::INFO);
$firephp -&gt; fb('Warn message' ,FirePHP::WARN);
$firephp -&gt; fb('Error message',FirePHP::ERROR);
$firephp -&gt; fb(apache_request_headers(),'RequestHeaders',FirePHP::DUMP);</pre>
<p>Кроме того в Firebug можно передавать произвольные структуры данных и исключения. В последнем случае получим не только сам объект исключения, но и содержимое стека. Возможностей плагина достаточно много, почитайте <a href="http://www.firephp.org/Wiki/Reference/Fb">документацию</a>.</p>
<p>Преимущество такой отладки в том, что данные передаются не в теле страницы, а в заголовках. Это значит, что во-первых, страница не замусориваетса всяческими echo`ми и var_dump`ами, а во вторых, можно без проблем отлаживать AJAX-вызовы.</p>
<p><img src="http://ajaxblog.ru/wp-content/uploads/2008/07/firephp-sample.png" alt="" width="422" height="457" /></p>
<p>И &laquo;на сладкое&raquo;, для поклонников фреймворка CodeIgnitr, для него создано специальное дополнение <a href="http://codeigniter.com/wiki/Fire_Ignition/">Fire Ignition</a>. Которое позволяет объединить вместе: CodeIgnitr, Firebug, FirePHP и PHP 5.</p>
<p>Удачного кодинга.</p>
]]></content:encoded>
			<wfw:commentRss>http://ajaxblog.ru/2008/07/otladka-php-sredstvami-firephp/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
