English version

RSS

2008

#1

Автор: Купаев Михаил
Источник: RSDN Magazine #1-2008
Аннотация: Главным событием этой весны стал одновременный выход Windows Server 2008, SQL Server 2008 и Visual Studio 2008. 18 марта в Доме Музыки состоялось грандиозное мероприятие, размерами не уступающее Платформе, которая уже, с моей точки зрения, переросла любые разумные размеры. На этом довольно веселом (...

Ключевые слова:
Автор: Landgraph
Источник: RSDN Magazine #1-2008
Аннотация: Новой «фишкой» восьмой версии IE8 является интерфейс XDomainRequest (IHTMLXDomainRequest), с помощью которого, в отличие от XMLHttpRequest, можно делать запросы к различным доменам.

Ключевые слова: XDomainRequest,XMLHttpRequest
Автор: Igor Semenov
Источник: RSDN Magazine #1-2008
Аннотация: В этой статье приводится обзор инструментов, позволяющих избежать части проблем, связанных с использованием динамической памяти в C++. Описанные ниже инструменты и методики не являются панацеей от проблем управления памятью, они всего лишь способны облегчить жизнь программисту при условии правильного их использования. Эти инструменты носят общее название «умные указатели» («smart pointers»), что подразумевает их семантическое сходство с обыкновенными указателями C++.

Ключевые слова: smartptr
Автор: Андрей Никулин
Источник: RSDN Magazine #1-2008
Аннотация: В статье рассказывается о возможности использования элемента управления PropertyGrid для редактирования объектов с несуществующими свойствами.

Ключевые слова: PropertyGrid
Авторы: Поль М. Дюваль
Стивен М. Матиас III
Эндрю Гловер
Источник: Непрерывная интеграция: улучшение качества программного обеспечения и снижение риска
Материал предоставил: RSDN Magazine #1-2008
Аннотация: В этой главе мы обсудим преимущества использования сервера CI для интеграционного построения при внесении любого изменения. Не все построения одинаковы, и впоследствии мы рассмотрим их типы и организацию. Мы также рассмотрим аспекты выбора и использования отдельной машины для интеграционного построения и CI. Автоматизация CI - это не единственный реальный подход реализации интеграционного построения; мы также ознакомимся с методикой выполнения интеграции вручную, с использованием поочередного подхода. Поскольку быстрая обратная связь при построении очень важна, мы закончим главу этой темой.

Ключевые слова: CII
Автор: Владислав Чистяков aka VladD2
Источник: RSDN Magazine #1-2008
Аннотация: Статья демонстрирует разработку реального приложения на Nemerle на примере создания простого генератора отчетов. Кроме того, в статье показана работа с XML средствами LINQ to XML.

Ключевые слова: Nemerle
Автор: Юрий Королев
Источник: RSDN Magazine #1-2008
Аннотация: В этой статье предлагается реализация шаблона «Фабричный метод с параметрами (Parameterized Factory Method)» – частный случай реализации фабричного метода средствами языка С# 2.0. Реализация основана на дополнительном классе KeyedFactory, в который сведена вся логика выбора фабричного метода. KeyedFactory дополняется полезными методами, которые позволяют фабрике поддерживать большинство методов создания объектов в среде Microsoft .Net. Кроме того, в статье приводятся результаты тестирования скорости различных методов создания объектов.

Ключевые слова:
Автор: Александр Цимбал
Источник: RSDN Magazine #1-2008
Аннотация: Данная статья представляет собой обзор разработки плагинов Eclipse. Пользовательский интерфейс Eclipse остается за ее рамками – с его исчерпывающим описанием можно ознакомится в документации, входящей в дистрибутив продукта. Вместо этого читатели получат представление об устройстве платформы Eclipse.

Ключевые слова: eclipse
Авторы: Евгений Рыжков
Андрей Карпов
Источник: RSDN Magazine #1-2008
Аннотация: Статья знакомит разработчиков с библиотекой VivaCore, предпосылками ее создания, возможностями, структурой и областями применения. Данная статья была написана параллельно с разработкой библиотеки VivaCore, и поэтому отдельные детали ее конечной реализации могут отличаться от описанных здесь свойств. Но это не помешает разработчикам познакомиться с общими принципами работы библиотеки, механизмами анализа и обработки текстов программ на языке Си и Си++.

Ключевые слова: VivaCore
Автор: Илья Зарецкий
Источник: RSDN Magazine #1-2008
Аннотация: Материалы данной статьи приведены на CD ROM.

Ключевые слова:
Автор: Купаев Михаил
Источник: RSDN Magazine #1-2008
Аннотация: 18 марта 2008 г. в Московском международном Доме музыки состоялась масштабная конференция, посвященная выходу в России новой серии продуктов Microsoft Windows Server 2008, SQL Server 2008 и Visual Studio 2008. Мероприятие посетили около 3000 технических специалистов, заказчиков и партнеров, еще несколько тысяч человек подключились к online-трансляции.

Ключевые слова: 2008

#2

Автор: Купаев Михаил
Источник: RSDN Magazine #2-2008
Аннотация: Сегодня, очевидно по поводу близкой сдачи номера, в редакции решили устроить разбор залежей железа, накопившихся за долгие годы. Очевидно, другого времени никак не нашлось. А может, чтобы мне скучно не было. Раскопки принесли множество неожиданных находок. В частности, нашелся блок питания от одного...

Ключевые слова:
Авторы: Алексей Колосов
Евгений Рыжков
Андрей Карпов
Источник: RSDN Magazine #2-2008
Аннотация: С распространением многоядерных систем задача параллельного программирования становится все более и более актуальной. Данная область, однако, является новой даже для большинства опытных программистов. Существующие компиляторы и анализаторы кода позволяют находить некоторые ошибки, возникающие при разработке параллельного кода. Многие ошибки никак не диагностируются. В данной статье приводится описание ряда ошибок, приводящих к некорректному поведению параллельных программ, созданных на основе технологии OpenMP.

Ключевые слова: OpenMP
Автор: Евгений Ильин (aka Jenyay)
Источник: RSDN Magazine #2-2008
Материал предоставил: http://jenyay.net
Аннотация: В статье рассматриваются основные изменения, которые произошли в Python 2.6 и 3.0 по сравнению с Python 2.5.

Ключевые слова: Python
Автор: Алексей Серебряков
Источник: RSDN Magazine #2-2008
Аннотация: Ошибки, связанные с форматом строки, могут позволить злоумышленнику получить контроль над системой. Статья описывает примеры ошибочного использования printf()-подобных функций, а также возможные последствия таких ошибок.

Ключевые слова: printf
Автор: Алексей Немиро
Источник: RSDN Magazine #2-2008
Аннотация: В статье показывается, как написать программу, автоматически сканирующую заданные сайты на предмет наличия в них уязвимости типа SQL Injection. Примеры приведены на языках PHP и C#

Ключевые слова: SQL Injection
Автор: Чистяков Влад (VladD2)
Источник: RSDN Magazine #2-2008
Аннотация: Вот уже который раз встречаю преинтереснейшую картину. Эта картина настолько задевает меня, что я решил поделиться с вами своими впечатлениями. Картина эта выглядит так. Где-то в глубине народных масс появляется некая неординарная идея. Эта идея теми или иными путями доходит до ушей в Microsoft и представители Microsoft бодрым голосом заявляют, что мол, это идея бредовая/вредная/бесполезная, и вроде бы тихо про нее забывают. В лучшем случае просто не следует никакой реакции. Проходит время, и вдруг появляется массированный пиар этой самой идеи, исходящий из недр Microsoft. Далее начинается массированная поддержка этой идеи в блогах. Через некоторое время появляются слухи о планах по включению этой возможности в один из продуктов Microsoft, и где-то через 1-3 года продукт, реализующий эту возможность, появляется у нас на компьютерах.

Ключевые слова:
Автор: Ирина Цыбульникова
Источник: RSDN Magazine #2-2008
Аннотация: Правильный выбор генератора на этапе создания приложения определяет не только удобство приложения для конечного пользователя, но и удобство создания, подключения новых отчетов и оперативной модификации существующих. В данной статье на примерах показывается, как создавать отчеты для любых сред разработки, совместимых с технологией COM, с помощью универсального генератора отчетов FastReport Studio.

Ключевые слова: Fast Report
Автор: Ян Либерман
Источник: RSDN Magazine #2-2008
Аннотация: В Microsoft SQL Server 2008 появилось новая возможность – прозрачное шифрование БД (Transparent Data Encryption или TDE). Статья рассказывает о достоинствах и недостатках этой возможности, а также об особенностях ее использования.

Ключевые слова: SQL Server 2008
Автор: Николай Денищенко
Источник: RSDN Magazine #2-2008
Аннотация: В статье исследуется механизм работы WinAPI-функции UuidCreate, работающей в роли UUID-генератора в ОС Windows, а также вопрос применимости его в качестве генератора псевдослучайных чисел. Разбираются версии библиотеки rpcrt4.dll, входящие в ОС Windows XP, Vista и Windows Server 2008.

Ключевые слова: UuidCreate
Автор: Чистяков Влад (VladD2)
Источник: RSDN Magazine #2-2008
Аннотация: Цель данной статьи – объяснить читателю незнакомому с ФП, что такое функциональный подход, какие он дает преимущества, и как его можно использовать с помощью LINQ и C# 3.0. Кроме того, эта статья дает некоторое понимание того, как работает «LONQ to Object» и на каких принципах он основан.

Ключевые слова: LINQ, C#, C# 3.0, ФП, Функциональное программирование, Функциональная парадигма, Функциональный подход, ФВП, Функции высшего порядка, Fold, FoldLeft, FoldRight, Reduce, Aggregate, Map, Convert, ConvertAll, Select, Filter, Where, Rev, Reverse, OrderBy, OrderByDescending, ThenBy, ThenByDescending, Sort.
Автор: Илья Зарецкий
Источник: RSDN Magazine #2-2008
Аннотация: Очередной обзор полезного для программиста программного обеспечения - WinMerge, Subversion, TortoiseSVN, VisualSVN, Visual C++ 2008 Feature Pack, BVRDE, FreeImage, Qt/Windows, ProfUIS, Evaluation Engine, MailMergeLib, NArrange, TraceTool.

Ключевые слова: WinMerge, Subversion, TortoiseSVN, VisualSVN, Visual C++ 2008 Feature Pack, BVRDE, FreeImage, Qt/Windows, ProfUIS, Evaluation Engine, MailMergeLib, NArrange, TraceTool

#3

Автор: Чистяков Влад (VladD2)
Источник: RSDN Magazine #3-2008
Аннотация: Бизнес Microsoft всегда складывался из того, что пишется некий софт, доводится до коробочного состояния и продается большим тиражом. Даже когда Microsoft начал выпускать железо, концепция не изменилась – после десятка мышей и пары клавиатур была выпущена коробка XBox и продана опять же большим тираж...

Ключевые слова:
Автор: Евгений Кирпичев aka jkff
Источник: RSDN Magazine #3-2008
Аннотация: Официально язык Java поддерживает только объектно-ориентированную парадигму, которая не всегда позволяет сделать код компактным, легко читаемым и удобным в поддержке. Однако Java-гуру умудряются использовать имеющиеся в Java возможности для применения в Java-коде функционального стиля программирования, который в некоторых случаях позволяет радикально улучшить читаемость кода (делая его более декларативным), а также упростить его поддержку и развитие. Надеемся, что данная статья будет полезна многим Java-программистам разного уровня. Большая часть данной статьи не имеет отношения к собственно функциональному программированию (далее – ФП). В основном будут рассмотрены способы повышения читаемости некоторых часто встречающихся паттернов, особенно при использовании функционального стиля, и без которых об ФП не может быть и речи. О приемах собственно ФП будет сказано совсем немного, ближе к концу статьи.

Ключевые слова: Java
Автор: Сергей Тепляков
Источник: RSDN Magazine #3-2008
Аннотация: Основная задача приложений Windows Forms – манипулирование данными. В определенный момент времени приложение получает данные из некоторого источника, отображает их пользователю, пользователь изменяет данные, затем измененные данные помещаются в источник (в тот же самый или иной). В некоторых приложениях может не быть некоторых из вышеперечисленных этапов, но в целом эта картина характерна для большинства приложений. В приложении, работающем с данными, существует логическая взаимосвязь между уровнем данных и представлением, хотим мы этого или нет. Вопрос в том, сколько рутинной работы ложится на ваши плечи. Механизм привязки данных в Windows Forms в значительной степени упрощает создание приложений, работающих с данными. Понимание основных концепций, на которых строится привязка данных, может в значительной степени упростить построение таких приложений, а также помочь в решении различных проблем, которые неизменно преследуют каждого разработчика.

Ключевые слова: .Net, C#, Windows Forms, Data Binding
Автор: Сергей Тепляков
Источник: RSDN Magazine #3-2008
Аннотация: Появление .Net Framework значительно облегчило создание многих видов приложений. Благодаря богатой библиотеки отпала необходимость в создании большого количества велосипедов, которые, в противном случае, создавались каждым из нас. Но, не смотря на это, существует множество «неуправляемого» кода, написанного на «голом» С++, который ничего не знает об .Net Framework и знать не может. Многие из этих приложений переписываются с использованием «управляемого» кода, но этот процесс не быстрый и у многих разработчиков появляется необходимость смешивать «управляемый» и «неуправляемый» код. О том, как взаимодействовать с «неуправляемым» кодом из «управляемого» написано достаточно много, и это неудивительно, поскольку именно эта задача является наиболее распространенной в «смешанных» приложениях. Но бывает и обратная ситуация, у вас «неуправляемое» приложение (консольное приложение, служба или приложение, написанное с использование MFC), но появилась необходимость обратиться к некоторой управляемой библиотеке. Как быть? Переписывать заново нет ни времени, ни возможности, перекомпилировать с использованием ключа /clr, тоже не получается. В данной статье я опишу общие принципы решения задачи обращения из «неуправляемого» кода к «управляемому», а также реализую оболочку для работы с распространенной библиотекой log4net.

Ключевые слова: C++, .Net, native managed interop
Автор: Евгений Кирпичев aka jkff
Источник: RSDN Magazine #3-2008
Аннотация: Статья рассказывает о том, что такое монады Haskell, приводятся примеры, иллюстрирующие эту концепцию.

Ключевые слова: haskell,monads,хаскелл,монады
Авторы: Andrew Solodovnikov
Mike Kostuyhin
Источник: RSDN Magazine #3-2008
Аннотация: Мы не проводили социологических исследований, но и без них очевидно, что C++-программисты в большинстве случаев предпочтут написать все, начиная чуть ли не с ОС. Библиотеки, которые широко используются, можно пересчитать по пальцам одной руки. Поэтому неудивительно, что в интернете можно найти целую кучу реализаций RPC, похожих на Microsoft DCOM. Данная статья, на первый взгляд, выглядит еще одной реализацией библиотеки удаленного доступа к объектам, однако данная библиотека обладает рядом особенностей, делающих ее описание заслуживающим внимания. Ее отличают от других высокая производительность, возможность легкой смены транспортного уровня, реализация без использования внешних утилит и совместимость со старыми компиляторами, например, VC++ 6.

Ключевые слова:
Автор: Андрей Каща
Источник: RSDN Magazine #3-2008
Аннотация: У нас, в харьковском GlobalLogic’е, появилась традиция: проводим мы неформальные сходки, обсуждаем темы околоайтишные... На одной из таких сходок, посвященной Agile/не Agile процессам, встал вопрос Unit Test’ов. Оказывается, модульное тестирование выглядит очень просто в примерах из книг, но когда мы начинаем применять его на проектах, которые достались нам по наследству, на проектах с нетривиальной многоуровневой архитектурой, тут же сталкиваемся с проблемами. Посмотрели мы, на это дело, и решили создать статью, посвященную наиболее распространенным проблемам, с которыми сталкиваются наши разработчики.

Ключевые слова: Unit Testing
Автор: Сергей Холодилов
Источник: RSDN Magazine #3-2008
Аннотация: Библиотека ввода-вывода языка С++ — достаточно спорное явление. Но, так или иначе, она существует, иногда используется, и надо как-то с этим жить.

Ключевые слова: stream
Автор: Илья Зарецкий
Источник: RSDN Magazine #3-2008
Аннотация: http://www.gocosmos.org/

Ключевые слова:

#4

Автор: Михаил Купаев
Источник: RSDN Magazine #4-2008
Аннотация: Поскольку я, кроме всего прочего, являюсь модератором форума RSDN «Священные войны», хочется отреагировать на не то печальное, не то смешное явление.

Ключевые слова:
Автор: Лихачёв Владимир Николаевич
Источник: RSDN Magazine #4-2008
Аннотация: При разработке программ, работающих с БД, важным моментом является обработка ошибочных ситуаций и информативность сообщений, предназначенных для конечного пользователя. При сложной структуре БД формирование таких сообщений для каждой отдельной ситуации может требовать довольно значительных усилий. Обработка ошибок, основанная на анализе структуры БД, и с учётом различных специфических ситуации позволит уменьшить трудозатраты и повысить качество программного обеспечения.

Ключевые слова:
Автор: Сазонов Сергей Валерьевич
Источник: RSDN Magazine #4-2008
Аннотация: Расширение PCI ROM BIOS содержит программные компоненты, не входящие по разным причинам в системный BIOS. В статье рассмотрена методика разработки расширения PCI ROM BIOS, упрощающая процесс разработки и уменьшающая количество потенциальных ошибок. Предлагаемая методика актуальна как для PCI-устройств, так и для устройств PCI-Express, т.к. их программная модель конфигурации и расширения ROM BIOS совместима с программной моделью PCI-устройств.

Ключевые слова:
Автор: Павлов Эдуард aka Ed.ward
Источник: RSDN Magazine #4-2008
Аннотация: В этой статье создается новый шаблон асинхронного программирования, предлагаемый к использованию вместо рекомендуемого Microsoft шаблона асинхронного программирования основанного на событиях.

Ключевые слова: Asynchronous Programming Design Patterns, IAsyncResult, AsyncOperation, AsyncOperationManager, SynchronizationContext, Event-based Asynchronous Pattern, Multithreading
Авторы: Андрей Карпов
Евгений Романовский
Источник: RSDN Magazine #4-2008
Аннотация: Задача знакомства программистов с областью разработки параллельных приложений становится все актуальней. Данная статья является кратким введением в создание многопоточных приложений, основанных на технологии OpenMP. Описаны подходы к отладке и оптимизации параллельных приложений.

Ключевые слова:
Автор: Сергей Рогачев
Источник: RSDN Magazine #4-2008
Аннотация: Статья продолжает одноименный материал, опубликованный ранее, рассмотрением ошибок, допущенных в реализации обобщенного Model-View-Controller. Вместе с тем работа рассматривает общие проблемы и решения в области безопасного программирования, в частности: потоковую безопасность, ликвидацию утечки памяти, безопасность инициализации и защитное программирование на основе контрактных спецификаций – поэтому предполагается, что статья будет интересна всем, кто заинтересован в повышении качества своих приложений. В описании приводятся реализации шаблонов проектирования Observer, Command, Model-View-Presenter. Примеры построены на модульном тестировании и используют аспектно-ориентированное программирование. Предполагается наличие у читателя знания языка программирования Java 5 и модульного тестирования на основе платформы JUnit.

Ключевые слова: generic,mvc,java,junit,tdd,thread safety,memory leaks,weak reference,safe construction,concurrent,atomic,cas,observer,mvp,command,aop,aspectj,dbc,annotation,oval
Автор: Кудрявцев С.А.
Источник: RSDN Magazine #4-2008
Аннотация: В настоящей статье кратко описываются особенности тестирования программ на языке Python c использованием библиотечного модуля untittest, а также разработанный автором модуль funtest – процедурно-ориентированный интерфейс для модуля unittest.

Ключевые слова: