DevDoc home page DevDoc background gradient
 
   
Имя Пароль Запомнить Зарегистрироваться

Статьи

С++

Наименование/Обновления Автор Рейтинг
Отладка приложений. Часть 1.
2006-12-24 13:19:07
Методы уменьшения ошибок в приложении, написанном на C++. В этой части рассматриваются методы пассивной отладки приложения. Каждый, кто пишет на С++ должен в совершенстве владеть методами поиска и исправления ошибок, чтобы разрабатывать надежный код.
alexander 3.125
Отладка приложений. Часть 2.
2007-01-05 16:38:47
Методы уменьшения ошибок в приложении, написанном на C++. В этой части продолжают рассматриваются методы пассивной отладки приложения чтобы разрабатывать надежный код.
alexander 3.1429
Отладка приложений. Часть 3.
2007-01-19 20:25:46
В этой части рассматриваются типы отладчиков и их особенности.
alexander 3.1633
Отладка приложений. Часть 4.
2007-01-26 18:14:56
Особенности работы с точками останова. Отладчики предоставляют очень много возможностей для работы с точками останова, которые позволяют увеличить эффективность отладки. В статье дается обзор точек останова на инструкции и на данные, а также условных точек останова. Отладка программы станет гораздо проще, если вы знаете все о средствах отладки.
alexander 2.7143
Отладка приложений на C++. Часть 5
2007-02-09 22:23:22
Записывать и анализировать дампы памяти процесса (minidump) при возникновении сбоя проще, чем многие себе это представляют. При этом это очень мощный инструмент поиска ошибок, когда нет возможности запустить программу под отладчиком. Начинайте писать надежные приложения уже сегодня.
alexander 3.1591
Отладка приложений на C++. Часть 6 – Поиск ошибок
2007-02-16 21:58:17
Существует ли универсальная методика поиска ошибок? Узнать универсальный шаблон или инструкцию, следуя которой можно найти любую ошибку в программе – мечта каждого, кто хоть раз видел, как работают профи. Было ли у Вас, что вы потратили день на поиск бага, а потом ваш коллега нашел его с первого взгляда? Статья дает ключ к пониманию того, как можно осуществлять эффективный поиск и исправление ошибок
alexander 3.2
Виртуальные функции – низкоуровневый взгляд
2007-05-29 18:22:00
Описание виртуальных функций есть в каждом учебнике по C++. А что реально мы о них знаем? Между тем это один из трех «китов», на котором держится ООП. Сегодня сложно представить крупный проект, в котором бы не использовался полиморфизм. Такие технологии, как COM, полностью построены на этой концепции. В статье даются ответы на самые актуальные вопросы по данной тематике: начиная от основ и заканчивая описанием внутреннего устройства виртуальных функций.
alexander 4.6522
Инициализация с помощью шаблонов
2007-03-26 22:21:36
В практике программирования достаточно часто возникает задача, когда надо создать структуру и обнулить ее с помощью функции memset. Многие структуры Microsoft использует член структур cbSize в который надо записывать размер структуры. Другая типовая задача, когда класс имеет несколько конструкторов, в каждом из которых надо делать одинаковую инициализацию членов. Все эти задачи решаются с помощью нескольких строчек кода. Только вот писать одни и те же строчки не очень хорошо. В мире объектно-ориентированного программирования просто необходимо повторно использовать код. Это не только хороший стиль, но улучшение читаемости программ. В статье рассмотрен несколько необычный, но действенный способ инициализации.
alexander 3.3333
Порядок инициализации C++ объекта – это важно!
2007-03-26 22:24:48
Узнать порядок инициализации и конструирования объекта можно из любого хорошего учебника по C++. Тем не менее, существуют вещи, которые не описаны ни в одном пособии. Знаете ли Вы, как порядок создания объекта может повлиять на вашу программу? Какие ошибки могут при этом возникнуть? Невинные на первый взгляд действия могут привести к фатальным последствиям. Статья дает представление о важных аспектах конструирования и инициализации объекта. Рассчитано на широкий круг программистов.
alexander 3.463
Протоколирование работы приложения
2007-04-02 20:41:04
Протоколирование работы приложения это хороший инструмент поиска ошибок на стороне клиента. В статье рассмотрены идеи по реализации библиотеки логгирования сообщений от программы.
alexander 2.9231
Удаленная отладка приложений
2007-04-09 21:00:19
Удаленная отладка это еще один полезный инструмент, который должен быть в арсенале профессионального программиста на C++. Статья содержит материал по возможностям Visual Studio по отладке на удаленных компьютерах по сети.
alexander 3.2609
Введение в обработку структурированных исключений SEH
2007-04-16 23:02:40
Структурированная обработка исключений (SEH) помогает писать надежные программы. Этот механизм заложен в саму структуру Windows и теоретически может быть использован из любого языка программирования. В языке C++ есть встроенная поддержка SEH. Эта статья открывает цикл по обработке исключений. Она дает базовые представления о возможностях SEH.
alexander 3.1579
Структурная обработка исключений (SEH) в примерах. Часть 1
2007-04-23 23:44:44
Продолжение цикла статей о структурной обработке исключений (SEH). Исключения вносят некоторую путаницу в порядок выполнения программы. При работе с исключениями порядок выполнения кода может быть очень запутанным, но вполне предсказуемым. В статье на примерах показаны все хитросплетения работы системы SEH.
alexander 3
Структурная обработка исключений (SEH) в примерах. Часть 2
2007-05-24 19:21:03
Исключения вносят некоторую путаницу в порядок выполнения программы. При работе с исключениями порядок выполнения кода может быть очень запутанным, но вполне предсказуемым. Продолжаем на примерах рассматривать все хитросплетения работы системы SEH.
alexander 3.2778
SEH исключения VS С++ исключения
2007-05-30 19:06:56
Программистам на C++ доступны два типа исключений. Возникает вопрос: что лучше использовать: C++ исключения или SEH. Ответ можно найти в этой статье. Здесь рассматриваются низкоуровневые особенности реализации C++ исключений в MS VC. Также даны рекомендации по использовании SEH и C++ исключений в одной программе одновременно.
alexander 3.0488
Необычное применение SEH
2007-06-25 18:21:19
Это последняя статья цикла про SEH. В ней описывается весьма оригинальный способ применения этого механизма. Если вы интересуетесь разными трюками в программировании - эта статья для Вас. Читайте!
alexander 3.018
20 ловушек переноса Си++ - кода на 64-битную платформу
2007-07-10 10:29:17
Процессоры с разрядностью 64 бита уже перестали быть модной новинкой. Их все чащи и чаще можно встретить на компьютерах пользователей. Тем не менее, программного обеспечения, которое на полную катушку использует преимущества повышенной разрядности все еще мало. Вашему вниманию предлагается статья, посвященная переносу программного кода 32-биных приложений на 64-битные системы. Статья составлена для программистов, использующих Си++, но может быть полезна всем, кто сталкивается с переносом приложений на другие платформы.
alexander 3.2222
Виртуальное наследование
2007-09-03 18:28:04
Все знатоки С++ уже успели оценить этот материал по достоинству. Статья приоткрывает завесу того, как работает виртуальное наследование, какие процессы при этом происходят. На форумах не утихают споры о необходимости этих знаний, тем не менее профи не спешат ими делиться. Вы тоже хотите стать мастером программирования на Си++? Тогда читайте новый материал на http://www.devdoc.ru!
alexander 3.5758
Многопоточное программирование. Часть 1
2007-09-25 08:48:07
Это первая статья цикла о многопоточном программировании. В ней даются базовые сведения о потоках, замечания по быстродействию многопоточных приложений, а также обзор API функций для создания и разрушения потоков. Статья ориентирована на начинающих программистов.
alexander 3.5758
Многопоточное программирование. Часть 2
2007-11-26 18:25:49
Продолжение цикла статей о многопоточном программировании. Вы задумывались что представляет собой поток на низком уровне? Как потоки взаимодействуют с функциями стандартной библиотеки? Это те вещи, которые должен знать любой современный программист. Знание некоторых трюков позволяет получить огромную власть над всеми потоками в системе.
alexander 3.4444
Забытые проблемы разработки 64-битных программ
2007-12-24 18:52:53
История развития 64-битных программных систем не нова и составляет уже более десятилетия [1]. В 1991 году был выпушен первый 64-битный микропроцессор MIPS R4000 [2, 3]. С тех пор в форумах и статьях возникали дискуссии посвященные переносу программ на 64-битные системы. Началось обсуждения проблем связанных с разработкой 64-битных программ на языке Си.
Andrey_Karpov 3.3333
Многопоточное программирование. Часть 3. (Синхронизация потоков)
2008-06-23 10:04:55
В литературе и в Интернете часто пишут, что разработка многопоточных приложений намного сложнее, чем однопоточных. Основная сложность – это синхронизация выполнения потоков как на этапе разработки, так и на этапе сопровождения кода. В C++ самые сложные ошибки, как привило, связаны с некорректным использованием памяти и ошибками синхронизации потоков. В этой статье содержатся начальные сведения по синхронизации потоков.
alexander 3.8636
Многопоточное программирование. Часть 4. (DeadLock)
2008-12-26 17:15:33
Синхронизация потоков это сердце многопоточного программирования. От этого зависит быстродействие и надежность программ. Знание правил синхронизации сильно облегчает жизнь программисту. Но даже опытные разработчики могут допустить ошибку и внезапно обнаружить, что все потоки в системе "повисли". Как правило во всем виноват deadlock или по другому взаимная блокировка. Давайте посмотрим, что это такое!
alexander 3.6316

ATL/MFC

Наименование/Обновления Автор Рейтинг
Скрытые возможности CListCtrl. Виртуальный список
2007-02-03 12:22:48
Все, кто программирует на MFC или WinAPI, рано или поздно сталкиваются со списками в интерфейсе своего приложения. На первый взгляд этот простой элемент управления в Windows предоставляет потрясающие возможности для программиста. Зная все его особенности, можно создавать высокопроизводительные приложения. Как? Читайте статью!
alexander 3.1086
Взгляд на CListCtrl изнутри - меняем внешний вид
2007-02-23 18:09:35
А вы умеете использовать ВСЕ возможности CListCtrl? Если уверены, дальше можно не читать. В статье рассматривается по шагам, как система рисует содержимое списка. Ваша программа может значительно влиять на этот процесс и изменять внешний вид списка или его отдельных элементов. Статья содержит исходники программы, которая демонстрирует это на практике.
alexander 3.5714
Использование checkbox в списке ClistCtrl
2007-03-05 20:54:19
CListCtrl содержит множество опций, которые позволяют изменять внешний вид и поведение списка. В статье рассматриваются способы добавления checkbox’ов к каждому элементу списку. Комбинируя эти техники с другими возможностями списков – можно получать профессионально оформленные программы.
alexander 3.4444

Низкоуровневое программирование

Наименование/Обновления Автор Рейтинг
Невидимый софт
2007-02-02 17:06:08
В последнее время интерес к программам-невидимкам снова возрос. В первую очередь это связано с появлением у рядовых пользователей WinXP. Эта ОСь, как известно, обладает всеми защитными особенностями линейки NT. И поэтому левые процессы стало “немножко” сложнее прятать от пользователя. Но и появление новых методов сокрытия присутствия существенно прибавилось ;). В данной статья я расскажу о новом способе “невидимости” (причём этот способ хорошо работает как в 9x, так и в XP).
ZeroIce 2.9535
Note for BTA dll
2007-02-23 18:13:57
Пару дней назад ко мне в руки попал очередной "хакерский" диск с многообещающим названием "Всё что надо хакеру/крэкеру для взлома любой системы" (круто! :)). На диске содержится много "полезного" софта для истинного компьютерного хулигана.... И среди всего этого попались мне интересные проги, а именно OpenPass, Behind The Asterisks и MadExplorer. Первые две занимаются тем, что показывают пароли находящиеся за звёздочками. Но особенность их в том, что они не используют DLL....
ZeroIce 3.0238

Этюды

Наименование/Обновления Автор Рейтинг
Обмен значений
2007-03-26 22:28:50
Задача: Требуется написать код для обмена значений двух переменных без создания временной копии.
alexander 3.0238
Циклический сдвиг массива
2007-04-02 20:44:39
Пусть у нас есть массив размером N. Нам надо написать процедуру, которая бы выполняла циклический сдвиг вправо на K элементов. K может быть любым, в т.ч. больше N. При этом запрещено...>>>
alexander 3.16

Общие вопросы

Наименование/Обновления Автор Рейтинг
Почему разваливаются крупные проекты
2009-04-07 00:06:36
Команды которые понимают принципы работы над большими проектами через пару месяцев оставляют далеко позади своих конкурентов. Те кто не понимает и осознает - учатся. Те кто думает, что все знает, но мало что понимают в работе над крупными проектами, расстраиваются из-за очередной неудачи и списывают все на руководство и плохую методологию разработки. Рецепт удачи между тем достаточно прост.
alexander 3.8462

Разработка на QT

Наименование/Обновления Автор Рейтинг
Введение в QT
2010-04-17 02:45:06
Я начинаю публикацию цикла статей о библиотеке QT. На протяжении последующих выпусков я покажу, как пользоваться этим замечательным средством разработки и какие уникальный возможности оно предоставляет.
alexander 3.9091

Copyright (C) Kudinov Alexander, 2006-2010

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

Generation time: 0,0237700939178 seconds