Перехожу к программированию в винде...
От: Аноним  
Дата: 08.06.04 15:38
Оценка:
Надоело писать программы в консоли. Subj на VC++. С чего начать? Я так понял, минимум, который необходимо знать это — WinAPI (хотя бы на начальном уровне), MFC и IDE Visual Studio .NET 2003(так как последняя версия). Сама технология NET меня пока не интересует. Обязательны ли знанния OLE, COM, ActiveX, ATL для того чтобы писать обычные программы не заточеные под интернет (прошу прощения, если ламерский вопрос)?
Посоветуйте, плз, хорошую литературу.

08.06.04 23:03: Перенесено модератором из 'C/C++'. SchweinDeBurg (11) в Прочее Alex Reyst (5) в Прочее ioni (5) в Прочее — Павел Кузнецов
Re: Перехожу к программированию в винде...
От: LaptevVV Россия  
Дата: 08.06.04 15:42
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>Надоело писать программы в консоли. Subj на VC++. С чего начать? Я так понял, минимум, который необходимо знать это — WinAPI (хотя бы на начальном уровне), MFC и IDE Visual Studio .NET 2003(так как последняя версия). Сама технология NET меня пока не интересует. Обязательны ли знанния OLE, COM, ActiveX, ATL для того чтобы писать обычные программы не заточеные под интернет (прошу прощения, если ламерский вопрос)?

А>Посоветуйте, плз, хорошую литературу.
1. API.Можно начать с Чарльза Петцольда, потом перейти к Рихтеру.
2. VC. Тут библия — Круглински. Кстати, Питер их с Рихтером в серии Для профессионалов издал.
3. COM и ATL — наверно Трельсен. Хотя по COM очень хорош Бокс.
Это все авторы.
Хочешь быть счастливым — будь им!
Без булдырабыз!!!
Re: Перехожу к программированию в винде...
От: Кодт Россия  
Дата: 08.06.04 15:46
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Надоело писать программы в консоли. Subj на VC++. С чего начать? Я так понял, минимум, который необходимо знать это — WinAPI (хотя бы на начальном уровне), MFC и IDE Visual Studio .NET 2003(так как последняя версия). Сама технология NET меня пока не интересует. Обязательны ли знанния OLE, COM, ActiveX, ATL для того чтобы писать обычные программы не заточеные под интернет (прошу прощения, если ламерский вопрос)?

А>Посоветуйте, плз, хорошую литературу.

Может быть, я сейчас скажу дико крамольную вещь... но начинать программировать под винды нужно не с голого winapi, а с какого-нибудь фреймворка. С тех же самых MFC.
Почему? Потому что оконное программирование — это существенно иная парадигма, нежели консольное. Если так можно выразиться.
И тратить свои силы на изучение низкоуровневых нюансов — на первых порах неосмотрительно.
Перекуём баги на фичи!
Re: Перехожу к программированию в винде...
От: Константин http://flint-inc.ru/
Дата: 08.06.04 15:48
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Надоело писать программы в консоли. Subj на VC++. С чего начать? Я так понял, минимум, который необходимо знать это — WinAPI (хотя бы на начальном уровне), MFC и IDE Visual Studio .NET 2003(так как последняя версия). Сама технология NET меня пока не интересует. Обязательны ли знанния OLE, COM, ActiveX, ATL для того чтобы писать обычные программы не заточеные под интернет (прошу прощения, если ламерский вопрос)?

А>Посоветуйте, плз, хорошую литературу.

Я бы советовал сгенерить приложение MFC AppWizard'ом и начать разбираться с ним — добавлять всякие фичи и смотреть, как оно работает. Я начинал именно так.
На начальном этапе OLE, COM, ActiveX, ATL не нужны. Я, например, довольно долго спокойно обходился без всех этих страшных слов Только в последнее всё чаще замечаю, что API не даёт мне всех необходимых возможностей... Хотя до самостоятельной реализации COM-интерфейсов пока не дошёл.
Почему же, ё-моё, ты нигде не пишешь «ё»?
Re[2]: Перехожу к программированию в винде...
От: SchweinDeBurg Россия https://zarezky.spb.ru/
Дата: 08.06.04 16:07
Оценка: +2
Здравствуйте, Кодт, Вы писали:

К>Может быть, я сейчас скажу дико крамольную вещь... но начинать программировать под винды нужно не с голого winapi, а с какого-нибудь фреймворка. С тех же самых MFC.

К>Почему? Потому что оконное программирование — это существенно иная парадигма, нежели консольное. Если так можно выразиться.
К>И тратить свои силы на изучение низкоуровневых нюансов — на первых порах неосмотрительно.

ИМХО начинать нужно именно с API (понятно, что для консольных приложений оно одно, а для оконных — другое). Потому что в противном случае любой фраймворк превращается в некий магический черный ящик, не понятно как функционирующий. Следствием являются вопросы в стиле "а как мне добавить обработчик сообщения WM_xxx — в Колдуне его нет". Тем более, что связка оконная процедура/регистрация окнного класса/цикл обработки сообщений/WinMain() не является таким уж "низкоуровневым нюансом".

Сужу исключительно по собственному опыту: 3-летний опыт программирования на "голом API" (с написанием самодельных библиотек для "закрепления материала") очень помог (и до сих пор помогает) мне в осознанном написании приложений на MFC.

По части литературы полностью согласен с Валерием Викторовичем. В качестве своей доли "крамольности" (памятуя о нелюбви части из нас к отечественным авторам) добавлю к предложенному им списку Мешкова/Тихомирова — ИМХО довольно добротная книга, приятная тем, что не слишком сильно напирает на использование Колдуна. Да, значительная ее часть — это перевод соответствующих разделов MSDN, но для новичка в виндовом программировании такая литература является полезной, поскольку для использования справчника (каковым и является MSDN) необходимо иметь определенный багаж знаний.
- Искренне ваш, Поросенок Пафнутий
Re: Перехожу к программированию в винде...
От: cReAtOr_  
Дата: 08.06.04 19:12
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>Надоело писать программы в консоли. Subj на VC++. С чего начать? Я так понял, минимум, который необходимо знать это — WinAPI (хотя бы на начальном уровне), MFC и IDE Visual Studio .NET 2003(так как последняя версия). Сама технология NET меня пока не интересует. Обязательны ли знанния OLE, COM, ActiveX, ATL для того чтобы писать обычные программы не заточеные под интернет (прошу прощения, если ламерский вопрос)?

А>Посоветуйте, плз, хорошую литературу.

Том Арчер и Эндрю Уайтчепел "Visual C++ .NET Библия пользователя" — очень хорошая книга, затронуты практически все темы. Некоторые темы освещены слабо, например WTL, но все равно это то, что надо для счастья.
Re[3]: Перехожу к программированию в винде...
От: adontz Грузия http://adontz.wordpress.com/
Дата: 08.06.04 21:06
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>Сужу исключительно по собственному опыту: 3-летний опыт программирования на "голом API" (с написанием самодельных библиотек для "закрепления материала") очень помог (и до сих пор помогает) мне в осознанном написании приложений на MFC.


А я вот до сих пор "закрепляю материал" Ах еслиб вы знали сколько я левого кода наплодил
A journey of a thousand miles must begin with a single step © Lau Tsu
Re[2]: Перехожу к программированию в винде...
От: EKSoft Беларусь  
Дата: 09.06.04 00:03
Оценка:
Здравствуйте, LaptevVV, Вы писали:

А>>Посоветуйте, плз, хорошую литературу.

LVV>1. API.Можно начать с Чарльза Петцольда, потом перейти к Рихтеру.
LVV>2. VC. Тут библия — Круглински. Кстати, Питер их с Рихтером в серии Для профессионалов издал.
LVV>3. COM и ATL — наверно Трельсен. Хотя по COM очень хорош Бокс.
LVV>Это все авторы.

Хотелось бы добавить пару слов по поводу пункта 3
Очень хорошая книга для изучения ATL — Richard Grimes "Professional ATL COM Programming" — IMHO — гораздо лучше Трельсена. Не знаю, есть ли она на русском, но темы, касающиеся АТЛ и СОМ в ней раскрыты намного лучше. В частности в этой книге очень хорошо объясняется архитектура АТЛ, синхронизация, маршалинг, работа с потоками и т.д. Такого полного и понятного (!) изложения принципов АТЛ я не видел больше ни в одной книге. У него еще есть "Beginning ATL COM Programming" — но она мне кажется намного хуже (может потому, что сначала первую книгу прочитал).

Еще одна книга (тоже читал только английский вариант) — Sing Li & Panos Economopoulos "Professional COM Applocations with ATL". Она скорее дополнение к предыдущей, в ней более полно освещены темы, связвнные с построением ActiveX компонент и использованием MTS.
... << Rsdn@Home 1.1.4 beta 1 >>
Re[4]: Перехожу к программированию в винде...
От: SchweinDeBurg Россия https://zarezky.spb.ru/
Дата: 09.06.04 04:42
Оценка:
Здравствуйте, adontz, Вы писали:

A>Здравствуйте, SchweinDeBurg, Вы писали:


SDB>>Сужу исключительно по собственному опыту: 3-летний опыт программирования на "голом API" (с написанием самодельных библиотек для "закрепления материала") очень помог (и до сих пор помогает) мне в осознанном написании приложений на MFC.


A>А я вот до сих пор "закрепляю материал"


Каюсь... и у меня периодически возникает искушение позакреплять... Слава Богу, работы много...
- Искренне ваш, Поросенок Пафнутий
Re[2]: Перехожу к программированию в винде...
От: Maxim S. Shatskih Россия  
Дата: 09.06.04 08:44
Оценка:
К>И тратить свои силы на изучение низкоуровневых нюансов — на первых порах
>неосмотрительно.

Неправильно. Низкоуровневые нюансы вылезут по-любому.

Чтобы пользоваться фреймворком типа MFC, нужно знать низкий уровень, который она оборачивает. Хотя бы в общих чертах.
Занимайтесь LoveCraftом, а не WarCraftом!
Re[3]: Перехожу к программированию в винде...
От: Dog  
Дата: 09.06.04 13:40
Оценка:
К>>Может быть, я сейчас скажу дико крамольную вещь... но начинать программировать под винды нужно не с голого winapi, а с какого-нибудь фреймворка. С тех же самых MFC.
К>>Почему? Потому что оконное программирование — это существенно иная парадигма, нежели консольное. Если так можно выразиться.
К>>И тратить свои силы на изучение низкоуровневых нюансов — на первых порах неосмотрительно.
SDB>ИМХО начинать нужно именно с API (понятно, что для консольных приложений оно одно, а для оконных — другое). Потому что в противном случае любой фраймворк превращается в некий магический черный ящик, не понятно как функционирующий. Следствием являются вопросы в стиле "а как мне добавить обработчик сообщения WM_xxx — в Колдуне его нет". Тем более, что связка оконная процедура/регистрация окнного класса/цикл обработки сообщений/WinMain() не является таким уж "низкоуровневым нюансом".

ИМХО, начинать надо и с winapi и с фреймворка и учить параллельно, так как многи темы там сильно пересекаются. Передо мной недавно стала такая задача. Начал с COM, как с более простого, наткнувшись на api тут же подключил Рихтера + MFC(но смотрю в сторону WTL) + постоянное написание примеров, тестов и конечно MSDN, MSDN, MSDN + RSDN
Re: Перехожу к программированию в винде...
От: Dog  
Дата: 09.06.04 13:40
Оценка: +1
А>Надоело писать программы в консоли. Subj на VC++. С чего начать? Я так понял, минимум, который необходимо знать это — WinAPI (хотя бы на начальном уровне), MFC и IDE Visual Studio .NET 2003(так как последняя версия). Сама технология NET меня пока не интересует. Обязательны ли знанния OLE, COM, ActiveX, ATL для того чтобы писать обычные программы не заточеные под интернет (прошу прощения, если ламерский вопрос)?
А>Посоветуйте, плз, хорошую литературу.

1. Зарегестрируйся. здесь
2. Скачай Rsdn@Home. здесь
3. Подпишись на С/С++, ATL/WTL, COM/DCOM/ActivX, Проектирование, MFC, WIN API. И читай, читай, читай, сохраняй интересные топики, ссылки.
5. Почитай статьи на сайте. здесь
6. Ах да, и не забудь ознакомиться с правилами поведения на форумах. здесь
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.