Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 11.12.04 03:13
Оценка: 158 (22) +3 :)))
Эпиграф: не флейма ради.

Precondition: я не являюсь противником .NET и (или) WTL; я не воспринимаю boost и Loki как "игрушку для эстетов"; я не считаю Delphi'ян людьми второго сорта; мой родной язык C++; мое место под солнцем ("в виде отдельного гаража") — технологии Microsoft. И самое главное — все сказанное ниже, это одно такое махровое имхоистое ИМХО.

Лирика:
"Любая песня изначально благая —
Просто ты к этому еще не привык..."
(с) БГ

Содержательная часть: итак — почему же?

"Могу назвать миллион причин — и все лживые..." (с) "На игле". А правда в том, что я подлец... тьфу, черт! как въелось-то!.. Так все-таки — почему?

Вклинившаяся важная аксиома: это не "наезд" на .NET, благодаря которому крутится наш сайт и под которым работает программа, заботливо предоставляющая доступ к моему посту всем желающим.

Реалии моей работы (система интернет-трейдинга) таковы, что часть "заказчиков" (клиентов) до сих пор сидит под Windows 98 на компах с 64-я метрами мозгов... ставить им .NET Framework нереально, а прогонять — убыточно для бизнеса организации, на которую я работаю.

Циничное наблюдение: уровень твоего дохода прямо пропорционален количеству средств, которое клиент готов вложить в соответствующее ПО и "железо".

Главное требование, которое предъявляется к тому софту, что я сейчас пишу — максимальная скорость работы любой ценой, на самом паршивом железе... максимальная стабильность — под любой ОСью, какой бы неустойчивой она ни была. Не думаю, что я единственный, перед кем ставят подобные задачи. Таким образом, .NET отпадает (клиентского железа на него не хватит).

Циничное наблюдение №2: люди, у которых ы руках "миллионы", не дадут и копейки "на скорость", "на стабильность", "на качество" — им нужен максимум прибыли при минимуме затрат.

Забавно, но факт — интернет-трейдинг сродни современным игрушкам: доли секунд решают все. Чья-то заявка (на покупку/продажу ЦБ) прошла раньше — и ты (может быть) разорен. Быстрый ГУЙ — одно из неотъемлемых требований к системе. И на .NET-е я его не добьюсь (пока). Нет, не правильно... не Я — а клиент, заказчик. Уровень его доходов гораздо выше моего — но он (в отличие от меня) не будет ставить в свой комп еще 512 метров DDR (SDRAM... какие там еще современные аббревиатуры есть) и хороший графический акселератор. Ему нужно "быстро и сейчас", на его железе. Таким образом, .NET приходится отбросить.

И тут наш взгляд падает на WTL. Она красива! "WTL rocks. It does." (с) Michael Dunn. Она логична и близка к API, от которого пока все равно никуда не уйти (исходники Януса — лучшее тому подтверждение). Одна беда — в ней нет классов, реализующих работу с БД.

Снобское отступление: про директиву #import я знаю.

"Машина на имя жены... дача на мое имя... ничего у тебя нет! ты голодранец!.." (с) "Берегись автомобиля"

Итак, что же я имею?.. 10 лет программируя под винду... Я могу писать на "голом" API, благо "со времен Аристотеля человеческий мозг почти не изменился"... могу использовать нативные интерфейсы доступа к БД (оракловый OCI рулит форева, потому как быстр до безумия)... если я их не знаю — могу подняться на один(!) уровень выше, и использовать ODBC, для которой в MFC реализована довольно мощная поддержка.

А что имеют с меня мои "клиенты"? Быстрый ГУЙ, быструю связь с БД, в которую сыплется информация об их сделках. Придет время — и .NET будет везде. Но пока этого не случилось — я не собираюсь приближать "светлое будущее". "У меня есть все" — и потери клиента от неисполневшейся сделки существенно важнее потерь в "прогрессивности".
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Motorhead — Orgasmatron ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[10]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: Nick Notabene Россия  
Дата: 19.12.04 06:47
Оценка: 6 (6) +4 -1
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Nick Notabene, Вы писали:


VD>>>Как ты думешь, вот тут не о таких мужиках писалось http://www.nestor.minsk.by/sr/2003/07/30710.html ?


NN>>Влад, спасибо за ссылку, классная статья. НО ! Ты не мог бы пояснить, каких именно мужиков ты имеешь в виду ???

NN>>Там их несколько

VD>[q]Впрочем, из этого утверждения редко делается вывод. Программисты старше определенного возраста редко меняют язык по своей воле. Они будут считать достаточно хорошим тот язык, к которому привыкли.


Я понял ваш вопрос, Влад. По поводу мужиков."Программисты старше определенного возраста редко меняют язык по своей воле. Они будут считать достаточно хорошим тот язык, к которому привыкли" — вы совершенно зря это цитируете. Эта нитка в конференции не имеет никакого отношения к "таким мужикам".
В России выбор платформы для разработки определяется или капризом заказчика, который начитался рекламы, и уверен, что хочет программу на .Net или Java; при этом он убежден, что эти программы будут работать на его аппаратуре; или (лучший вариант, когда заказчик честно признает, что он не знает, чего хочет) платформа выбирается разработчиком на основании анализа возможностей и потребностей заказчика. В первом случае разработчик должен быть готов к последующим разборкам с заказчиком, который крайне удивлен, что реклама не соответствует действительности; во втором случае нередки варианты, когда MFC оказывается оптимальной платформой по критериям произодительность/скорость разработки. Про это речь и идет, о чем я уже писал.



VD>Программисты очень привязываются к своим любимым языкам, а я не хочу оскорбить ничьи чувства, поэтому я объясню свою

позицию, используя гипотетический язык с названием Блаб.

и т.д. ...skipped...

VD>Когда мы поменяем точку обзора программиста, используя любой язык программирования выше по континууму мощности, мы

обнаружим, что теперь программист смотрит на Блаб сверху вниз. "Как же можно что-то сделать, используя Блаб? В нем
отсутствует даже конструкция Y!"

Используя метод индукции, приходишь к выводу, что только те программисты, которые понимают самый мощный язык, в состоянии
осознать полную картину разницы в мощности между различными языками (видимо, именно это имел ввиду Эрик Реймонд, когда
говорил о том, что Lisp сделает вас лучше как программиста). Следуя парадоксу Блаба, нельзя доверять мнению других: другие
программисты довольны тем языком, который используют, потому что этот язык определяет способ их программистского мышления.


Влад, не хочу оскорбить ничьи чувства Вы хотите сказать, что Java-подобные языки, в том числе и С#, мощнее С++ ?
Право, спорное утверждение.
Могучая кучка студентов, сдающих сейчас зимнюю сессию, меня в этом убедили. Студент, знающий С++, легко осваивает и решает задачи на С# или Java. Обратное утверждение неверно. У "знатоков" С# и Java налицо дельфийский синдром; для студентов, знающих С++, нет проблемы в решении задач без готовых компонент/библиотек как на С++, так и на Ява-подобных языках.Иногда приходится убеждать их в необходимости поискать готовую библиотеку, а не решать побочные задачи самим.
Вот собственно и все — какие еще аргументы нужны ? С++ формирует более качественных программистов. Возможно, Lisp или Arc форимрует программистов еще более качественных; C#, Java, Object Pascal и VB этого не делают.

Хотя еще раз оговорюсь, в этой нитке речь идет совсем не об этом...
Интуитивно понятный интерфейс — это интерфейс, для работы с которым нужна недюжинная интуиция...
Re: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 11.12.04 21:30
Оценка: +1 :))) :))) :)))
Здравствуйте, SchweinDeBurg, Вы писали:

Сабж вроде намекал, что речь пойдет про МФЦ, а на поверку получились очередные оправдания почему не .Net.

Симптоматично, однако.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Nick Notabene Россия  
Дата: 12.12.04 23:29
Оценка: 26 (3) +3 -1
Здравствуйте, VladD2, Вы писали:

VD>Сабж вроде намекал, что речь пойдет про МФЦ, а на поверку получились очередные оправдания почему не .Net.

VD>Симптоматично, однако.

Ну и не мудрено, однако при такой-то рекламе. Как тут у кого-то ориджин был — "Вы еще не программируете на .Net ??? Мне вас жаль. " Противопоставление-то навязанное. При выборе платформы разработки вопрос ".Net или не .Net" возникает сам собой. И если не .Net, то сразу вопрос — почему ? это же модно ! а все говорят ! а не верите — сходите на RSDN !

У моего шефа кстати есть любимая поговорка по этому поводу. " А все-таки в го#@не что-то есть — миллионы мух не могут ошибаться". Прошу фанатиков модных технологий не принимать близко к сердцу и отнестись с юмором. Старый программист, сами понимаете...

А тема здравая. MFC — библиотека, которая особенно хороша своей выверенностью и распространенностью. И это качество перевешивает ее недостатки, которых немало, и усиливает ее достоинства. Слабые места и откровенные глюки MFC хорошо известны, методы их обхода — тоже. Ну и разумный уровень "объектной ориентированности" имха больше плюс, чем минус. "С++ — это свобода в широких пределах, не ограниченных одной парадигмой, а уж как это использовать, и что получить в результате — дело разработчика и вопрос качества разработчика"
Ну и не стоит делать вид, что программа выполняется на некотором абстрактном компьютере с неограниченной памятью и вычислительными ресурсами . "Забудьте о памяти !!! " ((с) GotDotNet.com) гыыыыыыыыыыыыыы

Я допустим тоже использую MFC (mfc42.dll ) для одного из проектов, и менять его на что-либо не собираюсь. Проект кстати не в стадии сопровождения — активная разработка второй версии. Нету смысла. Реклама меня не впечатляет. Про ресурсоемкость и производительность native-приложений vs. .Net и Java даже говорить не буду ( А кто, кстати, у нас сегодня самый шустрый ??? ) Скорость разработки — не делайте мне смешно ! — гораздо больше зависит от проработки архитектуры системы, готовых компонент/библиотек и дисциплины мышления. Заказчик менять парк машин не собирается, также как и лицензионный Win98SE. Так об чем говорить ?

Хотя колымить на .Net — милое дело. Впрочем, как и на Java. Быстро и недорого. Не очень качественно, но и так сойдет

В общем, MFC используется и будет использоваться. Хотя постепенно сойдет на .Net, как и все проходящее Не самая худшая из библиотек.

WBR NB
Интуитивно понятный интерфейс — это интерфейс, для работы с которым нужна недюжинная интуиция...
Re[14]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 21.12.04 05:26
Оценка: 60 (5) +1
Здравствуйте, VladD2, Вы писали:

VD>Я не видел ни одного программиста, который бы сказал, что недостаточно опытен и т.п.


Показываю, Влад — вот он:

Я искренне и без кокетства могу сказать, что не считаю свой опыт в какой-либо из областей программерской деятельности, к которым я прикладывал голову и пальцы, "достаточным". Потому что каждый раз я нахожу все более оптимальные и красивые способы решения "одних и тех же" задач... и каждый раз задаюсь вопросом — интересно, что же я упустил на этот раз? какой будет следующая ступень этой лесницы? Более того — если я поймаю себя хотя бы на тени мысли о том, что "достаточно опытен", то немедленно уйду из программирования, поскольку это будет означать мою смерть как профессионала. Я не вижу способа двигаться вперед без осознания собственного несовершенства.

P.S.
Наверно, получилось слишком лирично и пафосно...
[ posted via RSDN@Home 1.1.4 beta 3 r241 ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[12]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: Nick Notabene Россия  
Дата: 19.12.04 12:04
Оценка: 3 (3) +3
Здравствуйте, VladD2, Вы писали:

VD>Неправ. Ты увидил предпослыки и не смог их правильно интерпретировать.

VD>Мужики писавшие софт что ты называшь кривым, просто били или недостаточно опытными, или видили средство разработки на котором работали первый день. И даже в таких условиях дотнет снял с них чать работы и они смогли сделать продукт. Точно так же для высоко квалифицированного программиста он снимет часть работы и программист сможет сделать бьльше чем раньше, или столько же, но значительно быстрее.

Влад, так это хорошо ? То есть ты считаешь, что разработчики, сделавшие проект как попало за счет того, что платформа скрыла большую часть их ошибок — это нормально ???? Ничо себе вывод.
А я -то сижу время трачу на анализ и проектирование. Как я отстал от жизни. Надо наслаждаться ее RADостями, а юзер потом привыкнет.

Что касается опыта конкретно этих ребят — они уже третий вариант лепят, такой же кривой, как два предыдущих. И кстати, официально не использовать его нельзя. Неофициально у нас работает мой вариант, сделанный под MFC, и дающий на выходе такие-же файлы. Влад, сделать аналог этой программы отняло у меня десять дней, из них 4 — на то, чтобы разобраться, что должно быть на входе и на выходе. Работает везде, и 20 Мб фреймворка + 10Мб сервис-пака не требует. Какие из этого следуют выводы ?

Что касается этого разрекламированного "значительно быстрее" я тоже не согласен. Значительный прирост скорости разработки от использования .Net появляется тогда, когда на 95% ты используешь библиотеки платформы для решения стандартных задач. Это не отнять. Совершенно такой же эффект от применения Бильдера/Дельфей — если есть подходящие тебе компоненты, время разработки минимально.
Но как показывает опыт, по достижению определенного запаса готовых библиотек и уровня разработки, большая часть времени уходит на создание уникальной функциональности, ради которой проект и затевается. И тут уж извини, от платформы мало что зависит. Нету тут "драматического увеличения скорости разработки". Попробуй сделай программу по отрисовке изолиний, например — не совсем тривиальная задача, хотя ничего эксклюзивного в ней тоже нет. Время разработки под .Net и под MFC с профусом будет одинково.

Последний раз повторяюсь — я не говорю, что .Net не имеет будущего, или что это плохая платформа, упаси Святой Билл. Это нормальное средство разработки, не хуже и не лучше Java или Delphi-подобных RADов, ( что не странно, учитывая спернуто-гибридную суть .Net ). Все, что я хочу сказать — не стоит слишком доверять рекламе, и стоит иногда помнить, что у компьютера есть ресурсы, и они конечны. И исходя из этого и задачи, выбирать платформу разработки.

Хороший флейм получился. Качественный.
Интуитивно понятный интерфейс — это интерфейс, для работы с которым нужна недюжинная интуиция...
Re: Почему я до сих пор пишу на MFC (заметки "старовера")
От: c-smile Канада http://terrainformatica.com
Дата: 11.12.04 07:31
Оценка: +2 :))) :)
Здравствуйте, SchweinDeBurg, Вы писали:


Мои три копейки:

На самом деле MFC лучшая из классовых библиотек что я видел.

Лучшая имеется ввиду быстрая, внешне аккуратная и внутри human readable. Надежная библотека для промышленных апликаций короче.

Имхо наиболее естественная я бы сказал это VCL от Borland
но как всегда у них "ну и шо? а зато душа красивая..."

WTL... Это для небольших апликаций. Исходники достаточно больших вещей которые я видел можно использовать в качестве рвотного средства. Не потому что авторы неграмотные а просто архитектура такая. Эти руками прописываемые REFLECT_NOTIFICATIONS просто катастрофа. Я у себя в ATL/WTL REFLECT_NOTIFICATIONS() макро переименовал в OOP_DEATH() и теперь точно не забываю где у меня грабли будут.

.NET WinForms... считаю что выбранная схема использования оберток вокруг HWND — дрова.
Тут или все в managed нужно переводить или ничего. Я так думаю. Почему было принято HWND решение — не знаю.
"Тайна сия мраком покрытая есмь". Вообще судя по тому что в качестве Graphics используется GDI+ авторы не предполагали серьезных GUI задач.


В принципе из известных мне примерно 20 всяких window toolkit след в памяти оставили всего ничего...
Даже вот так и не скажу сразу. Мой J-SMILE наверное the best Действительна классная штука — проста как двери, эффективна и классово правильная. ООП так и брыжжит. Так.. себя я уже похвалил... что осталось написать?

Кого-нить другого теперь надо...

Ах да! Брату Schwein'у спаисибо большое за пост. Правильный он. Только .NET и MFC противопоставление (или.или) имхо не совсем корректно.

Ну и конечно же Владу наше глубокое и искреннее почтение.
Re[7]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 28.10.05 04:16
Оценка: +1 -1 :))) :)
Здравствуйте, Nick Notabene, Вы писали:


NN>Ничо себе без причины. При таком-то маркетинге и рекламе. Любой себе вопрос задаст — если все так здорово, почему до сих пор нет работающих проектов на .Net ??? Почему я не пишу на .Net ??? И вот идет человек на форум, да пишет, почему ему удобно работать на том, на чем он работает... и получает в ответ пачку флейма. Но имха ДеБарг никаких разумных аргументов и не ждал


Решил вставить свои три копейки. У меня есть перед глазами один проект на .NET. Это RSDN@home. Я думал, как будет круто скачивать форумы и читать их в оффлайне. По аналогии с обычной почтой, которой в онлайне пользоваться не удобно. В результате сюда пишу все равно в онлайне, и пришел к выводу, что на дотНете ничего делать в ближайшее время не буду
Маньяк Робокряк колесит по городу
Re[5]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 13.12.04 14:29
Оценка: +5
Здравствуйте, SchweinDeBurg, Вы писали:

CS>>Как только чуть чуть сложнее ирерхия окон — все — абздольц — HWND только мешают.


SDB>Смелое заявление.


Да нет, все правильно — хендлы и сообщения по современным меркам очень неудобны. Вот только позиционировать им на замену убогий HTML — из огня да в полымя.
... << RSDN@Home 1.1.4 beta 3 rev. 256>>
AVK Blog
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: GlebZ Россия  
Дата: 11.12.04 15:07
Оценка: 2 (2) +1 :)
Здравствуйте, SchweinDeBurg, Вы писали:

GZ>>Я не спец в маркетинге, но когда-то очень давно, мне попалась книжка "Основы маркетинга" Котлера.


SDB>А я "по ней" аж экзамен сдавал (по специальности — инженер-экономист).

Везука, у меня не было такого. Да и жалею что положил на некоторые предметы, которые тогда изучал, но считал не нужными.


SDB>Вы знаете, Глеб — в теории все выглядит очень гладко и приятно... но потом наступает время практики — и случаи оказываются совсем разными. Кто-то рассуждает "по книжке" (это я в позитивном смысле), а кто-то — строго наоборот. Далеко не все "коммерсанты" в нашей стране придерживаются западных моделей и западного опыта.

Судя по отзывам моих товарищей, не все коммерсанты на западе придерживаются западных моделей и западного опыта. А это, я описал не по книжке, а по собственному опыту. В конце 90-х фрилансил.
SDB>Я работаю с ними уже третий год и не устаю веселиться (иногда — сквозь слезы).
Значит не будет тебе откровением, что это происходит не только с тобой. Судя по всему, это происходит везде, где существует связь продавец-клиент. Наверное, потому что у всех разные цели, или существует непонимание между акторами.
SDB>Так что написанное мной было лишь отражением собственного опыта... и я не уверен, считать ли его горьким или успешным. Но -
Лично мое мнение, что опыт всегда успешен.
А выход у меня из подобной ситуации, всегда был простой. Выбераю ключевую фигуру в проекте (в крупной организации ключевой может быть группа поскольку от нее зависит санкция на оплату). Делаю так, чтобы он считал что является главой проекта, а я являюсь техническим исполнителем (руководителем). И именно он его создает. Любой вопрос относительно аналитики, решаю только по согласованию с ним. Создаваю документы которые он может визировать или корректировать. Ессно, коррективы фильтрую, пользуясь отписками, что это например нереализуемо или другими обоснованными причинами. Всегда помню, что я деньги зарабатываю, а не пишу гениальные программы.(для гениальных программ есть личное время). Если я не могу обосновать причину, значит ошибаюсь именно я. На себя, таким людям денег не жалко. Ну и программист не умрет голодным. Однажды, удалось даже выбить деньги на рефакторинг.

Прошу это считать моим субъективным мнением. Я не в коем случае, не хотел кого-то поучить, ни сам, ни с помощью господина Котлера. Учитель из меня, прямо таки скажем, хреновый.

С уважением, Gleb.
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.12.04 09:01
Оценка: +3 :)
Здравствуйте, Nick Notabene, Вы писали:

Вот это:

NN>Скорость разработки — не делайте мне смешно ! — гораздо больше зависит от проработки архитектуры системы, готовых компонент/библиотек и дисциплины мышления. Заказчик менять парк машин не собирается, также как и лицензионный Win98SE. Так об чем говорить ?

...
NN>Хотя колымить на .Net — милое дело. Впрочем, как и на Java. Быстро и недорого. Не очень качественно, но и так сойдет

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

Выхоидит, или дотнет повышает "архитектуру системы, содержит больше готовых компонент/библиотек и дисциплинирует мышление", или ... парадокс, однако.

ЗЫ

В обещм, если уж чувствуете, что используете устаривающие технологии, то используйте их спокойно не поднимая то и дело вопрос о том, что они вовсе не устаривают, а еще ОГОГО.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[13]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 20.12.04 11:24
Оценка: 3 (2) +1
Здравствуйте, Nick Notabene, Вы писали:

NN>Влад, так это хорошо ?


А что, плохо?

NN> То есть ты считаешь, что разработчики, сделавшие проект как попало за счет того, что платформа скрыла большую часть их ошибок


Она их не скрыла, она не дала их совершить. Чувствуешь разницу?

NN>- это нормально ???? Ничо себе вывод.


Нормальный вывод. Вам шашечки или ехать? Тут ведь альтернатива простая — либо глючный, но работающий софт на дотнете, либо вобще никакого софта и все руками. Ну а то что некоторые госконторы имеют наглость навязывать кривой софт собственной кухни так это проблема совсем не программирования.

NN>А я -то сижу время трачу на анализ и проектирование. Как я отстал от жизни. Надо наслаждаться ее RADостями, а юзер потом привыкнет.


Из чего ты сделал такой вывод? Что, дотнет не даст тебе программировать правильно? Или бытрые ребята отгрызут твой кусок пирога? Если второе, то это вполне нормально, рынок однако.

NN>Что касается опыта конкретно этих ребят — они уже третий вариант лепят, такой же кривой, как два предыдущих. И кстати, официально не использовать его нельзя.


А виноват во всем этом дотнет .

NN> Неофициально у нас работает мой вариант, сделанный под MFC, и дающий на выходе такие-же файлы. Влад, сделать аналог этой программы отняло у меня десять дней, из них 4 — на то, чтобы разобраться, что должно быть на входе и на выходе. Работает везде, и 20 Мб фреймворка + 10Мб сервис-пака не требует. Какие из этого следуют выводы ?


А какие ты делаешь? Я например сделал такой — надо законодательно запретить навязывать министерствам софт и обязать их выпускать полное описание используемых форматов. И критерием правильности данных должно служить это описание, а не ихняя заглатывалка.

NN>Что касается этого разрекламированного "значительно быстрее" я тоже не согласен.


Есть опыт разработки аналогичных проектов на дотнете и классической платформе?

NN> Значительный прирост скорости разработки от использования .Net появляется тогда, когда на 95% ты используешь библиотеки платформы для решения стандартных задач. Это не отнять. Совершенно такой же эффект от применения Бильдера/Дельфей — если есть подходящие тебе компоненты, время разработки минимально.


Это все в теории. А на практике большинство сторонних компонент для Дельфи применять невозможно — неконтроллируемый код, способный испортить твой собственный это страшно.

NN>Но как показывает опыт, по достижению определенного запаса готовых библиотек и уровня разработки, большая часть времени уходит на создание уникальной функциональности, ради которой проект и затевается. И тут уж извини, от платформы мало что зависит.


При классическом подходе (Дельфи, С++ без шаблонов) это примерно так. Но вот как только мы начинаем использовать сложные структурные решения, то сразу всплывают паттерны. И вот тут все становится не так просто — С++ к примеру, за счет шаблонов и техник а-ля Александреску позволяет создавать библиотеки паттернов, в C# и Java много частоупотребимых паттернов встроено в язык. А вот классический подход остается по эффективности далеко позади, поскольку каждый раз приходится изобретать велосипед, т.е. опять и опять реализовывать паттерн.
Например — если мне нужно создать ленивый потокобезопасный синглтон, то на шарпе я не задумываясь напишу статическое поле с инициализацией, на С++ один раз напишу шаблон. А на Дельфи? Не хочешь привести минимальный код?

NN> Нету тут "драматического увеличения скорости разработки".


Не могу с тобой согласится, поскольку мой опыт свидетельствует об обратном. Что такое янус представляешь? Так вот — до него у меня был опыт реализации схожих систем, может чуть попроще. Один раз на Дельфи, другой раз на C#. На Дельфи проект занял 8 месяцев, на шарпе 3.
... << RSDN@Home 1.1.4 beta 3 rev. 268>>
AVK Blog
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: c-smile Канада http://terrainformatica.com
Дата: 11.12.04 22:32
Оценка: 7 (1) +1
Здравствуйте, SchweinDeBurg, Вы писали:


CS>>WTL... Это для небольших апликаций. Исходники достаточно больших вещей которые я видел можно использовать в качестве рвотного средства. Не потому что авторы неграмотные а просто архитектура такая. Эти руками прописываемые REFLECT_NOTIFICATIONS просто катастрофа. Я у себя в ATL/WTL REFLECT_NOTIFICATIONS() макро переименовал в OOP_DEATH() и теперь точно не забываю где у меня грабли будут.


SDB>А Вы не могли бы более подробно и с примерами кода пояснить? Я в некотором недоумении... у них рефлекция сделана хуже, чем в MFC?


Типовая цитата "Для того чтобы мой компонент работал вставьте в свой контейнер REFLECT_NOTIFICATION".
Не способствует модульному программированию, правда?

WTL это библитека для шароварщика. Одного. Без ансамбля. Эдакого волчары-одиночки.

CS>>.NET WinForms... считаю что выбранная схема использования оберток вокруг HWND — дрова.

CS>>Тут или все в managed нужно переводить или ничего. Я так думаю. Почему было принято HWND решение — не знаю.

SDB>Гх-м-м... а как же без HWND-то? "Деньги, товарищи, еще никто не отменял!.." (с) "Берегись автомобиля". В смысле — Винда как ни крути, только дескриптор нам отдает, да и сама его пользует.


Примеров — валом. Тот же замечательный MSForms компонент. Прэлэсть как работает.
Открываем в IE любую страницу с input elements и смотрим Spy++. Нет там HWND.
То же в Mozilla и Opera.

J-SMILE опять же. Запускаем аппликацию и опять смотрим Spy++.

Как только чуть чуть сложнее ирерхия окон — все — абздольц — HWND только мешают.
Например tab controls — ну это ж просто изврат какой-то постоянно.

А ComboBox? уже 10 лет обсчествнность пляски с бубном вокруг него пляшет. Как его сделать borderless? Как ему установить высоту? Как ему поставить высоту dropdown? Только в XP API появился, наконец-то! В MSForms же он сделан нормально...

Почему было не спортирвать MSForms в WinForms? Имхо, на порядок бы полезность gui.NET выросла.
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 21.12.04 11:01
Оценка: 7 (2)
Здравствуйте, Блудов Павел, Вы писали:

БП>А что касается того, что у MFC все шикарно с базами данных, то позвольте спросить, Вы хоть раз заглядывали в daocore.cpp?


Во-первых, "шикарности" я не утверждал. Во-вторых — DAO не использую, предпочитаю ODBC (для которого в MFC сделаны ИМХО вполне удобные обертки типа CDatabase/CRecordset) или нативные интерфейсы (например, OCI).

БП>И как Вам? И что из этого Вы не смогли бы написать самостоятельно?


Это, Павел, тонкий вопрос. Можно и CRT самостоятельно написать, и контейнеры свои на шаблонах, и библиотеку классов, которая будет виндовый GUI инкапсулировать. Но в 99% случаев у меня не окажется на это времени. Хотя червячок оппортунизма "а ведь я могу это написать сам и написать красивее" будет неутомимо ползать по моим извилинам, "отравляя" их мыслями об "идеальной библиотеке". Может быть, причина моей нынешней терпимости к (ни в коем случае не отрицаемым мной) недостаткам, странностям, жесткости MFC заключается в том, что в свое время я вволю наизобретался собственных велосипедов и напереписывался чужих.

БП>Вобщем, у меня за годы жизни сложилось обратное впечатление: MFC это библиотека для сборки WordPad'а и именно WordPad'а. Любая попытка выйти за рамки реализации -- тяжкая борьба с особенностями MFC.


Вы знаете, Павел, MFC ведь можно использовать двумя способами. Можно колдуном сгенерировать "скелет приложения", колдуном же нарастить на нем мясо, следуя пошаговым инструкциям вида "нажмите в колдуне вот эту кнопку, а потом наберите вот это" из MSDN... а можно — разобраться в архитектуре библиотеки (какой бы она ни была), понять ее сильные и слабые стороны, научиться использовать первые и обходить/заменять/усиливать вторые — после чего писать "руками", с полным осознанием каждой написанной строчки. Я выбрал именно второй способ.

В процессе написания предыдущего абзаца неожиданно сделал для себя такой вывод — очень опасно для программиста, когда используеая им библиотека выглядит в его глазах идеальной и непогрешимой. При таком подходе любая мало-мальски нетривиальная проблема (в ней ли самой, или в собственном коде) придет к мгновенному "опусканию рук". А так — я не жду от MFC граблей на каждом шагу, но знаю, что они могут быть, и готов потрассировать не только свой, но и ее исходный код, получив ручкой по лбу. И я не верю, что не смогу найти решения, причем достаточно элегантного.
[ posted via RSDN@Home 1.1.4 beta 3 r241 ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Блудов Павел Россия  
Дата: 21.12.04 10:13
Оценка: 1 (1) +1
Здравствуйте, SchweinDeBurg!

Везёт Вам
А у нас в конторе, к сожалению, используется перебранная ручками WTL, ATL и даже STL.
И когда-то давно была подправленная MFC. Было это в 1998 году. Тогда MFC была ещё подростком, с кучей подростковых болячек. И править их порой было так тоскливо...
Так что когда я весной 1999 года обнаружил в одном из примеров от ATL atlctrls.h, я сразу забил и забыл про MFC.
А что касается того, что у MFC все шикарно с базами данных, то позвольте спросить, Вы хоть раз заглядывали в daocore.cpp? И как Вам? И что из этого Вы не смогли бы написать самостоятельно?
Что касается меня, то я вполне способен использовать DAO на такой лад:
    ATL::CComPtr<_DAODBEngine>        pDAODBEngine;
    ATL::CComPtr<DAODatabase>        pDAODatabase;
    ATL::CComPtr<DAOWorkspaces>        pDAOWorkspaces;
    ATL::CComPtr<DAOWorkspace>        pDAOWorkspace;
    HRESULT                    hr;

    hr = pDAODBEngine.CoCreateInstance(CLSID_CDAODBEngine);
    ATLASSERT(SUCCEEDED(hr));

    if (SUCCEEDED(hr))
    {
        // Get default workspace from the workspaces collection
        hr = pDAODBEngine->get_Workspaces(&pDAOWorkspaces);
        if (SUCCEEDED(hr))
        {
            ATL::CComVariant    varIndex(0, VT_I4);
            hr = pDAOWorkspaces->get_Item(varIndex, &pDAOWorkspace);
        }
    }

// И понеслась...


Зачем мне эти странные MFC-шные обертки?
Вобщем, у меня за годы жизни сложилось обратное впечатление: MFC это библиотека для сборки WordPad'а и именно WordPad'а. Любая попытка выйти за рамки реализации -- тяжкая борьба с особенностями MFC.
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 11.12.04 10:12
Оценка: +2
Здравствуйте, c-smile, Вы писали:

CS>.NET WinForms... считаю что выбранная схема использования оберток вокруг HWND — дрова.


Ну собственно все то же что и в VCL, MFC

CS>Тут или все в managed нужно переводить или ничего. Я так думаю.

CS> Почему было принято HWND решение — не знаю.

Скорее всего просто не хватало ресурсов на разработку нового GUI с нуля. Вон Авалон даже к 2.0 не выйдет.
... << RSDN@Home 1.1.4 beta 3 rev. 255>>
AVK Blog
Re: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Ligen Украина http://zone-of-ambiguity.blogspot.com/
Дата: 12.12.04 20:36
Оценка: :))
Приветствую, SchweinDeBurg,

Не единожды приходили в голову подобные мысли )) Есть такая басня, что в момент выпуска Вин95, в очередях стояли даже люди, не имеющие компов... Сила рекламы! Так вот, при выпуске .Нет знакомые челы переписывали оттестеные, рабочие проекты.. скажем, для среднего бизнеса под .Нет аж досих пор стараюцца
Viva el Junta Militar! Viva el Presidente!
Re[6]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Nick Notabene Россия  
Дата: 16.12.04 16:30
Оценка: +1 :)
Здравствуйте, VladD2, Вы писали:
Ну вот наконец-то началась философия...

VD>

Быстро и недорого

Так же как и на Дельфи/Бильдере что не делает их оптимальными для разработки.

NN>>Там сказано "колымить".

VD>Это в смысле деньги зарабатывать своим трудом? Да... ужасно пошлое занятие.

Ну уж. Деньги зарабатывать своим трудом называется "труждаться". А "колымить" — это время от времени получать неожиданные деньги за странные задачки.
А "труждаться" вообще пошлое и бесперспективное занятие. Воровать перспективнее. Но негде.

VD>А, значит, "колымить" — это писать дипломы? А мужики то и не знают. (с)

При чем тут копирайт — я не понял, но имха, писать дипломы — это тоже колым. Нет ???

NN>>Так что зря вы так, Влад %-)))

VD>Это не я так. Это ты так.
Хых

NN>>Так они еще ОГОГО и есть.


VD>А. Ну, я то тоже думал ОГОГО, а прочел эту тему и понял, что так оправдываться без причины бессмыслнно


Ничо себе без причины. При таком-то маркетинге и рекламе. Любой себе вопрос задаст — если все так здорово, почему до сих пор нет работающих проектов на .Net ??? Почему я не пишу на .Net ??? И вот идет человек на форум, да пишет, почему ему удобно работать на том, на чем он работает... и получает в ответ пачку флейма. Но имха ДеБарг никаких разумных аргументов и не ждал

Между прочим, сегодня столкнулся с ситуацией- студент знает VB.Net и С#, и походу работает на нем уже год, чем очень гордится, НО! налицо "дельфийский синдром". Нет компоненты — задача решения не имеет. Как любит говорить один мой знакомый, "симптоматично"... %-)
Интуитивно понятный интерфейс — это интерфейс, для работы с которым нужна недюжинная интуиция...
Re[13]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: VladD2 Российская Империя www.nemerle.org
Дата: 20.12.04 20:17
Оценка: +2
Здравствуйте, Nick Notabene, Вы писали:

NN>Влад, так это хорошо?


Да.

NN> То есть ты считаешь, что разработчики, сделавшие проект как попало за счет того, что платформа скрыла большую часть их ошибок — это нормально ????


Неверная интерпретация. У каждого есть свой потолок. Будь ты трижды гением не всегда найдется задача ктороая тебе не подсилу. Например, почти любой дебил на любом средстве напишет Хэлоу Волд. Но создать качественную ОС подсилу очень не многим.

В общем, можно говорить об некой общей (кумулятивной) производительности. Она склаывается из возможностей программиста и уровня системы разработки.

В данном случае получилось так, что за счет использования средств более выского уровня программисты с не очень большими возможностями смогли решить задачу. Это однозначно хоршо. Это лучше если бо они вообще не смогли ее решить. Ведь иначе люди бегали бы с бумажками.

Так вот, проблема в том, что как только программист становится чуть-чуть опытнее он сразу заявляет, что средство тут не причем, и что все дело в людях. Это ошибка. Дело и в том, и в другом. Квалифицированный программист тоже выигрывает используя более высокоуровневое средство.

Как я отстал от жизни. Надо наслаждаться ее RADостями, а юзер потом привыкнет.

Я невидил ни одного программиста который бы сказал, что недостаточно опытен и т.п. По крайней мере на формумах все круты как вореные яйца. Но вот гляжу на сойт и понимаю, что все это бравада.

NN>Что касается опыта конкретно этих ребят — они уже третий вариант лепят, такой же кривой, как два предыдущих. И кстати, официально не использовать его нельзя. Неофициально у нас работает мой вариант, сделанный под MFC, и дающий на выходе такие-же файлы. Влад, сделать аналог этой программы отняло у меня десять дней, из них 4 — на то, чтобы разобраться, что должно быть на входе и на выходе. Работает везде, и 20 Мб фреймворка + 10Мб сервис-пака не требует. Какие из этого следуют выводы?


Что твоей уровень был несколько выше чем у них. И что если бы ты освоил фрэймворк, то смог бы решить задачу за 4 дня.

NN>Что касается этого разрекламированного "значительно быстрее" я тоже не согласен.


И зря. Переоценка своих сил никогда до бобра не доводила.


NN> Значительный прирост скорости разработки от использования .Net появляется тогда, когда на 95% ты используешь библиотеки платформы для решения стандартных задач.


Библиотеки это несмоненно одно из слагаемых успеха. Но далеко не самое важное, и точно не единственное. Применение дотнета дает и ряд других приемуществ.

NN>Но как показывает опыт, по достижению определенного запаса готовых библиотек и уровня разработки, большая часть времени уходит на создание уникальной функциональности, ради которой проект и затевается. И тут уж извини, от платформы мало что зависит.


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

NN>Хороший флейм получился. Качественный.


Фирма веников не фажет.
... << RSDN@Home 1.1.4 beta 3 rev. 267>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 21.12.04 08:39
Оценка: 3 (1)
Здравствуйте, c-smile, Вы писали:

AVK>>Да нет, все правильно — хендлы и сообщения по современным меркам очень неудобны. Вот только позиционировать им на замену убогий HTML — из огня да в полымя.


CS>Это по всей видимости неудачный опыт с IE сказывается.


CS>тут есть принципиальная разница. В IE например размер абсолютно позиционированног блока <DIV> с текстом внутри (т.е. + неявный TextNode) по косвенным оценкам примерно 5 kb.

CS>Плюс на это дело накладывается COM интерфейсы через которые script до DOMа достукивается.
CS>Что понятное дело для целей динамического насыщенного UI неприемлемо.

Это все мелочи. Взгляни немножко пошире. Я могу создать собственный элемент управления? Я могу ввести собственный DSL внутрь? Я могу использовать нормальный язык, а не убогий JScript? Могу декларативно задавать триггеры, аниматоры, хитрые закраски? Так можно еще долго перечислять. Я ведь не зря тебе говорил ознакомится поподробнее с тем что такое XAML. А размеры DIV блока? Мне лично пофигу.

CS>У меня размеры получаются на порядки меньше. Плюс каждый Node у меня native script object. Т.е. цена

CS>вызова например element.nextSibling в принципе не намного выше чем из hsmile C++ DOM interface.

Цена вызова это далеко не главная проблема современных интерфейсов.
... << RSDN@Home 1.1.4 beta 3 rev. 268>>
AVK Blog
Re: Почему я до сих пор пишу на MFC (заметки "старовера")
От: GlebZ Россия  
Дата: 11.12.04 13:57
Оценка: +1
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>Циничное наблюдение №2: люди, у которых ы руках "миллионы", не дадут и копейки "на скорость", "на стабильность", "на качество" — им нужен максимум прибыли при минимуме затрат.


Со всем согласен, кроме данного заявления.
Я не спец в маркетинге, но когда-то очень давно, мне попалась книжка "Основы маркетинга" Котлера. Там был замечательный пример того, что хорошо продается не только продукт который меньше стоит за те же деньги, но и дорогие продукты с теми же возможностями. Надо его всего лишь представить как VIP продукт. Когда работал на себя, этот приемчик очень хорошо прокатывал. Безусловно, нельзя обманывать клиента. Нужно говорить правду и только правду, какой бы она не была, и не скрывая ничего, иначе это обходится очень дорого. Но объяснить ему что такое процесс производства программного продукта и чем обходится скорость, стабильность и качество нужно. Если правильно объяснить, что ты делаешь VIP продукт, что он должен быть в чем-то лучше чем конкуренты могут себе позволить, то что он сможет им гордится и даже использовать в рекламных целях (может быть и такое). Так что, про минимум затрат я не очень согласен. Такие люди очень легко дают деньги для снижения рисков. Есть немного сфер где программные продукты дают увеличение прибылей. Значительно больше сфер, где они снижают риски бизнеса. Вот под это, и стоит брать деньги. А то что деньги у таких людей лишними не бывают, это правда.

С уважением, Gleb.
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: _FRED_ Черногория
Дата: 12.12.04 00:40
Оценка: +1
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>Здравствуйте, c-smile, Вы писали:

CS>>На самом деле MFC лучшая из классовых библиотек что я видел.
Из моего скромного опыта — "шаг вправо-шаг влево — расстрел", то есть очень жёстко заточена на то, что при её использовании должно получаться и как это должно работать. Можно и к плюсам отнести, но до тех пор, пока не потребуется чего-то "этакого".

SDB>Наиболее юзабельная, ИМХО так будет правильнее.

Да, покопавшись в исходниках и МСДНе можно многое подправить и добиться в конце-концов желаемого. Но, подчас, залезать приходится в такие дебри...
Самый, наверное, простой пример — в SDI получить возможность работать с документами нескольких типов (Хм... в семёрке подправлено, ну ладно, а сколько примеров того, как на диалог панель инструментов втащить?). И таких мелочей много, но беда не в их количестве (даже в .НЕТе подобных ... паттернов практически или даже совсем нету) а в том, что для исправления ситуации необходимо лезть глубоко в потроха самой библиотеки, смотреть что и как она делает для того чтоб своими действиями не навредить ей.

CS>>Лучшая имеется ввиду быстрая, внешне аккуратная и внутри human readable. Надежная библотека для промышленных апликаций короче.


SDB>Быстрая — согласен. А вот насчет "внешней аккуратности" и "читабельности" на самом деле можно поспорить. Но Юнусов Булат в одном из своих постов очень правильно (ИМХО) сказал:

SDB>

SDB>Были бы тогда копиляторы нормальные из нативного фрейммворка такого класса можно было бы конфетку сделать. Благо идеи туда заложены хорошие.
SDB>Если непредвзято посмотреть — то в мфц уже в 92 году использовалось изрядное количество паттернов проектирования — одна серилизация чего стоит, тут тебе и фабрика и регистрация и двойная диспатчеризация и это повторяю в 92 году (книга Гаммы с сотоварищами, кстати, вышла много позже).
SDB>Кстати мфцшная серилизация при всей своей некрасивости работает без радикальных изменений уже больше 10 лет. а бустовскую мы уже три года ждем
SDB>Вдогонку MFC-шний документ-вид практически пинками заставляет разделять данные и собственно гуй, не ахти какой паттерн, но много лучше чем тысячистроковые обработчики кликов в борландовских радостях.

SDB>(это было в ветке Литература для начинающих
Автор: bruth
Дата: 07.04.04
от 8 апреля этого года)


Тут не поспоришь. Разве что засомневаешься в актуальности сегодня тогдашних подходов и реализаций.

CS>>Имхо наиболее естественная я бы сказал это VCL от Borland

CS>>но как всегда у них "ну и шо? а зато душа красивая..."
SDB>Согласен.
Это не то, что с пионерскими галочками и крестиками у кнопок ОК и Отмена?

CS>>.NET WinForms... считаю что выбранная схема использования оберток вокруг HWND — дрова.

CS>>Тут или все в managed нужно переводить или ничего. Я так думаю. Почему было принято HWND решение — не знаю.
SDB>Гх-м-м... а как же без HWND-то? "Деньги, товарищи, еще никто не отменял!.." (с) "Берегись автомобиля". В смысле — Винда как ни крути, только дескриптор нам отдает, да и сама его пользует.


CS>>Только .NET и MFC противопоставление (или.или) имхо не совсем корректно.

SDB>Так я и не противопоставлял! Я объяснял свой выбор и не более того. Хотя обяъснять причины любви — затея неблагодарная.
Боюсь показаться грубым, но есть ли уверенность, что МФЦ и дальше будет развиваться, стремиться быть ближе к своим поклонникам, а не застынет в ближайшем будущем? Тогда уж либо другой предмет поклонения искать (а годы идут...) или переходить в отношения платонические...
Help will always be given at Hogwarts to those who ask for it.
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 13.12.04 06:02
Оценка: :)
Здравствуйте, _FRED_, Вы писали:

SDB>>под любой ОСью


_FR>Что-то я не разобрался, при чём тут МФЦ


Это имелось ввиду, что и под 9х тоже, а не только под семейством NT. Закоренелое виндовозничество неумолимо сказалось на точности формулировки.
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Metallica — 2 x 4 ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[9]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 18.12.04 13:14
Оценка: :)
Здравствуйте, Nick Notabene, Вы писали:

NN>>>При таком-то маркетинге и рекламе.


А MS никогда не жалел денег на продвижение своих технологий — и я считаю, что это правильно. Между прочим, некий процент этих вложений оседает в нашиих карманах в виде зарплаты.

NN>>>Любой себе вопрос задаст — если все так здорово, почему до сих пор нет работающих проектов на .Net ???


Гх-м-м... а Янус? Вполне себе работающий (и полезный) проект. Это я не "подлизываюсь", просто ближе всего к сердцу. Да и другие тулзы есть, у нас в "Средствах..." недавно ссылка проскакивала, я скачал парочку — очень даже ничего.

NN>>>Почему я не пишу на .Net ???


Блин! Так мой пост и был посвящен ответу на этот вопрос... и сводился он к тому, что я (пока!) не пишу на .NET, не потому что считаю его плохим, а потому что (пока!) у моих заказчиков не хватает "производственных мощностей", а у меня хватает средств удоветворить их (заказчиков) при помощи MFC.

NN>>>И вот идет человек на форум, да пишет, почему ему удобно работать на том, на чем он работает... и получает в ответ пачку флейма.


Ну, я бы не был так резок. Пока что почти все, что я прочел в ответ, было для меня очень интересно... даже Влад на удивление мягок. Пока...

NN>>>Но имха ДеБарг никаких разумных аргументов и не ждал


дебУрг!!

Nick, у меня есть убедительная просьба — давайте не будем "пихаться копчиками" с .NET-чиками, поклонниками WTL, etc. У каждого из нас своя ниша, сезонно мы мигрируем... (сезонность определяет MS — и я рад, что ее кто-то определяет). Я написал про "здесь и сейчас", которое "завтра" изменится, это был просто срез по настоящему (для меня).

Мир, дружба, нихт шайсен... тьфу! — шиссен...
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Deep Purple — Space Truckin' ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[9]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 18.12.04 13:19
Оценка: +1
Здравствуйте, Nick Notabene, Вы писали:

VD>>Как ты думешь, вот тут не о таких мужиках писалось http://www.nestor.minsk.by/sr/2003/07/30710.html ?


NN>Влад, спасибо за ссылку, классная статья. НО ! Ты не мог бы пояснить, каких именно мужиков ты имеешь в виду ???

NN>Там их несколько

Впрочем, из этого утверждения редко делается вывод. Программисты старше определенного возраста редко меняют язык по своей воле. Они будут считать достаточно хорошим тот язык, к которому привыкли.

Программисты очень привязываются к своим любимым языкам, а я не хочу оскорбить ничьи чувства, поэтому я объясню свою позицию, используя гипотетический язык с названием Блаб.

Блаб попадает в середину континуума абстрактности. Это не самый мощный язык, но он мощнее, чем Cobol или машинный язык.
И на самом деле, наш гипотетический программист на Блабе не будет использовать ни Cobol, ни машинный код. Для машинных кодов есть компиляторы. Что же касается Cobol'а, наш программист не знает, как на этом языке вообще что-то можно сделать. В Cobol'е даже нет некой возможности X, присутствующей в Блабе.

Когда наш гипотетический Блаб-программист смотрит вниз на континуум мощности языков, он знает, что смотрит вниз. Менее мощные, чем Блаб, языки явно менее мощны, так как в них нет некой особенности, к которой привык программист. Но когда он смотрит в другом направлении, вверх, он не осознает, что смотрит вверх. То, что он видит, — это просто "странные" языки. Возможно, он считает их одинаковыми с Блабом по мощности, но со всяческими сложными штучками. Блаба для нашего программиста вполне достаточно, так как он думает на Блабе.

Когда мы поменяем точку обзора программиста, используя любой язык программирования выше по континууму мощности, мы обнаружим, что теперь программист смотрит на Блаб сверху вниз. "Как же можно что-то сделать, используя Блаб? В нем отсутствует даже конструкция Y!"

Используя метод индукции, приходишь к выводу, что только те программисты, которые понимают самый мощный язык, в состоянии осознать полную картину разницы в мощности между различными языками (видимо, именно это имел ввиду Эрик Реймонд, когда говорил о том, что Lisp сделает вас лучше как программиста). Следуя парадоксу Блаба, нельзя доверять мнению других: другие программисты довольны тем языком, который используют, потому что этот язык определяет способ их программистского мышления.

... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[11]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: VladD2 Российская Империя www.nemerle.org
Дата: 19.12.04 07:54
Оценка: +1
Здравствуйте, Nick Notabene, Вы писали:

NN>По-моему, это плохая тенденция. Я неправ ?


Неправ. Ты увидил предпослыки и не смог их правильно интерпретировать.

Мужики писавшие софт что ты называшь кривым, просто били или недостаточно опытными, или видили средство разработки на котором работали первый день. И даже в таких условиях дотнет снял с них чать работы и они смогли сделать продукт. Точно так же для высоко квалифицированного программиста он снимет часть работы и программист сможет сделать бьльше чем раньше, или столько же, но значительно быстрее.
... << RSDN@Home 1.1.4 beta 3 rev. 267>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[14]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: McSeem2 США http://www.antigrain.com
Дата: 21.12.04 06:00
Оценка: :)
Здравствуйте, AndrewVK, Вы писали:

AVK>Нормальный вывод. Вам шашечки или ехать? Тут ведь альтернатива простая — либо глючный, но работающий софт на дотнете, либо вобще никакого софта и все руками.


Хм... Нечто похожее говорит Дик Столман:

Я скоре бы выбрал едва работающую, неэффективную, ненадежную, но бесплатную программу, чем удобную и надежную, но проприетарную программу, которая не уважает мою свободу.


А как насчет глючной, неэффективной и едва работающей проприетарной программы?
McSeem
Я жертва цепи несчастных случайностей. Как и все мы.
Re[15]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: c-smile Канада http://terrainformatica.com
Дата: 24.12.04 19:57
Оценка: :)
Здравствуйте, Nick Notabene, Вы писали:

NN>В общем, все это уже обсуждалось пофлеймили и будет. Спасибо за шикарную фразу " или кривой софт, или никакого


Николя, по моему ты слишком упростил оригинальную фразу:
"либо глючный, но работающий софт на дотнете, либо вобще никакого софта"

Там еще два смысловых слоя наличествует
Re[4]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: ArtemGorikov Австралия жж
Дата: 29.10.05 15:31
Оценка: -1
Здравствуйте, VladD2, Вы писали:

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


SDB>>Нет, Влад — я просто панически опасался незаслуженных плюх от "ваших" , поэтому и уточнял постоянно, что на .NET не нападаю. Кстати, если уж ковырять... то серьзных, развитых "технологий" (наверно, правильнее сказать — фреймворков) под винду и вправду два — MFC да .NET, потому как (ИМХО) WTL все-таки в большей степени "наколеночный" продукт.


VD>Да, я чё? Просто, симптоматично, однако.


Да, симпноматично в свете статьи, и тут я не могу не вставить свое мнение, что ATL (а с ним и WTL) стоят выше в эволюции языков/библиотек/фреймворков, чем MFC.
А на .NET так и не было еще достойных не-наколеночных десктопных приложений (янус я отношу к наколеночным). Да, и эти модные фичи .NET — xml-серилизация, куча G, managed-unmanaged код — это свойства не языка C#, а платформы, призванные облегчить жизнь программисту — т.е. избавить от необходимости лишний раз думать. Думать-то конечно вредно, но не всегда. А иногда за это деньги платят .

И, опять же, в свете статьи, все мы (C++/C#/Java/Delphi/VB) — в одном болоте, а над нами на 2 ступени эволюции выше — lisp-программеры и php-кулхацкеры .
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 11.12.04 10:06
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Мои три копейки:


Да тут целый рупь!

CS>На самом деле MFC лучшая из классовых библиотек что я видел.


При всей моей любви к MFC — я бы не употреблял "термин" "лучшая". Наиболее юзабельная, ИМХО так будет правильнее. Давно еще читал статью (хоть убей Бог не помню чью и где), в которой ставился вопрос: что для библиотеки важнее — красота архитектуры или юзабилити? Автор, основываясь на мнении энного количества программистов, утверждал, что второе. И в этом я с ним полностью согласен. Хотя здесь есть одно очень существенное "но" — восприятие красоты и ощущение юзабилити есть очень субъективные категории.

CS>Лучшая имеется ввиду быстрая, внешне аккуратная и внутри human readable. Надежная библотека для промышленных апликаций короче.


Быстрая — согласен. А вот насчет "внешней аккуратности" и "читабельности" на самом деле можно поспорить. Но Юнусов Булат в одном из своих постов очень правильно (ИМХО) сказал:

Были бы тогда копиляторы нормальные из нативного фрейммворка такого класса можно было бы конфетку сделать. Благо идеи туда заложены хорошие.
Если непредвзято посмотреть — то в мфц уже в 92 году использовалось изрядное количество паттернов проектирования — одна серилизация чего стоит, тут тебе и фабрика и регистрация и двойная диспатчеризация и это повторяю в 92 году (книга Гаммы с сотоварищами, кстати, вышла много позже).
Кстати мфцшная серилизация при всей своей некрасивости работает без радикальных изменений уже больше 10 лет. а бустовскую мы уже три года ждем
Вдогонку MFC-шний документ-вид практически пинками заставляет разделять данные и собственно гуй, не ахти какой паттерн, но много лучше чем тысячистроковые обработчики кликов в борландовских радостях.


(это было в ветке Литература для начинающих
Автор: bruth
Дата: 07.04.04
от 8 апреля этого года)

CS>Имхо наиболее естественная я бы сказал это VCL от Borland

CS>но как всегда у них "ну и шо? а зато душа красивая..."

Согласен.

CS>WTL... Это для небольших апликаций. Исходники достаточно больших вещей которые я видел можно использовать в качестве рвотного средства. Не потому что авторы неграмотные а просто архитектура такая. Эти руками прописываемые REFLECT_NOTIFICATIONS просто катастрофа. Я у себя в ATL/WTL REFLECT_NOTIFICATIONS() макро переименовал в OOP_DEATH() и теперь точно не забываю где у меня грабли будут.


А Вы не могли бы более подробно и с примерами кода пояснить? Я в некотором недоумении... у них рефлекция сделана хуже, чем в MFC?

CS>.NET WinForms... считаю что выбранная схема использования оберток вокруг HWND — дрова.

CS>Тут или все в managed нужно переводить или ничего. Я так думаю. Почему было принято HWND решение — не знаю.

Гх-м-м... а как же без HWND-то? "Деньги, товарищи, еще никто не отменял!.." (с) "Берегись автомобиля". В смысле — Винда как ни крути, только дескриптор нам отдает, да и сама его пользует.

CS>"Тайна сия мраком покрытая есмь". Вообще судя по тому что в качестве Graphics используется GDI+ авторы не предполагали серьезных GUI задач.


Ну, GDI+ — это неплохая штука. "Я попробовала — и мне понравилось..." (Чур не надо только про "девочек"
Автор: Amon-RA
Дата: 09.12.04
, это цитата из рекламы!) Хотя пока что работает немного медленнее, чем "простой" GDI. Но AFAIR в ближайшем будущем в нее обещались встроить использование всей мощности современных графических акселераторов.

CS>Так.. себя я уже похвалил... что осталось написать?


Сам себя не похвалишь...

CS>Ах да! Брату Schwein'у спаисибо большое за пост. Правильный он.


Брат Schwein или пост?

CS>Только .NET и MFC противопоставление (или.или) имхо не совсем корректно.


Так я и не противопоставлял! Я объяснял свой выбор и не более того. Хотя обяъснять причины любви — затея неблагодарная.

CS>Ну и конечно же Владу наше глубокое и искреннее почтение.


А куда же без этого. Он конечно резковат бывает, но... "у каждого свои недостатки..." (с) "В джазе только девушки"
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Electric Light Orchestra — The Lights Go Down ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Резковатый пост-скриптум (надеюсь, что лишний)
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 11.12.04 10:26
Оценка:
Данная ветка затеята исключительно с целью спокойно и конструктивно обсудить с коллегами причины выбора той или иной технологии, так что любителей "пихаться копчиками" и воевать я бы очень просил сюда не поститься.

"Есть, чем платить, но я не хочу
Победы любой ценой.
Я никому
Не хочу ставить ногу на грудь..."
(с) Цоюшка

"Патриотизм — религия бешеных..." (с) Вальтер Скотт

[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Кино — Группа крови ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 11.12.04 10:31
Оценка:
Здравствуйте, AndrewVK, Вы писали:

CS>>.NET WinForms... считаю что выбранная схема использования оберток вокруг HWND — дрова.


AVK>Ну собственно все то же что и в VCL, MFC


Вот-вот... я поэтому и попросил у c-smile уточнений:

Гх-м-м... а как же без HWND-то? "Деньги, товарищи, еще никто не отменял!.." (с) "Берегись автомобиля". В смысле — Винда как ни крути, только дескриптор нам отдает, да и сама его пользует.


AVK>Скорее всего просто не хватало ресурсов на разработку нового GUI с нуля. Вон Авалон даже к 2.0 не выйдет.


Согласен. Создать совершенно новую базу, по скорости и функциональности не уступающую GDI, да еще и поддерживающую обратную совместимость — задача очень нетривиальная ИМХО.
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Кино — Война ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[4]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 11.12.04 10:36
Оценка:
М-дя... таглайн офигенно соответствует Резковатый пост-скриптум (надеюсь, что лишний)
Автор: SchweinDeBurg
Дата: 11.12.04
... Нарочно не придумаешь...
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Кино — Спокойная ночь ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 11.12.04 14:13
Оценка:
Здравствуйте, GlebZ, Вы писали:

SDB>>Циничное наблюдение №2: люди, у которых ы руках "миллионы", не дадут и копейки "на скорость", "на стабильность", "на качество" — им нужен максимум прибыли при минимуме затрат.


GZ>Со всем согласен, кроме данного заявления.


Бывает...

GZ>Я не спец в маркетинге, но когда-то очень давно, мне попалась книжка "Основы маркетинга" Котлера.


А я "по ней" аж экзамен сдавал (по специальности — инженер-экономист).

GZ>...

<прочитано и перечитано внимательно, но скипнуто, чтобы не оверквотить>

Вы знаете, Глеб — в теории все выглядит очень гладко и приятно... но потом наступает время практики — и случаи оказываются совсем разными. Кто-то рассуждает "по книжке" (это я в позитивном смысле), а кто-то — строго наоборот. Далеко не все "коммерсанты" в нашей стране придерживаются западных моделей и западного опыта. Я работаю с ними уже третий год и не устаю веселиться (иногда — сквозь слезы). Так что написанное мной было лишь отражением собственного опыта... и я не уверен, считать ли его горьким или успешным. Но —

"И я счастлив тем, как сложилось все,
Даже тем, что было не так..."
(с) БГ
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Artist — Track 3 ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re: Почему я до сих пор пишу на MFC (заметки "старовера")
От: _FRED_ Черногория
Дата: 12.12.04 00:01
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>Главное требование, которое предъявляется к тому софту, что я сейчас пишу — максимальная скорость работы любой ценой, на самом паршивом железе... максимальная стабильность — под любой ОСью, какой бы неустойчивой она ни была. Не думаю, что я единственный, перед кем ставят подобные задачи. Таким образом, .NET отпадает (клиентского железа на него не хватит).


Что-то я не разобрался, при чём тут МФЦ
Help will always be given at Hogwarts to those who ask for it.
Re: Почему я до сих пор пишу на MFC (заметки "старовера")
От: alexeiz  
Дата: 12.12.04 01:13
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>И тут наш взгляд падает на WTL. Она красива! "WTL rocks. It does." (с) Michael Dunn. Она логична и близка к API, от которого пока все равно никуда не уйти (исходники Януса — лучшее тому подтверждение). Одна беда — в ней нет классов, реализующих работу с БД.


ATL OLEDB consumer templates в зубы и вперед. Для непосвященных может выглядеть жутковато, но для сторонников WTL это тот же самый привычный подход.
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 13.12.04 06:02
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Сабж вроде намекал, что речь пойдет про МФЦ, а на поверку получились очередные оправдания почему не .Net.


Нет, Влад — я просто панически опасался незаслуженных плюх от "ваших" , поэтому и уточнял постоянно, что на .NET не нападаю. Кстати, если уж ковырять... то серьзных, развитых "технологий" (наверно, правильнее сказать — фреймворков) под винду и вправду два — MFC да .NET, потому как (ИМХО) WTL все-таки в большей степени "наколеночный" продукт.

VD>Симптоматично, однако.


Ничего-ничего, мы еще пару лет "понеможем" "поступаться принципами"...
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Metallica — The House Jack Built ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[4]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 13.12.04 06:10
Оценка:
Здравствуйте, GlebZ, Вы писали:

GZ>А выход у меня из подобной ситуации, всегда был простой. Выбераю ключевую фигуру в проекте (в крупной организации ключевой может быть группа поскольку от нее зависит санкция на оплату). Делаю так, чтобы он считал что является главой проекта, а я являюсь техническим исполнителем (руководителем). И именно он его создает. Любой вопрос относительно аналитики, решаю только по согласованию с ним. Создаваю документы которые он может визировать или корректировать. Ессно, коррективы фильтрую, пользуясь отписками, что это например нереализуемо или другими обоснованными причинами. Всегда помню, что я деньги зарабатываю, а не пишу гениальные программы.(для гениальных программ есть личное время).


Выделенное — просто супер, я запомню! А в целом — согласен полностью, сам тоже стараюсь строить "отношения" аналогичным образом.

GZ>С уважением, Gleb.


С неменьшим, Илья.
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Metallica — King Nothing ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 13.12.04 06:13
Оценка:
Здравствуйте, alexeiz, Вы писали:

A>ATL OLEDB consumer templates в зубы и вперед.


Слышал, но пристально не приглядывался... будет время — наверстаю.
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Metallica — King Nothing ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[4]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 13.12.04 07:02
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Типовая цитата "Для того чтобы мой компонент работал вставьте в свой контейнер REFLECT_NOTIFICATION".


М-дя... грустно...

CS>Не способствует модульному программированию, правда?


Правда.

CS>Примеров — валом. Тот же замечательный MSForms компонент. Прэлэсть как работает.

CS>Открываем в IE любую страницу с input elements и смотрим Spy++. Нет там HWND.
CS>То же в Mozilla и Opera.

— Ты видишь в этой программе HWND?
— Нет.
— И я нет. А он есть...



CS>Как только чуть чуть сложнее ирерхия окон — все — абздольц — HWND только мешают.


Смелое заявление.
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Metallica — The Outlaw Torn ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[4]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 13.12.04 07:15
Оценка:
Здравствуйте, _FRED_, Вы писали:

_FR>Из моего скромного опыта — "шаг вправо-шаг влево — расстрел", то есть очень жёстко заточена на то, что при её использовании должно получаться и как это должно работать. Можно и к плюсам отнести, но до тех пор, пока не потребуется чего-то "этакого".


Формально я с Вами полностью согласен, но фактически — "общественность" уже придумала тысячу и один способ смягчать жесткость MFC-шной архитектуры. Тем не менее, я отношу эту жесткость к одним из самых существенных недостатков данной библиотеки.

_FR>необходимо лезть глубоко в потроха самой библиотеки, смотреть что и как она делает


А это ИМХО всегда полезно — в "потрохах" поковыряться. Знай и люби свой город, так сказать.

_FR>Это не то, что с пионерскими галочками и крестиками у кнопок ОК и Отмена?


Э-э-э... "это такой белый прикол, в который черные не въезжают?.." (с) "Карты, деньги, два ствола"

_FR>Боюсь показаться грубым, но есть ли уверенность, что МФЦ и дальше будет развиваться, стремиться быть ближе к своим поклонникам, а не застынет в ближайшем будущем?


Есть. Лет несколько еще точно — слишком много серьезных продуктов написано с ее участием, и энное их количество продолжает создаваться "даже" сейчас. Развитие это будет, в основном эво- , а не рево- люционным... фиксы багов, предоставление доступа к фичам новых версий винды. По моим предположениям MFC сойдет со сцены года через 3-5, уступив место WinFroms'ам и перейдя в категорию legacy code.

_FR>Тогда уж либо другой предмет поклонения искать (а годы идут...) или переходить в отношения платонические...


Я не поклоняюсь ни одной технологии — они приходят и уходят, а мы остаемся...
[ posted via RSDN@Home 1.1.4 beta 3 r241, accompanied by Motorhead — Death Or Glory ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: _alm_ Украина  
Дата: 13.12.04 12:13
Оценка:
Здравствуйте, alexeiz, Вы писали:

A>ATL OLEDB consumer templates в зубы и вперед. Для непосвященных может выглядеть жутковато, но для сторонников WTL это тот же самый привычный подход.


AFAIR, там очень сильно структура классов доступа связана со структурой таблиц БД. Что не есть гуд (по крайней мере, мы в одном проектет именно по этой причине отказались от использования ATL). Или мы просто плохо смотрели ?
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: alexeiz  
Дата: 13.12.04 12:23
Оценка:
Здравствуйте, _alm_, Вы писали:

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


A>>ATL OLEDB consumer templates в зубы и вперед. Для непосвященных может выглядеть жутковато, но для сторонников WTL это тот же самый привычный подход.


__>AFAIR, там очень сильно структура классов доступа связана со структурой таблиц БД. Что не есть гуд (по крайней мере, мы в одном проектет именно по этой причине отказались от использования ATL). Или мы просто плохо смотрели ?


Там всё можно и динамически делать тоже. Медленнее, чем статически получается (consumer templates все-таки заточены на максимум производительности, минимум ненужных копирований данных из одного места в другое, заранее преаллоцированные буфера и т.п.), но тем не менее можно.
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.12.04 09:01
Оценка:
Здравствуйте, Nick Notabene, Вы писали:

NN>Ну и не мудрено, однако при такой-то рекламе. Как тут у кого-то ориджин был — "Вы еще не программируете на .Net ??? Мне вас жаль. " Противопоставление-то навязанное. При выборе платформы разработки вопрос ".Net или не .Net" возникает сам собой. И если не .Net, то сразу вопрос — почему ? это же модно ! а все говорят ! а не верите — сходите на RSDN !


Неохота лезть в эту бессмысленную дискуссию. Так что ограничусь тем, что предложу сравнить статистику форумов "MFC" и ".NET GUI". Если отбросить предположение, что по .NET GUI меньше вопросво из-за более понятного дизайна, то цифры как бы сами за себя гворят... даже на РСДН МФЦ пока что больше популярно чем .NET GUI.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 14.12.04 09:01
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>Нет, Влад — я просто панически опасался незаслуженных плюх от "ваших" , поэтому и уточнял постоянно, что на .NET не нападаю. Кстати, если уж ковырять... то серьзных, развитых "технологий" (наверно, правильнее сказать — фреймворков) под винду и вправду два — MFC да .NET, потому как (ИМХО) WTL все-таки в большей степени "наколеночный" продукт.


Да, я чё? Просто, симптоматично, однако.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: GlebZ Россия  
Дата: 14.12.04 17:47
Оценка:
Здравствуйте, Nick Notabene, Вы писали:

NN>Хотя колымить на .Net — милое дело. Впрочем, как и на Java. Быстро и недорого. Не очень качественно, но и так сойдет

Что значит некачественно? Качество — это категория связанная с разработчиком, а не со средой разработки.

NN>В общем, MFC используется и будет использоваться. Хотя постепенно сойдет на .Net, как и все проходящее Не самая худшая из библиотек.

Согласен

Для каждой задачи и команды выбирают конкретную среду. А выбор среды всегда вопрос компромиса с многими параметрами.

С уважением, Gleb.
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: GlebZ Россия  
Дата: 14.12.04 17:53
Оценка:
Здравствуйте, alexeiz, Вы писали:

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


SDB>>И тут наш взгляд падает на WTL. Она красива! "WTL rocks. It does." (с) Michael Dunn. Она логична и близка к API, от которого пока все равно никуда не уйти (исходники Януса — лучшее тому подтверждение). Одна беда — в ней нет классов, реализующих работу с БД.


A>ATL OLEDB consumer templates в зубы и вперед. Для непосвященных может выглядеть жутковато, но для сторонников WTL это тот же самый привычный подход.

Выбирать, все таки, стоит из того, что знаешь. OLEDB templates — неоценим если нужно построить свой источник данных. В остальных случаях, рекомендую использовать то что знаешь. У OLEDB свои червяки есть.

С уважением, Gleb.
Re[5]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: c-smile Канада http://terrainformatica.com
Дата: 14.12.04 18:29
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:


SDB>- Ты видишь в этой программе HWND?

SDB>- Нет.
SDB>- И я нет. А он есть...



CS>>Как только чуть чуть сложнее ирерхия окон — все — абздольц — HWND только мешают.


SDB>Смелое заявление.


Примеры: скролируемый контейнер содержащий дочерние окна.
Прозрачные и полупрозрачные окна в три слоя.

В Windows так и не решена по хорошему проблема с прозрачными child окнами.
Layared windows появились но не для child окон.

Да хотя бы взять тот же tab control в XP. У него градиентная заливка фона.
В MFC под каждую страницу tab создается HWND контейнер. Так как прозрачности нет то в MFC поддержка XP стилей отдает концы. Системные tabs смотрятся убого.
Re[4]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Nick Notabene Россия  
Дата: 15.12.04 16:23
Оценка:
Привет , VladD2 !, Вы писали:

NN>>Скорость разработки — не делайте мне смешно ! — гораздо больше зависит от проработки архитектуры системы, готовых компонент/библиотек и дисциплины мышления. Заказчик менять парк машин не собирается, также как и лицензионный Win98SE. Так об чем говорить ?

VD>...
NN>>Хотя колымить на .Net — милое дело. Впрочем, как и на Java. Быстро и недорого. Не очень качественно, но и так сойдет

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


Ээээ ГДЕ ??? Где тут такое сказано ? Откуда таие далко идущие выводы ???
Там сказано "колымить". А "колым" чаще всего подразумевает платформу разработки как данность — без выбора. Если заочнику надо диплом нв Ява, я же не дам ему проект на МФЦ ??? Ж-)
Так что зря вы так, Влад %-)))

VD>В обещм, если уж чувствуете, что используете устаривающие технологии, то используйте их спокойно не поднимая то и дело вопрос о том, что они вовсе не устаривают, а еще ОГОГО.


Так они еще ОГОГО и есть.Устаревшая технология — это технология невостребованная. Тут речь идет о том, что проекты на МФЦ пока востребованны и актуальны, и будут таковыми год-три-пять, Вот собственно и все %-)

VD) Неохота лезть в эту бессмысленную дискуссию.

Влад, это такая конференция, которая вся насквозь состоит из бессмысленных дискуссий.Сколько ее читаю — осмысленная дискуссия большая редкость здесь. А читать все равно интересно.Очень здравые мысли попадаются, толко они потом тонут в полемике %-) но спор это спорт.
Интуитивно понятный интерфейс — это интерфейс, для работы с которым нужна недюжинная интуиция...
Re[5]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 15.12.04 20:20
Оценка:
Здравствуйте, Nick Notabene, Вы писали:

NN>Ээээ ГДЕ ??? Где тут такое сказано ? Откуда таие далко идущие выводы ???

Быстро и недорого


NN>Там сказано "колымить".


Это в смысле деньги зарабатывать своим трудом? Да... ужасно пошлое занятие.

NN> А "колым" чаще всего подразумевает платформу разработки как данность — без выбора. Если заочнику надо диплом нв Ява, я же не дам ему проект на МФЦ ??? Ж-)


А, значит, "колымить" — это писать дипломы? А мужики то и не знают. (с)

NN>Так что зря вы так, Влад %-)))


Это не я так. Это ты так.

NN>Так они еще ОГОГО и есть.


А. Ну, я то тоже думал ОГОГО, а прочел эту тему и понял, что так оправдываться без причины бессмыслнно.
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[7]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.12.04 00:16
Оценка:
Здравствуйте, Nick Notabene, Вы писали:

NN>Ничо себе без причины. При таком-то маркетинге и рекламе. Любой себе вопрос задаст — если все так здорово, почему до сих пор нет работающих проектов на .Net ??? Почему я не пишу на .Net ??? И вот идет человек на форум, да пишет, почему ему удобно работать на том, на чем он работает... и получает в ответ пачку флейма. Но имха ДеБарг никаких разумных аргументов и не ждал


Как ты думешь, вот тут не о таких мужиках писалось http://www.nestor.minsk.by/sr/2003/07/30710.html ?
... << RSDN@Home 1.1.4 beta 3 rev. 207>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[8]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Nick Notabene Россия  
Дата: 18.12.04 12:51
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Здравствуйте, Nick Notabene, Вы писали:


NN>>Ничо себе без причины. При таком-то маркетинге и рекламе. Любой себе вопрос задаст — если все так здорово, почему до сих пор нет работающих проектов на .Net ??? Почему я не пишу на .Net ??? И вот идет человек на форум, да пишет, почему ему удобно работать на том, на чем он работает... и получает в ответ пачку флейма. Но имха ДеБарг никаких разумных аргументов и не ждал


VD>Как ты думешь, вот тут не о таких мужиках писалось http://www.nestor.minsk.by/sr/2003/07/30710.html ?


Влад, спасибо за ссылку, классная статья. НО ! Ты не мог бы пояснить, каких именно мужиков ты имеешь в виду ???
Там их несколько
Интуитивно понятный интерфейс — это интерфейс, для работы с которым нужна недюжинная интуиция...
Re[10]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: Nick Notabene Россия  
Дата: 19.12.04 07:11
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>Гх-м-м... а Янус? Вполне себе работающий (и полезный) проект. Это я не "подлизываюсь", просто ближе всего к сердцу. Да и другие тулзы есть, у нас в "Средствах..." недавно ссылка проскакивала, я скачал парочку — очень даже ничего.


А я сталкивался уже с десятком проектов на .Net, из которых нормально работали два. Остальные просто кошмарны. Причем часть из них принудительно навязываются — например, "Анкета ФКЦБ" — просто чудо. Если бы эти проекты писались на C++, они не увидели бы свет — их создатели умерли бы на отловке эксцепшенов. А так криво, но работает. По-моему, это плохая тенденция. Я неправ ?

Я понимаю, что это цена прогресса — надо заставлять людей покупать новое железо и новый софт для решения все тех же задач. Это экстенсивное развитие, которое обычно приводит к тупику. После чего начинается развитие интенсивное. Пока ресурсы есть. Рано или поздно они кончатся. История развивается по спирали — думаю, лет через 15 тема оптимального программирования снова станет актуальной.

SDB>Блин! Так мой пост и был посвящен ответу на этот вопрос... и сводился он к тому, что я (пока!) не пишу на .NET, не потому что считаю его плохим, а потому что (пока!) у моих заказчиков не хватает "производственных мощностей", а у меня хватает средств удоветворить их (заказчиков) при помощи MFC.


Так а кто спорит ? Про это здесь речь и идет. Разумная рациональность при высокой производительности и приемлимой скорости разработки. Только это немодно.

NN>>>>И вот идет человек на форум, да пишет, почему ему удобно работать на том, на чем он работает... и получает в ответ пачку флейма.


SDB>Ну, я бы не был так резок. Пока что почти все, что я прочел в ответ, было для меня очень интересно... даже Влад на удивление мягок. Пока...


Пачку интересного флейма. Но это конференция такая.

SDB>дебУрг!!

Сорри

SDB>Nick, у меня есть убедительная просьба — давайте не будем "пихаться копчиками" с .NET-чиками, поклонниками WTL, etc. У каждого из нас своя ниша, сезонно мы мигрируем... (сезонность определяет MS — и я рад, что ее кто-то определяет). Я написал про "здесь и сейчас", которое "завтра" изменится, это был просто срез по настоящему (для меня)


Дык об чем речь. Есть проекты, которые удобнее решать на WTL. Вообще хорошо любое средство разработки, которое позволяет решить задачу в поставленные сроки и в заданном объеме. Чем больше платформ и идеологий разработки тебе доступны, тем легче тебе работать.

Меня просто раздражает очень навязчивая реклама, которая позиционирует .Net как универсальное и оптимальное средство для решения любых задач. Это не так. Это в общем-то обман, за который иногда приходитя отвечать разработчику. Вот и все %-)
Интуитивно понятный интерфейс — это интерфейс, для работы с которым нужна недюжинная интуиция...
Re[6]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: c-smile Канада http://terrainformatica.com
Дата: 20.12.04 21:12
Оценка:
Здравствуйте, AndrewVK, Вы писали:

CS>>>Как только чуть чуть сложнее ирерхия окон — все — абздольц — HWND только мешают.


SDB>>Смелое заявление.


AVK>Да нет, все правильно — хендлы и сообщения по современным меркам очень неудобны. Вот только позиционировать им на замену убогий HTML — из огня да в полымя.


Это по всей видимости неудачный опыт с IE сказывается.

тут есть принципиальная разница. В IE например размер абсолютно позиционированног блока <DIV> с текстом внутри (т.е. + неявный TextNode) по косвенным оценкам примерно 5 kb.
Плюс на это дело накладывается COM интерфейсы через которые script до DOMа достукивается.

Что понятное дело для целей динамического насыщенного UI неприемлемо.

У меня размеры получаются на порядки меньше. Плюс каждый Node у меня native script object. Т.е. цена
вызова например element.nextSibling в принципе не намного выше чем из hsmile C++ DOM interface.
Re[5]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: _FRED_ Черногория
Дата: 20.12.04 21:17
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

_FR>>Из моего скромного опыта — "шаг вправо-шаг влево — расстрел", то есть очень жёстко заточена на то, что при её использовании должно получаться и как это должно работать. Можно и к плюсам отнести, но до тех пор, пока не потребуется чего-то "этакого".

SDB>Формально я с Вами полностью согласен, но фактически — "общественность" уже придумала тысячу и один способ смягчать жесткость MFC-шной архитектуры. Тем не менее, я отношу эту жесткость к одним из самых существенных недостатков данной библиотеки.

Так это уже не МФЦ получается, а МФС & Co — это оттуда, это отсюда... венегред.

_FR>>необходимо лезть глубоко в потроха самой библиотеки, смотреть что и как она делает

SDB>А это ИМХО всегда полезно — в "потрохах" поковыряться. Знай и люби свой город, так сказать.
Всё-таки согласен. Это даже приятнее чем рефлектором вскрывать

_FR>>Это не то, что с пионерскими галочками и крестиками у кнопок ОК и Отмена?

SDB>Э-э-э... "это такой белый прикол, в который черные не въезжают?.." (с) "Карты, деньги, два ствола"


_FR>>Боюсь показаться грубым, но есть ли уверенность, что МФЦ и дальше будет развиваться, стремиться быть ближе к своим поклонникам, а не застынет в ближайшем будущем?

SDB>Есть. Лет несколько еще точно — слишком много серьезных продуктов написано с ее участием, и энное их количество продолжает создаваться "даже" сейчас. Развитие это будет, в основном эво- , а не рево- люционным... фиксы багов, предоставление доступа к фичам новых версий винды. По моим предположениям MFC сойдет со сцены года через 3-5, уступив место WinFroms'ам и перейдя в категорию legacy code.
Угу.

_FR>>Тогда уж либо другой предмет поклонения искать (а годы идут...) или переходить в отношения платонические...

SDB>Я не поклоняюсь ни одной технологии — они приходят и уходят, а мы остаемся...
Этому предшествовало признание в любви, которое я и приравнял к поклонению. Извиняюсь
Help will always be given at Hogwarts to those who ask for it.
Re[6]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: SchweinDeBurg Россия http://zarezky.spb.ru/
Дата: 21.12.04 05:44
Оценка:
Здравствуйте, _FRED_, Вы писали:

_FR>Так это уже не МФЦ получается, а МФС & Co — это оттуда, это отсюда... венегред.


Не соглашусь. Грамотно написанные "компоненты", расширяющие и углубляющие базовую библиотеку, обогощают наши с вами возможности ее (библиотеки) использования.

_FR>Этому предшествовало признание в любви, которое я и приравнял к поклонению. Извиняюсь


Принимаю.
[ posted via RSDN@Home 1.1.4 beta 3 r241 ]
- Искренне ваш, Поросенок Пафнутий ~ ICQ#116846877
In Windows, there’s always a catch… © Paul DiLascia
Re[7]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: _FRED_ Черногория
Дата: 21.12.04 06:27
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

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


_FR>>Так это уже не МФЦ получается, а МФС & Co — это оттуда, это отсюда... венегред.


SDB>Не соглашусь. Грамотно написанные "компоненты", расширяющие и углубляющие базовую библиотеку, обогощают наши с вами возможности ее (библиотеки) использования.


Ну не мечта ли — иметь систему, целиком построенную на "грамотно написанных компонентах,расширяющих, обогощающих, ..."
Только БЦГ под это определение подвести могу, зато да, библиотека Но вот ведь — и в ней тот же недостаток МФЦ — жёсткость каркаса
Остальное — гибкое, не монстроподобное — не всегда один-в-один возмёшь к себе и прикрутишь — от чего-то наследоваться придётся, что-то править. Но всё это слишком не конкретно, потому — непродуктивно. Попробую с другой стороны. Немного ранее было:
SDB>"общественность" уже придумала тысячу и один способ смягчать жесткость MFC-шной архитектуры.
Вот. Способы разнородные, придуманные не одним человеком с размыми взглядами на "что такое "хорошо". В итоге изучаешь проект, в котором хоть десяток сторонних (не МС и не своих) компонентов, с разной архитектурой доступа, с разными соглашениями по именованию классов... Тихо ругаешься
В то же время существуют библиотеки гораздо более "развесистые" и которые не так часто требуется исправлять
Help will always be given at Hogwarts to those who ask for it.
Re[15]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: VladD2 Российская Империя www.nemerle.org
Дата: 21.12.04 07:00
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>Наверно, получилось слишком лирично и пафосно...


Да, уж. Но если в этих словах есть хотя бы 10% правды, то они уже достойны уважения.
... << RSDN@Home 1.1.4 beta 3 rev. 267>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[15]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 21.12.04 08:39
Оценка:
Здравствуйте, McSeem2, Вы писали:

AVK>>Нормальный вывод. Вам шашечки или ехать? Тут ведь альтернатива простая — либо глючный, но работающий софт на дотнете, либо вобще никакого софта и все руками.


MS>Хм... Нечто похожее говорит Дик Столман:

MS>

MS>Я скоре бы выбрал едва работающую, неэффективную, ненадежную, но бесплатную программу, чем удобную и надежную, но проприетарную программу, которая не уважает мою свободу.


Он говорит прямо противоположное.
... << RSDN@Home 1.1.4 beta 3 rev. 268>>
AVK Blog
Re: Резковатый пост-скриптум (надеюсь, что лишний)
От: Bigger Российская Империя  
Дата: 21.12.04 08:51
Оценка:
Здравствуйте, SchweinDeBurg, Вы писали:

SDB>Данная ветка затеята исключительно с целью спокойно и конструктивно обсудить с коллегами причины выбора той или иной технологии, так что любителей "пихаться копчиками" и воевать я бы очень просил сюда не поститься.


SDB>"Есть, чем платить, но я не хочу

SDB>Победы любой ценой.
SDB>Я никому
SDB>Не хочу ставить ногу на грудь..."
SDB>(с) Цоюшка

SDB>"Патриотизм — религия бешеных..." (с) Вальтер Скотт


SDB>


Очень правильный и пост, и брат
Мой выбор MFC, правда очень #import мне нравиться
До базы легко достучаться. А если добавить ATL, то вообще
Моя прога писанная на MFC(VC++ 6) + #import + MS Access(97) пахала на 486-66/RAM 32Mb,
причем не сильно тормозила

Программист — это шаман..., подарите бубен!
Re[7]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 21.12.04 09:21
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>У меня размеры получаются на порядки меньше. Плюс каждый Node у меня native script object. Т.е. цена

CS>вызова например element.nextSibling в принципе не намного выше чем из hsmile C++ DOM interface.

Отстал ты от жизни. Сейчас модно объектную модель не эмулировать и выставлять скриптам, а строить на базе управляемых сред. И цена вызова становится такой же как у любого другого метода в С++-программе, и скрипты не нунжы вовсе, так как есть полноценные языки с теми же свойствами.
... << RSDN@Home 1.1.4 beta 3 rev. 267>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: GlebZ Россия  
Дата: 21.12.04 12:23
Оценка:
Здравствуйте, Блудов Павел, Вы писали:

БП>Здравствуйте, SchweinDeBurg!


БП>Везёт Вам

БП>А у нас в конторе, к сожалению, используется перебранная ручками WTL, ATL и даже STL.
БП>И когда-то давно была подправленная MFC. Было это в 1998 году. Тогда MFC была ещё подростком, с кучей подростковых болячек. И править их порой было так тоскливо...
Вообще-то, назвать в 1998 году MFC подростком я не могу. Писал на ней еще под Win16. Были болячки по поводу перехода на Win32, но они к этому времени были решены (хотя, на мой взгляд, не совсем красиво).
В основном такие слова говорят о небольшом опыте использования библиотеки.

БП>Так что когда я весной 1999 года обнаружил в одном из примеров от ATL atlctrls.h, я сразу забил и забыл про MFC.

Я несколько раньше посмотрел atlctrls и забил на них. Тратить время на программирование того, что делается значительно легче, не очень хотелось. Использовал только в составе ActiveX.

БП>А что касается того, что у MFC все шикарно с базами данных, то позвольте спросить, Вы хоть раз заглядывали в daocore.cpp? И как Вам? И что из этого Вы не смогли бы написать самостоятельно?

БП>Что касается меня, то я вполне способен использовать DAO на такой лад:
Наоборот, написал OleDB библиотеку (поддержки OleDB атлом еще не было). Прекрасно использовалось вместе с MFC.

БП>Вобщем, у меня за годы жизни сложилось обратное впечатление: MFC это библиотека для сборки WordPad'а и именно WordPad'а.

MFC — библиотека для сборки WordPad'а, и ваша задача ее расширить до границ вашего приложения. Почему все меряют эффективность MFC, Delphi или Net по стандартным контролам? Ну не предназначены эти ублюдочные контролы для серьезного приложения. Они специально сделаны, чтобы третьи фирмы могли заработать себе на хлеб. А в MFC, они не больше чем враппер на WinAPI, и легко расширяются до нужных границ. Не будете же вы говорить, что GUI предназначено только для написания WordPad'а?

БП>Любая попытка выйти за рамки реализации -- тяжкая борьба с особенностями MFC.

Нормальная борьба. Я еще не встречал систем, в которой данной борьбы не было. Тем что MFC большей частью является враппером на API, определяет успех в этой борьбе. Моя борьба с ранними версиями WTL закончилась в их пользу. После одного проекта, на WTL забил (думал до нормальной безглючной версии, получилось что больше никогда не использовал).

С уважением, Gleb.
Re[14]: Почему я до сих пор пишу на MFC (заметки "старовера"
От: Nick Notabene Россия  
Дата: 24.12.04 19:39
Оценка:
Здравствуйте, AndrewVK, Вы писали:
Давненько я сюда не заходил. Заглохла ветка, и слава богу

НО !!! Вот эта фраза:

AVK>Нормальный вывод. Вам шашечки или ехать? Тут ведь альтернатива простая — либо глючный, но работающий софт на дотнете, либо вобще никакого софта и все руками.


это просто 5 баллов ) я ее себе записал и буду цитировать. Звучит просто как слоган для одной малоизвестной софтверной корпорации )

AVK>Есть опыт разработки аналогичных проектов на дотнете и классической платформе?


AVK>Не могу с тобой согласится, поскольку мой опыт свидетельствует об обратном. Что такое янус представляешь? Так вот — до него у меня был опыт реализации схожих систем, может чуть попроще. Один раз на Дельфи, другой раз на C#. На Дельфи проект занял 8 месяцев, на шарпе 3.


Янус хороший проект, достаточно сложный, и .Net как специально для него разрабатывали — тут ничего странного.

.
У меня есть опыт разработки равноценных проектов на С#, Java и С++. В итоге живут только проекты на MFC (по ресурсам и производительности оптимум на машинах заказчика), и на Java (там мужики Windows никогда не считали за серьезную ОС). Net-овский проект так и остался демонстрашкой. По крайней мере пока. Специфика — много 2D — графики, "псевдореальность времени", и очень большие блоки данных ( до 170 блоков по 20-25 Мб каждый). Java проект кстати приемлимо работает только потому, что техника серьезная — Sun SparkStation и Солярис. MFCшный работает везде,.Net — нигде.

В общем, все это уже обсуждалось пофлеймили и будет. Спасибо за шикарную фразу " или кривой софт, или никакого
Интуитивно понятный интерфейс — это интерфейс, для работы с которым нужна недюжинная интуиция...
Re[8]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 28.10.05 04:18
Оценка:
Здравствуйте, Marty, Вы писали:

Тьфу, черт. Тема то старая. Сорри что поднял
Маньяк Робокряк колесит по городу
Re[8]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: minorlogic Украина  
Дата: 28.10.05 06:17
Оценка:
Здравствуйте, Marty, Вы писали:

M>Здравствуйте, Nick Notabene, Вы писали:



NN>>Ничо себе без причины. При таком-то маркетинге и рекламе. Любой себе вопрос задаст — если все так здорово, почему до сих пор нет работающих проектов на .Net ??? Почему я не пишу на .Net ??? И вот идет человек на форум, да пишет, почему ему удобно работать на том, на чем он работает... и получает в ответ пачку флейма. Но имха ДеБарг никаких разумных аргументов и не ждал


M>Решил вставить свои три копейки. У меня есть перед глазами один проект на .NET. Это RSDN@home. Я думал, как будет круто скачивать форумы и читать их в оффлайне. По аналогии с обычной почтой, которой в онлайне пользоваться не удобно. В результате сюда пишу все равно в онлайне, и пришел к выводу, что на дотНете ничего делать в ближайшее время не буду



Судить о Net по RSDN@home не стоит , приложение явно написанно двумя левыми ногами. Я бы советовал посмотреть Paint.Net кажется так, небольшой но мощный графический редактор.
Ищу работу, 3D, SLAM, computer graphics/vision.
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: IT Россия linq2db.com
Дата: 28.10.05 23:48
Оценка:
Здравствуйте, c-smile, Вы писали:

>На самом деле MFC лучшая из классовых библиотек что я видел.

>Лучшая имеется ввиду быстрая, внешне аккуратная и внутри human readable. Надежная библотека для промышленных апликаций короче.

А мне вот она рвотным средством показалась после Turbo Vision. Потом привык

CS>Даже вот так и не скажу сразу. Мой J-SMILE наверное the best Действительна классная штука — проста как двери, эффективна и классово правильная. ООП так и брыжжит. Так.. себя я уже похвалил... что осталось написать?


Осталось её перетащить под .NET и прикрутить к ней баиндинг
... << RSDN@Home 1.2.0 alpha rev. 0>>
Если нам не помогут, то мы тоже никого не пощадим.
Re[9]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 29.10.05 04:18
Оценка:
Здравствуйте, Marty, Вы писали:

M>Тьфу, черт. Тема то старая. Сорри что поднял


Ничего, ничего. Зато можно от души поржать.
... << RSDN@Home 1.2.0 alpha rev. 618>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[2]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: ArtemGorikov Австралия жж
Дата: 29.10.05 14:29
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Мои три копейки:


CS>На самом деле MFC лучшая из классовых библиотек что я видел.


CS>Лучшая имеется ввиду быстрая, внешне аккуратная и внутри human readable. Надежная библотека для промышленных апликаций короче.

Аккуратная и читабельная, но вот блуждать в ее лабиринтах передачи сообщений можно долго и поддержка COM-интерфейсов в ней реализована через ..пу


CS>Имхо наиболее естественная я бы сказал это VCL от Borland

CS>но как всегда у них "ну и шо? а зато душа красивая..."
Дело вкуса. Реально после студии ее (и билдера) отладчик вызывает изумление своей топорностью. Она даже не знает про assert и trace.


CS>WTL... Это для небольших апликаций. Исходники достаточно больших вещей которые я видел можно использовать в качестве рвотного средства. Не потому что авторы неграмотные а просто архитектура такая. Эти руками прописываемые REFLECT_NOTIFICATIONS просто катастрофа. Я у себя в ATL/WTL REFLECT_NOTIFICATIONS() макро переименовал в OOP_DEATH() и теперь точно не забываю где у меня грабли будут.


Скажите, вы WebBrowser (MS IE) тоже считаете небольшой аппликацией? А сгенеренный визардом проектик, поддерживающий Ole Inplace Activate — большой?
WTL прекрасно подходит ActiveX-контролов, т.к. это надстройка над ATL. Неподходит для ActiveX-документов — там MFC рулит. REFLECT_NOTIFICATIONS() никто не заставляет использовать, тут Вы зря на нее нападаете. А вот написать ATL server и прикрутить к нему MFC можно, но в результате получится мутант.


CS>.NET WinForms... считаю что выбранная схема использования оберток вокруг HWND — дрова.

Идея не нова — в той же Delphi все примерно так же.

CS>Тут или все в managed нужно переводить или ничего. Я так думаю. Почему было принято HWND решение — не знаю.

А еще всю винду с ядром и дровами в MSIL перевести — чтобы быть последовательным.

CS>"Тайна сия мраком покрытая есмь". Вообще судя по тому что в качестве Graphics используется GDI+ авторы не предполагали серьезных GUI задач.

Вот каждый считает своим долгом раскритиковать GDI+, а она, тем не менее, используется в Office 2003 и ничего, все довольны. Реальная альтернатива из того, что мне известно — AGG. Она рулит, я ее использую, но в ней меньше фич, чем в GDI+, впрочем, мне ее хватило за глаза.


CS>В принципе из известных мне примерно 20 всяких window toolkit след в памяти оставили всего ничего...

CS>Даже вот так и не скажу сразу. Мой J-SMILE наверное the best Действительна классная штука — проста как двери, эффективна и классово правильная. ООП так и брыжжит. Так.. себя я уже похвалил... что осталось написать?
+

CS>Кого-нить другого теперь надо...


CS>Ах да! Брату Schwein'у спаисибо большое за пост. Правильный он. Только .NET и MFC противопоставление (или.или) имхо не совсем корректно.

Согласен. Скорее IMHO противопоставить надо .NET / Java / Delphi / VB.

CS>Ну и конечно же Владу наше глубокое и искреннее почтение.

Re[9]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: ArtemGorikov Австралия жж
Дата: 29.10.05 15:12
Оценка:
Здравствуйте, minorlogic, Вы писали:



M>Судить о Net по RSDN@home не стоит , приложение явно написанно двумя левыми ногами. Я бы советовал посмотреть Paint.Net кажется так, небольшой но мощный графический редактор.


VladD2 не дремлет
Re[3]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: ArtemGorikov Австралия жж
Дата: 29.10.05 15:46
Оценка:
Здравствуйте, GlebZ, Вы писали:

GZ>Вообще-то, назвать в 1998 году MFC подростком я не могу. Писал на ней еще под Win16. Были болячки по поводу перехода на Win32, но они к этому времени были решены (хотя, на мой взгляд, не совсем красиво).

GZ>В основном такие слова говорят о небольшом опыте использования библиотеки.

GZ>Я несколько раньше посмотрел atlctrls и забил на них. Тратить время на программирование того, что делается значительно легче, не очень хотелось. Использовал только в составе ActiveX.


GZ>Наоборот, написал OleDB библиотеку (поддержки OleDB атлом еще не было). Прекрасно использовалось вместе с MFC.


БП>>Любая попытка выйти за рамки реализации -- тяжкая борьба с особенностями MFC.

GZ>Нормальная борьба. Я еще не встречал систем, в которой данной борьбы не было. Тем что MFC большей частью является враппером на API, определяет успех в этой борьбе. Моя борьба с ранними версиями WTL закончилась в их пользу. После одного проекта, на WTL забил (думал до нормальной безглючной версии, получилось что больше никогда не использовал).
В ATL борьбы на порядки меньше, чем в MFC. Не зря ее написала группа разработчиков внутри MS для внутренного пользования, когда MFC была фактически стандартом — не от хорошей жизни. Только потом ее назвали "ATL" и выпустили с очередной версией студии.

В общем все симптоматично — http://www.nestor.minsk.by/sr/2003/07/30710.html
Re[8]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: kliff Россия http://www.esignal.ru
Дата: 29.10.05 16:06
Оценка:
Здравствуйте, VladD2, Вы писали:

VD>Отстал ты от жизни. Сейчас модно объектную модель не эмулировать и выставлять скриптам, а строить на базе управляемых сред. И цена вызова становится такой же как у любого другого метода в С++-программе, и скрипты не нунжы вовсе, так как есть полноценные языки с теми же свойствами.


Я наверное тоже отстал, можно с этого момента поподробней. Как на это чудо глянуть, ручками потрогать?
Re[4]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: vdimas Россия  
Дата: 29.10.05 16:12
Оценка:
Здравствуйте, c-smile, Вы писали:


CS>J-SMILE опять же. Запускаем аппликацию и опять смотрим Spy++.


Даа... такую б энергию да в мирных целях...
Re[9]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: VladD2 Российская Империя www.nemerle.org
Дата: 30.10.05 18:30
Оценка:
Здравствуйте, kliff, Вы писали:

K>Я наверное тоже отстал, можно с этого момента поподробней. Как на это чудо глянуть, ручками потрогать?


Например, скачать R# и посмотреть на его АСТ (и работу с ним).

Собственно идея очень проста. Приложение требует ОО-модели (ООМ). Чем делать его на двух языках проще и модель и ее обработку реализовать на управляемом языке. Сборка мусора и высокоуровневые языки прощают обез задачи, а отсуствие необходимости интеграции делает задачу еще роще. Скорость же получается очень высокой так как нет никаких перходников и интерпретации.
... << RSDN@Home 1.2.0 alpha rev. 618>>
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re[4]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Вертер  
Дата: 03.11.05 23:30
Оценка:
CS>J-SMILE опять же. Запускаем аппликацию и опять смотрим Spy++.

выглядит прикольно!

к сожалению, в WinXP 64 не работает дерево (не кликается), чекбоксы и радио тоже не реагируют... текст не редактируется. При закрытии — висит в задачах. Только прибитие помогло...
Re[6]: Почему я до сих пор пишу на MFC (заметки "старовера")
От: Stoune  
Дата: 12.11.05 01:15
Оценка:
Здравствуйте, c-smile, Вы писали:

CS>Примеры: скролируемый контейнер содержащий дочерние окна.

CS>Прозрачные и полупрозрачные окна в три слоя.

CS>В Windows так и не решена по хорошему проблема с прозрачными child окнами.

CS>Layared windows появились но не для child окон.

Не совсем чесная поддержка child окон, но обходной путь здесь.
... << RSDN@Home 1.1.4 beta 7 rev. 447>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.