<?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>Личный блог Войцеховского Максима &#187; Программирование</title>
	<atom:link href="http://voytsekhovsky.ru/blog/category/it/programmirovanie/feed/" rel="self" type="application/rss+xml" />
	<link>http://voytsekhovsky.ru</link>
	<description>Обо мне и о мире вокруг меня</description>
	<lastBuildDate>Tue, 14 Dec 2010 07:11:57 +0000</lastBuildDate>
	<language>ru-RU</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.2.38</generator>
	<item>
		<title>Обзор Gartner по SCCM платформам 2008</title>
		<link>http://voytsekhovsky.ru/blog/2008/03/01/obzor-gartner-po-sccm-platformam-2008/</link>
		<comments>http://voytsekhovsky.ru/blog/2008/03/01/obzor-gartner-po-sccm-platformam-2008/#comments</comments>
		<pubDate>Sat, 01 Mar 2008 12:48:00 +0000</pubDate>
		<dc:creator><![CDATA[Максим Войцеховский]]></dc:creator>
				<category><![CDATA[Программирование]]></category>

		<guid isPermaLink="false">http://blogforfree.biz/maxpers2/2008/03/01/obzor-gartner-po-sccm-platformam-2008/</guid>
		<description><![CDATA[Наткнулся вчера вот на такое исследование Gartner -&#160; Magic Quadrant for Software Change and Configuration Management for Distributed Platforms, 2008. Квадраты выглядят вот так: К своему стыду, ничего не слышал про лидеров кроме IBM Итак, кто лидеры: IBM Serena Dimensions MKS Достаточно интересно полазить по сайтам и посмотреть что предлагается. Я если честно,&#160; думал что [&#8230;]]]></description>
				<content:encoded><![CDATA[<p align="justify">Наткнулся вчера вот на такое исследование Gartner -&#160; <a href="http://mediaproducts.gartner.com/reprints/microsoft/vol4/article10/article10.html">Magic Quadrant for Software Change and Configuration Management for Distributed Platforms, 2008</a>.</p>
<p align="justify">Квадраты выглядят вот так:</p>
<p align="justify"><a href="http://lh4.google.com/maxim.voytsekhovsky/R8lQf--PJmI/AAAAAAAAALg/dRjEy2j3M0g/image%5B4%5D"><img height="441" alt="image" src="http://lh3.google.com/maxim.voytsekhovsky/R8lQgu-PJnI/AAAAAAAAALo/Jjvv6BNham0/image_thumb%5B2%5D" width="403" border="0" /></a> </p>
<p align="justify">К своему стыду, ничего не слышал про лидеров кроме IBM <img src="http://voytsekhovsky.ru/wp-includes/images/smilies/frownie.png" alt=":(" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p align="justify">Итак, кто лидеры:</p>
<ul>
<li>
<div align="justify"><a href="http://www-306.ibm.com/software/ru/rational/?pgel=ibmhzn">IBM</a></div>
</li>
<li>
<div align="justify"><a href="http://www.serena.com/products/dimensions/index.html">Serena Dimensions</a></div>
</li>
<li>
<div align="justify"><a href="http://www.mks.com/products/index.jsp">MKS</a></div>
</li>
</ul>
<p align="justify">Достаточно интересно полазить по сайтам и посмотреть что предлагается. Я если честно,&#160; думал что на этом рынке уже нет ничего интересного. Ан нет <img src="http://voytsekhovsky.ru/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p align="justify">Из игроков, сам работал только с IBM, <a href="http://www.borland.com/us/products/starteam/index.html">Borland</a> и <a href="http://msdn2.microsoft.com/en-us/vsts2008/default.aspx">Microsoft</a>. С последними двумя кстати гораздо больше&#8230; Borland понравился функциональным богатством, а Microsoft хорошей интегрированностью и простатой.</p>
<p align="justify">Понравились слабые стороны MS:</p>
<ul>
<li>The Server component must be hosted on Windows. </li>
<li>Clients for non-Microsoft platforms are supplied by a third party. </li>
<li>Many administration interfaces are sparse, with additional functions to be delivered in later releases. </li>
<li>The installation process is still Spartan and needs to be simplified. </li>
<li>Security setup and administration are spread throughout the product, thus are time-consuming</li>
</ul>
<p>Первые два пункта приминимы ко всем продуктам MS <img src="http://voytsekhovsky.ru/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p align="justify">В общем, все кто выбирает для себя подобные решения &#8212; советую просмотреть документ. Как минимум есть повод посмотреть на новые продукты (для меня новые <img src="http://voytsekhovsky.ru/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /> ) .</p>
]]></content:encoded>
			<wfw:commentRss>http://voytsekhovsky.ru/blog/2008/03/01/obzor-gartner-po-sccm-platformam-2008/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Что нового в Delphi начиная с ver. 7</title>
		<link>http://voytsekhovsky.ru/blog/2007/12/12/chto-novogo-v-delphi-nachinaya-s-ver-7/</link>
		<comments>http://voytsekhovsky.ru/blog/2007/12/12/chto-novogo-v-delphi-nachinaya-s-ver-7/#comments</comments>
		<pubDate>Wed, 12 Dec 2007 21:20:00 +0000</pubDate>
		<dc:creator><![CDATA[Максим Войцеховский]]></dc:creator>
				<category><![CDATA[Программирование]]></category>

		<guid isPermaLink="false">http://blogforfree.biz/maxpers2/2007/12/12/chto-novogo-v-delphi-nachinaya-s-ver-7/</guid>
		<description><![CDATA[Не забывая свое прошлое: Leveraging What You Have: 10 Top Things Added to Delphi Since Delphi 7 Очень интересно посмотреть ретроспективу развития инструмента, с которого начинал серьездно программировать. Я правда успел поработать только с 5,6 и 2006 версиями. В общем рекомендую почитать всем любителям Borland и истории]]></description>
				<content:encoded><![CDATA[<p align="justify">Не забывая свое прошлое:</p>
<blockquote><p align="justify"><a href="http://dn.codegear.com/article/37416">Leveraging What You Have: 10 Top Things Added to Delphi Since Delphi 7</a></p>
</blockquote>
<p align="justify">Очень интересно посмотреть ретроспективу развития инструмента, с которого начинал серьездно программировать.</p>
<p align="justify">Я правда успел поработать только с 5,6 и 2006 версиями.</p>
<p align="justify">В общем рекомендую почитать всем любителям Borland и истории <img src="http://voytsekhovsky.ru/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>http://voytsekhovsky.ru/blog/2007/12/12/chto-novogo-v-delphi-nachinaya-s-ver-7/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Обработка событий в APE-формах Borland StarTeam</title>
		<link>http://voytsekhovsky.ru/blog/2007/08/01/obrabotka-sobytij-v-ape-formax-borland-starteam/</link>
		<comments>http://voytsekhovsky.ru/blog/2007/08/01/obrabotka-sobytij-v-ape-formax-borland-starteam/#comments</comments>
		<pubDate>Wed, 01 Aug 2007 10:36:00 +0000</pubDate>
		<dc:creator><![CDATA[Максим Войцеховский]]></dc:creator>
				<category><![CDATA[ИТ]]></category>
		<category><![CDATA[Программирование]]></category>

		<guid isPermaLink="false">http://blogforfree.biz/maxpers2/2007/08/01/obrabotka-sobytij-v-ape-formax-borland-starteam/</guid>
		<description><![CDATA[При разработке APE-форм для Borland StarTeam часто возникает желание обрабатывать некоторые события на уровне всего объекта (например Task). Так что небольшой кусок кода, который показывает как можно отслеживать следующие вещи: Изменение атрибута (свойства) объекта &#8212; addPropertyChangeListener Предобработка глобальных событий (сохранение например) объекта &#8212; addPreprocessListener Постобработка глобальных событий &#8212; addPostprocessListener Самое сложное &#8212; хоть убей не [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>При разработке APE-форм для Borland StarTeam часто возникает желание обрабатывать некоторые события на уровне всего объекта (например Task).</p>
<p>Так что небольшой кусок кода, который показывает как можно отслеживать следующие вещи:</p>
<ol>
<li>Изменение атрибута (свойства) объекта &#8212; addPropertyChangeListener</li>
<li>Предобработка глобальных событий (сохранение например) объекта &#8212; addPreprocessListener</li>
<li>Постобработка глобальных событий &#8212; addPostprocessListener</li>
</ol>
<p>Самое сложное &#8212; хоть убей не помню, где же есть описание вот этого:</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String str = ev.getOperation();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (str.equals(&#171;<strong><u>update</u></strong>&#171;)) </p>
<p>Ну а вот и сам кусок кода:</p>
<blockquote><p><em>package com.starbase.starteam.task; </em> </p>
<p><em>public class TaskForm extends JPanel { </em> </p>
<p><em>&nbsp; public static JFrame f;<br />&nbsp; private static DefaultNavigatorPanel defNav;<br />&nbsp; ItemCatcher itemCatch = new ItemCatcher(); </em> </p>
<p><em>&nbsp; public TaskForm() {<br />&nbsp; } </em> </p>
<p><em>&nbsp; void jbInit() throws Exception {<br />&nbsp; } </em> </p>
<p><em>&nbsp; public static void main(String[] args) {<br />&nbsp; } </em> </p>
<p><em>&nbsp; private void onLoadItem() { </em> </p>
<p><em>&nbsp; } </em> </p>
<p><em>&nbsp; class ItemCatcher extends JComponent implements ItemDisplayListener {<br />&nbsp;&nbsp;&nbsp; ItemCatcher() {<br />&nbsp;&nbsp;&nbsp; } </em> </p>
<p><em>&nbsp;&nbsp;&nbsp; public void refreshDisplay() {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Do nothing<br />&nbsp;&nbsp;&nbsp; } </em> </p>
<p><em>&nbsp;&nbsp;&nbsp; public void setItem(ItemWrapper item) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Container con = this.getParent().getParent();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; defNav = (DefaultNavigatorPanel) con.getParent();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; item.addPropertyChangeListener(new PropertyChangeListener() {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public void propertyChange(PropertyChangeEvent ev) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; onLoadItem();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }); </em> </p>
<p><em>&nbsp;&nbsp;&nbsp; defNav.navigator.addPreprocessListener(new PreprocessListener() {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public void preprocess(PreprocessEvent ev) throws AbortException {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String str = ev.getOperation();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (str.equals(&#171;update&#187;)) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; }); </em> </p>
<p><em>&nbsp;&nbsp;&nbsp; defNav.navigator.addPostprocessListener(new PostprocessListener() {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; public void postprocess(PostprocessEvent ev) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String str = ev.getOperation();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (str.equals(&#171;update&#187;)) {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; });<br />&nbsp; }<br />}</em></p>
</blockquote>
<p>Если что &#8212; спрашивайте. Постараюсь помочь <img src="http://voytsekhovsky.ru/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
			<wfw:commentRss>http://voytsekhovsky.ru/blog/2007/08/01/obrabotka-sobytij-v-ape-formax-borland-starteam/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Как из custom формы в StarTeam вызвать другую custom форму и задать у нее какие-то параметры</title>
		<link>http://voytsekhovsky.ru/blog/2007/03/21/kak-iz-custom-formy-v-starteam-vyzvat-druguyu-custom-formu-i-zadat-u-nee-kakie-to-parametry/</link>
		<comments>http://voytsekhovsky.ru/blog/2007/03/21/kak-iz-custom-formy-v-starteam-vyzvat-druguyu-custom-formu-i-zadat-u-nee-kakie-to-parametry/#comments</comments>
		<pubDate>Wed, 21 Mar 2007 15:31:00 +0000</pubDate>
		<dc:creator><![CDATA[Максим Войцеховский]]></dc:creator>
				<category><![CDATA[ИТ]]></category>
		<category><![CDATA[Программирование]]></category>

		<guid isPermaLink="false">http://blogforfree.biz/maxpers2/2007/03/21/kak-iz-custom-formy-v-starteam-vyzvat-druguyu-custom-formu-i-zadat-u-nee-kakie-to-parametry/</guid>
		<description><![CDATA[Небольшая преамбула. Есть компания разработчик ПО. В качестве инструментария для версионности, управления изменениями и баг-трекинга используется Borland StarTeam. Используются 3 объекта:Запрос &#8212; общение с Заказчиком и аля требованияЗадачаОшибкаВсе формы кастомизированы (реализованы с использованием APE) На прошлой неделе возникла необходимость вызывать из формы Запроса форму Задачи. Начали смотреть как бы это проще реализовать. Первое на что [&#8230;]]]></description>
				<content:encoded><![CDATA[<div align="justify">Небольшая преамбула. Есть компания разработчик ПО. В качестве инструментария для версионности, управления изменениями и баг-трекинга используется <a href="http://www.borland.com/us/products/starteam/index.html">Borland StarTeam</a>. Используются 3 объекта:<br />Запрос &#8212; общение с Заказчиком и аля требования<br />Задача<br />ОшибкаВсе формы кастомизированы (реализованы с использованием APE) На прошлой неделе возникла необходимость вызывать из формы Запроса форму Задачи. <a name="cutid1"></a><br />Начали смотреть как бы это проще реализовать. Первое на что подумали стандартный контрол для StarTeam &#8212; AddAndLinkButton. Но он к сожалению не дает возможности задать какие-нибудь параметры создаваемой формы, а хочется например часть информации из Запроса копировать в Задачу.После этого стали смотреть в сторону класса Locator из API StarTeam. Вроде как есть в нем подходящий метод &#8212; launchPropertyEditor, но к сожалению в документации вообще не описаны параметры, что надо передавать (в частности PropertyEditorCommand).После этого, посидели почесали репу и решили декомпилировать класс AddAndLinkButton и посмотреть как это в нем реализовано. В качестве декомпилятора взяли &#8212; <a href="http://www.kpdus.com/jad.html">JAD</a>Этот способ оказался самым действенным <img src="http://voytsekhovsky.ru/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /> В итоге сделали вот так вот: </div>
<div align="left"></div>
<div align="left"><em>try </em></div>
<div align="left"><em>{ </em></div>
<div align="left"><em>java.awt.Window w = UI.findParentFrameOrDialog(this); </em></div>
<div align="left"><em>com.starbase.starteam.Folder folder; </em></div>
<div align="left"><em>folder = logic._workItem.getView().getRootFolder(); </em></div>
<div align="left"><em>Item newItem = Item.createItem(&#171;ChangeRequest&#187;, folder); </em></div>
<div align="left"><em>newItem.put(&#171;USR_CR_NAME&#187;, &#171;А вот так вот!!!&#187;); </em></div>
<div align="left"><em>PropertyEditorUtils.edit(w, &#171;&#187;, new Item[] {newItem}, 0, false, true); </em></div>
<div align="left"><em>if(!newItem.isNew()) </em></div>
<div align="left"><em>logic._workItem.linkItem(newItem, false); </em></div>
<div align="left"><em>} catch (Exception ex) {}</em></div>
<div align="left"></div>
<div align="justify">Получилось вроде как совсем не плохо <img src="http://voytsekhovsky.ru/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /> </div>
]]></content:encoded>
			<wfw:commentRss>http://voytsekhovsky.ru/blog/2007/03/21/kak-iz-custom-formy-v-starteam-vyzvat-druguyu-custom-formu-i-zadat-u-nee-kakie-to-parametry/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
