Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: WinAPI & MFC  (Прочитано 14938 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Taurus727
Постоялец

ru
Offline Offline
Пол: Мужской

« : 17-05-2007 10:21 » 

Вот в голове образовалась путаница. WinAPI (насколько понимаю Windows Application Programming Interface)  и MFC (Microsoft Foundation Classes). Кто мне может разграничить четко в голове эти 2 понятия. Вот в моей предыдущей теме например Pouring рисовалка с применением чего написана? Или я совсем запутался?
Записан
nikedeforest
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 17-05-2007 10:31 » 

На чистом АПИ она написана.
МФЦ - это надстройка/обертка над АПИ. Если быть точнее, то АПИ - это набор методов ОС с помощью, которых программист получает доступ к функциональным возможностям данной ОС. По сути, АПИ - это набор функции (такой немалый список), с помощью которых ты можешь создать окно для своего приложения, узнать, какие файлы и дирректории наполняют твой диск и т.п.
МФЦ же использует данные АПИ функции, но представляет все это ввиде набора классов. Т.е. есть например класс окна, в котором представлены функции связанные с окном и т.п. По сути это попытка классификации всего списка функций АПИ. 
Напоследок уточню. Сначала был АПИ (он и сейчас естественно есть), потом появился МФЦ (дабы облегчить жизнь программисту).
« Последнее редактирование: 17-05-2007 10:32 от nikedeforest » Записан

ещё один вопрос ...
Taurus727
Постоялец

ru
Offline Offline
Пол: Мужской

« Ответ #2 : 17-05-2007 10:39 » 

То есть если грубо Апи это более эээ "низкоуровневое" программирование нежели Мфц? То есть на Апи мне нужно самому создавать допустим класс окна и методы для работы с ним, а в МФЦ это уже есть. А для использования классов Мфц достаточно в новом проекте поставить галку напротив мфц и эти классы станут доступны? И еще вопрос МСДН содержит описание классов МФЦ?
Записан
nikedeforest
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 17-05-2007 10:49 » 

МСДН содержит описание классов МФЦ. Галки вполне хватит, сразу же увидишь, сколько нового появится в твоем проекте, глаза разбегутся на раз. Улыбаюсь
По поводу низкого уровня. Тут сложно так радикально сказать да или нет. На АПИ ты создаешь окно посредством вызова функций (АПИ-функций). На МФЦ ты создаешь окно путем создания объекта класса окна и вызова необходимых методов данного класса.
Появление МФЦ вызвано тем, что парадигма объектно-ориентированного программирования получила всеобщее признание и оказалась наиболее предпочтительна при разработке приложений. МФЦ - это становление на рельсы ООП, потому как программмирвоание на АПИ было скорее структурным и для перехода на ООП тебе самомму придется создавать классы всяких контролов и окон.
Записан

ещё один вопрос ...
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #4 : 17-05-2007 21:25 » 

Taurus727, в правилах стоит рекомендация - прежде чем задавать вопрос, воспользоваться поиском. Ага Наверное не зря.

https://forum.shelek.ru/index.php/topic,6471.msg103993.html#msg103993

К скзанному nikedeforest хочу добавить, что на сегодняшний день WinAPI практически единственное средство программирования под виндой. Это именно те ф-ции и структуры, которые используются самой виндой. Всё остальное - это просто оболочки, позовляющие отойти от чисто функционального программирования.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
nikedeforest
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 17-05-2007 22:07 » 

Понеслось ...
Записан

ещё один вопрос ...
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #6 : 18-05-2007 03:37 » 

Джон, nikedeforest, Scorp__)  спорьте не тут Ага
« Последнее редактирование: 18-05-2007 08:52 от Алексей1153++ » Записан

Scorp__)
Молодой специалист

ru
Offline Offline
Пол: Мужской

« Ответ #7 : 18-05-2007 07:47 » 

А мне предупреждения не сделали :Р

Джон, про функции АПИ неточность. Эти функции тоже интерфейс и сама винда их не использует, она пользуется "родным" (native) API, это функции c префиксами Nt, Ke, Zw, недоступные прикладному программисту. WinApi - это клиентский интерфейс винды. Однако все остальное на сегодня - действительно лишь обертки этого интерфейса.


уже сделали )
« Последнее редактирование: 18-05-2007 08:53 от Алексей1153++ » Записан

- А Вы сами-то верите в привидения?
- Конечно, нет, - ответил лектор и медленно растаял в воздухе.
Taurus727
Постоялец

ru
Offline Offline
Пол: Мужской

« Ответ #8 : 18-05-2007 09:59 » 

Вот куда смотрят авторы, да и те кто размещает книги по МFC.
С сайта realcoding.net сейчас одну слил. Первый пример. Расписан каждый файл, что куда написать. Пишу(copy/paste). 59! Синтаксических ошибок. Ну чего это за "Hello world" такой??? Буим дальше искать. Или плюнуть и разориться на бумажный вариант.
Записан
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #9 : 18-05-2007 10:12 » 

Понеслось ...

Это ты к чему?

Джон, nikedeforest, Scorp__)  спорьте не тут Ага

Лёш, не мог бы ты конкретно показать к чему ЭТО относится? Где ты видишь спор? Или как только кто-то видит пару Джон-nikedeforest в теме это автоматически означает спор? Какие все нервные и напряжённые стали.

Scorp__), согласен. В принципе я это имел ввиду. Точнее, что это те ф-ции, которые экспортируются в основных библиотеках винды user32 kernel comdlg comctl. Те все остальные оболочки используют эти ф-ции. Кончено разработка, например, драйверов происходит на другом уровне. Но вопрос поднят про MFC.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #10 : 18-05-2007 10:15 » 

Taurus727, думаешь в бумажном варианте лучше будет. Часто происходит так, что текст книги подвергается обычной вёрстке, которую делают дизайнеры. Их цель чтобы всё помещалось на страничку. А на первом этапе - наборщики (наборщицы), для которых код - что-то вроде китайских иероглифов. Которые надо старательно "пререрисовать". ЛУчше всего (и то не факт) - это когда к книге прилагается диск с кодом и примерами. Тогда шансы на успешную компиляцию значительно возрастают.
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #11 : 18-05-2007 10:20 » 

Джон, могу показать, только темы не найду уже те )
Спор будет позже, чё я не знаю что ли )
Записан

Джон
просто
Администратор

de
Offline Offline
Пол: Мужской

« Ответ #12 : 18-05-2007 10:30 » 

Лёшик, это первые признаки паранои. Ага Врачи рекомендуют в таких случаях бокал холодного пивка. Ага

Ну или в крайнем случае внимательное чтение топиков должно помочь. Если ты заметил, то nikedeforest абсолютно правильно дал определение MFC и API, а Scorp__) абсолютно правильно меня поправил. Так о чём тут можно спорить?

И причём тут другие темы? Или ты думаешь, что спор это паталогия? Если мы с nikedeforest и  Scorp__) по некоторым вопросам имеем разное мнение, так теперь уже готовы по любому вопросу спорить? Лишь бы спорить? Гхм... Ню-ню
Записан

Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома.
"Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash
"Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman
"All science is either physics or stamp collecting." Ernest Rutherford
"Wer will, findet Wege, wer nicht will, findet Gründe."
Taurus727
Постоялец

ru
Offline Offline
Пол: Мужской

« Ответ #13 : 18-05-2007 10:35 » 

Так о чем это мы...
Записан
Алексей++
глобальный и пушистый
Глобальный модератор

ru
Offline Offline
Сообщений: 13


« Ответ #14 : 18-05-2007 10:36 » 

Джон, если на то пошлО, паранойя не у мну, а у того, кто сказал началось )  Пардон "Понеслось ..."
Записан

nikedeforest
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #15 : 18-05-2007 11:02 » 

Я спор не думал начинать, просто таким образом я выразил негативное отношение к столь категоричному высказыванию со стороны Джона. Не хотелось бы, чтобы на мнение начинающих влияло чужое субъективное мнение. Но оно уже повлияло, человек книгу даже качнул, так что и разговора нет Улыбаюсь. Алексей, не беспокойся ты так, надо ж хоть немного растрясти этот форум, а то скоро плесенью покроется.Ага
з.ы. предлагаю завтра этот флуд покоцать относительно споров и т.п.
Записан

ещё один вопрос ...
Taurus727
Постоялец

ru
Offline Offline
Пол: Мужской

« Ответ #16 : 18-05-2007 11:09 » 

Без легкого флуда форум(уж тем более программерский) будет жутко сухой и скучный... Ну информативность конечно повысится... Но захочется ли жить в лабораторных условиях? Ага
Записан
nikedeforest
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #17 : 18-05-2007 11:12 » 

эх, зашел бы ты к нам год назад. Тут столько флуда было ... . А потом пресекли и стало все как у аристократов чинно и скучно.
Записан

ещё один вопрос ...
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines