Все большую популярность и актуальность приобретают технологии разработки приложений, которые на ...
Все большую популярность и актуальность приобретают технологии разработки приложений, которые на полную мощность используют вычислительные ресурсы графических ускорителей (GPU). Сегодня практически каждый компьютер и ноутбук комплектуется графическим адаптером с огромными вычислительными мощностями, которые потенциально могут быть использованы приложениями для значительного ускорения вычислений.
Одним из последних результатов исследований компании Microsoft в рамках вычислений в гетерогенной среде (связка CPU+GPU) стал анонс платформы С++ AMP, которая позволяет полностью утилизировать все возможности современных многоядерных процессоров и GPU. Анонс платформы был произведен на конференции AMD Fusion’11 летом этого года, подробности об этом вы можете прочитать в этой записи блога. На этом же мероприятии были анонсированы встроенные средства отладки и профилирования GPU кода в следующем поколении Visual Studio. Подробные доклады по новой платформе так же были прочитаны в рамках конференции BUILD, которая прошла совсем недавно.
Читать дальше →
...
Любому разработчику известен архитектурный шаблон слоев. При всей его незамысловатости он позволяет эффективно прятать реализацию и абстрагировать компоненты разного уровня. Слои нижнего уровня могут изменяться без особого риска испортить работу приложения, облегчен рефакторинг. Единственное очевидное условие, которое вы должны соблюдать – это придерживаться принятой архитектуры. Но иногда бывает, что программист нет-нет да и соблазняется вызвать пару методов «через голову». Например из слоя интерфейса обратиться прямиком в слой базы данных. Не будем здесь искать злого умысла, может этот случай был связан со спешкой при выпуске срочного исправления для заказчика. Но постепенно количество таких небольших «грешков» может свести на нет принятую когда то стройную архитектуру и вы опять окажетесь со «спагетти кодом». Вылавливать такие случаи несоответствия кода архитектуре слоев на большой системе может быть очень затруднительно. К счастью в Visual Studio 2010 (редакций Premium и Ultimate) есть инструменты, которые могут значительно облегчить эту задачу.
Читать дальше →