<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title><![CDATA[Журнал MSDeveloper.RU]]></title>
    <link>http://www.msdeveloper.ru/</link>
    <description><![CDATA[Интернет-журнал MSDeveloper.RU]]></description>
    <language>ru-RU</language>
    <lastBuildDate>Fri, 18 May 2012 17:59:49 UT</lastBuildDate>
    <generator><![CDATA[bitrix::blog.rss]]></generator>
    <docs>http://cyber.law.harvard.edu/rss/rss.html</docs>
    <atom:link href="http://www.msdeveloper.ru/" rel="self" type="application/rss+xml" />
    <item>
      <title><![CDATA[10 причин использовать F# в C# приложении (перевод)]]></title>
      <link>http://www.msdeveloper.ru/blogs/it-bel4onok/1920/</link>
      <description><![CDATA[
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Многие заметили, что вместе с Visual Studio 2010 поставляется F#. Выбрав в меню среды Visual Studio “File” – “New Project” теперь можно заметить и шаблон для проектов на F#, на который вам стоит обратить внимание. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Многие, вероятно, не догадываются, что даже если не писать полностью проекты на языке F# и совсем им не интересоваться, можно получить огромную выгоду от использования F# в проектах на C# / VB.NET.&#160;F# это просто очередная DLL, под названием FSharp.Core.dll, на которую вы можете ссылаться как и на любую другую сборку. Она доступна для .NET 2.0 и 4.0 (отдельная DLLs). Его наличие для .NET 2.0 особенно ценно для проектов, которые по каким-то причинам не могут быть обновлены до более новой версии .NET. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Конечно, библиотека предназначена для использования в F#, так что иногда её присутствие выглядит весьма странно в проекте на C#, но мы увидим, как вместе с FSharp можно обойти некоторые его странности. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Давайте рассмотрим некоторые возможности, которые даёт вам FSharp: 
<br/>


 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; <b>Кортежи</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Итак, вы хотите использовать <!--noindex--><a href="http://msdn.microsoft.com/en-us/library/system.tuple.aspx" rel="nofollow">кортежи</a><!--/noindex-->, но не можете обновиться до .NET 4, из-за политики компании или по какой-то другой причине, разрушающей ваши планы. Нет проблем, FSharp.Core.dll реализует их, так что вы можете использовать кортежи в .NET 2.0 с точно таким же API и пространством имен, как и в кортежах на .NET 4. Если вы обновитесь, вам не придётся ничего менять. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Кортежи просты, но не тривиальны при реализации, например, некоторые забывают реализовать равноправие/хеширование, так в конечном итоге, вы останавливаетесь на некотором этапе с единственным вопросом &quot;WTF?!&quot;. Поэтому стоит использовать библиотеку, которая реализует их должным образом. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Имейте в виду, что кортежи, по существу анонимны. Item1, Item2, и т.д. не передают информации о том, что они содержат, только их типы. 
<br/>


 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; <b>Неизменяемые коллекции</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Неизменяемые списки являются одной из наиболее используемых структур данных в функциональном программировании. Они настолько распространены, что в F# для них предусмотрен специальный синтаксис. Например, определение пустого списка в F#:&#160; 
<div><div class="blog-code-box"><pre class="text">Например, определение пустого списка в F#:
let empty = []

F# вывод тип элемента списка. В C# подобная операция выглядит так:
var empty = FSharpList&lt;int&gt;.Empty;
</pre></div> </div>
 
<div>&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160;При добавлении элемента в список, на самом деле создаётся новый список, который содержит новый элемент как голова, а остальной список как хвост.&#160;</div>
 
<div><div class="blog-code-box"><pre class="text">Опять же, F# имеет для этого специальный синтаксис: 
let a = 1::empty 

В то время как в C#: 
var a = new FSharpList(1, empty); 
или: 
var a = FSharpList.Cons(1, empty); 

Подсахаренный вариант от FSharpx: 
var a = empty.Cons(1); 

Вы также можете создать неизменяющийся список с любым IEnumerable: 
var b = SeqModule.ToList(new[] { 1, 2, 3 }); 

Снова, подсахаренный вариант FSharpx: 
var b = new[] { 1, 2, 3 }.ToFSharpList(); 
или: 
var b = FSharpList.Create(1, 2, 3); 

Как вы используйте FSharpList? 
Вы можете получить доступ к определённому элементу так же, 
как и в обычном изменяемом списке: 
Console.WriteLine(b[2]); // prints &quot;3&quot; </pre></div></div>
 
<div> &#160; &#160; &#160; &#160; &#160; &#160; &#160; Помните, что случайный доступ в неизменённом связном списке обходится в O(n). 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; &#160; FSharpList реализует IEnumerable, таким образом, что вы сможете использовать его вместе с foreach, используя все функции LINQ (Aggregate, Select, Where, и т.д.). Функциональные языки часто используют сопоставление с образцом и рекурсии для обработки списка. В <!--noindex--><a href="http://en.wikibooks.org/wiki/F_Sharp_Programming" rel="nofollow">F# wikibook</a><!--/noindex--> этому посвящена большая глава. FSharpx реализует сопоставление с образцом в списках C#, так что вы можете использовать их для получения списка с обратным порядком элементов: 
<br/>


 <div class="blog-code-box"><pre class="csharp">[Test]
void Reverse() {
    var a = Enumerable.Range(0, 1000).ToFSharpList();
    var r = Loop(FSharpList&lt;int&gt;.Empty, a);
    Console.WriteLine(r);
}
static FSharpList&lt;T&gt; Loop&lt;T&gt;(FSharpList&lt;T&gt; acc, FSharpList&lt;T&gt; l) {
    return l.Match(() =&gt; acc,
                   (head, tail) =&gt; Loop(acc.Cons(head), tail));
}</pre></div> 
<div> &#160; &#160; &#160; &#160; &#160; &#160; Но будьте осторожны! F# компилирует эквивалентный код с помощью оптимизации <!--noindex--><a href="http://en.wikipedia.org/wiki/Tail_call" rel="nofollow">хвостовой рекурсии</a><!--/noindex-->, в то время как C# не имеет такой функции, так что удар приходится на StackOverflowException, при достаточно большом списке (если вы компилируйте с оптимизацией и работаете в 64-разрядной среде CLR!) 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Когда используется рекурсивная обработка списков, то лучше использовать Aggregate(), если это возможно (обычно называемая свёрткой (<!--noindex--><a href="http://en.wikipedia.org/wiki/Fold_(higher-order_function)" rel="nofollow">fold</a><!--/noindex-->) в функциональных языках). Это к тому же упрощает код: 
<br/>


 <div class="blog-code-box"><pre class="text">var a = Enumerable.Range(0, 1000000).ToFSharpList(); 
var r = a.Aggregate(FSharpList.Empty, (acc, i) =&gt; acc.Cons(i)); </pre></div> &#160; &#160; &#160; &#160; &#160; &#160; Конечно, это всего лишь демонстрационный код. Если вы хотите получить только список с обратным порядком элементов, вызовите ListModule.Reverse(a); 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Императивные программисты могли бы задаться вопросом, почему они должны использовать неизменяемые коллекции, когда в BCL уже есть несколько хороших изменяемых коллекций. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Одна из наиболее часто цитируемых причин для использования неизменяемых коллекций (и функционального программирования в целом) является многопоточность. Действительно вы можете свободно и безопасно обходить неизменяемые коллекции по всем потокам, что делает мультипоточную разработку проще. Тем не менее, то же можно сказать о прохождении коллекции по всем регулярным функциям: вы можете быть уверены, что не все функции могут изменить список, что позволит вам держать в голове на одну вещь меньше и позволит <!--noindex--><a href="http://blogs.msdn.com/b/jomo_fisher/archive/2007/05/16/leaky-functions-barrel-of-bugs.aspx" rel="nofollow">статически ликвидировали целый класс ошибок</a><!--/noindex-->. С использованием многопоточности или без неё, неизменные структуры приводят все виды программирования к упрощению. Конечно, чтобы неизменяемые коллекций по-настоящему работали как неизменяемые, базовый тип элементов также должен быть неизменным. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Расширение <!--noindex--><a href="http://msdn.microsoft.com/en-us/data/gg577610" rel="nofollow">Reactive extensions</a><!--/noindex--> также включается класс ImmutableList, хотя он и внутренний. 
<br/>


 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; <b>Опциональный тип</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Опциональный тип используется в F#, например, в нескольких функциях для коллекций. Проблема в том, что эти функции являются эквивалентом Func, но в F# (FSharpFunc), что затрудняет их использование с C#. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; FSharpx обобщает эти F# функции, чтобы они могли быть использованы вместе с System.Func и System.Action. Например: 
<br/>


 </div>
 <div class="blog-code-box"><pre class="text">var a = FSharpList.Create(1, 2, 3);
a.TryFind(x =&gt; x &gt; 4) // returns FSharpOption&lt;int&gt;
    .Match(v =&gt; Assert.Fail(&quot;shouldn't have found value {0}&quot;, v),
           () =&gt; { /* nothing found */ });
</pre></div> 
<div> &#160; &#160; &#160; &#160; &#160; &#160; <b>Модульный тип</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Во многих функциональных языках, таких как F# есть тип, который называется &quot;Unit&quot;, который аналогичен типу &quot;void&quot; в C-подобных языках, за исключением того, что на самом деле используется для соответствия типа. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Под &quot;соответствием&quot; я имею в виду то, что вы можете определить нечто вроде Func&lt;Unit&gt;&#160;(вы не можете использовать Func&lt;void&gt;, это не совсем синтаксически верно, хотя и есть тип System.Void). Func&lt;Unit&gt; точно такой же как и действие (Action), за исключением того, что Func может быть использован в LINQ выражениях (т.е. монады). 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; FSharpx включает в себя ToFunc() методом расширения действия, Action&lt;T&gt;, Action&lt;T1, T2&gt;&lt;t1,t2&gt;, и т.д. соответственно конвертируются в Func&lt;/t1,t2&gt;&lt;Unit&gt;, Func&lt;T, Unit&gt;, Func&lt;T1, T2, Unit&gt;и т.д.&#160;</div>
 
<div>Вы можете также использовать его для типов, таких как FSharpOption &lt;Unit&gt;. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Расширение Reactive Extensions также включает в себя модульный тип. 
<br/>


 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; <b>Размеченные объединения</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Они очень полезны, чтобы конкретно представить &quot;ту или иную&quot; вещь, без представления всей иерархии класса, реализующего равенства / хэш / сравнение. Так же, как и со многими другими вещами, их использование в C# более подробное, чем в F#. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Давайте посмотрим на примере:&#160; <div class="blog-code-box"><pre class="text">var a = FSharpChoice&lt;int, string&gt;.NewChoice1Of2(1);
if (a.IsChoice1Of2) {
    var x = ((FSharpChoice&lt;int, string&gt;.Choice1Of2)a).Item;
    Console.WriteLine(x + 2);
} else if (a.IsChoice2Of2) {
    var x = ((FSharpChoice&lt;int, string&gt;.Choice2Of2)a).Item;
    Console.WriteLine(x + &quot;;&quot;);
}
</pre></div>&#160; &#160; &#160; &#160; &#160; &#160; Сейчас выглядит довольно уродливо. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; FSharpx реализует более удобным путём сопоставление с образцом (в основном шаблон “<!--noindex--><a href="http://en.wikipedia.org/wiki/Visitor_pattern" rel="nofollow">посетитель</a><!--/noindex-->”), так что вместо этого вы можете написать: 
<br/>


 <div class="blog-code-box"><pre class="text">var a = FSharpChoice.New1Of2&lt;int, string&gt;(1);
a.Match(x =&gt; Console.WriteLine(x + 2),
        x =&gt; Console.WriteLine(x + &quot;;&quot;));
</pre></div> &#160; &#160; &#160; &#160; &#160; &#160; FSharpx также реализует LINQ операторы около 2ого выбора и интегрируется с опциями. Например: 
<br/>


 <div class="blog-code-box"><pre class="text">object a = 40;
const string b = &quot;60&quot;;
var r = from i in FSharpOption.ParseInt(b).ToFSharpChoice(&quot;Invalid value b&quot;)
        from j in FSharpChoice.Cast&lt;int&gt;(a).SelectSecond(_ =&gt; &quot;Invalid value a&quot;)
        sel ect i + j;
r.Match(i =&gt; Assert.AreEqual(100, i),
        Assert.Fail);
</pre></div> &#160; &#160; &#160; &#160; &#160; &#160; Так же, как кортежи, размеченные объединения по существу анонимны. Кортежи, в общем, являются анонимным типом product. Размеченные объединения, в общем, являются анонимным типом<!--noindex--><a href="http://en.wikipedia.org/wiki/Sum_type" rel="nofollow"> sum</a><!--/noindex-->. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Расширение Reactive extensions использует внутренние типы &lt;TLeft, TRight&gt; type. 
<br/>


 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; <b>Асинхронность</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Ещё раз, вы застряли с .NET 3.5 и вы только мечтаете о <!--noindex--><a href="http://msdn.microsoft.com/en-us/library/dd460717.aspx" rel="nofollow">библиотеке для параллельных задач</a><!--/noindex--> для .NET 4. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Расширение Reactive extensions использует для этого включение System.Threading.dll, но это перестало поддерживаться и не включается в последующие версии. F# использует асинхронные процессы, которые несколько похожи на другой подход в C# - 5 ждут/асинхронны (различия в асинхронности смотрите в серии постов <!--noindex--><a href="http://tomasp.net/blog/async-compilation-internals.aspx" rel="nofollow">Tomas Petricek</a><!--/noindex-->) 
<br/>


 <div class="blog-code-box"><pre class="text">FSharpx имеет элементы LINQ для этого, так вы можете написать:
static FSharpAsync&lt;string&gt; Get(string u) {
    var web = new WebClient();
    return web.AsyncDownloadString(new Uri(u));
}
var qq = // qq is of type FSharpAsync&lt;string&gt;
    from google in Get(&quot;http://www.google.com&quot;)
    fr om bing in Get(&quot;http://www.bing.com&quot;)
    select google + bing;

string result = qq.Run();

Или вы можете запустить несколько запросов параллельно:
var urls = FSharpList.Create(
      &quot;http://www.google.com&quot;
    , &quot;http://www.bing.com&quot;
    , &quot;http://www.yahoo.com&quot;
    , &quot;http://www.microsoft.com&quot;
    );
var result = FSharpAsync.Parallel(urls.Select(Get)).Select(s =&gt; string.Join(&quot;&quot;, s)).Run();
</pre></div> 
<div>&#160; &#160; &#160; &#160; &#160; &#160; Это может быть не так мощно как асинхронная работа в F#, но всё равно полезно.&#160; 
<br/>


 </div>
 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; <b>BigInteger</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Ещё один пример для .NET 2.0 / 3.5 пользователей. FSharp.Core включает System.Numerics.BigInteger для произвольной точности арифметических действий. Там есть не все возможности .NET 4 BigInteger, но он реализует основные операции. Хотите посчитать 23^25 + 4? Нет проблем: 
<br/>


 <div class="blog-code-box"><pre class="text">var a = new BigInteger(23);
var b = BigInteger.Pow(a, 25);
b += new BigInteger(4);
Console.WriteLine(b);

Result: 11045767571919545466173812409689947
</pre></div> &#160; &#160; &#160; &#160; &#160; &#160; <b>Ленивые вычисления</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Lazy&lt;T&gt;&#160;ещё одна особенность, которая в .NET 4 скопирована с F#, или очень похоже на это. Вы ещё пишете singleton’ы старым способом? С ленивыми вычислениями вы можете сделать это только в .NET 3.5 (с использованием FSharpx): 
<br/>


 <div class="blog-code-box"><pre class="text">class MySingleton {
    private MySingleton() {}
    private static readonly Lazy&lt;MySingleton&gt; instance = 
        FSharpLazy.Create(() =&gt; new MySingleton());

    public static MySingleton Instance {
        get { return instance.Value; }
    }
}
</pre></div> Хотя, честно говоря, я не думаю, что когда-либо сам использовал бы это. 
<br/>


 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; <b>Enumerable кэш</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Иногда вы используйте однонаправленный итератор, обобщённый в IEnumerable, как база данных результатов или некоторые данные лениво обрабатывающихся веб запросов, и вы хотите, пройти его несколько раз, при этом сохранив его ленивость, не нарушая ToList(). С FSharp.Core можно кешировать его по требованию с использованием <!--noindex--><a href="http://msdn.microsoft.com/en-us/library/ee370430.aspx" rel="nofollow">Seq.cache</a><!--/noindex-->, именуемый SeqModule.Cache в C# / VB.NET. System.Interactive также имеет функцию MemoizeAll, хотя я люблю называть F# лучшим, кеширование более применимо в методах <!--noindex--><a href="http://en.wikipedia.org/wiki/Memoization" rel="nofollow">мемоизации</a><!--/noindex-->. 
<br/>


 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; <b>Enumerable zip</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Другой отличный оператор, который доступен только в .NET 4+. В FSharp.Core он немного отличается: сигнатура <!--noindex--><a href="http://msdn.microsoft.com/en-us/library/dd267698.aspx" rel="nofollow">Enumerable.Zip</a><!--/noindex-->:&#160; <div class="blog-code-box"><pre class="text">IEnumerable&lt;TResult&gt; Zip&lt;TFirst, TSecond, TResult&gt;(
    this IEnumerable&lt;TFirst&gt; first,
    IEnumerable&lt;TSecond&gt; second,
    Func&lt;TFirst, TSecond, TResult&gt; resultSelector)</pre></div> в <!--noindex--><a href="http://msdn.microsoft.com/en-us/library/ee370261.aspx" rel="nofollow">F#</a><!--/noindex--> (также в статическом классе SeqModule) zips применяет к набору:&#160;<span>IEnumerable</span><span>&lt;</span><span>Tuple</span><span>&lt;T1, T2&gt;&gt; Zip&lt;T1, T2&gt;(</span><span>IEnumerable</span><span>&lt;T1&gt; first, </span><span>IEnumerable</span><span>&lt;T2&gt; second)</span> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; <b>В заключение</b> 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Если вы работаете с Visual Studio 2010, вы можете воспользоваться большой библиотекой F# возможностей даже в проектах на .NET 2.0. У вас всё для этого есть, используйте это! 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Если вы работаете в .NET 3.5 и выше, <!--noindex--><a href="https://github.com/fsharp/fsharpx" rel="nofollow">FSharpx</a><!--/noindex--> становится более дружественным в C#. Он также облегчает взаимодействие с проектами на F# если вам это нужно, поскольку они используют те же основные типы. Даже в .NET 4, есть неизменяемые коллекции, размеченные объединения и варианты легко строит зависимости. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; Также стоит отметить <!--noindex--><a href="http://fsharppowerpack.codeplex.com/" rel="nofollow">F# PowerPack</a><!--/noindex--> – это отдельная библиотека, реализующая дополнительные коллекции, такие как HashMultiMap и LazyList и математические специфические объекты, такие как рациональные и комплексные числа, матрицы, векторы. 
<br/>


 &#160; &#160; &#160; &#160; &#160; &#160; И всё в открытом доступе, опубликованы под Apache-licensed. 
<br/>


 
<br/>


 оригинал:&#160;<!--noindex--><a href="http://bugsquash.blogspot.com/2011/10/10-reasons-to-use-f-runtime-in-your-c.html" rel="nofollow">http://bugsquash.blogspot.com/2011/10/10-reasons-to-use-f-runtime-in-your-c.html</a><!--/noindex--></div>
 </div>
 ]]></description>
      <category><![CDATA[F#]]></category>
      <category><![CDATA[C#]]></category>
      <guid isPermaLink="false">urn:bitrix:blog:post:1920</guid>
      <pubDate>Fri, 18 May 2012 11:30:49 UT</pubDate>
      <dc:creator><![CDATA[Мария  Хрузина]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[IT-мозги будут искать завтра на BitByte]]></title>
      <link>http://www.msdeveloper.ru/blogs/infobox/1918/</link>
      <description><![CDATA[<p>В субботу 19 мая пройдет фестиваль профессионального развития в сфере IT <!--noindex--><a title="Bit Byte" href="http://www.itmozg.ru/bitbyte" rel="nofollow">Bit Byte</a><!--/noindex-->. Организует его портал <!--noindex--><a title="IT-мозг" href="http://www.itmozg.ru/" rel="nofollow">IT-мозг</a><!--/noindex-->, а участвуют крупнейшие IT-работодатели Петербурга. </p>
<p>Молодые IT-специалисты с небольшим опытом работы или совсем без опыта смогут на фестивале пообщаться с представителями крупнейших  IT-компаний и успешных стартапов, послушать выступления звезд IT. Участие для соискателей бесплатное.</p>
<p>Мы тоже будем там искать сотрудников в нашу дружную команду саппорта и не только. Подробности всю субботу за нашим столиком в выставочной зоне. </p>
<p><!--noindex--><a title="Карта проезда" href="http://maps.yandex.ru/-/CJtEUS1s" rel="nofollow">Карта проезда</a><!--/noindex--></p>
]]></description>
      <category><![CDATA[События]]></category>
      <guid>http://feedproxy.google.com/~r/InfoboxBlog/~3/bUg9vv-24pQ/</guid>
      <pubDate>Fri, 18 May 2012 07:15:38 UT</pubDate>
      <dc:creator><![CDATA[Infobox]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Готовьтесь к сессии и учитесь вместе с нами!]]></title>
      <link>http://www.msdeveloper.ru/blogs/rustudents/1919/</link>
      <description><![CDATA[<h4><b>Дорогие студенты!</b></h4>
<p>Вы возможно не знаете, но у нас есть библиотека учебных курсов <!--noindex--><a href="http://ms-library.ru/" rel="nofollow">MS-Library.ru</a><!--/noindex-->, в которой есть много интересных материалов, как для преподавателей, так и для интересующихся студентов. В преддверии летней сессии, мы подготовили специально для вас обзор лучших курсов, которые, несомненно, будут полезны при подготовке к экзаменам, да и просто для самообразования летом. Курсы содержат, лекции, семинары, лабораторные работы, примеры кода и многое другое.</p>
<p><b>Программирование</b></p>
<ul>
<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8118&amp;Login=" rel="nofollow"><strong>Алгоритмы и задачи на C# </strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8675&amp;Login=" rel="nofollow"><strong>Современные численные методы в объектно-ориентированном изложении на C# </strong></a><!--/noindex-->(практикум к курсу доступен <!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8736&amp;Login=" rel="nofollow"><strong>здесь</strong></a><!--/noindex-->)</li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8676&amp;Login=" rel="nofollow"><strong>Программирование на языке C в Microsoft Visual Studio 2010 </strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8278&amp;Login=" rel="nofollow"><strong>Введение в программирование на языке Лисп</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/8509-Functional-Programming.aspx?c1=en-us&amp;c2=0" rel="nofollow"><strong>Функциональное программирование на языке F#</strong></a><!--/noindex--></li>


</ul>
<p><b>Парралельное программирование</b></p>
<ul>
<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8161&amp;Login=" rel="nofollow"><strong>Кластерные вычисления </strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8472&amp;Login=" rel="nofollow"><strong>Модели и средства программирования для многопроцессорных вычислительных систем</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8498&amp;Login=" rel="nofollow"><strong>Параллельное программирование для многоядерных процессоров</strong></a><!--/noindex--></li>


</ul>
<p><b>Компьютерная графика и 3</b><b>D моделирование</b></p>
<ul>
<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8293&amp;Login=" rel="nofollow"><strong>Создание трехмерного графического приложения с помощью технологии DirectX 9.0 Managed API (примеры кода, создаем 3д приложение с картинками)</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8261&amp;Login=" rel="nofollow"><strong>Компьютерная графика. Часть 1</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8262&amp;Login=" rel="nofollow"><strong>Компьютерная графика. Часть 2</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8263&amp;Login=" rel="nofollow"><strong>Компьютерная графика. Часть 3</strong></a><!--/noindex--></li>


</ul>
<p><b>Базы данных</b></p>
<ul>
<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8245&amp;Login=" rel="nofollow"><strong>Базы данных</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8254&amp;Login=" rel="nofollow"><strong>Разработка распределенных приложений баз данных</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8620&amp;Login=" rel="nofollow"><strong>Реализация баз данных Microsoft SQL Server 2008</strong></a><!--/noindex--></li>


</ul>
<p><b>Сетевые технологии</b></p>
<ul>
<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8228&amp;Login=" rel="nofollow"><strong>Компьютерные сети</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8229&amp;Login=" rel="nofollow"><strong>Системное администрирование </strong></a><!--/noindex--></li>


</ul>
<p><b>Управление ИТ проектами и командная разработка</b></p>
<ul>
<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8136&amp;Login=" rel="nofollow"><strong>Методика выполнения курсовых и дипломных работ в составе команды с использованием среды Microsoft Visual Studio Team System</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8223&amp;Login=" rel="nofollow"><strong>Инженерный менеджмент и информационные технологии</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8222&amp;Login=" rel="nofollow"><strong>Управление ИТ проектами</strong></a><!--/noindex--></li>


<li><!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/pfv.aspx?ID=8137&amp;Login=" rel="nofollow"><strong>Введение в программную инженерию</strong></a><!--/noindex--></li>


</ul>
<p>А для студентов юридических специальностей мы подготовили специальный курс по защите авторских прав - <!--noindex--><a href="https://www.facultyresourcecenter.com/curriculum/RU/pfv.aspx?ID=8861&amp;c1=ru-ru&amp;c2=RU&amp;Login=&amp;wa=wsignin1.0" rel="nofollow"><strong>Основы законодательства РФ по защите Авторских и смежных прав</strong><strong>.</strong></a><!--/noindex--></p>
<p>Удачи на экзаменах!</p><img src="http://blogs.msdn.com/aggbug.aspx?PostID=10306632" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[Algorithms]]></category>
      <category><![CDATA[C#]]></category>
      <category><![CDATA[Программирование]]></category>
      <category><![CDATA[curricula]]></category>
      <category><![CDATA[Обучение]]></category>
      <category><![CDATA[Лекции]]></category>
      <category><![CDATA[F#]]></category>
      <category><![CDATA[Студенты]]></category>
      <guid>http://blogs.msdn.com/b/rustudents/archive/2012/05/18/best-courses-in-microsoft-course-library-to-study-for-exams-and-self_2D00_improvement.aspx</guid>
      <pubDate>Fri, 18 May 2012 07:08:00 UT</pubDate>
      <dc:creator><![CDATA[rustudents]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Книга Microsoft Robotics Developer Studio. Программирование алгоритмов управления роботами.]]></title>
      <link>http://www.msdeveloper.ru/blogs/msdn/1917/</link>
      <description><![CDATA[<p>Доступна для скачивания книга &#171;<!--noindex--><a href="http://www.facultyresourcecenter.com/curriculum/pfv.aspx?Id=8977" rel="nofollow">Microsoft Robotics Developer Studio.Программирование алгоритмов управления роботами</a><!--/noindex-->&#187;, которая&#160;посвящена программированию алгоритмов управления роботами с помощью Visual Programming Language.</p>
<p>Visual Programming Language (VPL) – это язык визуального программирования для написания приложений для роботов, программа на VPL представляет собой диаграмму блоков и связей между ними. Чтобы научиться программировать на VPL, совсем не обязательно быть профессиональным программистом, достаточно знать основы алгоритмизации и иметь представление о переменных.</p>
<p>В данной книге подробно рассказано о том, как с помощью VPL можно управлять движением робота, считывать и обрабатывать данные с сенсоров, управлять несколькими роботами и о многом другом.</p>
<p>Но самое главное – чтобы научиться управлять роботами, совсем не обязательно покупать дополнительное оборудование, ведь в Microsoft Robotics Developer Studio входит среда визуализации Visual Simulation Environment(VSE),<br/>

позволяющая экспериментировать с моделями роботов и тестировать алгоритмы в виртуальном 3D окружении, возможности которой так же описаны!</p>
<p>Скачать книгу можно по <!--noindex--><a href="http://www.facultyresourcecenter.com/curriculum/RU/8977-Microsoft-Robotics-Developer-Studio.aspx" rel="nofollow">ссылке</a><!--/noindex-->.</p><img src="http://blogs.msdn.com/aggbug.aspx?PostID=10306273" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[Microsoft Robotics]]></category>
      <guid>http://blogs.msdn.com/b/rudevnews/archive/2012/05/17/microsoft-robotics-developer-studio.aspx</guid>
      <pubDate>Thu, 17 May 2012 14:35:00 UT</pubDate>
      <dc:creator><![CDATA[MSDN Russia]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Приглашаем на одно из главных интернет-событий года в Петербурге]]></title>
      <link>http://www.msdeveloper.ru/blogs/infobox/1915/</link>
      <description><![CDATA[<p>Если вы ищите в интернете клиентов, обслуживаете их через сайт,  общаетесь с ними в соцсетях, принимаете интернет-платежи, да и просто идёте в ногу со временем, это мероприятие для вас. </p>
<p><strong>28</strong> и <strong>29 мая</strong> в конференц-центре гостиницы &#171;Прибалтийская Park Inn&#187; пройдет <strong>VII Санкт-Петербургская Интернет Конференция&#160;— СПИК-2012</strong>. Программа насыщенная – 4 потока дискуссий и мастер-классы. </p>
<p>Infobox приглашает присоединиться к СПИК-2012. Регистрационный взнос&#160;— 1 000 рублей (а в день конференции – 1500).  <b>Воспользуйтесь при оплате кодом &#171;infobox50&#187;, и получите скидку 50%.</b></p>
<p>Вдохновляйтесь примерами, спрашивайте, обсуждайте и используйте интернет в вашем бизнесе эффективно.</p>
<p>Встретимся на СПИК!</p>
<p><!--noindex--><a title="Зарегистрироваться" href="http://www.sp-ic.ru/registration/" rel="nofollow">Зарегистрироваться</a><!--/noindex--> | <!--noindex--><a title="Выбрать программу" href="http://www.sp-ic.ru/program/" rel="nofollow">Выбрать программу</a><!--/noindex--> | <!--noindex--><a title="Посмотреть карту проезда" href="http://www.sp-ic.ru/contacts/" rel="nofollow">Посмотреть карту проезда</a><!--/noindex--></p>
]]></description>
      <category><![CDATA[События]]></category>
      <guid>http://feedproxy.google.com/~r/InfoboxBlog/~3/N_2nY60g2KM/</guid>
      <pubDate>Thu, 17 May 2012 07:23:08 UT</pubDate>
      <dc:creator><![CDATA[Infobox]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Стали известны имена еще 4-х докладчиков конференции DevCon’12 ]]></title>
      <link>http://www.msdeveloper.ru/blogs/msdn/1914/</link>
      <description><![CDATA[<p>Стали известны имена еще 4-х<!--noindex--><a href="http://www.msdevcon.ru/speakers" rel="nofollow"> докладчиков</a><!--/noindex--> конференции DevCon’12.</p>
<p>Участие в конференции подтвердили:</p>
<dl><dt>&#160;</dt>

<dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/d-martinov.jpg" border="0"/></dt>

</dl>
<p><strong>Дмитрий Мартынов</strong>, советник по платформенной стратегии, Microsoft</p>
<dl><dt>Более 15 лет занимается проектированием, разработкой и консультированием в области разработки информационных систем, в том числе интеграционных решений и распределенных приложений в облачной и сервисно-ориентированной архитектуре. Сотрудник Microsoft c 2002 года.&#160; В настоящее время отвечает за работу с российскими и международными партнерами и стартапами по использованию Windows Azure. Часто выступает на конференциях с докладами по архитектуре и технологиям.</dt>

</dl>
<div>
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/v-novitskiy.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Вадим Новицкий</strong>, вице-президент по разработке AtContent.com (IFFace Inc)</dt>

<dt>&#160;</dt>

<dt>Выпусник Института математики, экономики и информатики Иркутского Государственного Университета по специальности прикладная математика и информатика. Разработкой в вебе занимается с 2004 года. С 2009 года активно использует технологии облачной платформы Windows Azure. Вместе с командой AtContent.com изменяет рынок электронных публикаций и выводит его на принципиально новый качественный уровень.</dt>

</dl></div>
<div>
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/m-matvienko.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Михаил Матвиенко</strong>, ведущий разработчик, Penxy</dt>

<dt>&#160;</dt>

<dt>Закончил факультет Радиоэлектроники и кибернетики МФТИ. Работал в ABBYY и в нескольких стартапах: Musigy (победитель World Imagine Cup 2005), Colorpen. Сейчас работает в компании PENXY, где занимается созданием распределенной серверной системы на платформе Windows Azure. Специализируется на различных реляционных и NoSQL системах хранения.</dt>

</dl></div>
<p>&#160;</p>
<div><dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/a-kolchanov.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Андрей Колчанов</strong>, cтудент 4 курса Томского политехнического университета</dt>

<dt>&#160;</dt>

<dt>Андрей так же является студентом-партнером Microsoft и студентом Открытого университета Сколково. Занимал 3 место в российском финале конкурса Imagine Cup 2012 и 1 место в региональном этапе Imagine Cup 2011 Сибирь-Дальний Восток. Является лидером User Group и со-основателем MCP клуба в Томске. Являлся резидентом Летней школы Академпарка 2011 (город Новосибирск) и участником Летней школы по базам данных и информационному поиску Russir/EDBT 2011 (город Санкт-Петербург). Представлял Томский политехнический университет на международной выставке Study World 2012 (город Берлин).</dt>

</dl></div>
<p>Вы можете ознакомиться&#160;с <!--noindex--><a href="http://www.msdevcon.ru/schedule" rel="nofollow">расписанием</a><!--/noindex--> конференции в соответствующем разделе сайта. Не пропустите <!--noindex--><a href="http://www.msdevcon.ru/online" rel="nofollow">прямую трансляцию</a><!--/noindex--> с конференции!</p>
<div>
<div style="width: 0px; height: 0px">

</div>
</div><img src="http://blogs.msdn.com/aggbug.aspx?PostID=10306145" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[msdevcon]]></category>
      <guid>http://blogs.msdn.com/b/rudevnews/archive/2012/05/17/newspeakersdevcon.aspx</guid>
      <pubDate>Thu, 17 May 2012 06:41:11 UT</pubDate>
      <dc:creator><![CDATA[MSDN Russia]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Стали известны имена еще 15-ти докладчиков конференции DevCon’12 ]]></title>
      <link>http://www.msdeveloper.ru/blogs/msdn/1913/</link>
      <description><![CDATA[<div>
<div style="width: 0px; height: 0px">

</div>
<p>Стали известны имена еще 15-ти докладчиков конференции DevCon’12.</p>
<p>Участие в конференции подтвердили:</p>
<p style="padding-left: 30px"><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/a-lyubomirov.jpg" border="0"/></p>
<p style="padding-left: 30px"><strong>Анатолий Любомиров, </strong>дизайнер пользовательских интерфейсов, Intel</p>
<p style="padding-left: 30px">Работает дизайнером пользовательских интерфейсов с&#160; 2006 года. Из под его &#171;пера&#187; вышли пользовательские интерфейсы таких продуктов как Intel VTune Amplifier XE, Intel Inspector XE и Intel Advisor XE (а также версии этих же продуктов, но с уменьшенными возможностями). В компании Intel с 2002 года.</p>
<div style="padding-left: 30px">
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/v-dmitriev.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Влад Дмитриев</strong>, менеджер по работе с партнерами, Microsoft</dt>

<dt>&#160;</dt>

<dt>В сфере ИТ работает более 17 лет. За это время участвовал в разработке мультимедиа систем, систем бизнес аналитики, банковских приложений. В команде Microsoft c 2006 года. Более пяти лет отвечал за техническое взаимодействие с партнерами-производителями компьютерной техники. В область профессиональных интересов входит разработка приложений для клиентских устройств и средства настройки образов операционных систем Microsoft.</dt>

</dl></div>
<p style="padding-left: 30px">&#160;</p>
<div style="padding-left: 30px"><dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/s-grebnov.jpg" border="0"/></dt>

</dl></div>
<p style="padding-left: 30px"><strong>Сергей Гребнов</strong>, ведущий специалист, Akvelon</p>
<dl style="padding-left: 30px"><dt>Ветеран компании Akvelon, лидер подразделения мобильной разработки. В настоящий&#160; момент работает над инициативами команды Microsoft Open Technologies, участвует в разработке Apache Cordova и jQuery Mobile. В прошлом победитель Microsoft Imagine Cup, стажер Microsoft Research, призер ACM. Программист-фанатик.</dt>

</dl>
<div style="padding-left: 30px">
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/d-fokin.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Денис Фокин</strong>, генеральный директор компании Ти Ай Системс</dt>

<dt>&#160;</dt>

<dt>20 лет в сфере ИТ. Прошел путь от программиста до руководителя ИТ-компании. В роли системного архитектора и руководителя проектов участвовал в создании крупнейших в России информационных систем. При этом главным своим профессиональным достижением считает создание успешной и сплоченной команды профессионалов, каковой сейчас является компания Ти Ай Системс.</dt>

</dl></div>
<div style="padding-left: 30px">
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/d-kazarin.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Дмитрий Казарин</strong>, ведущий разработчик на платформе Windows Phone компании Русские Интернет Решения (QIP)</dt>

<dt>&#160;</dt>

<dt>Microsoft Student Partner с 2008 года. В область интересов входят веб и мобильная разработка. Автор популярного приложения Translate This под Windows Phone. В настоящее время занимается разработкой мобильных приложений в компании Русские Интернет Решения.</dt>

</dl></div>
<p style="padding-left: 30px">&#160;</p>
<div style="padding-left: 30px"><dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/f-panfilov.jpg" border="0"/></dt>

</dl></div>
<p style="padding-left: 30px"><strong>Филипп Панфилов</strong>, разработчик клиентских решений</p>
<dl style="padding-left: 30px"><dt>Microsoft Student Partner в МГТУ им. Н.Э. Баумана. Занимается разработкой клиентских приложений для Windows Phone и Windows 8. В область профессиональных интересов также входит исследование вопросов информационной безопасности облачных технологий.</dt>

</dl>
<p style="padding-left: 30px">&#160;</p>
<div style="padding-left: 30px"><dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/k-zaikin.jpg" border="0"/></dt>

</dl></div>
<p style="padding-left: 30px"><strong>Костя Заикин</strong>, руководитель группы разработки мобильных карт под Windows Phone, Яндекс</p>
<dl style="padding-left: 30px"><dt>Работает в Яндексе с 2011 года. Отвечает за разработку мобильных Яндекс.Карт и общих компонент приложений Яндекса для Windows Phone.</dt>

</dl>
<div style="padding-left: 30px">
<p><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/a-krakovetskiy.jpg" border="0"/></p>
<p><strong>Александр Краковецкий</strong>, руководитель в DevRain Solutions</p>
<dl><dt>Автор сайтов <!--noindex--><a href="http://wp7rocks.com/" rel="nofollow">Windows Phone 7 Rocks!</a><!--/noindex--> и <!--noindex--><a href="http://msug.vn.ua/" rel="nofollow">Microsoft User Group Community</a><!--/noindex-->. В данный момент является руководителем DevRain Solutions, занимающейся разработкой приложений для Windows Phone 7. Microsoft Regional Director, Microsoft и Telerik MVP, кандидат технических наук по информационным технологиям, автор публикаций на многих технических порталах, спикер и активный член технического сообщества.</dt>

</dl></div>
<div style="padding-left: 30px">
<p>&#160;</p>
<p><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/s-vaselenko.jpg" border="0"/></p>
<dl><dt>&#160;</dt>

<dt><strong>Сергей Васеленко</strong>, генеральный директор, &#171;Гартл Технолоджи Корпорейшн&#187;</dt>

<dt>&#160;</dt>

<dt>Работает в сфере управления, ИТ и разработки ПО 20 лет. MBA, PMP. С 2010 года является учредителем и генеральным директором ЗАО &#171;Гартл Технолоджи Корпорейшн&#187;. С 2007 по 2010 год работал заместителем генерального директора по экономике и информационным технологиям в ОАО &#171;Новая перевозочная компания&#187;. Является экспертом по разработке на Microsoft Excel и Microsoft SQL Server, автором сайта excel-sql-sever.com. В сферу профессиональных интересов входит создание платформы для быстрой разработки бизнес-приложений с использованием Microsoft Excel.</dt>

</dl></div>
<div style="padding-left: 30px">
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/n-klichnikov.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Никита Клычников</strong>, руководитель отдела SharePoint, ADV/web-engineering co.</dt>

<dt>&#160;</dt>

<dt>Руководитель отдела SharePoint в ADV/web-engineering co. Опыт разработки на платформе .NET с 2006 года. Сертифицированный специалист Microsoft. Принимал участие в работе над созданием публичных проектов для ВТБ24, Пробизнесбанка на платформе SharePoint.</dt>

</dl></div>
<div style="padding-left: 30px">
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/d-pasechnik.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Денис Пасечник</strong>, эксперт по управлению проектами и построению систем обеспечения качества в рамках полного цикла разработки ПО, Microsoft</dt>

<dt>&#160;</dt>

<dt>Активный сторонник Agile продуктовых методологий c упором на инструментальную поддержку от компании Microsoft, в первую очередь: Visual Studio, TFS, Project Server. Работает в ИТ сфере с 1996 года. Сертифицированный менеджер проектов уровня (B) по версии IPMA, сертифицированный IPMA Assessor. Имеет Microsoft сертификации (MCSD, MCDBA, MCT, MSFP). Начиная с 2003 года являлся участником программы Microsoft Regional Director, а с 2007 года MVP со специализацией в Visual Studio Team System. C 2010 года работает в Компании Microsoft.</dt>

</dl></div>
<div style="padding-left: 30px">
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/a-belotserkovskiy.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Александр Белоцерковский</strong>, тренер, Учебный Центр ТПУ &amp; Softline</dt>

<dt>&#160;</dt>

<dt>В сфере IT работает с 2004 года. С 2005 года является системным администратором суперкомпьютерного центра в Томском Политехническом Университете. Читает курсы в IT Academy в Центре Инноваций Microsoft ТПУ&#160; по направлениям сетевого&#160; администрирования, разработки приложений и облачных вычислений. В область профессиональных интересов входят распределённые и облачные вычисления, разработка на платформе .NET, системное администрирование.</dt>

</dl></div>
<div style="padding-left: 30px">
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/a-filimonov.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Алексей Филимонов</strong>, партнер Global TechInnovations</dt>

<dt>&#160;</dt>

<dt>Алексей Филимонов отвечает в компании Global TechInnovations за направление технологической акселерации стартапов ранней стадии. До этого работал Директором по стратегическим проектам в компании &#171;ДоксВижн&#187;, ведущего разработчика систем электронного документооборота, где занимался глобализацией платформы DocsVision и взаимоотношениями с инвесторами. Ранее Алексей занимал должность Директора департамента программных решений компании Digital Design, руководил филиалом крупнейшего чайнокофейного производителя компании &#171;Орими Трэйд&#187; в Казахстане, работал на разных позициях в области развития бизнеса в известных ИТ-компаниях (Exigen Services, Lynx). Закончил СПбГУ (бакалавр физики, второе высшее образование в области математических методов в экономике), обладатель степени МВА (ИМИСП). Алексей также является сооснователем ряда стартапов в области электронной коммерции.</dt>

</dl></div>
<div style="padding-left: 30px">
<p>&#160;</p>
<dl><dt><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/d-soshnikov.jpg" border="0"/></dt>

<dt>&#160;</dt>

<dt><strong>Дмитрий Сошников</strong>, координатор академических программ Microsoft в России</dt>

<dt>&#160;</dt>

<dt>Кандидат физико-математических наук, доцент кафедр МАИ и Высшей школы экономики. Член Российской ассоциации искусственного интеллекта. Координатор академических программ Microsoft в России. Занимается популяризацией функционального программирования и языка F#, а также разработкой приложений для мобильной платформы Windows Phone. Автор более 60 трудов в области искусственного интеллекта и распределённого представления знаний, среди которых монография, учебное пособие&#160; и книга &#171;Функциональное программирование на языке F#&#187;.</dt>

</dl></div>
<div style="padding-left: 30px">
<p>&#160;</p>
<p><img src="http://www.msdevcon.ru/Content/img/devcon-theme/speakers/r-zdebskiy.jpg" border="0"/></p>
<p><strong>Ромуальд Здебский</strong>, руководитель направления по технологической стратегии, Microsoft Россия</p>
<p>В Microsoft координирует работу технических экспертов по разработке программного обеспечения и управлению информационной инфраструктурой с точки зрения ключевых технологических приоритетов платформы Microsoft. Неоднократно выступал и принимал ключевое участие в подготовке ряда технических конференций компании (Платформа, Дни разработчика, TechDays, запуск Visual Studio 2008/2010, ReMIX и другие). Руководил подготовкой конференции Платформа 2011 и первой международной конференции Tech∙Ed Russia 2011.</p>
<p>Вы можете ознакомиться&#160;с расписанием&#160;конференции в соответствующих разделах сайта. Не пропустите <!--noindex--><a href="http://www.msdevcon.ru/online" rel="nofollow">online трансляцию</a><!--/noindex-->!</p>
</div>
</div><img src="http://blogs.msdn.com/aggbug.aspx?PostID=10305840" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[msdevcon]]></category>
      <guid>http://blogs.msdn.com/b/rudevnews/archive/2012/05/16/speakers15.aspx</guid>
      <pubDate>Wed, 16 May 2012 14:19:57 UT</pubDate>
      <dc:creator><![CDATA[MSDN Russia]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Смотрите онлайн лекцию Марии Левиной «PR: быть или казаться» 17 мая в 19-00]]></title>
      <link>http://www.msdeveloper.ru/blogs/rustudents/1912/</link>
      <description><![CDATA[<p>Многим кажется, что PR- это что-то веселое, маркетинговое, что-то связанное с прессой, что-то ненаучное и совершенно не понятное. Марина Левина, директор по PR и корпоративным коммуникациям Microsoft в России, расскажет о том, зачем нужен PR, что такое корпоративная коммуникация, зачем все это нужно, можно ли обойтись без этих функций, а также откроет 10 принципов правильного создания Public Relations.</p>
<p>Смотрите онлайн 17 мая в 19-00 на <!--noindex--><a href="http://www.microsoft.ru/university" rel="nofollow">www.microsoft.ru/university</a><!--/noindex-->&#160;&#160;</p>

<p>Лекция пройдет в рамках курса &quot;Не тупи! Заточись!&quot; от&#160;<!--noindex--><a title="Microsoft University" href="http://www.microsoft.ru/university" rel="nofollow">Microsoft University</a><!--/noindex-->. Это возможность понять, чем ты хочешь заниматься в будущем и каких знаний тебе не хватает, а также пообщаться с экспертами Microsoft. Найти области деятельности, где ты бы хотел чему-то научиться.&#160;</p>
<p>Курс подготовлен в совместном партнерстве Microsoft и Открытого Университета Сколково.&#160;</p>
<p><!--noindex--><a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-45/5153.banner.PNG" rel="nofollow"><img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-15-45/5153.banner.PNG" border="0"/></a><!--/noindex--></p><img src="http://blogs.msdn.com/aggbug.aspx?PostID=10305839" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[microsoft university лекция lection]]></category>
      <guid>http://blogs.msdn.com/b/rustudents/archive/2012/05/16/public-relations-pr-lection-levina-microsoft-university.aspx</guid>
      <pubDate>Wed, 16 May 2012 14:16:54 UT</pubDate>
      <dc:creator><![CDATA[rustudents]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Пять причин не пропустить Tech•Ed Europe 2012]]></title>
      <link>http://www.msdeveloper.ru/blogs/msdn/1911/</link>
      <description><![CDATA[<p><!--noindex--><a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-04-32/4722.TechEd.PNG" rel="nofollow"><img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-04-32/4722.TechEd.PNG" border="0"/></a><!--/noindex--></p>
<p>В отличие от обычных классных занятий с ограниченным набором тем, Tech∙Ed позволяет комбинировать как сами сессии, так и их типы, что делает предлагаемое обучение действительно персонализированным.</p>
<p>Вы будете находиться в непринужденной обстановке среди тысяч своих коллег. Используйте <!--noindex--><a href="http://aka.ms/x53ih3" rel="nofollow">Справочник делегатов</a><!--/noindex-->, чтобы заранее связаться с нужными людьми или используйте неформальный подход.</p>
<p>Нет лучшего места , чтобы узнать о готовящихся к выпуску продуктах:</p>
<ul>
<li><!--noindex--><a href="http://aka.ms/onsp4r" rel="nofollow">Windows 8</a><!--/noindex-->,</li>


<li><!--noindex--><a href="http://aka.ms/yk2op0" rel="nofollow">Windows Server 2012</a><!--/noindex-->,</li>


<li><!--noindex--><a href="http://aka.ms/ue5f24" rel="nofollow">Windows Azure</a><!--/noindex-->,</li>


<li><!--noindex--><a href="http://aka.ms/p0tc5q" rel="nofollow">System Center2012</a><!--/noindex-->,</li>


<li><!--noindex--><a href="http://aka.ms/pmbgw5" rel="nofollow">Windows Phone</a><!--/noindex-->,</li>


<li><!--noindex--><a href="http://aka.ms/svx2bm" rel="nofollow">Visual Studio 11</a><!--/noindex-->.</li>


</ul>
<p>Если вы только встали на путь сертификации или уже являетесь опытным сертифицированным специалистом, вы не захотите упустить потрясающую возможность выполнить сертификационные требования. На Tech∙Ed Europe вам предложат бесплатно сдать экзамены в рамках сертификации MCSE.</p>
<p>В современном онлайновом взаимосвязанном мире огромная удача – получить выделенное время, позволяющее отвлечься от постоянных сиюминутных дел и отвлекающих забот и сосредоточиться на самообразовании.</p>
<p>Ждем вас на Tech∙Ed Europe 2012!</p><img src="http://blogs.msdn.com/aggbug.aspx?PostID=10305829" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[Windows]]></category>
      <category><![CDATA[Visual Studio]]></category>
      <category><![CDATA[Windows Azure]]></category>
      <category><![CDATA[Windows Phone]]></category>
      <guid>http://blogs.msdn.com/b/rudevnews/archive/2012/05/16/tech-ed-europe-2012.aspx</guid>
      <pubDate>Wed, 16 May 2012 13:51:37 UT</pubDate>
      <dc:creator><![CDATA[MSDN Russia]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[[Перевод] Проблема циклических зависимостей при инициализации типов]]></title>
      <link>http://www.msdeveloper.ru/blogs/inmsstack/1910/</link>
      <description><![CDATA[Некоторые из читателей, которые когда-либо сталкивались с проблемой, описанной в названии статьи, наверняка оставались на работе до поздна и проводили много часов в отладчике. Для других это может быть не более чем игрой слов и жаргонными словечками. Однако, давайте отойдем от жаргона в сторону и раскроем понятия:<br/>


<ul>
<li>Инициализация типа: это код, который выполняется чтобы проинициализировать все статические переменные класса и выполнить статический конструктор;</li>


<li>Циклическая зависимость: два кусочка кода, которые зависят друг от друга. В нашем случае это два класса, инициализация типов которых требует уже проинициализированного типа другого класса.</li>


</ul> <br/>


Ну и небольшой пример, чтобы показать, о чем идет речь:<br/>


<pre><div class="blog-code-box"><pre>using&#160;System;&#160;
	
class&#160;Test&#160;
{&#160;&#160;&#160;&#160;&#160;
&#160;&#160;&#160;&#160;static&#160;void&#160;Main()&#160;
&#160;&#160;&#160; {&#160;
&#160;&#160;&#160;&#160;&#160;&#160;&#160; Console.WriteLine(First.Beta);&#160;
&#160;&#160;&#160; }&#160;
}&#160;
	
class&#160;First&#160;
{&#160;
&#160;&#160;&#160;&#160;public&#160;static&#160;readonly&#160;int&#160;Alpha = 5;&#160;
&#160;&#160;&#160;&#160;public&#160;static&#160;readonly&#160;int&#160;Beta = Second.Gamma;&#160;
}&#160;
	
class&#160;Second&#160;
{&#160;
&#160;&#160;&#160;&#160;public&#160;static&#160;readonly&#160;int&#160;Gamma = First.Alpha;&#160;
}
</pre></div></pre><br/>


<br/>


<b>Результатом выполнения этого кода будет 0</b><br/>


 <!--noindex--><a href="http://habrahabr.ru/post/143936/#habracut" rel="nofollow">Читать дальше →</a><!--/noindex-->]]></description>
      <category><![CDATA[Программирование]]></category>
      <category><![CDATA[.NET]]></category>
      <category><![CDATA[типы]]></category>
      <category><![CDATA[clr]]></category>
      <category><![CDATA[.net framework]]></category>
      <guid>http://habrahabr.ru/post/143936/</guid>
      <pubDate>Wed, 16 May 2012 06:00:58 UT</pubDate>
      <dc:creator><![CDATA[Станислав]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Binding Fill properties в MapPolygon]]></title>
      <link>http://www.msdeveloper.ru/blogs/rdaskal/1901/</link>
      <description><![CDATA[
<p><span><font><strong>Спотыкашка:</strong></font></span></p>
 
<p><span><font>Невозможно выполнить связывание данных (binding) для свойства Fill элемента управления MapPolygon.</font></span></p>
 
<p><span><font>Свойство Fill используется для установки цвета заливки полигона, однако для этого свойства отсутствует DependencyProperty, в связи с чем невозможно произвести связывание данных.</font></span></p>
 
<p><span><font><strong>Решение:</strong></font></span></p>
 
<p><span><font>Необходимо расширить MapPolygon, добавив DependencyProperty для свойства Fill.</font></span></p>
 <span><font> 
<p><span><font><strong>Подробно:</strong></font></span></p>
 
<p><span><font>Мы уже давно привыкли, что в мобильных приложениях настройки, задаваемые пользователем, применяются сразу же и без дополнительных его перезагрузок. С точки зрения разработчика за описанным поведением приложения стоит связывание данных с элементами управления приложения.</font></span></p>
 
<p><span><font><em>Связывание данных&#160;</em></font></span><!--noindex--><a href="http://msdn.microsoft.com/en-us/library/cc278072(VS.96).aspx" rel="nofollow"><span><font color="#0000FF"><em>Data binding</em></font></span></a><!--/noindex--></p>
 
<p><span><font>Связывание данных предлагает простой путь для отображения и взаимодействия с данными в приложениях, построенных на Silverlight. Способ отображения информации отделяется от управления информацией. Связывание объекта интерфейса <span> </span>и объекта данных позволяет производить обмен информацией между ними. Когда связь между этими элементами установлена и происходит изменение данных, связанный с этими данными элемент интерфейса способен отражать изменения автоматически. </font></span></p>
 
<p><span><font>Данный подход можно использовать не только для связывания текстовых свойств элементов управления (например, заполнять списки), но и для прочих свойств.</font></span></p>
 
<p><span><font>В этом примере я хочу рассказать о связывании данных для свойства Fill элемента управления MapPolygon.</font></span></p>
 
<p><span><font>Для начала необходимо создать новый проект Windows Phone Application, разместить на странице элемент управления Map и добавить к нему MapPolygon.</font></span></p>
 
<p><span><font>После описанных действий участок XAML с нашими элементами будет выглядеть следующим образом:</font></span></p>
 
<p><span><font>MainPage.xaml</font></span></p>
 <span><font> 
<p><div class="blog-code-box"><pre class="xml">…
&lt;Grid x:Name=&quot;ContentPanel&quot; Grid.Row=&quot;1&quot; Margin=&quot;12,0,12,0&quot;&gt;
 &lt;Grid&gt;
  &lt;my:Map Name=&quot;MyMap&quot; ZoomLevel=&quot;16&quot; ZoomBarVisibility=&quot;Visible&quot; CredentialsProvider=&quot;Your_key&quot; &gt;
   &lt;my:Map.Children&gt;
    &lt;my:MapPolygon x:Name=&quot;Poly1&quot;/&gt;
   &lt;/my:Map.Children&gt;
  &lt;/my:Map&gt;
 &lt;/Grid&gt;
&lt;/Grid&gt;
…
</pre></div><span><font>Следующим шагом создадим класс свойств нашего приложения всего с одним свойством, которое будет являться источником связывания.</font></span></p>
 </font></span> 
<p><span><font>Чтобы изменения источника могли отразиться на приемнике, источник должен реализовать интерфейс INotifyPropertyChanged. Интерфейс INotifyPropertyChanged предоставляет событие PropertyChanged, которое сообщает механизму связывания об изменении данных источника, благодаря чему механизм связывания узнает, что пора обновить значение приемника.</font></span></p>
 
<p><span><font>AppProperties.cs</font></span></p>
 
<p><span><font><div class="blog-code-box"><pre class="csharp">    // Создаем класс реализующий INotifyPropertyChanged.
    public class AppProperties:INotifyPropertyChanged
    {
        public AppProperties()
        {
            //Устанавливаем свойство по умолчанию
            PolyColor = new SolidColorBrush(Colors.Black);
        }
        // Объявляем событие PropertyChanged.
        public event PropertyChangedEventHandler PropertyChanged;

        //MapPolygon.Fill типа SolidColorBrush, наше свойство будет аналогичным
        private SolidColorBrush _polyColor;
        public SolidColorBrush PolyColor
        {
            get 
            { 
                return _polyColor; 
            }
            set
            {
                _polyColor = value;
                // Вызываем NotifyPropertyChanged при изменении
                NotifyPropertyChanged(&quot;PolyColor&quot;);
            }
        }

        //Метод информирующий Silverlight приложение о изменении свойства
        public void NotifyPropertyChanged(string propertyName)
        {
            if (PropertyChanged != null)
            {
                PropertyChanged(this,
                    new PropertyChangedEventArgs(propertyName));
            }
        }

    }</pre></div></font></span></p>
 
<p><span><font>Создадим экземпляр нашего класса свойств на уровне приложения, чтобы все страницы приложения могли обращаться к его свойствам.</font></span></p>
 
<p><span><font>App.xaml.cs</font></span></p>
 
<p><span><font><div class="blog-code-box"><pre class="csharp">...
        // свойства приложения
        private static AppProperties _myProperties = null;
        public static AppProperties MyProperties
        {
            get
            {
                if (_myProperties == null)
                    _myProperties = new AppProperties();

                return _myProperties;
            }
        }
...</pre></div> </font></span></p>
 
<p><span><font>Теперь создадим страницу настроек, в которой пользователь будет по своему усмотрению менять цвета полигона, размещенного на карте.</font></span></p>
 
<p><span><font>Для этого добавим к проекту новый элемент Windows Phone Portrait Page.</font></span></p>
 
<p><span><font>На странице разместим ListBox и заполним его элементами.</font></span></p>
 
<p><span><font>&#160;</font></span><span><font>Settings.xaml</font></span></p>
 
<p><span><font><div class="blog-code-box"><pre class="xml">...
        &lt;Grid x:Name=&quot;ContentPanel&quot; Grid.Row=&quot;1&quot; Margin=&quot;12,0,12,0&quot;&gt;
            &lt;ListBox Height=&quot;200&quot; HorizontalAlignment=&quot;Left&quot; Name=&quot;listColors&quot; VerticalAlignment=&quot;Top&quot; Width=&quot;460&quot; SelectionChanged=&quot;listColors_SelectionChanged&quot;&gt;
                &lt;ListBox.ItemTemplate&gt;
                    &lt;DataTemplate&gt;
                        &lt;TextBlock Text=&quot;{Binding ColorName}&quot; FontSize=&quot;30&quot; VerticalAlignment=&quot;Center&quot; HorizontalAlignment=&quot;Center&quot;/&gt;
                    &lt;/DataTemplate&gt;
                &lt;/ListBox.ItemTemplate&gt;
            &lt;/ListBox&gt;

        &lt;/Grid&gt;
...</pre></div></font></span></p>
 
<p><span><font>Settings.xaml.cs</font></span><span><font>&#160;<div class="blog-code-box"><pre class="csharp">    //описываем класс для элементов списка
    public class MyColors
    {
        public string ColorName { get; set; }
        public SolidColorBrush ColorValue { get; set; }
    }
    public partial class Settings : PhoneApplicationPage
    {
        public Settings()
        {
            InitializeComponent();
            Loaded += new RoutedEventHandler(MainPage_Loaded);
        }

        void MainPage_Loaded(object sender, RoutedEventArgs e)
        {
            //заполняем список
            List&lt;MyColors&gt; dataSource = new List&lt;MyColors&gt;();
            dataSource.Add(new MyColors() { ColorName = &quot;Red&quot;, ColorValue = new SolidColorBrush(Colors.Red) });
            dataSource.Add(new MyColors() { ColorName = &quot;Green&quot;, ColorValue = new SolidColorBrush(Colors.Green) });
            dataSource.Add(new MyColors() { ColorName = &quot;Blue&quot;, ColorValue = new SolidColorBrush(Colors.Blue) });
            this.listColors.ItemsSource = dataSource;

            
        }
        //событие изменения выбраного элемента списка
        private void listColors_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            //устанавливаем свойство PolyColor экземпляра класса свойств приложения
            App.MyProperties.PolyColor = (e.AddedItems[0] as MyColors).ColorValue;
        }
    }</pre></div> </font></span><span><font>Самое время реализовать расширение MapPolygon:</font></span></p>
 
<p><span><font>MapPolygonExtended.cs</font></span></p>
 
<p><span><font><div class="blog-code-box"><pre class="csharp">    //создаем класс наследующий MapPolygon
    public class MapPolygonExtended : MapPolygon
    {
        //реализуем DependencyProperty
        public static readonly DependencyProperty FillProperty =
                DependencyProperty.Register(&quot;Fill&quot;, typeof(Brush), typeof(MapPolygonExtended),
                new PropertyMetadata(new SolidColorBrush(), new PropertyChangedCallback(OnFillChanged)));

        private static void OnFillChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            MapPolygonExtended instance = (MapPolygonExtended)d;
            instance.Fill = e.NewValue as Brush;
        }

    }</pre></div></font></span></p>
 
<p><span><font>Ну и последний шаг – нам осталось поправить MainPage.xaml и MainPage.xaml.cs.</font></span></p>
 
<p><span><font>Прежде всего, необходимо определенный раннее &lt;my:MapPolygon x:Name=&quot;Poly1&quot;/&gt; з</font></span><span><font>аменить на реализованный MapPolygonExtended, для этого в MainPage.xaml добавим ссылку на наш namespace xmlns:myCtrl=&quot;clr-namespace:hjvf.demo&quot; и заменим my:MapPolygon на myCtrl:MapPolygonExtended.</font></span></p>
 
<p><span><font>В результате должно получиться следующее:</font></span></p>
 
<p><span><font>MainPage.xaml</font></span></p>
 
<p><span><font><div class="blog-code-box"><pre class="xml">        &lt;Grid x:Name=&quot;ContentPanel&quot; Grid.Row=&quot;1&quot; Margin=&quot;12,0,12,0&quot;&gt;
            &lt;Grid&gt;
                &lt;my:Map Name=&quot;MyMap&quot; ZoomLevel=&quot;16&quot; ZoomBarVisibility=&quot;Visible&quot; CredentialsProvider=&quot;Your_key&quot; &gt;
                    &lt;my:Map.Children&gt;
                        &lt;myCtrl:MapPolygonExtended x:Name=&quot;Poly1&quot;/&gt;
                    &lt;/my:Map.Children&gt;
                &lt;/my:Map&gt;
            &lt;/Grid&gt;
        &lt;/Grid&gt;
...
&lt;phone:PhoneApplicationPage.ApplicationBar&gt;
    &lt;shell:ApplicationBar IsVisible=&quot;True&quot; IsMenuEnabled=&quot;True&quot;&gt;
        &lt;shell:ApplicationBar.MenuItems&gt;
            &lt;shell:ApplicationBarMenuItem Text=&quot;Настройки&quot; Click=&quot;ApplicationBarMenuItem_Click&quot; /&gt;
        &lt;/shell:ApplicationBar.MenuItems&gt;
    &lt;/shell:ApplicationBar&gt;
&lt;/phone:PhoneApplicationPage.ApplicationBar&gt;</pre></div></font></span></p>
 
<p><span><font>Ну и что? Где же связывание свойства заливки?</font></span></p>
 
<p><span><font>Дело в том, что несмотря на то, что мы реализовали DependencyProperty, возможность связывания из Xaml по-прежнему отсутствует, зато появилась возможность выполнить связывание в code behind.</font></span></p>
 
<p><span><font>MainPage.xaml.cs</font></span></p>
 
<p><span><font><div class="blog-code-box"><pre class="csharp">        public MainPage()
        {
            InitializeComponent();
            Loaded += new RoutedEventHandler(MainPage_Loaded);
            DataContext = App.MyProperties;
        }
        
        void MainPage_Loaded(object sender, RoutedEventArgs e)
        {
            //определяем точки нашего полигона
            Poly1.Locations = new LocationCollection();
            Poly1.Locations.Add(new GeoCoordinate(55.80379727, 37.520516));
            Poly1.Locations.Add(new GeoCoordinate(55.80279727, 37.521516));
            Poly1.Locations.Add(new GeoCoordinate(55.80479727, 37.521516));
            //выполняем связывание
            var f = new Binding();
            f.Source = App.MyProperties;
            f.Path = new PropertyPath(&quot;PolyColor&quot;);
            Poly1.SetBinding(MapPolygonExtended.FillProperty, f);
            //передвигаем центр карты к первой точке нашего полигона
            MyMap.Center = new GeoCoordinate(55.80379727, 37.520516);
        }
        //событие навигации для пункта меню настройки
        private void ApplicationBarMenuItem_Click(object sender, EventArgs e)
        {
            NavigationService.Navigate(new Uri(&quot;/Settings.xaml&quot;, UriKind.Relative));
        }</pre></div></font></span></p>
 
<p><span><font>Ну, вот и все, теперь заливку полигона можно контролировать&#160;со страницы&#160;настроек приложения.</font></span></p>
 
<p><span><font>В заключении стоит также отметить, что аналогичным образом обстоит ситуация со свойством StrokeProperty у MapPolyline.</font></span></p>
 
<p><span><font>Готовый пример скачать можно </font><!--noindex--><a href="https://skydrive.live.com/redir.aspx?cid=759975aea86006f1&amp;resid=759975AEA86006F1!227&amp;parid=759975AEA86006F1!149" rel="nofollow"><font color="#0000FF">здесь</font></a><!--/noindex--> 
<br/>


 </span></p>
  </font></span> ]]></description>
      <category><![CDATA[windows phone 7]]></category>
      <category><![CDATA[microsoft]]></category>
      <category><![CDATA[wp7]]></category>
      <guid isPermaLink="false">urn:bitrix:blog:post:1901</guid>
      <pubDate>Tue, 15 May 2012 17:02:26 UT</pubDate>
      <dc:creator><![CDATA[Roman Daskal]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[23-24 мая: прямая трансляция конференции DevCon’12]]></title>
      <link>http://www.msdeveloper.ru/blogs/vyunev/1909/</link>
      <description><![CDATA[Москва, 14 мая 2012 г. – 23 мая в 10:00 (по московскому времени) начнется бесплатная онлайн-трансляция второй ежегодной конференции DevCon’12. Онлайн-трансляция будет проходить на сайте конференции по адресу: http://www.msdevcon.ru/online . В течение...(<!--noindex--><a href="http://blogs.msdn.com/b/vyunev/archive/2012/05/15/23-24-devcon-12.aspx" rel="nofollow">read more</a><!--/noindex-->)<img src="http://blogs.msdn.com/aggbug.aspx?PostID=10305442" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[конференции]]></category>
      <category><![CDATA[microsoft]]></category>
      <category><![CDATA[devcon]]></category>
      <guid>http://blogs.msdn.com/b/vyunev/archive/2012/05/15/23-24-devcon-12.aspx</guid>
      <pubDate>Tue, 15 May 2012 16:09:22 UT</pubDate>
      <dc:creator><![CDATA[Vladimir Yunev]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Запущена первая услуга национальной облачной платформы]]></title>
      <link>http://www.msdeveloper.ru/blogs/vyunev/1908/</link>
      <description><![CDATA[&#171;Ростелеком&#187;, Microsoft и &#171;1С&#187; представили первую услугу, доступную на национальной облачной платформе, – &#171; O 7.Бизнес&#187; Москва, 15 мая 2012 года. – В рамках презентации Национальной облачной платформы О7 на выставке &#171;Связь-Экспокомм-2012&#187; компании &#171;Ростелеком...(<!--noindex--><a href="http://blogs.msdn.com/b/vyunev/archive/2012/05/15/10305439.aspx" rel="nofollow">read more</a><!--/noindex-->)<img src="http://blogs.msdn.com/aggbug.aspx?PostID=10305439" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[microsoft]]></category>
      <category><![CDATA[ростелеком]]></category>
      <category><![CDATA[облачные технологии]]></category>
      <guid>http://blogs.msdn.com/b/vyunev/archive/2012/05/15/10305439.aspx</guid>
      <pubDate>Tue, 15 May 2012 16:03:39 UT</pubDate>
      <dc:creator><![CDATA[Vladimir Yunev]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[На пути к наилучшей систематике языков программирования (перевод)]]></title>
      <link>http://www.msdeveloper.ru/blogs/it-bel4onok/1907/</link>
      <description><![CDATA[
<p align="left">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Языки программирования приобретают новые функции с каждой новой версией, добавляя всё больше замешательства в понимание изменяющихся с течением времени конструкций языка. Часто разработчики языка заимствуют идеи из других парадигм, таким образом, языки редко остаются чисто процедурные, функциональные или объектно-ориентированные, и, как правило, это приводит к тому, что в итоге получаем язык со смешанными парадигмами.&#160; </p>
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Я думаю, что термин “Объектно-ориентированный” стал несколько обыденный в наши дни, и на самом деле я близок к мнению, что этот термин применяется к настолько разным языкам, что стал совершенно бессмысленным. Java и C# объектно-ориентированные языки и, хотя они довольно похожи, они сильно отличаются от Javascript, который тоже считается объектно-ориентированным языком. Можно сказать, что Javascript и Python похожи, они оба являются динамически-типизированными и оба они объектно-ориентированные, но объектно-ориентированный подход в каждом языке разный. Все языки упомянутые выше отличаются от оригинального объектного языка SmallTalk, про который существует известная цитата Alan Kay’s “На самом деле, когда я привел термин “объектно-ориентированный”, я не имел ввиду С++”. 
<br/>


 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Учитывая вышесказанное, я не думаю, что особенно полезно просто рассуждать о объектно-ориентированном программировании. Полезнее уделить внимание тому, что именно подчёркивает стиль программирования определённого языка, и что возможно даже более важно, определённый набор функций. 
<br/>


 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Когда речь идёт о стиле программирования люди склонны думать, что объектно-ориентированное программирование является противоположностью функционального программирования или, в какой-то степени, противопоставляется ему. Я не думаю что это так, объектно-ориентированное программирование, как правило, заботится о “программировании в целом”, как система, разбитая на модули, в то время как функциональное программирование – программирование с использованием выражений, которые выдают результат, а не отчётность о том, как код использовал место в памяти, это “программирование в малом”. Так что, на мой взгляд, разумнее говорить о том, функциональны ли языки, привязывают вас к программе с выражениями, или императивные рекомендуют вам программы с переменными, оба стиля объектно-ориентированные.&#160;Функциональный/императивный стили непосредственно связаны идеями открытости и закрытости процесса вычислений, которые лично я считаю важными понятиями. Открытость, означает возможность изменения значения указателя, и такой подход применяется преимущественно в функциональных языках, понятие закрытость означает обратное, и применяется преимущественно в императивных языках. С некоторыми исключениями, языки, как правило, не бывают чисто функциональными или императивными, но при проектировании, имеют чёткую тенденцию предпочтительного стиля. 
<br/>


 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Когда речь идёт об особенностях языков программирования они сводятся к очень длинному списку возможностей, каждая их которых имеет большое описание, как правило, спецификации языка содержат более 100 страниц. Однако, как правило, между ними много точек соприкосновения, материал, который включает в себя каждый язык, позволяет взглянуть по-другому на возможности другого языка. Чтобы попытаться проиллюстрировать эти слова, я использовал диаграммы Венна, которую я обычно использую в моём курсе: 
<br/>


 <img src="http://www.msdeveloper.ru/upload/blog/it-bel4onok/1aa/1aad5b969b622e0ed562906a6affe2ff.png" border="0"/> 
<br/>


 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Здесь мы можем увидеть, что F# поддерживает гораздо больше возможностей, чем его родственные языки C# и VB.NET, и этот фактор, показывает разнообразие его особенностей (хотя я думаю C# и VB.NET имеют ни чуть не меньше достойных возможностей, чем F#). Я не утверждаю, что в F# есть все возможности программирования, о которых вы могли только мечтать, есть некоторые возможности, такие как типы классов, которые представлены в Scala и Haskell, но в то же время отсутствуют в F#. Это приводит к дискуссиям, что лучше использовать “большой” или “маленький” язык. Сторонники небольших языков, как правило, указывают на простоту, которые они обеспечивают и тот факт, что он снижает время программиста на изучение всех возможностей. Хотя у меня есть некоторые симпатии к этому аргументу, я склонен думать, что продуктивнее использовать большой язык, такой как F#. Если у языка программирования много возможностей, то это даёт программисту более широкий набор инструментов и позволяет выбрать наилучший инструмент для каждой задачи. Например, в F# есть возможность использования асинхронности процессов, что позволяет программисту писать простой код для решения асинхронного ввода-вывода, если бы этой возможности не было, программисту нужно было бы писать более громоздкий код. Такие ситуации верны для многих языков программирования, когда использование их возможностей позволяют программистам писать короткий простой код, при их использовании. Я думаю именно поэтому слова Chris Smith’s о программировании на F# “простой код для решения сложных проблем” является слоганом. 
<br/>


 &#160; &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Подводя итог, в будущем используя определение “Объектно-ориентированный” попробуйте немного подумать и о том, что именно вы пытаетесь донести, возможно, есть более точный и соответствующий термин, который будет более корректным для данной ситуации. 
<br/>


 
<p>Оригинал: <!--noindex--><a href="http://strangelights.com/blog/archive/2011/08/26/towards-a-better-taxonomy-of-programming-languages.aspx" rel="nofollow">http://strangelights.com/blog/archive/2011/08/26/towards-a-better-taxonomy-of-programming-languages.aspx </a><!--/noindex--></p>
  ]]></description>
      <category><![CDATA[F#]]></category>
      <category><![CDATA[programming language]]></category>
      <guid isPermaLink="false">urn:bitrix:blog:post:1907</guid>
      <pubDate>Mon, 14 May 2012 21:16:59 UT</pubDate>
      <dc:creator><![CDATA[Мария  Хрузина]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Встреча WP7-разработчиков в Яндексе]]></title>
      <link>http://www.msdeveloper.ru/blogs/petrishko/1906/</link>
      <description><![CDATA[
<p>16 мая в <!--noindex--><a href="http://company.yandex.ru/contacts/redrose/" rel="nofollow">московском офисе</a><!--/noindex--> Яндекса пройдет встреча Russian Windows Phone User Group* в рамках Yandex Mobile Camp.</p>

<p><strong>Темы докладов:</strong></p>

<p><strong>Использование различных видов анимации в Windows Phone приложениях.</strong> Филипп Панфилов.</p>

<p>Рассказ пойдёт о различных видах анимации, как неотъемлемой части metro-интерфейса. Где и какие анимации использовать, какие возможности есть у некоторых существующих тулкитов.  </p>

<p><strong>Применение шаблона проектирования MVVM при разработке архитектуры WindowsPhone 7 приложений.</strong> Николай Румянцев.</p>

<p>Поговорим о применении шаблона проектирования MVVM в качестве основного архитектурного решения, упрощающего использование разделенного кода и дальнейшее расширение приложения.</p>

<p><strong>Разработка XNA приложений для Windows Phone.</strong> Ахмед Шериев.</p>

<p>Как создавать приложения Windows Phone на платформе XNA. И какие есть возможности фреймворка XNA.  Посмотрим и попробуем на практике.</p>

<p>
<br/>


Для участия в мероприятии необходимо написать письмо-заявку на <!--noindex--><a href="http://mailto:ya-events@yandex.ru/" rel="nofollow">ya-events@yandex.ru</a><!--/noindex-->&#160;(Тема: &quot;Встреча WP7 разработчиков в Яндексе&quot;
<br/>


В письме изъявить своё желание участвовать во встрече, сообщить фамилию и имя)&#160;. 
<br/>


<strong>Начало мероприятия в 19.00</strong>, а подтвердить регистрацию вы можете с 18.30 (лучше подойти к этому времени, чтобы успеть к началу).</p>

<p><strong>*Russian Windows Phone User Group</strong>  - это сообщество разработчиков, занимающихся созданием приложений на мобильной платформе Windows Phone и Metro-style приложений для Windows 8.</p>
]]></description>
      <category><![CDATA[widows phone]]></category>
      <category><![CDATA[MVVM]]></category>
      <category><![CDATA[XNA]]></category>
      <category><![CDATA[Silverlight]]></category>
      <category><![CDATA[Яндекс]]></category>
      <category><![CDATA[встреча]]></category>
      <guid isPermaLink="false">urn:bitrix:blog:post:1906</guid>
      <pubDate>Mon, 14 May 2012 07:40:09 UT</pubDate>
      <dc:creator><![CDATA[Сергей Урусов]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[ASP.NET MVC: История одного проекта "Еще немного классов" (часть 4)]]></title>
      <link>http://www.msdeveloper.ru/blogs/calabonga/1905/</link>
      <description><![CDATA[
<p>В этой части статей будет рассказано и показано как создавать репозитории, представления, контроллеры при помощи MvcScaffolding. Да и многого другого будет показано и рассказано. (И будут подключены, наконец-то, шаблоны...)</p>
 
<p>[<!--noindex--><a href="http://www.calabonga.net/blog/post/79" rel="nofollow">читать дальше</a><!--/noindex-->]</p>
 ]]></description>
      <category><![CDATA[asp.net]]></category>
      <category><![CDATA[mvc3]]></category>
      <category><![CDATA[scaffolding]]></category>
      <guid isPermaLink="false">urn:bitrix:blog:post:1905</guid>
      <pubDate>Sun, 13 May 2012 21:04:40 UT</pubDate>
      <dc:creator><![CDATA[Calabonga]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Slider на PanoramaItem]]></title>
      <link>http://www.msdeveloper.ru/blogs/rdaskal/1900/</link>
      <description><![CDATA[
<p><span>Споткнулся о проблему корректной работы </span><span>Slider</span><span> </span><span>control</span><span> </span><span>при размещении его на </span><span>Panorama</span><span> </span><span>page</span><span>.</span></p>
 
<p><span><strong>Спотыкашка:</strong></span><span><strong> 
<br/>


 </strong> Перемещение &#171;бегунка&#187; слайдера вызывает перелистывание экрана панорамы.</span></p>
 
<p><span><strong>Решение:</strong></span><span><strong> 
<br/>


 </strong> В первую очередь, следует отметить, что использование элементов управления, в частности, таких как </span><span>Slider</span><span> на </span><span>Panorama</span><span> </span><span>page</span><span>, не является хорошей практикой для приложений </span><span>Windows</span><span> </span><span>Phone</span><span>.</span></p>
 
<p><span>Если вы все же планируете использовать именно этот элемент управления, на выручку придет свойство <span><!--noindex--><a href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.ishittestvisible(v=vs.95).aspx" rel="nofollow">IsHitTestVisible</a><!--/noindex-->. </span></span></p>
 <span><span> 
<p>&#160;</p>
 
<p><span>Если свойство <span>IsHitTestVisible</span><span> установлено в </span></span><span>False</span><span>, </span><span>UIEliment</span><span>, для которого оно установлено, прекратит передавать события манипуляции. Тем не менее, дочерние элементы управления продолжат отрабатывать эти события.</span></p>
 
<p><span><font> </font></span></p>
 
<p><span><strong>Вот как это выглядит на практике:</strong></span></p>
 
<p><span><span>1.<span> </span></span></span><span>Создадим </span><span>Panorama</span><span> </span><span>Page</span><span> </span><span>и добавим на нее </span><span>Slider</span><span> </span><span>control</span><span>:</span></p>
 
<p><font><span><div class="blog-code-box"><pre class="xml">&lt;controls:Panorama Title=&quot;my application&quot;&gt;
 &lt;!--Panorama item one--&gt;
&lt;controls:PanoramaItem Header=&quot;item1&quot;&gt;
                &lt;Grid&gt;
                    &lt;Slider Height=&quot;84&quot; HorizontalAlignment=&quot;Left&quot; Name=&quot;slider1&quot; VerticalAlignment=&quot;Top&quot; Width=&quot;420&quot; /&gt;
                &lt;/Grid&gt;
            &lt;/controls:PanoramaItem&gt;
            &lt;!--Panorama item two--&gt;
            &lt;controls:PanoramaItem Header=&quot;item2&quot;&gt;
                &lt;Grid/&gt;
            &lt;/controls:PanoramaItem&gt;
        &lt;/controls:Panorama&gt;</pre></div> </span></font></p>
 
<p><span><span>2.<span> </span></span></span><span>Вторым шагом зарегистрируем события для слайдера и присвоим имя странице панорамы:</span></p>
 
<p><span><font><div class="blog-code-box"><pre class="xml">            &lt;controls:PanoramaItem Name=&quot;mySlidersPage&quot; Header=&quot;item1&quot;&gt;
                &lt;Grid&gt;
                    &lt;Slider Height=&quot;84&quot; HorizontalAlignment=&quot;Left&quot; Name=&quot;slider1&quot; VerticalAlignment=&quot;Top&quot; Width=&quot;420&quot; ManipulationStarted=&quot;slider1_ManipulationStarted&quot; ManipulationCompleted=&quot;slider1_ManipulationCompleted&quot; /&gt;
                &lt;/Grid&gt;
            &lt;/controls:PanoramaItem&gt;
            &lt;!--Panorama item two--&gt;
            &lt;controls:PanoramaItem Header=&quot;item2&quot;&gt;
                &lt;Grid/&gt;
            &lt;/controls:PanoramaItem&gt;
        &lt;/controls:Panorama&gt;
</pre></div></font></span><span><span>3.<span> </span></span></span><span>Третьим, последним шагом в зарегистрированных событиях слайдера будем менять значение озвученного выше свойства:</span></p>
 
<p><span><font><div class="blog-code-box"><pre class="csharp">private void slider1_ManipulationStarted(object sender, ManipulationStartedEventArgs e)

        {

            mySlidersPage.IsHitTestVisible = false; 

        }

private void slider1_ManipulationCompleted(object sender, ManipulationCompletedEventArgs e)

        {

            mySlidersPage.IsHitTestVisible = true; 

        }
</pre></div></font></span><span>P</span><span>.</span><span>S</span><span>. Мне самому пришлось использовать данный подход , когда на один экран перестали умещаться все настройки приложения. Безусловно, можно оспаривать данный подход, говоря, что нужно иначе проектировать интерфейс. Но в таком случае у пользователя перед глазами будет не вся картина, а бесконечное мелькание переключаемых страниц.</span></p>
  </span></span> ]]></description>
      <category><![CDATA[widows phone 7]]></category>
      <category><![CDATA[microsoft]]></category>
      <category><![CDATA[wp7]]></category>
      <guid isPermaLink="false">urn:bitrix:blog:post:1900</guid>
      <pubDate>Sat, 12 May 2012 13:19:10 UT</pubDate>
      <dc:creator><![CDATA[Roman Daskal]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[23-24 мая: прямая трансляция с конференции DevCon’12]]></title>
      <link>http://www.msdeveloper.ru/blogs/msdn/1899/</link>
      <description><![CDATA[<p>23 мая в 10:00 (по московскому времени) начнется бесплатная онлайн-трансляция конференции <!--noindex--><a href="http://www.msdevcon.ru/" rel="nofollow">DevCon’12</a><!--/noindex-->.</p>
<p><b>Прямая ссылка на сайт трансляции</b> <!--noindex--><a href="http://www.msdevcon.ru/online" rel="nofollow">www.msdevcon.ru/online</a><!--/noindex--></p>
<p><!--noindex--><a href="http://www.msdevcon.ru/Content/docs/OnlineDevCon12.ics" rel="nofollow">Добавьте событие себе в календарь!</a><!--/noindex--></p>
<p><b><span style="text-decoration: underline"><!--noindex--><a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-04-32/4201.DevConOnline.png" rel="nofollow"><img src="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-04-32/4201.DevConOnline.png" border="0"/></a><!--/noindex--></span></b></p>
<p>&#160;</p>
<p>Посетители сайта конференции смогут посмотреть прямую трансляцию пленарной сессии с участием <!--noindex--><a href="http://www.msdevcon.ru/speakers" rel="nofollow">Йонаса Персcона</a><!--/noindex-->, главного операционного директора департамента стратегических технологий корпорации Microsoft, и <!--noindex--><a href="http://www.msdevcon.ru/speakers" rel="nofollow">Скотта Хансельмана</a><!--/noindex-->, главного архитектора по проектам с сообществами корпорации Microsoft. По завершении пленарной сессии зрителям будет предложена трансляция всех 50 технических докладов.</p>
<p>&#160;<!--noindex--><a href="http://www.msdevcon.ru/topics" rel="nofollow">Основными темами</a><!--/noindex--> конференции&#160;станут:</p>
<ul>
<li>Клиентская разработка;</li>


<li>Мобильная разработка;</li>


<li>Веб-разработка;</li>


<li>Облачные вычисления;</li>


<li>Средства разработки и управление жизненным циклом програмного обеспечения;</li>


<li>Технологии разработки и языки программирования;</li>


<li>Корпоративная разработка;</li>


<li>Взаимодействие с другими платформами и технологиями.</li>


</ul>
<p>Хорошо известная многим конференция, традиция проводить которую была возобновлена в прошлом году, стала мероприятием, по-настоящему объединяющим разработчиков ПО, специалистов по тестированию, архитекторов,<br/>

руководителей групп разработки, а также экспертов ИТ-индустрии. Интерес к DevCon’12 настолько велик, что регистрация на участие уже была закрыта.</p>
<p>Конференция DevCon’11, прошедшая в мае 2011 г., за 2 дня своей работы собрала более 650<br/>

профессионалов в области разработки ПО, а количество онлайн-слушателей докладов<br/>

о настоящем и будущем разработки и платформы Microsoft составило<br/>

около 30 тысяч человек. С материалами конференции DevCon’11 можно ознакомиться по адресу: <!--noindex--><a href="http://www.msdevcon.ru/devcon11/" rel="nofollow">http://www.msdevcon.ru/devcon11/</a><!--/noindex--></p><img src="http://blogs.msdn.com/aggbug.aspx?PostID=10304508" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[msdevcon]]></category>
      <guid>http://blogs.msdn.com/b/rudevnews/archive/2012/05/12/23-24-devcon-12.aspx</guid>
      <pubDate>Sat, 12 May 2012 11:05:00 UT</pubDate>
      <dc:creator><![CDATA[MSDN Russia]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Не пропустите вебинар "Пошаговая настройка службы BCS в SharePoint Online"]]></title>
      <link>http://www.msdeveloper.ru/blogs/msdn/1898/</link>
      <description><![CDATA[<p>Не пропустите 17 мая в 17.00 вебинар&#160;&quot;Пошаговая настройка службы BCS в SharePoint Online&quot;. На вебинаре будет продемонстрирована пошаговая настройка службы Business Connectivity Services для взаимодействия (CRUD<br/>

операции) через портал с данными, хранящихся в SQL Azure: настройка SQL Azure, создание WCF сервиса, настройка SSL шифрования и User Name аутентификации для WCF сервиса, создание External Content Type в SharePoint Online через SharePoint Designer, настройка Secure Store Services (SSS) в SharePoint Online, касмтомизация представления данных на портале через форму InfoPath.</p>
<p>Краткое изложение всех шагов описано в статье <!--noindex--><a href="http://blogs.msdn.com/b/natale/archive/2012/03/21/sharepoint-online-bcs-windows-azure.aspx" rel="nofollow">SharePoint Online, BCS и Windows Azure: реализация безопасного канала взаимодействия с внешней системой</a><!--/noindex-->.</p>
<p>Автор вебинара – Наталья Ефимцева, эксперт Microsoft по разработке ПО.</p>
<p><!--noindex--><a href="https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032512787&amp;Culture=ru-RU" rel="nofollow">Регистрация на вебинар</a><!--/noindex--></p><img src="http://blogs.msdn.com/aggbug.aspx?PostID=10304498" width="1px" height="1px" border="0"/>]]></description>
      <category><![CDATA[Windows Azure]]></category>
      <guid>http://blogs.msdn.com/b/rudevnews/archive/2012/05/12/quot-bcs-sharepoint-online-quot.aspx</guid>
      <pubDate>Sat, 12 May 2012 10:13:27 UT</pubDate>
      <dc:creator><![CDATA[MSDN Russia]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Срок поддержки SharePoint Server 2010 (до SP1)]]></title>
      <link>http://www.msdeveloper.ru/blogs/dplotnikov/1897/</link>
      <description><![CDATA[
<p>Недавно компания Microsoft объявила о прекращении поддержки SharePoint Server 2010 (до Service Pack 1) с <!--noindex--><a href="http://support.microsoft.com/lifecycle/search/default.aspx?sort=PN&amp;alpha=SharePoint+Server+2010&amp;Filter=FilterNO" rel="nofollow">10 июля 2012 года</a><!--/noindex-->. </p>

<p>После этой даты официально поддерживаемой версией будет считаться как минимум SharePoint Server 2010 с Service Pack 1 и обновленным июньским накопительным пакетом обновлений. </p>

<h4>Ссылки</h4>
 
<p><!--noindex--><a href="http://support.microsoft.com/kb/2460045" rel="nofollow">SharePoint Server 2010 Service Pack 1</a><!--/noindex--> </p>

<p><!--noindex--><a href="http://support.microsoft.com/KB/2536599" rel="nofollow">Обновленный июньский накопительный пакет обновлений</a><!--/noindex--> </p>

<p><!--noindex--><a href="http://dplotnikov.wordpress.com/2012/05/02/апрельский-накопительный-пакет-обно/" rel="nofollow">Апрельский накопительный пакет обновлений для SharePoint 2007/2010</a><!--/noindex--></p>
]]></description>
      <category><![CDATA[sharepoint 2010]]></category>
      <category><![CDATA[kb]]></category>
      <guid>http://www.gotdotnet.ru/blogs/dplotnikov/12142/</guid>
      <pubDate>Sat, 12 May 2012 07:11:05 UT</pubDate>
      <dc:creator><![CDATA[dplotnikov]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Майская встреча IzhDevCom]]></title>
      <link>http://www.msdeveloper.ru/blogs/IzhDevCom/1896/</link>
      <description><![CDATA[<p><strong>Доклады</strong></p>
<p><strong>1. Управление временем с помощью Outlook 2010.&#160;</strong> | <strong>Докладчик – <!--noindex--><a href="http://glebarhangelsky.livejournal.com/" rel="nofollow">Глеб Архангельский</a><!--/noindex-->, гуру&#160;тайм-менеджмента | Уровень: 300</strong></p>
<p>Доклад будет проходить в формате видеоконференции.</p>
<p><strong>2. Haskell. Перезагрузка | <strong>Докладчик</strong> – Александр Ширяев (KMS Software) | Уровень: 200</strong></p>
<p>Хотите узнать, почему гики так любят Хаскелл? Хотите погрузиться в красоту функционального программирования? Тогда этот доклад для вас. Будет много кода. Но знать Хаскелл или другие функциональные языки не обязательно.</p>
<p><strong>Когда?</strong></p>
<p>17го мая. Начинаем в 18:00. Продолжительность — 3 часа.</p>
<p>Просьба не опаздывать</p>
<p><strong>Где?</strong></p>
<p>Все там же -&#160;1й корпус УдГУ, ауд. 003 (конференц-зал) Если вы не студент УдГУ, возьмите с собой паспорт.</p>
<p><strong>Вход</strong></p>
<p>Участие бесплатное, по предварительной регистрации (количество мест ограничено)</p>
<p>&#160;</p>
<div><img src="http://izhdevcom.timepad.ru/stat/image/event_reg_widget_show/25686" border="0"/></div>
<p><!--noindex--><a href="http://izhdevcom.timepad.ru/event/25686" rel="nofollow">Ссылка на регистрацию</a><!--/noindex--></p>
]]></description>
      <category><![CDATA[Встречи]]></category>
      <guid>http://izhdev.com/2012/05/%d0%bc%d0%b0%d0%b9%d1%81%d0%ba%d0%b0%d1%8f-%d0%b2%d1%81%d1%82%d1%80%d0%b5%d1%87%d0%b0-izhdevcom/</guid>
      <pubDate>Fri, 11 May 2012 08:15:16 UT</pubDate>
      <dc:creator><![CDATA[IzhDevCom]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[ElektroShowcase]]></title>
      <link>http://www.msdeveloper.ru/blogs/hubdesign/1894/</link>
      <description><![CDATA[
<div><img src="http://morochkovsky.ru/hubs/es_pr/cower.jpg" border="0"/> 
<br/>


 </div>
 
<div> 
<br/>


 </div>
 
<div>Мы c Павлом Кульбидой сделали небольшое, интересное приложение ElektroShowcase. Его смысл в выводе текста на экран. Такая функция может найти различное применение. Самое первое что приходит в голову — это реклама телефонов на витринах магазинов. Приложение позволяет вводить 63 символа и выбирать цвет фона и цвет текста из предложенной палитры. 
<br/>


 </div>
 ]]></description>
      <category><![CDATA[wp7]]></category>
      <category><![CDATA[window phone 7]]></category>
      <category><![CDATA[hub design]]></category>
      <category><![CDATA[бесплатный дизайн приложений]]></category>
      <category><![CDATA[ElektroShowcase]]></category>
      <guid isPermaLink="false">urn:bitrix:blog:post:1894</guid>
      <pubDate>Fri, 11 May 2012 07:53:23 UT</pubDate>
      <dc:creator><![CDATA[Владимир Морочковский]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Описание уровней докладов]]></title>
      <link>http://www.msdeveloper.ru/blogs/IzhDevCom/1895/</link>
      <description><![CDATA[<p>Мы посчитали необходимым ввести уровни докладов. Нужно это как минимум для того, чтобы участники встречи понимали, чего нужно ожидать от доклада.</p>
<h4>Уровень 100 (начальный)</h4>
<ul>
<li>Отсутствует на встречах <!--noindex--><a href="http://izhdev.com/" rel="nofollow">Izhevsk Developer Community</a><!--/noindex--></li>


</ul>
<h4>Уровень 200 (средний)</h4>
<ul>
<li>Погружение в архитектуру, интеграцию и конфигурацию</li>


<li>Примеры кода</li>


<li>Best Practices</li>


<li>Известные ограничения и проблемы</li>


<li>Ссылки на дополнительную информацию</li>


</ul>
<h4>Уровень 300 (продвинутый)</h4>
<ul>
<li>Примеры из реального мира</li>


<li>Сложные примеры кода</li>


<li>Акцент на полученном опыте</li>


<li>Архитектурные Best Practices</li>


<li>Ссылки на дополнительную информацию</li>


</ul>
<h4>Уровень 400 (эксперт)</h4>
<ul>
<li>Продвинутый анализ кода</li>


<li>Продвинутый анализ архитектуры</li>


<li>Провинутый поиск ошибок</li>


<li>Ссылки на дополнительную информацию</li>


</ul>
]]></description>
      <category><![CDATA[Tips & Tricks]]></category>
      <guid>http://izhdev.com/2012/05/%d0%be%d0%bf%d0%b8%d1%81%d0%b0%d0%bd%d0%b8%d0%b5-%d1%83%d1%80%d0%be%d0%b2%d0%bd%d0%b5%d0%b9-%d0%b4%d0%be%d0%ba%d0%bb%d0%b0%d0%b4%d0%be%d0%b2/</guid>
      <pubDate>Fri, 11 May 2012 07:49:22 UT</pubDate>
      <dc:creator><![CDATA[IzhDevCom]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Что нового в Visual Studio 11 Beta для SharePoint 2010. Шаблоны проектов]]></title>
      <link>http://www.msdeveloper.ru/blogs/dplotnikov/1893/</link>
      <description><![CDATA[
<p>Это продолжение цикла статей, посвященного возможностям Visual Studio 11 Beta для разработчиков на платформе SharePoint 2010. Первые главы вы можете найти по следующим ссылкам:</p>
 
<ul> 
<li><!--noindex--><a href="https://dplotnikov.wordpress.com/2012/04/17/что-нового-в-visual-studio-11-beta-для-sharepoint-2010-списки/" rel="nofollow">Что нового в Visual Studio 11 Beta для SharePoint 2010. Списки</a><!--/noindex--></li>




 
<li><!--noindex--><a href="https://dplotnikov.wordpress.com/2012/05/02/что-нового-в-visual-studio-11-beta-для-sharepoint-2010-веб-часть-silverlight/" rel="nofollow">Что нового в Visual Studio 11 Beta для SharePoint 2010. Веб-часть Silverlight</a><!--/noindex--></li>




 
<li><!--noindex--><a href="http://dplotnikov.wordpress.com/2012/05/10/что-нового-в-visual-studio-11-beta-для-sharepoint-2010-изолированные/" rel="nofollow">Что нового в Visual Studio 11 Beta для SharePoint 2010. Решения в песочнице</a><!--/noindex--></li>




 
<li><!--noindex--><a href="http://dplotnikov.wordpress.com/2012/05/11/что-нового-в-visual-studio-11-beta-для-sharepoint-2010-шаблоны-проект/" rel="nofollow">Что нового в Visual Studio 11 Beta для SharePoint 2010. Шаблоны проектов</a><!--/noindex--> (эта статья)</li>




 </ul>
 
<p>В прошлой статье мы рассматривали улучшения при работе с изолированными решениями.</p>
 
<p>В этой статье рассмотрим изменения в шаблонах проектов.</p>
 
<p><!--noindex--><a href="http://dplotnikov.wordpress.com/2012/05/11/что-нового-в-visual-studio-11-beta-для-sharepoint-2010-шаблоны-проект/" rel="nofollow"><font color="#007BC2">Читать дальше...</font></a><!--/noindex--></p>
 ]]></description>
      <category><![CDATA[SharePoint 2010]]></category>
      <category><![CDATA[Visual Studio]]></category>
      <category><![CDATA[веб-части]]></category>
      <category><![CDATA[silverlight web part]]></category>
      <category><![CDATA[visual web part]]></category>
      <category><![CDATA[workflow]]></category>
      <guid>http://www.gotdotnet.ru/blogs/dplotnikov/12138/</guid>
      <pubDate>Fri, 11 May 2012 07:11:01 UT</pubDate>
      <dc:creator><![CDATA[dplotnikov]]></dc:creator>
    </item>
    <item>
      <title><![CDATA[Улучшаем. Апрель]]></title>
      <link>http://www.msdeveloper.ru/blogs/infobox/1892/</link>
      <description><![CDATA[<p>Весна благополучно до нас наконец-то добралась, пора доставать шлепки и гладить шорты. Но для начала стоит вспомнить, что же хорошего у нас произошло в апреле.</p>
<p>В апреле мы решили проблему, которая возникала с кириллическими доменами на <!--noindex--><a href="http://infobox.ru/hosting/winplans/" rel="nofollow">Windows-хостинге</a><!--/noindex-->.&#160; Теперь для добавления кириллического домена нам не нужен бубен, а вам специальная заявка. Как и все остальные сайты, их можно самостоятельно добавлять в панели управления.</p>
<p>В начале месяца, на серверах <!--noindex--><a href="http://infobox.ru/hosting/plans/" rel="nofollow">Linux-хостинга</a><!--/noindex-->, была замечена очень крупная атака вирусов на сайты наших пользователей. От подобных атак пострадали сайты на разных хостингах по всему миру. Но отметим, что данная проблема не вызвана уязвимостями в программном обеспечении и серверной инфраструктуре хостинг-провайдеров.</p>
<p>Подробности этого взлома мы описывали <!--noindex--><a href="http://feedproxy.google.com/~r/InfoboxBlog/~3/2012/04/10/pro-vzlom-klientskix-sajtov-na-virtualnom-xostinge/" rel="nofollow">в статье</a><!--/noindex--> . По ходу атаки мы смогли достаточно оперативно среагировать и заблокировать хосты с которых осуществлялся злонамеренный доступ на сайты наших клиентов. Из бекапа было восстановлено несколько десятков тысяч подвергшихся заражению файлов. В результате мы приняли меры по ужесточению политики доступа по ftp и постоянному мониторингу подобных подключений, чтобы в зародыше пресечь подобные атаки. Со своей стороны, я бы посоветовал регулярно проводить проверку компьютеров&#160; антивирусными программами. Так же необходимо периодически заменять пароли для всех внешних доступов. Нелишним будет и проверить, насколько актуальные версии ПО вы используете. Злоумышленники могут воспользоваться любой возможностью для получения несанкционированных доступов к вашим ресурсам.</p>
<p>В остальном месяц у нас прошел без особых потрясений. Были работы по плановому обновлению серверов. На некоторых обновили железо. Месяц выдался очень плодотворным – много дел было закончено, а еще больше начато и скоро будет доведено до логического завершения. Вот об этих делах мы и поговорим наших следующих выпусках. Удачи!</p>
<p>
<em>Алексей Тимофеев, ведущий инженер технического отдела</em></p>
]]></description>
      <category><![CDATA[Улучшаем]]></category>
      <guid>http://feedproxy.google.com/~r/InfoboxBlog/~3/S4bijbg-s-M/</guid>
      <pubDate>Fri, 11 May 2012 06:23:53 UT</pubDate>
      <dc:creator><![CDATA[Infobox]]></dc:creator>
    </item>
  </channel>
</rss>
