Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.10.2012, 20:20   #1
Ev1L
Пользователь
 
Регистрация: 25.11.2010
Сообщений: 39
По умолчанию Много вопрос, просьба помочь новичку.

Собственно накопилось очень много вопросов что куда дальше учить.
1)Графический интерфейс, что используется для создания?(в c++ есть стандартные библиотеки для создания GUI?,если нет какими лучше пользоваться). Какую литературу нужно почитать?
2)в данный момент читаю страуструп "Принципы и практика" что можно почитать следующим либо совмещать?. побольше бы интересных заданий.
3)Winapi (стоит ли учить ?), Qt (что ето?) Как я понимаю среда разработки кросплатформенных приложений.( что лучше qt или Visual studio 2012?);
4)Directx или Opengl (все таки направление графики очень интересное) что из етого лучше?
Ev1L вне форума Ответить с цитированием
Старый 08.10.2012, 19:33   #2
LynXzp
Пользователь
 
Аватар для LynXzp
 
Регистрация: 04.10.2012
Сообщений: 95
По умолчанию

  1. Стандартных нет.
    1. Для Windows можно на winAPI - получаются маленькие программы, но самое сложное для освоения. Подходит почти для всех языков программирования. Есть официальное руководство от Microsoft - но там сам черт ногу сломит.
    2. MFC - чуть лучше чем WinAPI. Производитель тот же, компилятор Microsoft Visual C++ (Visual Studio) (далее для краткости MSVC). Но я бы не сказал что кардинально легче. Чтобы создать окошко придется написать сторк 10. И при этом это окошко будет бестолковым (не отвечать, ...) это все придется дописывать самому в каждой программе, но проще чем в первом случае. Программы чуть больше, но размер очень даже небольшой.
    3. VLC - если не самое простые в освоении то одно из простейших. Минуса: это не MSVC, а Borland C++ (сейчас Embarcadero), другой компилятор = другие отступы от стандартов. Большинство программ для Win написаны на MSVC с использованием отступлений от стандартов и расширений не поддерживаемых всеми компиляторами, соотв. на Borland C++ они "просто так" не заработают. За то: время разработки GUI может сократится на порядок по сравнению с MFC и WinAPI. Если есть знания С/С++ время от первого запуска до написания простейшей программы суммирующей два числа = меньше часа (с учетом чтения учебника). Программы переносимые (нужно выставить опции), меньше мегабайта.
    4. .net - легкость освоения примерно равна предыдущей библиотеки. Плюсы - это компилятор MSVC. Минусы - для любой самой мальски маленькой программы нужно установить .net соотв. версии. Некоторые пользователи в негодовании - для установки калькулятора кот. нужен 1 раз не все (но почти все) готовы установить себе в Win какую-то штуку на *Гб кот. будет стартовать с системой каждый раз.
    5. GTK/Qt - кросс платформенные библиотеки (т.е. работают в Windows, Linux, и не только), сложность освоения я бы оценил как MFC, может чуть легче. Из минусов - программы не так элегантно выглядят в Windows, для придания красоты придется еще и помучатся. Но являются стандартными для Linux - там они чувствуют себя как рыба в воде.
  2. Эту книгу не читал. Но хотя бы одну из этих я бы рекомендовал к обязательному прочтению:
    • Брайан Керниган, Деннис Ритчи Язык программирования C
    • Герберт Шилдт Полный справочник по С++ (или любую другую книгу этого автора по С или С++ они более чем на половину др. др. повторяют)
    Правда не скажу что они будут особенно интересными.
    Сам я начинал из "интересных" книг:
    • Кондратюк. Трюки и Эффекты С++
    • Фленов. С++ глазами Хакера
    Но они обе по VCL!!!За то очень хорошо зажигают начинающего программиста кот. не хочет 3 месяца зубрить WinAPI чтобы создать окно.
  3. Примерно ответил уже. WinAPI обязательно только для программистов Assembler-а кот. хотят создать GUI . Что лучше решать уже тебе. Если уверен что не будешь писать приложения под Linux то на Qt/GTK не стоит смотреть.
  4. DirectX кажется быстрее. По нему больше учебников. Но только Windows. Opengl - соотв. наоборот Но в 99.5% это нужно только для игр. И если используешь одну из этих библиотек то все перечисленные библиотеки для создания GUI в первом пункте не нужны. Т.к. одновременно и то и то работать не будет. Разве что в окне... в двух разных окнах DirectX кажется проще. Если что его не так и жалко "бросить".

P.S. По WinAPI есть характеризующий анекдот: типичная WinAPI функция принимает 15 параметров, 6 из них зарезервировано, 8 не используется, а 1 это указатель на структуру состоящую из 20 переменных.
А про Linux: - напомните плиз, как на этой неделе называется команда print?
Пишу на чистом С, плюсы спилил.

Последний раз редактировалось LynXzp; 08.10.2012 в 19:36.
LynXzp вне форума Ответить с цитированием
Старый 08.10.2012, 19:50   #3
Ev1L
Пользователь
 
Регистрация: 25.11.2010
Сообщений: 39
По умолчанию

спасибо большое, за развернутый ответ.
Ev1L вне форума Ответить с цитированием
Старый 08.10.2012, 21:07   #4
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2LynXzp
а вот valve говорит, что opengl быстрее.
http://www.extremetech.com/gaming/13...ven-on-windows
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance
pproger вне форума Ответить с цитированием
Старый 09.10.2012, 16:56   #5
LynXzp
Пользователь
 
Аватар для LynXzp
 
Регистрация: 04.10.2012
Сообщений: 95
По умолчанию

Цитата:
спасибо большое, за развернутый ответ.
Пожалуйста, сам в шоке. Кстати если будешь использовать любую GUI библиотеку, никто WinAPI не запрещает пользоваться, а наоборот, с их помощью возможно даже понадобится сделать непредусмотренные вещи в этой библиотеке.
=========================
Цитата:
2LynXzp
а вот valve говорит, что opengl быстрее.
http://www.extremetech.com/gaming/13...ven-on-windows
Цитата:
DirectX кажется быстрее.
Слышал что так, замеры не делал и сам не интересовался. DirectX-ом пользовался примерно столько же если бы в универе пол года его преподавали раз в 1-2 недели. OpenGL "видел". :D
Кстати OpenGL чтобы запустить на видеокарте sis (на двух компах проверено) пришлось Virtualbox c Win XP ставить поверх Win XP, иначе серый фон.
Пишу на чистом С, плюсы спилил.
LynXzp вне форума Ответить с цитированием
Старый 09.10.2012, 19:27   #6
three_cats
Форумчанин
 
Аватар для three_cats
 
Регистрация: 27.09.2012
Сообщений: 175
По умолчанию

LynXzp: Спасибо за ответ, много нового из него узнал. В гугле специально такого не найдешь

Ev1l: Мой совет: продолжай читать дядюшку Бьярне, он научит только хорошему. На мой взгляд, самый лучший автор, и не только потому, что создал С++, в плане образования человек он тоже очень продвинутый.
Никто

мой блог
three_cats вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Просьба помочь с Kiwi Генадий Дубаков Свободное общение 14 01.07.2012 13:17
Просьба помочь! С++/С# Lihoj Фриланс 0 08.12.2011 02:49
Просьба помочь Ditmar Microsoft Office Word 1 28.04.2010 13:11
Просьба помочь с задачей. kry Паскаль, Turbo Pascal, PascalABC.NET 9 11.01.2009 13:53
Просьба помочь новичку со списками. cbst Общие вопросы C/C++ 4 13.06.2008 19:32