В каждом приложении есть иконки для кнопок, статусов, тулбаров, меню и многого другого. Конечно, в идеале, в команде должен быть выделенный человек, специализирующийся на иконках и знающий все ньюансы создания оных.
Но жизнь далека от идеала, и таких людей в командах обычно нет (честно говоря хороших «иконщиков» в принципе найти очень сложно).
Поэтому хотелось бы поделиться с общественностью опытом работы с иконками в WPF приложениях и, может быть, почерпнуть для себя что-нибуть новое из комментариев.
Многим, наверно, знакома задачка, которую часто решают на скорую руку: добавить в строку фрагмент, если выполнено очередное условие.
Типичный кусок кода (немного надуманный пример, но все же):
void SomeFunc(string arg1, string arg2, string arg3)
{
string msg = "";
if (arg1 == null) msg += "ARG1 ";
if (arg2 == null) msg += "ARG2 ";
if (arg3 == null) msg += "ARG3 ";
if (msg != "") throw new ArgumentNullException(msg);
//...
}
На выходе, если все аргументы нулевые, получим строку
"ARG1 ARG2 ARG3 ".
А если мы захотим
"ARG1, ARG2, ARG3"? Или даже
"ARG1, ARG2 and ARG3"?
Даже когда я уже неплохо умел педалить, я никак не мог запомнить иерархию наследования и то, как использовать классы вроде Stream, StreamWriter, HttpWriter в .Net. Решил это простым способом — выписал их все (основные), написал пару слов о каждом.
Для тех, кому тема знакома совсем ничего ничего нового тут не будет.
Я занимаюсь разработкой бизнес-приложений. В качестве платформы для разработки я использую .NET Framework. Эта платформа имеет большой функционал, позволяющий ускорить разработку приложений. Однако в работе мне все время чего-то не хватает. Хочется автоматизировать многие рутинные операции, упростить работу с базой данных. Недолго думая я засучил рукава и начал писать программный код. В результате появилась новая программа, а теперь и эта статья.
В первой части статьи я попытаюсь описать идеальное (в моём представлении) средство для разработки бизнес-приложений. Мой идеал, к которому я стремлюсь в свободное от работы время. Вторая часть статьи будет посвящена тому, что мне удалось реализовать на сегодняшний день.
Речь пойдет об использовании в программном коде названий (классов, переменных, методов) на родном языке (в моем случае — на русском).
Опыт показал, что русские идентификаторы идеально подходят для создания объектной модели и для обсуждения ее с Заказчиком (для отечественных проектов).
Вышла версия 1.0 beta2 системы контроля версий БД
ECM7.Migrator (обзор проекта ECM7.Migrator можно почитать
здесь). В новой версии исправлены найденные ошибки и выполнен рефакторинг. Также было добавлено некоторое количествно новых возможностей. Наиболее важные из них перечислены ниже.
UPD. Как я вижу, этот пост получил отрицательную оценку. Пожалуйста, если ставите минус, пишите в комментариях, за что.
Иногда бывает полезно создать эффект для поля ввода, выводящий подсказку в тот момент, когда текст отсутствует.
Например, вот такой:

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

Это Maintenance release, который является бесплатным апдейтом на 4.x-тую версию.
Список изменений
Новые «Short ReSharper demos»
Сам релиз