Первый вопрос: хотите ли вы разрабатывать бесплатные, открытые исходные коды для личного использования или коммерческие приложения на C ++?
- Если вы хотите разрабатывать для личного использования! Затем вы можете использовать хороший инструментарий C ++, Framework или API.
- Если вы хотите разработать приложение с графическим интерфейсом, которое будет открытым или бесплатным. Затем вы можете использовать C ++ Toolkits, Frameworks или API, которые имеют GPL или любую лицензию с открытым исходным кодом, которая соответствует вашим потребностям.
- Даже вы можете разрабатывать коммерческие приложения с помощью наборов инструментов с открытым исходным кодом, каркасов или API, имеющих лицензию LGPL.
Второй вопрос: что вы хотите разработать для Windows, Mac, Unix или Linux? или это все, даже для мобильной платформы?
Если у вас есть пользователь Windows, как и я, и вы хотите разрабатывать только для Windows, я имею в виду не для кроссплатформенности, вы можете пойти с Win32 API, хотя, изучить Win32 API сложнее, но это дает вам полный контроль над машиной. Поверьте мне, ни один другой инструмент не обеспечит вам полный контроль над машиной. Если вам по какой-то причине не нравится Win32 API, вы можете использовать MFC, которая является еще одной технологией от Microsoft, но не является бесплатной, устаревшей и которой уделяется меньше внимания в наши дни. Если вы решили разрабатывать на платформе .NET, у вас есть C ++ / CLI, расширение языка C ++ для разработки приложений .NET. .NET предоставляет вам безопасность типов, ООП и встроенный сборщик мусора, предоставляет вам все API, связанные с Windows и x86 или x64, в одном пакете.
У .NET свой мир! Microsoft решила портировать .NET и на другие операционные системы, например, проект Mono ... Вы можете разрабатывать почти все виды приложений, используя .NET.
Если вы хотите разрабатывать C ++ GUI-приложения для кроссплатформенности, тогда Qt, WxWidgets и U ++ доступны для вашей помощи. Вы можете написать один раз и развернуть в любом месте с этими библиотеками. Многие IDE с открытым исходным кодом и компиляторы также доступны для простой разработки приложений на C ++. Обратите внимание, что если вы не хотите разрабатывать для кроссплатформенности, любая кроссплатформенная библиотека будет иметь накладные расходы и неизбежно увеличить размер исполняемых файлов.
Достаточно ли хороши ваши знания C ++ для программирования программных систем?
На самом деле, если ваши знания C ++ недостаточно глубоки, и вы не понимаете такие методы программирования, как ООП, Encupsolation, Классы, Интерфейсы, Типы, Шаблоны программирования и т. Д., Вы не можете использовать любой инструментарий с полным потенциалом.
Не забывайте, что каждый Toolkit, Framework или API реализован на каком-то языке программирования. Если вы хорошо понимаете язык, вы можете очень хорошо использовать инструментарий. Я думаю, вы бы поняли мою точку зрения.