Denis Gladkikh
Russian   |  English
Страница  ...  5  6  7  8  9  10  11  12  13  14  15  ...  

WPF 4.0. Что нового? Часть 4.

Четвертая часть из серии нововведений WPF 4.0 (Предыдущие записи: 1, 2, 3). Думал, что это будет заключительная, но все же откопал еще несколько вкусностей на следующую часть. В этой же серии в основном будет информация о нововведениях связанных с XAML разметкой и биндингом.



Минимум кода для отображения окна на WPF

Попался на глаза топик на Хабрахабр про сравнение языков C++/Java с какими-то недоязыками, вроде APL и J. Сравнение просто идиотское: на каких-то прикладных задачах, ради которых, видимо, и сделаны эти языки, показывают, что на них можно написать решение в одну строчку, в отличие от Java, где будет несколько экранов. И вроде как все должны сказать “Вау, круто!”, но народ не проведешь ;)

Решил я для примера написать код, точнее минимум кода на WPF, чтобы вывести окно с текстом “Hello world”, знаете что для этого нужно? Создаем новый проект WPF, выкидываем вообще все, кроме файла App.xaml, в котором пишем такие строки

<Application xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
    <Application.MainWindow>
        <Window Visibility="Visible">
            Hello world
        </Window>
    </Application.MainWindow>
</Application>

Все! Компилируем, запускаем и смотрим на окно. Кто сможет написать меньше кода? ;)

Progg it



Паттерны: MVC, MVP и MVVM

В данной статья я бы хотел рассказать, в чем различие данных паттернов. Начнем с первого главного – Model-View-Controller – это фундаментальный паттерн, который нашел применение во многих технологиях, дал развитие новым технологиям и каждый день облегчает жизнь программистам. Если вы начнете спрашивать архитекторов о том, как реализовать данный паттерн, то, я думаю, вы сможете услышать несколько разных ответов и соответственно несколько разных решений. Вообще, объединяет все эти паттерны – выделение User Interface (UI) от логики программирования, что позволяет дизайнерам делать свою работу, не задумываясь о коде программы. Если вспомнить школьное и студенческое программирование, то всплывает картина огромного количества строчек, написанных в code behind интерфейсов, что не является хорошей практикой. Так же есть предоставляется возможность выделения модели данных, что дает разработчикам возможность создания модульных тестов над ними.



Концепция Windows.NET

В свете бурно обсуждаемых интересных концепций новых платформ, вроде той же GoogleOS, пришла мне в голову, может, даже достаточно очевидная идея: Windows.NET. Приставка .NET подразумевает как направленность на использование в основе Microsoft .NET Framework, так и направленность на интернет.



WinMobile перестал уведомлять о событиях

На прошлой неделе мой аппарат HTC Touch 2 повел себя очень странно – перестал говорить мне о событиях из календаря (давать напоминания). После пары событий подумал: либо по привычке прочитал и забыл про них, либо просто глюк какой-то, и не обратил внимания. На выходных решил потестировать, подобавлять событий и посмотреть что будет, а собственно ничего и не было – ни одного напоминания. Найти обсуждение с похожей проблемой получилось быстро - Пропали напоминания календаря - решение проблемы. По ветке предлагается использовать какое-то ПО, одно платное, другое бесплатное, которые найдут проблемные события и т.п. Как я понял из обсуждения проблема оказалась в повторяющихся событиях: иногда они просто ломают всю систему и уведомления просто перестают приходить. Найти проблемное оказалось просто – вспомнил последнее что добавлял, а это были пары которые я веду в этом семестре, для которых я сразу же установил дату окончания серии. Удалил дату окончания серии и все заработало!

Правда так и не понял это проблема самого WinMobile или отдельно оболочки SPB Mobile Shell.



Windows Mobile 7- вы действительно ждете?

В интернете сейчас появилось куча ссылок о новом Windows Mobile 7, все охают и ахают, а мне, честно говоря, не понятно почему.

Может я еще не просветился, что использовать WinMobile – это очень круто и удобно. Когда полгода назад я выбирал себе телефон – я хотел именно WinMobile, да и сейчас, думаю, купил бы только с ним. Но разговор не об этом. Первое, чем мне не понравился новый телефон – это куча встроенных, мне не нужных, сервисов, вроде Facebook, Google Maps и т.п., кроме того что они есть, так еще и пестрят на переднем фоне в HTC TouchFlo. Итог простой, отказаться от TouchFlo и перейти к супер-настраиваемой SPB Mobile Shell. Так вот, что мы видим с новой WinMobile – это куча ненужных нам в России сервисов (кстати, уверен, что и не в России многие из них тоже не шибко нужны), опять все эти Facebook и XBox Live, причем встроенных настолько, что даже в списке контактов будешь знать, что кто-то там обновил свою страничку на фейсбуке…. Надеюсь это все можно будет выключить или как то настроить…

Так же рекомендую информацию по WinMobile 7, если интересно:




    Скачиваем бесплатный антивирус Microsoft Security Essentials

    logo_mseБезумно рад, что Microsoft выпустила бесплатный антивирус, который я могу поставить бабушкам, мамам и всем своим далеким от компьютерных технологий знакомым. Называется он Microsoft Security Essentials. Было как-то странно, что какое-то время после публикации антивируса его нельзя было скачать с российского региона, а после того как скачивание разрешили – через непродолжительное время доступ опять ограничили. Сейчас же как я понял возможность скачать антивирус опять есть, что безусловно радует. Могу сказать, что я пользуюсь этим антивирусом с запуска – доволен полностью, вроде не систему не нагружает, работает сам по себе, тихо и спокойно. Как обновляется и не слышно… В общем, такой и должен быть антивирус, надеюсь только его тишина не связана с тем что он не ловит вирусы, а с тем что их у меня нет. Хотя на втором компьютере все еще держу лицензионный Eset – на всякий случай. Вообще, с годами почему-то хочется меньше настраивать что-то в системе – теперь хочется просто поставить и забыть, главное чтобы работало :) В общем, рекомендую (качаем тут), в особенности, на установку знакомым, которые вас частенько просят о ИТ услугах (ну вы поняли?).



    Получить список избранных ссылок

    Следующий код выводит на экран список избранных ссылок в консоль. Код достаточно прост. Привожу здесь, чтобы иногда ссылаться с форумов, бывает всплывают подобные вопросы.

    const string urlConst = "URL=";
    // Путь до папки "избранное"
    string pathFavorites = Environment.GetFolderPath(Environment.SpecialFolder.Favorites);
    // Получаем список всех файлов, включая файлы в подпапках
    foreach (String favorite in Directory.GetFiles(pathFavorites, "*", SearchOption.AllDirectories)) 
    {
        using(StreamReader file = new StreamReader(favorite))
        {
            while (!file.EndOfStream)
            {
                string line = file.ReadLine();
               
                if (line.StartsWith(urlConst))
                {
                    string url = line.Substring(urlConst.Length);
                    string name = Path.GetFileNameWithoutExtension(favorite);
                    Console.WriteLine("NAME='{0}', URL = '{1}'", name, url);
                    break;
                }
            }
        }
    }
    Console.ReadKey();


    Пишем свою систему логирования при помощи WCF

    Предположим у нас есть задание: написать систему логирования, которая в реальном времени отсылает логи слушателям, причем информация может быть конфиденциальная и нужно избежать возможности кражи информации.



    Страница  ...  5  6  7  8  9  10  11  12  13  14  15  ...