Автоматическое добавление сеттеров и геттеров

Очень часто программисту необходимо добавить в класс сеттеры и/или геттеры. Иногда их бывает много, поэтому добавлять их вручную крайне лень! Поэтому, мы будем делать это автоматически с помощью «шаблонной магии». При этом, следует учесть, что поля класса/структуры должны быть строго типизированы, иначе ничего не получится, ну да это и к лучшему. Читать далее →

Подробнее

Слово о iota и enumerate

Может быть Вы помните о том, с чего наш блог начинался… Вначале был уникальный язык программирования под названием Icon, которым мы увлекались некоторое время назад. Он пленил нас своей простотой и продуманностью, а также своей сверхвысокоуровневостью и необычной концепцией генераторов. Чуть позже мы познакомились с D, который пошел гораздо дальше, воплотив в жизнь концепцию диапазонов.

Именно о некоторых интересных алгоритмах над диапазонами (в основном, над числовыми) сегодня и поговорим.

Читать далее →

Подробнее

Автоматизация компиляции и запуска QtE5-приложений в Windows

Библиотека QtE5 очень удобная и нужная вещь, но иногда требуется добиться того, чтобы из некоторой среды разработки или какого-либо редактора можно было легко и быстро скомпилировать
QtE5-приложение. Дело обычно осложняется еще и тем, что после компиляции такого приложения, саму программу просто так не запустить требуется набор dll-файлов и картинок, которые распространяются вместе с QtE5. Естественно, сразу возникает вариант копирования всех нужных файлов QtE5 в какую-нибудь уединенную папку, однако, постоянное перемещение исполняемых файлов в нее может весьма быстро надоесть… Читать далее →

Подробнее

Добавление в класс универсального свойства

Язык D обладает богатыми возможностями кодогенерации, которые позволяют упростить процесс добавления своих свойств в структуру и класс. А что если потребуется в класс добавить свойство, которое будет выдавать значение того типа, который нужен в данный момент?

Читать далее →

Подробнее

Проверка любого типа на принадлежность к числовым

Иногда возникает необходимость проверить является ли некоторый тип числовым, при этом, если тип относится к числовым, то не важно целое ли это число или же с плавающей точкой. То есть решение должно быть универсальным. Читать далее →

Подробнее

Мониторинг температуры процессора на нескольких машинах одновременно. Часть 2

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

На данный момент у нас есть готовый работающий приёмник данных с клиентов. Осталось написать сам клиент. Сразу оговорюсь, что писать код будем для ОС семейства GNU/Linux, но с возможностью простого и быстрого масштабирования для остальных ОС. Благо, язык обладает для этого всеми средствами. Читать далее →

Подробнее

Удаление элемента из массива по его индексу

Удалить элемент из массива, зная его индекс очень просто, и при этом совершенно не обязательно для этих целей использовать диапазоны и алгоритмы из стандартной библиотеки! Читать далее →

Подробнее

Сторонние инструменты в Monodevelop с MonoD

Monodevelop в связке с MonoD, безусловно, крутая вещь, о которой мы неоднократно писали в нашем блоге, более того, я как-то обещал, что расскажу, как присоединить к Monodevelop ряд интересных утилит. Сейчас я выполняю свое обещание и покажу в скриншотах, как немного облегчить себе программирование на D.
Внимание: Данная инструкция тестировалась в среде, в которой уже установлены dscanner и upx!

Читать далее →

Подробнее