none
Актуальность Win API и MFC RRS feed

  • Общие обсуждения

  • Visual Studio 2008 наряду с прежними студиями продолжает поддержку как Win API так и MFC. Но, как подсказывает опыт, основные ресурсы Microsoft обрушены на развитие управляемых языков и .NET Framework, в том числе локализаций как самих библиотек, так и технических статей + поддержка русских сообществ. Но как же родной(native) С++ и Windows? Пережиток прошлого? У нас в универах только native C++ и учат только отдаленно рассказывая, что есть управляемые среды выполнения и управляемые языки. Но ведь C++ /CLI(Visual C++) это уже новый язык программирования, адаптированный под .NET Framework, и изучением которого не заменишь изучение С++.

    "Лень - двигатель прогресса"
    • Перемещено SachinW 1 октября 2010 г. 22:04 MSDN Forums Consolidation (От:Начинающие разработчики)
    8 февраля 2010 г. 21:04

Все ответы

  • .NET в паре с WPF и WinForms - позволяют более шустрое написание приложений, если сравнивать с MFC - это безусловно и на это нужно делать акцент при выборе технологий. А без C++ мы не напишем производительные системы, те же драйвера. SQL Server представляете себе написанный на управляемой среде .NET? :) Благо технологии могут переплетаться, можно использовать WPF/WinForms а в тех местах где есть проблема с производительностью - вроде сложные алгоритмы подсчета и т.п. - можно выносить в неупраляемый код.
    Если посмотреть даже на продукцию компании MS - все GUI - Visual Studio, SQL Managment Studio пишется в настоящее время на .NET -  это дает толчок для размышлений. Даже гигант Autocad переписал свой GUI на WPF - значит действительно проще переписать свой продукт на WPF и в дальнейшем проще уже будет поддерживать приложение с использованием этих технологий.
    В очень редких случаях нужен MFC/WinAPI - Вот когда то я написал небольшое приложение, которое по сути в основном использовало функции WinAPI но написал я его на .NET - в итоге приносило приложение пользы мало, а использовало ресурсы в достаточном количестве - это же .NET, вот в этом случае, я думаю, технологию я выбрал не верную.
    В любом случае язык C++ знать нужно, нужно хорошо понимать как работать с памятью и знать азы.


    [Мой блог], [LinkedIn]
    9 февраля 2010 г. 6:02
  • Денис, спасибо. Сам я пока начинающий разработчик - пока учусь. Даже и не слыхал, что драйвера пишут на чем-то, отличным от Assembler-а. Насчет производительности, то и Айвори Хортон и Троелсен писали, что производительность меньше, но незначительно, и такими потерями можно пренебречь. Видимо это не совсем верно, пиарят технологию =).
    "Лень - двигатель прогресса"
    9 февраля 2010 г. 13:10
  • Давным давно работал программистом и тоже пользовался "чистым" C++ (кстати, в институте тогда C++ особо не изучали). Тогда вариантов других не было. Java шла за модную новинку, все остальное в принципе не воспринималось. Может только Delphi (Pascal). Сейчас пишу программы для личного использования. Само собой, взял что полегче - Visual Basic Express. А это .Net. К сожалению, не везде он поддерживается и для разработки компоненты XPCOM (это аналог COM для разработки дополнений, например, к Firefox) пришлось использовать Visual C++ Express и неуправляемый код. Поддерживали бы эти ребята .Net использовал бы ее не думая.

    Насчет "гигантов" ... Да, сам заметил на софте который использую. Nero тоже написана теперь на .Net. Только не понравилась она мне, не туда пошли. Но, думаю, это дело наживное, в новой версии все будет хорошо. Так что прикладной софт пошел туда. Это просто и надежно.

    Так называемый свободный софт варится в своей каше и Microsoft не стремится связываться с ним, хоть и есть codeplex. Там тоже "чистый" C++. Особенно, если это не Windows. Хотя, там и других языков хватает, даже Инет-приложений не касаясь. Так что не одним C++ сыт программист.

    8 августа 2010 г. 22:23
  • То просто такое впечатление складывается от мелкомягкой песочницы Visual Studio for unsafe monkey coders. Средства разработки для профессионалов уже лет 20 поддерживают  средства рапид разработки GUI и не только, причем на нативном С++. Та же WinForms и WPF - жалкое подобие VCL 20-летней давности.
    30 сентября 2015 г. 3:32
  • О чем вы? Большинство API как были родными так и остаются. В том числе и самые новые вроде DX12.  

    C++/CLI последний раз обновлялся если мне не изменяет память в 2005 году. Его рекомендуется использовать только для связки родных API с управляемым кодом, ни изучать его, ни тем более псать на нем что то не следует. 

    C# как язык конечно продолжает развиваться, как и C++. Есть еще C++/CX но это уже совсем другая история...

    Кстати да, я совершенно без проблем могу себе представить SQL Server написанный на управляемом коде. И, даже целую ОС могу.

    Драайверы давным давно уже не пишут на ассеемблере, в крайнем случае отдельные вставки. Более того, даже код для 8 битных микроконтроллеров с 4К ПЗУ и 128 байтами ОЗУ уже давно (с середины 90х) часто писался на C.


    This posting is provided "AS IS" with no warranties, and confers no rights.

    30 сентября 2015 г. 7:13
    Модератор