Другие языки программирования и технологии
Пишут ли еще программы на голом winapi и c++? Или сейчас все пишут при помощи библиотека, таких как Qt?
Есть ли смысл учить голый winapi и c++? Или лучше сразу кроссплатформенную библиотеку?
1. Пишут. конечно. И почему альтернатива именно Qt?
Кроссплатформенность - это просто красивое название кодинга под Линукс.
А у большинства таки винда. Особенно у платежеспособных.
Поэтому пишут и в Вижуал Студио, и в С++ Билдере, с использованием их библиотек.
2. А вот что учить вам, это зависит от ВАШИХ целей.
Если хотите быть фрилансером, лучше для начала знать все понемногу.
Если решили посвятить себя Линуксу, тогда
Qt.
И т. д.
Кроссплатформенность - это просто красивое название кодинга под Линукс.
А у большинства таки винда. Особенно у платежеспособных.
Поэтому пишут и в Вижуал Студио, и в С++ Билдере, с использованием их библиотек.
2. А вот что учить вам, это зависит от ВАШИХ целей.
Если хотите быть фрилансером, лучше для начала знать все понемногу.
Если решили посвятить себя Линуксу, тогда
Qt.
И т. д.
WinApi не голый). Есть смысл вообще ничего не учить)).
GUI на WinAPI сейчас не пишут или почти не пишут.
Для гуевой части WinAPI есть оболочки и не одна, например, Winforms (входит в .NET) и VCL (C++ Builder).
Но WinAPI - это не только GUI, а еще и, например, взаимодействие с окнами других программ, работа с системными сообщениями (имитация нажатий мыши, клавиатуры, иных действий пользователя) .
В оболочках WinAPI все эти его возможности не обернуты, поэтому для их реализации приходится использовать WinAPI напрямую.
> Или лучше сразу кроссплатформенную библиотеку?
Кроссплатформенная библиотека всегда по функционалу уступает некроссплатформенной.
Операционные системы - разные, в каждой есть свои уникальные возможности.
В кроссплатформенную библиотеку эти возможности просто не включают, иначе она потеряет кроссплатформенность. А они нужны.
И, пиша под кроссплатформенную библиотеку, их приходится реализовывать некроссплатформенными средствами, из-за чего приложение, все равно, оказывается некроссплатформенным.
Знать кроссплатформенную библиотеку тоже не помешает, не от всех программ требуются платформозависимые возможности. Но одной кроссплатформенной библиотекой не обойтись.
Для гуевой части WinAPI есть оболочки и не одна, например, Winforms (входит в .NET) и VCL (C++ Builder).
Но WinAPI - это не только GUI, а еще и, например, взаимодействие с окнами других программ, работа с системными сообщениями (имитация нажатий мыши, клавиатуры, иных действий пользователя) .
В оболочках WinAPI все эти его возможности не обернуты, поэтому для их реализации приходится использовать WinAPI напрямую.
> Или лучше сразу кроссплатформенную библиотеку?
Кроссплатформенная библиотека всегда по функционалу уступает некроссплатформенной.
Операционные системы - разные, в каждой есть свои уникальные возможности.
В кроссплатформенную библиотеку эти возможности просто не включают, иначе она потеряет кроссплатформенность. А они нужны.
И, пиша под кроссплатформенную библиотеку, их приходится реализовывать некроссплатформенными средствами, из-за чего приложение, все равно, оказывается некроссплатформенным.
Знать кроссплатформенную библиотеку тоже не помешает, не от всех программ требуются платформозависимые возможности. Но одной кроссплатформенной библиотекой не обойтись.
Тимур Абдулмуслимов
пиша)
Есть много кроссплафторменных (в той или иной степени) движков для создания игр.
Так что WinAPI совсем не обязательно.
Более того, для игр не AAA класса можно обойтись даже без С++. Тот же С# в среднем раза в два - четыре медленнее по тестам (если мне не изменяет память) , можешь начинать с него.
Правда, для оптимизации игр, как начнут потреблять слишком много ресурсов, все-таки прийдется поковыряться в указателях, прямой работе с памятью и т. п.
Если хочешь достаточно низкий уровень. глянь SharpDX.
Так что WinAPI совсем не обязательно.
Более того, для игр не AAA класса можно обойтись даже без С++. Тот же С# в среднем раза в два - четыре медленнее по тестам (если мне не изменяет память) , можешь начинать с него.
Правда, для оптимизации игр, как начнут потреблять слишком много ресурсов, все-таки прийдется поковыряться в указателях, прямой работе с памятью и т. п.
Если хочешь достаточно низкий уровень. глянь SharpDX.
даже если ты все выучишь, это не означает, что будешь лучше кодить
Похожие вопросы
- WINAPI и C++ в целом
- как думаете люди, что лучше для gui, c++ и winapi или c# ?
- Как задать двумерный массив на C#, чтобы значения можно было писать при запуске программы?
- сколько времени надо чтобы научится делать сайты а также программы? сайт на Html css c# c++ php программы аналогично
- Visual c++ создает полностью независимые от каких-либо библиотек экзешники или как?
- где в c++ free proffesional 5 прописывать пути нахождения библиотек? искал в tools но чето не могу найти ((
- Почему программа не компилируется в Borland C++ Builder?
- составить программу на языке visual basic c++ 2010
- Помогите с одномерным масивом. Программа нужна на С или C++.
- Возможно ли из программы, написанной в VISUAL STUDIO c++ извлечь exeшник так, чтобы он запускался абсолютно везде?