Wtl: Божий дар или яичница?
1.Отсутствие нормальной документации с возможностью динамической справки.Есть лишь руководства, часто с нерабочими исходниками (не компилируются под VS 2003, например на codeproject.com, Part VI - Hosting ActiveX Controls - WTL.htm)
2.Исходники, в большинстве своем, не компилируются. Т. е. то, что работало в wtl 3 в wtl7.1 уже не работает
Я не хочу затевать бессмысленные споры типа MFC Vs WTL на несколько страниц.Просто хочу получить помощь от знающих людей по этим 2 пунктам.
С первого взгляда библиотека WTL мне пришлась по душе.Но после недлительного изучения я был разочарован:
Есть проверенный способ - длительное изучение.
1.Отсутствие нормальной документации с возможностью динамической справки.Есть лишь руководства, часто с нерабочими исходниками (не компилируются под VS 2003, например на codeproject.com, Part VI - Hosting ActiveX Controls - WTL.htm)
WTL все же расчитана на более или менее профессиональных людей, которым не надо разжевывать. В интернете достаточно много информации, которую просто надо уметь искать и читать. Кроме того WTL имеет ОЧЕНЬ НЕБОЛЬШОЙ по размеру код, который вполне САМОДОКУМЕНТИРОВАН. Так что если что-то непонятно, открываешь соотв. h-файл и читаещь (по коду), что там делается.
Что касается русской документации, советую посмотреть на rsdn.ru
2.Исходники, в большинстве своем, не компилируются. Т. е. то, что работало в wtl 3 в wtl7.1 уже не работает
Ну все растет, все развивается. И хотя я особых проблем не встречал, все равно могу сказать, что я ЗА разумный отказ от обратной совместимости, т.к. опять может получится монстр типа MFC.
Кстати, вопрос, чем это MFC монстроподобна ? читайте исходники..:) если не обращать внимание на комментарии в исходниках, то сами исходники вполне самодокументированы. :)
Кроме того WTL имеет ОЧЕНЬ НЕБОЛЬШОЙ по размеру код, который вполне САМОДОКУМЕНТИРОВАН.
если не обращать внимание на комментарии в исходниках
Когда у Майкрософта появился проект с самодокументирующимися исходниками, им он оказался не нужен. Хотя, не в курсе - может, свободные разработчики довели его до такого состояния?
ЗЫ. Вопрос: сколько кода можно будет выкинуть, если из исходников Windows убрать все комментарии в коде?
Когда у Майкрософта появился проект с самодокументирующимися исходниками, им он оказался не нужен. Хотя, не в курсе - может, свободные разработчики довели его до такого состояния?
Не знаю о чем вы но скорее он оказался не нужен не Микрософту, а его менеджарам. Другими словами комменатарии в исходниках нужны либо менеджерам которые нихрена не смыслят в написанни прог, либо не слишком квалифицированным разработчикам.
ЗЫ. Вопрос: сколько кода можно будет выкинуть, если из исходников Windows убрать все комментарии в коде?
Зависит от квалификации того кто их читает( исходники Windows):))). А о какой версии Windows идет речь ? Win 3.1 ? :))))))
Не знаю о чем вы но скорее он оказался не нужен не Микрософту, а его менеджарам. Другими словами комменатарии в исходниках нужны либо менеджерам которые нихрена не смыслят в написанни прог, либо не слишком квалифицированным разработчикам.
Отсюда совет Билл Гейтсу : уволить всех менеджеров.
дайте мне ссылку где скачать WTL, и че нить почитать про нее,плз.
Набираем в поисковике "WTL" и алга!
На русском можно почитать на rsdn.ru
Кстати, вопрос, чем это MFC монстроподобна ? читайте исходники..:) если не обращать внимание на комментарии в исходниках, то сами исходники вполне самодокументированы. :)
Исходники тут не главное. В MFC сам принцип устарел. Многое там через ж..пу.
К примеру, невозможность множественного наследования и т.п.
Многое там через ж..пу.
К примеру, невозможность множественного наследования и т.п.
гмс.... странно я именно почему то множественное наследование считаю полной ..... ну вы меня поняли... не люблю гибридов.
гмс.... странно я именно почему то множественное наследование считаю полной ..... ну вы меня поняли... не люблю гибридов.
Об этом тоже можно поспорить, но мы говорили об MFC. :)
Рекомендую взглянуть на WTL, чтоб было с чем сравнить. Думаю, что после этого ты согласишься, что WTL ЗНАЧИТЕЛЬНО легче(во многих смыслах) и прозрачнее. Там кстати, все на множественном наследовании и шаблонах. Не знаю понравится тебе это или нет. Но там так же все очень вписывается в концепцию паттернов и используются основные паттерны проектирования (стратегии, состояния, медиаторы, фабрики и т.д.)
А где бы найти рабочий исходник? А разбираться в исходниках-это колоссальный неблагодарный труд(здесь мне скажут, что это очень полезно).Перебирать тысячи строк исходного кода ради нескольких функций и интерфейсов?
Я пробовал всунуть в программу ActiveX контрол.Все по инструкции на codeproject.com.Ни у меня, ни у десятка других людей под vs2003ничего не вышло (под VS 6 все ОК).С чего бы это?
А где бы найти рабочий исходник? А разбираться в исходниках-это колоссальный неблагодарный труд(здесь мне скажут, что это очень полезно).Перебирать тысячи строк исходного кода ради нескольких функций и интерфейсов?
Ну вообще-то так и приобретается опыт.
Дай адрес примера на codeproject.com и выложи свои творения. Будет время посмотрю, выясню, что не так.
а как насчет использования WTL "программирующими непрограммистами"? поясню. изредка приходится писать небольшие утилитки - причем (правда еще реже) надо прикрутить к ним графический интерфейс. Builder со своей VCL - меня не впечатлил своей громоздкостью, MFC - тоже ниасилил (вернее осилил, но как то не пошло у меня...) писать же используя Win32 API - чересчур долго и неэффективно. WTL - насколько быстро усваивается, требует серьезных программерских навыков? подходит для быстрого написания Windows приложений с GUI?
2Green
а как насчет использования WTL "программирующими непрограммистами"? поясню. изредка приходится писать небольшие утилитки - причем (правда еще реже) надо прикрутить к ним графический интерфейс. Builder со своей VCL - меня не впечатлил своей громоздкостью, MFC - тоже ниасилил (вернее осилил, но как то не пошло у меня...) писать же используя Win32 API - чересчур долго и неэффективно.
WTL своим интерфейсом похож на MFC, но реализация другая. Честно говоря, я не вижу проблем в его использовании. Но совершенству нет предела, так что если нужно что-то посложнее, чем простенькие интерфейсы, то можно глянуть исходники WTL (это всего несколько заголовочных файлов и никаких cpp).
Основная черта WTL - это его тонкость, как обертки над Win32 API, гибкость и расширяемость.
2Green
WTL - насколько быстро усваивается, требует серьезных программерских навыков?
Надо понимать Win32 API, причем настолько глубоко, насколько требует этого замысел твоей программы. WTL не избавляет от необходимости этих знаний, как например VCL, он лишь упрощает труд.
Надо немного разбираться в шаблонах и множественном наследовании.
2Green
подходит для быстрого написания Windows приложений с GUI?
Он для этого и создан и в отличие от MFC не имеет неотносящихся к GUI классов, как например сокеты, какие-то контейнеры и т.п.
Это упрощает его структуру и делает её более стройной.
спасибо. думаю это то, что надо. скоро уйду в отпуск - буду лежать на пляже и почитывать распечатки с WTL.