#cpp #gui
Здравствуйте. Вот начал изучать всем известный язык С++. Работа с консолей не было самым сложным этапом. Все давалось очень легко ибо до этого языка программирования имел опыт работы. Писал и тетрис и змейку в консоли. Все это очень прикольно, но хотелось бы не просто чёрный экрна, а что то больше, графический интерфейс, кнопочки всякие ну и т.п. Так вот, я слышал, что есть много библиотек таких как: OpenGL DirectX SDL Ну и другие. Что еще слышал об Qt, что стоит с него начинать. Так вот, собственно вопрос: С чего лучше начать? Может у кого-то есть литература или видео-уроки. Буду очень благодарен. Заранее спасибо.
Ответы
Ответ 1
Так вам что именно нужно? Изучить кресты, или научиться делать всяческие...пардон, гуёвины (это от слова GUI, не подумайте плохого)? Если второе, то C++ вряд ли можно назвать идеальным выбором для этого. Если первое, то лучше сконцентрироваться на возможностях самого языка, а конкретные задачи ставить себе уже по мере изучения. Что касается книг, то посмотрите ответы на этот вопрос А вот что касается упомянутых вами библиотек, то они прямого отношения к ремеслу клепания окошек не имеют. Это библиотеки по работе с графикой. Если нет достаточных знаний языка и веских причин с ними связываться, то я бы на вашем месте не торопился в них углубляться, еще успеетеОтвет 2
Если ты хочешь "графический интерфейс, кнопочки всякие ну и т.п.", то есть GUI, то советую на Qt или gtk посмотреть (оба кроссплатформенны). А что касается перечисленных OpenGL, DirectX и SDL - так это ведь графические библиотеки, их совместно с gui используют (встраивается виджет с выводом графики, как, например, QGLWidget), так что это немного другое. Но всё равно лучше бы OpenGL (а SDL в связке с ним часто используют для некоторых действий). В итоге получится что-то вроде Qt+OpenGL (хотя есть модули Qt3D и QtOpenGL, что тоже использует OpenGL).Ответ 3
OpenGL, DirectX и SDL это библиотеки для работы с 2Д/3Д графикой. Это не для GUI. Точнее графический интерфейс пользователя (GUI) там можно отрисовать, конечно, но это применение не по назначению данных технологий (=забивать гвозди микроскопом) ГУИ это QT, GTK (как уже сказано выше - кросплатформенные библиотеки) или MFC например (WIN32) или прямое WINAPI. Последние только под винду и с учётом последних веяний этой платформы (смотри Windows 8) не шибко полезно вкладываться в их изучение так как скорее всего от них откажутся окончательно.Ответ 4
Господа, я думаю, вы мне простите, что я выкопал эту тему, но пройти мимо я не мог. Я занимаюсь разными GUI много лет и кое что об этом знаю. В области GUI есть много крутых контор, которые делают свои решения, но я бы остановился на трех из них: Telerik Controls, DevExpress и Nevron. Специально не привожу ссылок, потому что в гугле ссылки по этим ключевым словам исчисляются миллионами. Коротко о каждом: Telerik Controls - без сомнения, современный лидер среди коммерческих компонентов. Во первых, они впереди планеты всей по веб-компонентам. Во вторых, я даже не могу придумать, какую область они не покрыли собой: WPF, ASP.NET Core, UWP, WinForms, SilverLight (да покоится с миром), Xamarin - для ЛЮБОЙ платформы в известной части вселенной у них есть продукт. Список их пользователей включает Kodak, ООН, Microsoft, Heinz, Евросоюз, Accenture, Pfizer, Мировой Банк, Intel, Citigroup, NASA, Siemens, Nike, IMF, T-Mobile, Reuters, Вооруженные силы США, Vodafone, NBC, Universal Harvard University, Motorola DevExpress - это паровоз, который мчится вперед на скорости больше 100 км в час. Еще 10 лет назад это был скромный набор компонентов для виндовс. Но с тех пор они каждый год выпускали новую версию, и сейчас это БОГАТЕЙШИЙ набор контролов, которые с минимумом кода позволяют решить практически любую задачу. Кроме того, они весьма удачно пару лет назад распользлись на MacOS, и теперь две платформы, которые вообще АССОЦИИРУЮТСЯ с GUI покрыты ими. Ну, и WEB - компоненты у них на высоте. Судя по скорости развития - они так хороши, что если бы не конкуренты - они бы захватили мир. Nevron - когда то очень крутой набор компонентов, но сейчас они немного сдулись. По моему, они не расползаются на другие платформы, как двое вышеназванных, а остаются верны WinForms. Но хорошее впечатление о себ оставили, и сейчас они по монему в весовой категории "бедненько, но чистенько". И еще два замечания: 1) вообще говоря, при работе с такими компонентами - язык вторичен. То есть, компоненты представляют из себя "черные ящики с ручками", а из какого языка и как за эти ручки дергать - вопрос другого порядка. Конечно, у всех них есть рекомендуемые сочетания с языками программирования, но про это лучше уже читать на сайтах производителей. (тс-с, я вам этого не говорил, но сейчас макcимум совместимости при разработке в винде - с языком C#) 2) Есть огромное кол-во не коммерческих, а "свободных" компонентов. И у сторонников "свободных" компонентов есть свои лидеры и прочее. (Но я смотрел - и если коротко, то это "жалкое подобие левой руки". Но это, конечно же, моё частное мнение.)
Комментариев нет:
Отправить комментарий