Рубрика «Программирование» - 966

image

10-11 августа в Санкт-Петербурге пройдет 13-й фестиваль компьютерного искусства «Chaos Constructions». В режиме реального времени участники фестиваля будут сочинять музыку, рисовать, писать код и даже создавать динамическую подсветку (projection mapping). На большом экране будут демонстрироваться конкурсные работы, подготовленные заранее. А в перерывах на сцене будут выступать музыкальные группы и диджеи.

Читать полностью »

Почему не стоит разгонять таймер Windows или мегаватты, потраченные впустую
Период таймера Windows по умолчанию составляет 15.6 мс – он тикает 64 раза в секунду. Когда программа увеличивает частоту таймера, растет потребление энергии, что сказывается на расходе батареи. При этом также расходуется вычислительная мощность компьютера, и даже больше, чем я думал – то есть компьютер начинает работать медленнее! Вот почему в течение многих лет Microsoft настоятельно не рекомендует разработчикам поднимать частоту таймера.
Почему же тогда почти каждый раз, когда я вижу разгон таймера, он вызван программой от Microsoft?
Читать полностью »

Решил внедрить АОП логирование на проект и не внедрил. Как и почему, собственно и хочу поделиться.

Я не буду описывать суть и принципы АОП, а опишу только те проблемы, с которыми я столкнулся, и решения которых заняло много времени.
У меня было в распоряжении Spring, WebLogic, google.com и проект, куда я хотел внедрить АОП логирование. Скажу сразу, до этого я никогда не работал с АОП.

Проблема № 1

Spring AOP – использует proxy-based подход.

Если у нас есть класс (СlassA) с методами (methodA, methodB), при этом methodB() вызывает methodA() и аспект (допустим after) который должен выполняться при вызове methodA():

Читать полностью »

Прим: странно, что этой нетленки нет на хабре. Я решил исправить это недоразумение.
Оригинал — http://thecodist.com/article/all-i-need-to-know-to-be-a-better-programmer-i-learned-in-kindergarten

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

Вдохновением для списка ниже послужило эссе “Все что мне действительно нужно знать, я узнал в детском саду”, автор Robert Fulghum (http://www.robertfulghum.com/).

1. Делись со всеми

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

Читать полностью »

Предисловие

Это продолжение перевода серии статей о создании расширений для OpenFL от Laurent Bédubourg. В первой части мы создали простое расширение и скомпилировали его для нативных платформ (Linux/Windows, Android, iOS). Во этой части мы добавим в наше приложение на iOS возможность отправлять твиты.

Что мы узнаем:

  • как структурировать исходный код нашего расширения для различных платформ
  • как связать код на haxe и функции из нашего расширения
  • как линковаться с iOS фреймворками (с фреймворком Twitter, в частности)

Читать полностью »

Встречайте Intel Integrated Performance Primitives 8.0Многим разработчикам ПО хорошо известна библиотека Intel Integrated Performance Primitives (Intel IPP) — набор функций для оптимизированной обработки данных и мультимедиа. Активно используя особенности микроархитектуры процессоров, в частности, возможности векторизации, функции Intel IPP значительно увеличивают скорость работы приложения; кроме того, ускоряется и непосредственно разработка приложений, ведь под рукой у программиста есть готовые «кирпичики» и нет нужды изобретать велосипед. В Intel IPP реализованы сотни широко используемых функций для преобразований изображений, статистики, компьютерного зрения и еще десятка областей, все они оптимизированы, отлажены и не обременены роялти.
А теперь функционалость продукта еще более расширилась — вышла новая версия Intel IPP 8.0.
Читать полностью »

Предыдущая часть оставляла мрачные прогнозы, но все оказалось гораздо, гораздо, гораздо лучше.

Разбор бонус-левела

Итак, спсаибо хабражителю он обратил внимание на то, что у QDbusAbstractAdaptor должен быть родитель. Для меня это оказалось новостью, т.к. я сильно привык, что родителя может и не быть. Может это убережет еще кого-то от подобного ляпа.

Вдобавок мое незнание патернов, есть такой патен «Адаптер». Так вот QAbstractAdaptor собственно это он и есть. С учетом вышесказанного и замечания доки, что этот класс должен быть легковесным пример, действительно проясняющий подход либы должен быть таким:Читать полностью »

OpenMCAPI: одновременный запуск Linux и RTOS на многоядерных процессорах

В повседневной практике разработчика встраиваемых систем приходится сталкиваться с необходимостью запуска двух и более разноплановых операционных систем на n-ядерных системах на кристалле. Это, как правило, Linux и специализированная RTOS. На плечи Linux ложится работа с тяжеловесными стеками протоколов, а RTOS же занимается задачами реального времени.
 
Одна из основных задач, которая встает при такой организации системы —обеспечение механизма взаимодействия, то есть межъядерный обмен данными. Если вам интересно узнать один из вариантов решения на базе открытой библиотеки OpenMCAPI, пролистать пару десятков строк программного кода и увидеть реальные цифры пропускной способности при использовании этой библиотеки, добро пожаловать под кат.
Читать полностью »

image
Потребность в пространственном поиске возникает довольно часто. Равно как и в пространственном JOIN’е — нахождении пересечения двух наборов пространственных объектов. Далеко не всегда хочется привлекать тяжелую артиллерию. Что ж, попробуем придумать способ решить проблему “малой кровью, могучим ударом”.
Читать полностью »

Некоторое время назад я задумался о получении второго высшего образования, т.к. первое не техническое, и хочется иметь какое-никакое подтверждение своих знаний, да и для получения хорошей базы.

Мой выбор пал на несколько отечественных вузов с вечерними программами, и я уже было выбрал МГТУ имени Баумана своей второй альма-матер, как я наткнулся на сайт Harvard Extension School .

image

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js