Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Средства визуального проектирования для C++


Автор: Курсант 12.3.2015, 22:02
Всем доброго времени суток!

В организации периодически возникает необходимость разработки ПО для ОС Windows, с использованием GUI. В любительских приложениях я всегда использовал C++ Builder, т.к. это и удобно, и быстро, и эффективно, а сейчас возникла необходимость подобрать недорогое (лучше бесплатное, чтобы с начальством не связываться) средство разработки приложений. Скажите, что можно использовать для этих целей, что лучше всего и современнее? Возможно, есть какие-то современные версии Builder в продаже? Я до сих пор использую C++ Builder 6 smile

Можно ли использовать Visual C++ Express или Visual C# Express на предприятии для разработки "технологического" ПО, т.е. такого ПО, которое не будет продаваться как самостоятельный продукт, но может предоставляться клиенту, или использоваться для собственных нужд на предприятии? Главный акцент делается именно на легальности использования средств разработки, т.к. за этим довольно пристально следят и у предприятия могут возникнуть проблемы.

Я так понимаю, лучше всего потихоньку переползать в сторону .NET. Но руки до него у меня никак не доходят. Предоставляет ли Microsoft бесплатные средства разработки, в т.ч. для организаций?

Коллеги предлагают что-то из Open-Source, на базе gcc, я пока не вникал, да и они не очень разобрались, лично мне после Builder всё кажется топорным и неудобным.

Спасибо за внимание!

Автор: kemiisto 13.3.2015, 01:10
Цитата(Курсант @  12.3.2015,  21:02 Найти цитируемый пост)
Можно ли использовать Visual C++ Express или Visual C# Express на предприятии для разработки "технологического" ПО, т.е. такого ПО, которое не будет продаваться как самостоятельный продукт, но может предоставляться клиенту, или использоваться для собственных нужд на предприятии?

В общем и целом, можно, но возможны нюансы, на предмет наличия которых, Microsoft рекомендует смотреть лицензионное соглашение к конкретному продукту.
Цитата

Commercial use of Visual Studio Express

Visual Studio Express products are available at no charge and may be used for commercial, production usage subject to the license terms provided with each product. For example, you can use Express for Windows to create apps that you can then submit for sale in the Windows Store.


Как бы то ни было, с выходом Community Edition, Express редакции стали неактуальными, т.к. Community Edition шире по возможностям (например, можно устанавливать различные расширения) и также бесплатна. В лицензии прописано явно, что если контора не enterprise, то до 5 разработчиков одновременно могут пользоваться средой для разработки коммерческих приложение. Enterprise при этом считается любая организации (или её дочерняя структура) с кол-вом ПК или их пользователей больше 250 или с годовым доходом более 1 млн. долларов США. Подробности можно почитать http://www.microsoft.com/en-us/download/details.aspx?id=13350.

Однако какой Вам толк от Студии? Вам, я так, понял нужно (де)билдеровское формошлёпство smile , которого для С++ в Студии нет. Если только не писать на C++ под .NET, что не комильфо. А для стандартного С++ того что Вы ищете не существует. Есть всякие визуальные редакторы (как самостоятельные, так и встроенные в IDE) для различных графических тулкитов (wxWidgets, Qt, ...), но это всё равно далековато от (де)билдеровского формошлёпства. Разве что http://www.ultimatepp.org, но за него не скажу, ибо только слышал, сам не щупал.

Цитата(Курсант @  12.3.2015,  21:02 Найти цитируемый пост)
Я так понимаю, лучше всего потихоньку переползать в сторону .NET.

Таки, пожалуй, да. Если нужно формошлёптсво + только под Виндавс + на си-подобном языке + живое + бесплатное для коммерческой разработки, то C# - Ваш выбор.

Цитата(Курсант @  12.3.2015,  21:02 Найти цитируемый пост)
лично мне после Builder всё кажется топорным и неудобным

Ну, тут уже, как говорится, не сочтите за грубость, медицина бессильна. smile

Автор: Guinness 13.3.2015, 09:42
Цитата(kemiisto @  13.3.2015,  02:10 Найти цитируемый пост)
Таки, пожалуй, да. Если нужно формошлёптсво + только под Виндавс + на си-подобном языке + живое + бесплатное для коммерческой разработки, то C# - Ваш выбор.

Только нужно хорошо подумать критична ли версия .NET Framework. Если у Вас на предприятии куча машин с WinXP, то следует принять во внимание следующий http://stackoverflow.com/questions/17499351/is-it-possible-to-run-a-net-4-5-app-on-xp. Конечно, если Вы будете использовать WinForms, то это ограничение Вас не сильно коснётся, а вот для WPF я бы всё таки старался использовать последние версии .NET, хотя 4.0 может и хватить. 
Для работы с версиями Windows 8+ появляется новая технология Windows Modern UI(Metro) и все "прелести"(а может и без кавычек, если предоставляемый функционал Вас устраивает) работы с WinRT. Хороша она тем, что её можно использовать и на мобильных устройствах с данной ОС. Для разработки под десктопы Metro+WinRT можно послать на огурец, по крайней мере пока.
Что из всего этого зоопарка выбрать, я не знаю. Если писать GUI с поддержкой XP, я бы использовал Qt(QtWidgets). Для новых версий Win8+ я так пока и не решил, начальство настаивает на Metro+WinRT+"костыли для подключения к dcom серверу", параллельно, наверное, внерабочее время попробую написать какое-нибудь тестовое приложение с использованием Qt+QML, собранную под WinRT, с прицелом на мультиплатформенность.
ЗЫ если писать несложные приложения для Windows, то да, kemiisto абсолютно прав.

Автор: vinter 13.3.2015, 10:37
Соглашусь с предыдущими сообщениями, если приложения только для Windows, то нужно уходить в .NET. Нет никакого смысла использовать менее удобные инструменты(и язык), когда нет специфичных требований.

Автор: bsa 13.3.2015, 11:54
Курсант, Qt Creator предоставляет необходимые возможности для "формошлепства", но он более кодоориентированный (билдер - формоориентированный). Т.е. формочку ты делаешь (оформительские возможности пошире, чем у билдера), связываешь объекты на ней сигналами (например, галочку снял, группа контролов отключилась или скрылась), а затем переходишь в редактор кода и уже там дописываешь бизнес-логику. Такой глупости как "диалог открытия файла" нельзя бросить на форму в виде квадратика. Форма - это только форма.
Но для начала нужно изучить Qt. Делается это очень просто по туториалам. За пару дней можно довольно хороший скилл получить и уже уйти в свободное плавание (документация отличная и логика классов грамотная).

Автор: SVN74 13.3.2015, 12:04
Цитата(Курсант @  12.3.2015,  22:02 Найти цитируемый пост)
Я до сих пор использую C++ Builder 6

По мне, так Вам для предприятия ничего лучшего и не нужно, - Ваши программы с уверенностью будут работать на всех Windows от 2000 до Win10 (проверено).

Автор: tzirechnoy 15.3.2015, 18:55
  Удивляют рекоммендацыи сруливать на .NET. C++ под него всё равно нет, а если уж изучать новый язык - то можно найти что-нибудь с менее дурацкой экосистемой.

Автор: kemiisto 15.3.2015, 21:53
Цитата(tzirechnoy @  15.3.2015,  17:55 Найти цитируемый пост)
C++ под него всё равно нет

Да что Вы говорите?! smile Загуглите C++/CLI, много нового для себя откроете. 
Цитата
C++/CLI was standardized by Ecma as ECMA-372. It is currently available in Visual Studio 2005, 2008, 2010, 2012 and 2013, including the Express editions.

Автор: baldina 16.3.2015, 00:40
Цитата(tzirechnoy @  15.3.2015,  18:55 Найти цитируемый пост)
можно найти что-нибудь с менее дурацкой экосистемой

например?

Автор: kemiisto 16.3.2015, 19:16
tzirechnoy, все замерли в ожидании срыва покровов. Где же Вы?! smile 

Автор: Курсант 16.3.2015, 22:12
Извините за оффтоп smile Кто-нибудь может что-нибудь сказать про GTK или про U++? И то и другое позиционируется как средства проектирования кроссплатформенных приложений...

Автор: kemiisto 16.3.2015, 22:31
Цитата(Курсант @  16.3.2015,  21:12 Найти цитируемый пост)
Кто-нибудь может что-нибудь сказать про GTK или про U++? И то и другое позиционируется как средства проектирования кроссплатформенных приложений...

Вы уж определитесь поточнее, что Вам нужно: только виндавс или кросс-платформенно? 

Автор: Amp 16.3.2015, 22:44
Windows-версия GTK+ плохо поддерживается. Есть очень старые неприятные баги вроде неработающих хоткеев. Видел у коллеги одну тулзу, которую переписали со 2-ой на 3-ю версию GTK+, так от шрифтов в ее windows-версии глаза вытекают. С эмуляцией нативного вида виджетов тоже есть некоторые проблемы, выглядит чужеродно, лучше сразу натягивать сторонний theme engine с симпатичной темой. Комьюнити не так велико как хотелось бы - на русскоязычных форумах так вообще шаром покати. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)