суббота, 25 июня 2011 г.

Property C++: Upgrade

Как я и думал, публикация идей на хабре – хорошая штука. В комментариях к предыдущей статье я нашёл несколько очень важных замечаний.
Первое, самое очевидное – никак не проверяется вызов init в конструкторе. То есть если программист забыл проинициализировать свойства, то компилятор ничего не скажет, а падение в рантаме в коде класса Property – весьма непонятная для дебага ошибка.

Property C++

Наверное, все любители языка C++, которые использовали другие языки, такие как C#, удивляются: почему же в плюсах нет property. Ведь это действительно удобное средство, позволяющее полностью контролировать доступ к членам класса. В общем и я недавно заинтересовался данным вопросом. Подумав, полистав Страуструпа и наконец, погуглив, я пришёл к выводу, что property можно реализовать средствами языка. Думаю многие уже видели разнообразные реализации, например, от microsoft, но для кого-то, надеюсь, это будет интересным открытием.

Быстрая сортировка на AS 3.0

У большинства людей на слово «flash» появляется две главные ассоциации:
  1. Надоедливые баннеры, часто непристойного содержания.
  2. Меееедленно и тормозит.
И то и другое по большей части, правда, но только с поправкой «в большинстве своём». Действительно большая часть flash-контента это баннеры. Да они сильно тормозят, но виновата в этом не технология flash и не компания Adobe. Большинство тормозящих flash-приложений просто написаны так (криворукими) ленивыми программистами. Так уж повелось, что flash стал платформой для быстрой «красивой» интерактивной рекламы, но ведь это далеко не всё, на что он способен. Достаточно популярны flash-игры, которые часто содержат не только вычислительно сложную физику, но часто и не менее сложную игровую логику. Поэтому раз в сто лет появляется человек, которому нужно написать флешку, которая должна работать быстро. И вот тут и появляется проблема – flash действительно небыстрая платформа. Что делать если тормозит нормально написанный, с алгоритмической точки зрения код? Когда алгоритмы уже отточены, нужно оптимизировать код.

Предложу, наверное, самый извращённый выход из ситуации – шейдеры.

среда, 15 июня 2011 г.

Проверка связи

Если вы это читаете, то вы необычайно редкий человек - вероятность попасть сюда случайно равно нулю. Проверка связи. Ping.