Я, как и многие программисты, довольно много слышал и читал о практиках TDD и BDD. О пользе хорошего покрытия кода юнит-тестами — и о вреде его отсутствия — я знаю по собственному опыту в коммерческих проектах, но применять TDD в чистом виде не получалось по разным причинам. Начав на днях писать свой игровой проект, я решил, что это хорошая возможность попробовать. Как оказалось, разницу по сравнению с обычным подходом можно почувствовать даже при реализации простейшего класса. Я распишу этот пример по шагам и в конце опишу результаты, которые для себя увидел. Думаю топик будет полезен тем, кто интересуется BDD. От более опытных коллег хотелось бы услышать комментарии и критику.
Читать полностью »
Архив за 17 сентября 2012 - 3
Простой, но показательный пример использования BDD
2012-09-17 в 15:43, admin, рубрики: bdd, tdd, Песочница, Программирование, метки: bdd, tdd, ПрограммированиеКак я изобретал велосипед, изучая технологии
2012-09-17 в 15:43, admin, рубрики: .net, autofac, dependency injection, moq, tdd, метки: .net, autofac, c++, dependency injection, moq, tdd Неоднократно слышал утверждение, что язык программирования изучать лучше всего в процессе создания чего-либо. Не мог с этим не согласиться, и решил, что это распространяется не только на язык, но и на всякие технологии сосуществующие с этим языком.
Протаптывать неизведанную дорожку самому непросто, гораздо легче изучить, как кто-то протаптывает эту дорожку перед тобой. К изучению документаций у меня не лежит душа, ей я пользуюсь как справочником, а изучать что то с нуля отнимает слишком много времени и сил, так как авторы оной обычно предполагают, что у читателя знания обширнее, практически все что нужно он уже знает. Велосипедные темы же освещают именно процесс обучения, хождение по граблям и все прочее. К сожалению, на интересные мне темы достаточно подробных статей не нашел, изучал урывками, и решил все-таки написать статью сам, в надежде упростить жизнь тем, кто может пойти следом.
Читать полностью »
Пример реализации Stencil буфера с помощью CUDA
2012-09-17 в 15:38, admin, рубрики: CUDA, stencil, Анимация и 3D графика, метки: CUDA, stencil
Stencil buffer используется для маскировки отражений в тех местах где их на самом деле нет. Техника Stencil используется в OpenGL и DirectX. Перед применением алгоритма производится Stencil тест и в тех местах где нет изображения пиксельный шейдер не будет рендерится. Таким образом мы пресекаем лишнюю работу.
Читать полностью »
Про ИТ-экосистему Омска, энтузиазм, сообщества и конференции
2012-09-17 в 15:36, admin, рубрики: веб-дизайн, Веб-разработка, конференции, обучение, разработка, управление, метки: конференции, обучение, разработка, управление По данным 2ГИС в Омске 134 веб-студии. Мы с nem, увидев эту цифру, поначалу обалдели. Ведь у всех на слуху есть 3-4 большие компании, несколько дизайн-студий и несколько мелких и средних аутсорсинговых контор. Все, на этом кругозор заканчивается.
Ан нет, 134!
Ну, естественно, начали разбираться, что же это за IT-компании такие. В итоге общая картина наложилась на пережитые или услышанные истории, и родилось что-то вроде классификации. Мы не претендуем на ее истинность в последней инстанции, но ситуацию она, кажется, вполне описывает.
Чтобы не перегружать вас словами, нарисуем картинку.
Судья ITC не нашел в продукции Apple нарушений патентов Samsung
2012-09-17 в 15:26, admin, рубрики: Новости, метки: новостиВ планшетах Apple iPad и смартфонах iPhone нет нарушения патентов, принадлежащих Samsung Electronics. Таково предварительное решение судьи Комиссии по международной торговле США (ITC), принятое по итогам рассмотрения жалобы южнокорейской компании. В жалобе, рассмотренной ITC, упомянуто четыре патента. Отметим, что решение судьи еще предстоит подтвердить или опровергнуть комиссии в полном составе. Комиссия имеет право заблокировать импорт в США товаров, в которых выявлено нарушение интеллектуальной собственности.
Когда компания PNY Technologies выпустила флэш-накопитель, совмещенный со свистком, некоторые читатели отметили, что более востребованной оказалась бы «флэшка» с открывалкой для пива. Каким-то образом эти мысли дошли до производителя, и сегодня каталог необычных USB-накопителейЧитать полностью »
Стипендия Erasmus Mundus для высшего образования в Европе
2012-09-17 в 14:28, admin, рубрики: бизнес-процессы, обучение за рубежом, Программирование, стипендия, Учебный процесс в IT, метки: бизнес-процессы, обучение за рубежом, СОА, стипендия Тема образования за границей на Хабре освещалась уже не раз, однако именно по этой стипендии упоминаний почти нет. Ее уникальная фишка состоит в том, что учеба не ограничивается одним университетом, а можно будет поучиться в 2 – 3 университетах в разных странах ЕС, получить полноценный диплом, и сумма стипендии покрывает все нужды. Кто заинтересован в учебе на магистра или PhD, найдет под катом мой личный опыт и рекомендации.
Читать полностью »
Как сделать простую игру для iPhone с помощью Cocos2D
2012-09-17 в 14:26, admin, рубрики: cocos2d, iOS разработка, игры для iphone, Песочница, разработка под iOS, метки: cocos2d, iOS разработка, игры для iphoneCocos2D – это мощная библиотека, которая позволяет значительно ускорить процесс разработки игр под iPhone. Она включает в себя поддержку спрайтов, классные графические эффекты, анимации, физические библиотеки, звуковые движки и многое другое.
Я только начинаю изучать Cocos2D, и хотя существует достаточно полезных учебников для начинающих, я не смог найти то, что подходило бы мне полностью – способ сделать очень простую, но достаточно функциональную игру с анимацией, стрельбой, аудио, и при этом обойтись использованием несложных вещей. В итоге я сделал такую игру самостоятельно и решил написать об этом серию туториалов, которая могла бы быть полезной для других новичков.
Эта серия туториалов покажет вам весь процесс создания простой игры для iPhone с помощью Cocos2D, от начала до конца. Можете читать учебники от корки до корки, а можете сразу обратиться к проекту – образцу игры в конце статьи. И вот что ещё. Будут ниндзя.
Читать полностью »
Apple кодирует видео с помощью JPEG, JSON и <canvas>
2012-09-17 в 14:25, admin, рубрики: apple, canvas, html5, iphone 5, Веб-разработка, велосипед, видео, Работа с видео, метки: Canvas, html5, iPhone 5, велосипед, видео
Фрагмент файла unlock_001.jpg
Компания Apple имеет огромный опыт в разработке веб-технологий, но сейчас попала в абсурдную ситуацию. Если зайти на страницу с описанием дизайнерских инноваций iPhone, то можно увидеть странное: видеоролик с анимацией разблокировки «айфона» закодирован с помощью нескольких JPEG-файлов необычного вида.
Читать полностью »
О том как я Java в дотнет портировал
2012-09-17 в 14:09, admin, рубрики: .net, java, Программирование
Давным давно… ну как давно? вчера! (С), то есть пару лет назад, портировал я одну скромную библиотечку с Java на .NET. И не просто на .NET, а на версию 1.1.
Подход известен — берем в зубы Sharpen (или конвертер из вижуалстудии 2003 года, кому что нравится), и далее — лобзиком.
Про очевидности с итераторами, структурами ("System.Drawing.Size это не объект") и потоками рассказывать не буду — банальщина. А вот про некоторые сюрпризы — добро пожаловать.