Форум: Форум C++Разное
Новые темы: 00
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: MFC vs WinAPI
 
 автор: msdn   (29.01.2012 в 13:48)   письмо автору
 
 

Такое ощущение, что они друг друга дублируют? Чем отличаются MFC и WinAPI, MFC лучше?

  Ответить  
 
 автор: cheops   (29.01.2012 в 14:06)   письмо автору
 
   для: msdn   (29.01.2012 в 13:48)
 

Тут вот как дело было, Windows API он вообще создан на C и для C. Во времена когда он получил распространение был очень популярен C++ надмножество над C. Понятное дело было очень много желающих разрабатывать свои программы именно на C++, задействуя в них объектно-ориентированные возможности последнего. Тем более для создания Windows-программ, C++ подходит идеально - сложная иерархическая задача. Т.е. создавались различные FrameWork-и, библиотеки и готовые каркасы, от которых можно было бы оттолкнуться при разработки новой программы. Вот MFC это такой FrameWork от Microsoft. Т.е. Windows API он для чистого C, а MFC для C++. Это не значит, что на C++ нельзя разрабатывать программы на чистом Windows API, но вам придется построить свой собственный набор классов, похожий на MFC (возможно с меньшими возможностями и с вашими личными особенностями). Однако, это вполне реально и возможно, мы например, такой FramWork сейчас в студии разрабатываем.

Возможно вас также заинтересует тема по ссылке http://softtime.org/forum/read.php?id_forum=3&id_theme=2111, в которой эта тема также затрагивается.

  Ответить  
 
 автор: msdn   (29.01.2012 в 14:11)   письмо автору
 
   для: cheops   (29.01.2012 в 14:06)
 

А что лучше использовать на практике?

  Ответить  
 
 автор: cheops   (29.01.2012 в 14:56)   письмо автору
 
   для: msdn   (29.01.2012 в 14:11)
 

Тут вот какое дело, Windows API довольно сложная штука, C++ тоже не простая и от соединения их в одно целое картина не упрощается :))) Поэтому готовый MFC - это большое подспорье, особенно, если вы не очень уверены в своих силах или программу нужно сдавать через 2-3 месяца и на разработку собственного движка/FrameWork у вас совершенно нет времени - программу бы успеть сделать. Однако, если вы хотите полностью контролировать свои программы, разрабатываете большой проект вроде Photoshop, который обязательно будет переноситься на другие операционные системы, без своего собственного движка вам не обойтись - никто MFC в Linux не припас, да и контроль над ресурсами лучше держать самостоятельно, а то ради какой-нибудь гиперссылки придется подключать 5Мб-ные библиотеки. В общем все упирается во время и квалификацию, чем больше у вас и того и другого тем более выгодным для вас становится Windows API, если же ресурсы ограничены - выгоднее MFC. Однако, как и любая надстройка, она возьмет свою цену и ограничит вас в тех рамках, для которых она предназначалась, т.е. если вы захотите разрабатывать игры - вам придется выкинуть MFC и все наработки на нем и браться за Windows API с нуля.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования