Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 33, средняя оценка - 4.88
Lindemann66
4 / 4 / 0
Регистрация: 28.04.2010
Сообщений: 162
#1

Выбор технологии - C++

03.08.2011, 10:45. Просмотров 4121. Ответов 52
Метки нет (Все метки)

Всем привет!
У меня такой вопрос

Вот я сейчас работаю в компании, которая занимается разработкой ПО на С++
Начал разработку проекта

Про технологию речи не шло, я скачал много учебников (имею небогатый опыт прогарммирования на С++, и в учебниках есть необходимость)
Так уж получилось, что почти во всех учебниках, которые я скачал, и которые затрагивают Visual C++, речь идёт об MFC
Поэтому я и выбрал MFC, потому что про него много написано умными людьми (Том Арчер, Эндрю Уайтчепел, ну и в других книжках тоже есть)

Но последнее время с слышу отзывы вроде "Я бы не стал использовать MFC", "Вообще, не пиши на MFC", "Я больше к QT привык, MFC втопку" и т.д.
Но, при этом, эти комментарии неаргументированы.
Но мне всё равно очень интересно

А что тогда использовать?
Windows Forms? WinAPI?
Что вы посоветуете?
Очень важно
Буду благодарен за любой ответ
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.08.2011, 10:45     Выбор технологии
Посмотрите здесь:

Выбор инструмента/технологии - C++
Доброго времени суток! Есть следующая задача. На входе файл в dbf формате(с досовским набором символов). В файле нужно произвести...

Выбор технологии для написания приложений под Windows - C++
Добрый вечер. Столкнулся с вопросом, который не дает жить вот уже пару дней, а именно: под винду на плюсах можно писать оконные приложения...

Литература по COM технологии - C++ COM
Подскажите пожалуйста, чего адекватного можно почитать по COM технологии...если msdn, дайте ссылку раздела.

Облачные технологии на С++ - C++
В последнее время побывал на нескольких конференциях, на которых говорилось, что будущее программирования за облачными технологиями. ...

технологии программирования - C++
помогите разобраться в сути вопроса вопрос по технологиям программирования: общая структура памяти не понятно о какой памяти идет...

GUI, технологии - C++
Здравствуйте. Подскажите мне пожалуйста какую-нибудь хорошую IDE для с++. Либо хорошую визуальную библиотеку. Просто нужно писать быстрые...

Книги по технологии OLE на С++ - C++ COM
Всем привет. Подскажите пожалуйста литературу по этой теме, в гугле ничего не нашел. Интересует создание своего COM и OLE...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
solar_wind
756 / 747 / 42
Регистрация: 06.07.2009
Сообщений: 2,969
Завершенные тесты: 1
03.08.2011, 10:53     Выбор технологии #2
Lindemann66, Скажем так, если ты нормально разберешься в MFC то твои программы будут прекрасно работать.
Windows Forms в плане разработки считается более безопасным, но поидее работает медленнее, и требует фреймворк (хотя на новых ОС это не так актуально наверное).
WinAPI это как бы более низкий уровень, поэтому и более надежный, однако требует более глубоких знаний предметной области.
Qt очень удобен для разработки интерфейсов, сам по себе имеет не очень хороший отладчик и различные косяки, которые, если их знать, вообщем то не очень сильно мешают. Qt+Visual Studio лучше, так как компенсирует проблему с отладчиком.
Lindemann66
4 / 4 / 0
Регистрация: 28.04.2010
Сообщений: 162
03.08.2011, 10:55  [ТС]     Выбор технологии #3
Это первый аргументированный ответ, спасибо
по поводу QT - есть у него 1 большой минус, который сейчас перекрывает плюсы - это его цена для коммерческого использования...
так что его использование, к сожалению, отменяется
Кстати, а для MFC фреймворк не требуется разве?

Добавлено через 34 секунды
Если я создал MFC приложение под Framework 2.0, он ведь будет необходим для работы на клиентской машине?
oxotnik
1589 / 1066 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
03.08.2011, 10:56     Выбор технологии #4
Цитата Сообщение от vitaly1981 Посмотреть сообщение
Qt очень удобен для разработки интерфейсов
и все? QNetwork, QXml, QSql и т.д. куда дели?
solar_wind
756 / 747 / 42
Регистрация: 06.07.2009
Сообщений: 2,969
Завершенные тесты: 1
03.08.2011, 10:57     Выбор технологии #5
Lindemann66, Так можно использовать по лицензии LGPL если возможно, там вроде как и коммерческие продукты делать допускается, конечно с какими то ограничениями...

Для MFC требуются только студиевские библиотеки установить и все.
oxotnik
1589 / 1066 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
03.08.2011, 10:58     Выбор технологии #6
Цитата Сообщение от Lindemann66 Посмотреть сообщение
по поводу QT - есть у него 1 большой минус, который сейчас перекрывает плюсы - это его цена для коммерческого использования...
а зачем его покупать? можно использовать и LGPL для коммерческой разработки, если не изменять саму Qt. А стоимость MFC?
solar_wind
756 / 747 / 42
Регистрация: 06.07.2009
Сообщений: 2,969
Завершенные тесты: 1
03.08.2011, 11:00     Выбор технологии #7
oxotnik, Я не говорил что там можно разрабатывать только интерфейсы. Там много классов, однако основное преимущество Qt это все же интерфейсы, ну конечно и кроссплатформенность.
soft.creator
104 / 104 / 4
Регистрация: 17.10.2010
Сообщений: 283
03.08.2011, 11:00     Выбор технологии #8
WinAPI очень низкоуровневая, производительность труда (особенно при программировании интерфейсов) минимальна.

WinForms требует библиотеки .NET, не всегда подходит по системным требованиям. Плюс это просто библиотека для интерфейса, нет встроенной поддержки Model-View и т.д. Кроме того, мне лично расширения .NET для C++ кажутся издевательством над C++.

MFC - неплохая библиотека, но она довольно неудачно спроектирована и является лишь надстройкой над WinAPI - со всеми вытекающими.

QT для меня оказался оптимальным выбором. Она хорошо спроектирована, позволяет выполнить рутинные задачи по манипуляции с интерфейсом быстрее, имеет поддержку регулярных выражений, улучшенную по сравнению с MFC валидацию данных, она лучше расширяется под задачи пользователя в части, касающейся, скажем технологии Model-View. Плюс она кроссплатформенна.

Мой совет: если нет специфических системных требований, лучше использовать QT. Если есть код на WinAPI или MFC, который необходимо поддерживать, то MFC. Если надо делать быстро простые программы и можно использовать C#, тогда C#+WinForms.
dr.curse
387 / 343 / 16
Регистрация: 11.10.2010
Сообщений: 1,907
03.08.2011, 11:03     Выбор технологии #9
Цитата Сообщение от Lindemann66 Посмотреть сообщение
по поводу QT - есть у него 1 большой минус, который сейчас перекрывает плюсы - это его цена для коммерческого использования...
насколько знаю MFC тоже платное. И еще говорят wxWidgets похож на MFC можно и это выбрать.

Добавлено через 2 минуты
Цитата Сообщение от soft.creator Посмотреть сообщение
мне лично расширения .NET для C++ кажутся издевательством над C++.
мне тоже, я вообще против .Net
oxotnik
1589 / 1066 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
03.08.2011, 11:05     Выбор технологии #10
Цитата Сообщение от vitaly1981 Посмотреть сообщение
однако основное преимущество Qt это все же интерфейсы
для "формоклепателей" пересевших с билдеров бесспорно. Однако обычно интерфейс занимает не более 20% от основной логики софта.
Lindemann66
4 / 4 / 0
Регистрация: 28.04.2010
Сообщений: 162
03.08.2011, 11:09  [ТС]     Выбор технологии #11
Цитата Сообщение от oxotnik Посмотреть сообщение
а зачем его покупать? можно использовать и LGPL для коммерческой разработки, если не изменять саму Qt. А стоимость MFC?
Ну это нужно уточнить у начальства
Потому что у нас уже год используется QT, и вот, в последнее время, начинается отказ от него, потмоу что, как выразился начальник "Слишком дорого"
Странно
solar_wind
756 / 747 / 42
Регистрация: 06.07.2009
Сообщений: 2,969
Завершенные тесты: 1
03.08.2011, 11:11     Выбор технологии #12
oxotnik, Зависит от приложения, иногда интерфейс играет очень весомую роль.
Если сравнивать разработку "рабочей части" софта на MFC и Qt, то классы Qt мне лично экономят процентов 5 времени. Если сравнить время затрачиваемое на интерфейс, то экономия процентов 50 как минимум. Именно из этого я и исхожу.

Добавлено через 49 секунд
Lindemann66, LGPL у них появилась сравнительно недавно, может начальник просто не в курсе...
oxotnik
1589 / 1066 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
03.08.2011, 11:11     Выбор технологии #13
Цитата Сообщение от Lindemann66 Посмотреть сообщение
последнее время начинается отказ от него, потмоу что, как выразился начальник "Слишком дорого"
либо начальника гнать надо, за то что в предметной области не разбирается, либо он имел ввиду, что работники со знаниями Qt слишком дорого обходятся.
Lindemann66
4 / 4 / 0
Регистрация: 28.04.2010
Сообщений: 162
03.08.2011, 11:12  [ТС]     Выбор технологии #14
Цитата Сообщение от oxotnik Посмотреть сообщение
для "формоклепателей" пересевших с билдеров бесспорно. Однако обычно интерфейс занимает не более 20% от основной логики софта.
Верно
Хотя мне и писали, что в MFC интерфейсы ни к чёрту, я думаю, что обычный интерфейс там спроектировать можно
но на данном этапе (сейчас у меня) разработка интерфейсов всё равно не слишком актуальна
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.08.2011, 11:14     Выбор технологии
Еще ссылки по теме:

Информационные технологии проделать в экселе - C++
Показать, что выражения x=sin(a) и y=cos(a) описывают окружность при изменении а от 0 до 6.28 радиан.

OpenCL vs CUDA. За и против каждой технологии - C++
В скором времени хочу начать изучать программирование на GPU, поэтому столкнулся с вопросом, а что вобщем учить то. Можете пожалуйста без...

Технологии синтаксического анализа и интерпретации команд - C++
Составить программу, которая проверяет корректность арифметических выражений, в которых могуть быть скобки трех типов "()", "", "{}" и...

Запросы к сайту, их обработка: технологии, советы - C++
Задача: Взять расписание занятий (http://mf.grsu.by/timetable_new). Сохранить его (т.е. не обращаться каждый раз при запуске к сайту). ...

Какие технологии актуальны для С\С++ программиста - C++
Доброго времени суток. Какие технологии сейчас наиболее востребованы и перспективны для С++ программиста? Например стоит-ли изучать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
oxotnik
1589 / 1066 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
03.08.2011, 11:14     Выбор технологии #15
Цитата Сообщение от vitaly1981 Посмотреть сообщение
классы Qt мне лично экономят процентов 5 времени
ой ли? к примеру возьмем работу через SSL - сколько это дело надо реализовывать в MFC, или авторизацию на socks5 прокси? или работу с БД. Как надо допиливать CDatabase, CRecordset и т.п. что бы этим можно было пользоваться нормально? А если их еще с GUI попытаться связать, так вообще труба.
Yandex
Объявления
03.08.2011, 11:14     Выбор технологии
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru