Pull to refresh
24
0
Антон Миронов @mviorno

Developer

Send message

Арифметическое кодирование

Reading time3 min
Views97K
Сейчас существует множество алгоритмов сжатия информации. Большинство из них широко известны, но есть и некоторые весьма эффективные, но, тем не менее, малоизвестные алгоритмы. Эта статья рассказывает о методе арифметического кодирования, который является лучшим из энтропийных, но тем не менее мало кто о нём знает.
Читать дальше →
Total votes 71: ↑62 and ↓9+53
Comments39

Переключаем WiFi в режим точки доступа в Windows

Reading time3 min
Views585K
Так уж получилось, что на работе для получения полноценного интернета без ограничений, мне приходиться использовать нетбук и 3g-модем. Недавно, купив iPod Touch, я очень захотел его подключить к интернету. Если смартфон еще мог вылезти в интернет самостоятельно, то вот с плеером несколько труднее.

Один из вариантов — это подключение с помощью кабеля синхронизации. Вариант не очень удобный, так как носить с собой постоянно кабель желания совершенно нет, да и iTunes ставить тоже не хочеться. Второй вариант, тот который и описывается в данной статье — это подключение через WiFi. На Хабрахабре уже упоминалась похожая задача и её решение, но для Linux. Наша задача настроить тоже самое под Windows.

Итак, что мы имеем


— Нетбук, ASUS 1215B
— Интернет через USB 3g-модем
— Плеер и смартфон с наличием WiFi

Задача


— Получить на всех устройствах интернет

Читать дальше →
Total votes 79: ↑69 and ↓10+59
Comments51

Барьеры памяти и неблокирующая синхронизация в .NET

Reading time7 min
Views58K

Введение


В этой статье я хочу рассказать об использовании некоторых конструкций, применяющихся для осуществления неблокирующей синхронизации. Речь пойдёт о ключевом слове volatile, функциях VolatileRead, VolatileWrite и MemoryBarrier. Мы рассмотрим, какие проблемы вынуждают нас воспользоваться этими языковыми конструкциями и варианты их решения. При обсуждении барьеров памяти вкратце рассмотрим модель памяти .NET.
Читать дальше →
Total votes 63: ↑62 and ↓1+61
Comments18

Дейв Мендлен перешёл из Microsoft в DevExpress

Reading time1 min
Views5.5K
Он будет работать у нас в качестве директора по маркетингу (Chief Marketing Officer).

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

Дэйв Мендлен известен тем, что был спичрайтером у Билла Гейтса и Стива Балмера, а после долгих лет работы с ними участвовал в разработке и продвижении многих продуктов Майкрософт, в том числе Windows XP, Windows Media Center, Web Services и Visual Basic .NET. В последнее же время он работал старшим директором Майкрософт по развитию Visual Studio и, в частности, руководил процессом выпуска Visual Studio 2010.

Если вы хотите узнать, что запомнилось ему за время работы в Майкрософт, что он собирается делать в DevExpress, а также интересные факты о том, какие на самом деле Билл Гейтс и Стив Балмер, то можете прочитать обо всём этом в его прощальном интервью для Майкрософт: blogs.msdn.com/b/msdnmagazine/archive/2011/09/07/10207386.aspx



Ну а мы можем лишь пожелать ему удачи и надеяться на то, что вместе нам удастся сделать наши продукты ещё лучше, а значит более любимыми вами.

P.S. Поздравляем всех разработчиков с Днём Программиста!
Total votes 37: ↑26 and ↓11+15
Comments12

Бесплатные книги

Reading time3 min
Views60K
Несколько книг по разным темам, которые находятся в открытом доступе.

Основы программирования
Читать дальше →
Total votes 243: ↑239 and ↓4+235
Comments32

DXperience v2011 vol 1 — Новая версия .NET компонентов от DevExpress

Reading time8 min
Views15K
DXperience 2011.1 Компания Developer Express недавно объявила о выходе очередной мажорной версии своего набора контролов для .NET разработчиков — DXperience v2011 vol 1. По традиции, эта версия выходит спустя полгода от предыдущего релиза и является первым большим апдейтом в 2011-м году. Так же традиционно, она содержит множество различных улучшений как для разработчиков Windows Forms и ASP.NET, так и для тех, кто создаёт свои продукты на базе платформ WPF и Silverlight.

К тому же, у нас есть ещё один сюрприз — на этот раз для тех, кто знакомится с технологией LightSwitch и хочет делать полноценные бизнес-приложения с её помощью.

Если вы ещё не успели прочитать официальный What's New-пресс релиз на английском языке, то я приготовил для вас краткий обзор того, на что стоит обратить внимание в новой версии DXperience.
Читать дальше →
Total votes 32: ↑32 and ↓0+32
Comments54

Хороший пользовательский интерфейс, ясность и выразительность

Reading time4 min
Views18K
Очередной перевод статьи Марка Миллера:
Great User Interfaces, Clarity, and Emphasis


Предыдущие переводы:

В предыдущей статье мы сделали важный вывод для достижения ясности в пользовательском интерфейсе:

Визуальный вес должен соответствовать важности информации.

Суть этого вывода — не пренебрегайте важностью информации, выбирая методы её отображения. Обсуждая здесь способы контроля выразительности, следует помнить, что наша цель — получить лёгкий и элегантный интерфейс, выразить в нём то, что Эдвард Тафти называет «наименьшим эффективным отличием». (От переводчика: на русском можно почитать здесь и здесь).
Читать дальше →
Total votes 63: ↑54 and ↓9+45
Comments27

Новое расширение MVC для рисования графиков

Reading time2 min
Views11K
Мы рады сообщить, что в следующей версии DXperience — v2011 vol 1 — появится новое расширение для ASP.NET MVC, а именно MVC Chart Extension.

Это расширение позволяет добавить в MVC приложение десятки различных графиков — от прямоугольных и круговых, до радарных и финансовых.

Если вы заинтересовались, добро пожаловать под кат.

подробности...
Total votes 35: ↑28 and ↓7+21
Comments9

И снова о топологической сортировке…

Reading time9 min
Views11K

Приветствую всех читателей Хабра! Решив написать эту статью, я обнаружил на Хабре много материалов по графам и, в частности, по топологической сортировке. Например, здесь довольно подробно описана теоретическая часть и приведены примеры основных алгоритмов. Поэтому не буду повторяться, а расскажу о практической области применения Topological sorting, а точнее, хочу поделиться личным опытом применения этого метода при разработке продуктов DevExpress. Из статьи станут понятны мотивы и причины, побудившие к использованию этого алгоритма. В конце я приведу наш вариант реализации алгоритма для сортировки зависимых объектов.
Подробности
Total votes 40: ↑34 and ↓6+28
Comments7

Report-Driven Design

Reading time6 min
Views12K
В этой статье рассматривается альтернативный подход к созданию приложений и реализации структуры базы данных.

Основная идея этого подхода состоит в том, что процесс разработки приложения строится на анализе отчётов, которые должны будут генерироваться готовым бизнес-приложением.

Мы называем такой подход RDDReport-Driven Design.
Читать дальше →
Total votes 32: ↑30 and ↓2+28
Comments12

Установка DataContext вложенным невизуальным объектам в WPF/Silverlight

Reading time8 min
Views9.9K
image
При разработке DXScheduler for WPF мы получили от пользователя сценарий, в котором использовался MVVM шаблон.
Пользовательский объект назначался свойству DataContext нашего планировщика, а в XAML-разметке осуществлялась «привязка» к соответствующим свойствам объекта с использованием Binding-выражений.
Но возникла проблема — планировщик содержал некий невизуальный объект Storage, который хранил набор настроек для данных. В том виде, в котором были записаны Binding-выражения, свойства объекта-стораджа не обновлялись.

О том, как была решена эта проблема, вы узнаете ниже…
Читать дальше →
Total votes 35: ↑29 and ↓6+23
Comments1

Избавляемся от утечек памяти в WPF

Reading time5 min
Views16K
imageВ DevExpress мы тратим много сил на бизнес компоненты для WPF и Silverlight. У нас есть своя линейка контролов, в список которых недавно вошел DXPivotGrid – замена инструмента PivotTable из Excel. В процессе разработки новых компонентов, мы стараемся по-максимуму использовать существующий код. Например, базовые классы от версии PivotGrid для WinForms. Часто это рождает проблемы, с которыми ты не сталкивался, разрабатывая под .NET 2.0. Когда я писал PivotGrid для WPF, мне пришлось решить проблемы с утечками памяти из-за подписки (точнее, «неотписки») на события.
Читать дальше →
Total votes 55: ↑43 and ↓12+31
Comments35

Праздники в календарях или кто больше всех работает

Reading time6 min
Views19K

Грядут новогодние каникулы… и самое время поговорить о праздниках. При разработке приложения с поддержкой праздничных дат встает ряд вопросов: каким способом можно получить такие данные и откуда, как их использовать и обрабатывать?


В данной статье я хочу рассказать о ресурсах, связанных с праздниками, и поделиться личным опытом их применения в популярных сервисах и программах. Варианты работы с этими сервисами я буду рассматривать на примере нашего планировщика XtraScheduler. А в конце статьи приведу небольшую статистику по праздникам для различных стран мира.

Если заинтересовались - добро пожаловать под кат...
Total votes 40: ↑29 and ↓11+18
Comments24

Вышла новая версия набора компонентов для .NET — DXperience 10.2

Reading time5 min
Views17K
Компания DevExpress объявила о выходе новой версии своего продукта DXperience, который содержит компоненты для программистов, ведущих свою разработку на платформе .NET с помощью MS Visual Studio. Версия DXperience 10.2 содержит множество новых продуктов и улучшений для таких популярных направлений как Silverlight, WPF, ASP.NET MVC, а также традиционных ASP.NET и Windows Forms.

Если вы пишете код, используя одну из этих технологий, добро пожаловать под кат.
Читать дальше →
Total votes 43: ↑35 and ↓8+27
Comments12

Геолокация в Windows 7 без GPS

Reading time2 min
Views49K
Много ли вы видели ноутбуков, которые оснащены GPS датчиком? Примерные оценки можно посмотреть тут, 58 штук из 4380, то есть 1.3%. Прямо скажем — не много. Трудно назвать все причины, по которым производители не оснащают портативные компьютеры, в общем-то, недорогим чипом, но наша заметка как раз о том, как ваш ноутбук снабдить функциональностью геолокации, даже если GPS датчика у вас нет. А заодно вы узнаете, как очень просто получить ваши координаты программным способом.
Читать дальше →
Total votes 83: ↑76 and ↓7+69
Comments52

Собственные шаблоны тестов CodeRush. Тестируем порядок вызовов методов

Reading time4 min
Views8.1K
В своей работе нам приходится писать много тестов. Чтобы делать это быстро, мы используем шаблоны CodeRush. В этой статье мы расскажем вам, как создавать собственные шаблоны для тестирования. В качестве примера возьмём такую задачу: протестировать правильный порядок вызовов защищенных методов класса. Будем использовать только NUnit без применения библиотек типа NMock и им подобных.


Читать дальше →
Total votes 45: ↑37 and ↓8+29
Comments22

Поиск по регулярным выражениям

Reading time4 min
Views9.8K
Что является важным при разработке текстового редактора? Конечно же, «снабдить» его богатым функционалом и обеспечить стабильную работу. Однако многие скажут, что этого недостаточно, чтобы проект действительно был успешным. Нужно его сделать еще и «удобным» для конечного пользователя. А что является важным при разработке такого компонента как текстовый редактор? Да пожалуй, то же самое, вот только удобным он должен быть не только для конечного пользователя, но и для разработчика, который на его основе будет писать приложение.

На первый взгляд удовлетворить и тех, и других будет непросто – одним нужно понятное UI, снабженное набором полезных инструментов, другим – API, позволяющее выполнять широкий спектр задач. Однако зачастую эти задачи связаны друг с другом.

В ходе разработки и поддержки текстового редактора XtraRichEdit мы видели, что некоторые разработчики пишут на его основе редактор языков программирования. Основным требованием таких пользователей была возможность осуществить подсветку синтаксиса. Для этого необходима поддержка поиска по регулярным выражениям, чтобы обеспечить возможность выделения из текста синтаксических блоков и отдельных ключевых слов.


Читать дальше →
Total votes 44: ↑36 and ↓8+28
Comments35

Хороший пользовательский интерфейс, ясность и параллельное отображение информации

Reading time5 min
Views18K
Перевод статьи Марка Миллера: Great User Interfaces, Clarity, and Information in Parallel

Предыдущие переводы:

В последней статье мы говорили о том, как можно изменить дизайн для того, чтобы подчеркнуть важность информации. В этой статье мы обсудим другой, не менее важный способ достижения ясности — параллельное отображение информации.

Эта концепция была впервые изложена в удивительной книге Эдварда Тафти:



Title: Visual Explanations: Images and Quantities, Evidence and Narrative
ISBN: 0961392126
Несмотря на то, что и книга и её заголовок выглядят ужасно сухо, внутри содержатся подлинно гениальные идеи.
Читать дальше →
Total votes 70: ↑64 and ↓6+58
Comments24

Что скрывается за формой редактирования сложного объекта?

Reading time9 min
Views20K
В этой статье мы продолжаем знакомить вас с подходами, реализованными в планировщике XtraScheduler. В предыдущей статье мы рассказывали о синхронизаторе данных, на этот раз поговорим о формах.



Довольно часто в приложениях можно встретить формы, которые предназначены для ввода или редактирования объектов с большим количеством зависимых свойств. Построение таких форм ввода вызывает «головную боль» у разработчиков: рутинная работа по размещению редакторов, написание кода инициализации, валидации, обработчиков событий…

Так как же делать такие формы быстро и надежно?
Читать дальше →
Total votes 49: ↑35 and ↓14+21
Comments40

Готовим скриншоты для документации в GIMP (часть 2)

Reading time6 min
Views18K
В первой части статьи мы рассмотрели script-fu скрипты «Быстрая тень» и «Подрезать уголки» и пообещали показать, как красиво оформить скриншот фрагмента окна. Пришло время исполнить обещанное. Сегодня будем разбирать скрипт «Кадрирование с эффектом волны», который позволяет отсечь часть изображения по волнистым линиям, похожим на синусоиды.

Дополнительно мы рассмотрим, как можно собрать несколько скриптов в один для ускорения выполнения типовых действий над изображением.
Читать дальше →
Total votes 127: ↑118 and ↓9+109
Comments14

Information

Rating
Does not participate
Location
Тула, Тульская обл., Россия
Date of birth
Registered
Activity