Я хочу узнать COM. Как мне продолжить?

Я новый выпускник с бакалавром в области компьютерных наук. Как и в большинстве школ сегодня, они больше не учат студентов C или не продвигают С++ (только вводный курс на С++... с уроками до указателей). Стандартным языком программирования, предписанным в учебной программе, является С# (.NET stack).

Совсем недавно меня наняли в качестве младшего разработчика программного обеспечения. 95% нашей кодовой базы находится на С++, и наши продукты используют COM/DCOM. Остальные 5% - в .NET. Моя текущая ответственность заключается в том, чтобы поддерживать проект, написанный на .NET(ASP.NET), и мне не нужно изучать С++ и другие технологии YET. Но я хочу как можно скорее изучить COM, чтобы я мог помочь в других проектах.

Итак, я ищу совет этого сообщества о том, как я могу учиться в COM. Мои текущие вопросы:

  • Любое обязательное чтение? (Предпочитаемые темы)
  • Хороший сайт в изучении основ COM?
  • Тип простой программы, чтобы действительно оценить "цель" COM (возможно, программа чата?)

Спасибо!:)

PS: Должен ли я отмечать это как вики сообщества?

Ответ 1

Книга Don Box о COM является окончательной ссылкой. ссылка Amazon.

Остерегайтесь жесткого чтения, но оно охватывает все в глубину. И помните, как сказал Дон... COM ЛЮБОВЬ.

Я не верю, что вы можете найти много веб-сайта, COM был современной технологией много времени назад, но если вы можете забыть об этом, поверьте мне... это лучше!

Ответ 2

Чтобы узнать самые основные идеи COM, я никогда не сталкивался с чем-либо лучше, чем Inside COM Дейла Роджерсона. Это старая книга, но она очень четко объясняет, почему COM необходим и как он реализован, и вы можете взять копию второй руки на Amazon.

Что касается книг "Дон-бокс", я прочитал их все, и я думаю, что они довольно чертовски бедные. Box neverr объясняет мотивацию кода, который он описывает, и использует глубоко нереальные примеры. Но я понимаю, что это мнение меньшинства.

Ответ 3

У меня в моей библиотеке эти книги на COM, которые я бы рекомендовал:

  • 1995 - Kraig Brockschmidt - Inside OLE 2nd Edition.
  • 1998 - Don Box - Essential COM
  • 1999 - Джордж Шеферд - Внутри ATL
  • 2000 - Andrew Troelsen - Семинар разработчика для COM и ATL 3.0.
  • 2006 - Кристофер Таварес - Внутренние ATL: работа с ATL 8, 2-е издание.

и если вы скажете, что у вас есть какой-то фон .net,

  • 2003 - Julian Templeman - Программирование COM с помощью Microsoft.NET.

Надеюсь, что это поможет.

Ответ 4

Прочитайте книгу "Дон-бокс" за все, что вы когда-либо захотите узнать (и забыть) о COM.

Что касается COM: в то время как С++ дает вам (исходное) повторное использование кода, COM дает вам (скомпилированное) повторное использование компонентов.

Ответ 5

Некоторые классические книги, уже упомянутые здесь. Я также брошу "Разработка приложений на основе компонентов" Мэри Киртланд.

Он старый (как и большинство названных названий), и в основном предназначен для разработчиков предприятий. Он имеет хороший обзор COM, не слишком углубляясь в сорняки, рассказывает о разработке 3 уровня, обсуждает MTS (книга предшествует COM +) и ее использование. В нем также рассказывается о разработке данных и бизнес-компонентов, а также в разработке типового приложения.

Я не уверен, насколько хорошо он в возрасте, но я помню 10 лет назад, это было отличное введение в мир COM. Сила книги заключается в том, что она предполагает, что вы ничего не знаете об этой теме. Он прекрасно балансирует теорию с практическими реализациями в логической прогрессии. Я думаю, что там есть и ASP (классический)... так что для любви ко всему, что свято, пропустите эту часть.:)

Я помню, что у доктора GUI были отличные статьи COM (например, Dr. GUI Gentle Guide to COM), но он не смог их отслеживать.

Ответ 6

В msdn есть много контента в Интернете: -)

После прочтения следуйте этому руководству для разработки полного сквозного проекта образца COM.

http://www.codeguru.com/cpp/com-tech/activex/tutorials/article.php/c5567/Step-by-Step-COM-Tutorial.htm

Ответ 7

Я бы порекомендовал книгу ATL Internals, она может немного устареть, но она научит вас основным основам COM. Как прокомментировал этот плакат, Don Box также хорош.

Ответ 8

Это очевидно, но вы посетили сайт microsoft для COM? Так, как я начал, позже я просто искал информацию, когда я застрял в чем-то (что было много, COM-противник в некоторых точках). Я также много раз задавал свои коллеги, ничего лучше, чем личное объяснение некоторых вуду, которые вы можете увидеть в коде