Здравствуйте, remotecpp, Вы писали:
R>Пока склоняюсь к C# + WPF. Есть какие-нибудь разумные альтернативы? Перенести в браузер — сложновато будет, на Qt завязываться не хочется, кросс-платформенность не нужна.
Здравствуйте, remotecpp, Вы писали:
R>В составе моего продукта есть просмотрщик внутреннего формата. R>Написан был очень давно, на С++ c использованием древней библиотеки, которая, в свою очередь, завязана на MFC.
R>Это несет ряд сложностей с поддержкой, исправлением и добавлением новых фич. Есть потребность переписать GUI.
R>Пока склоняюсь к C# + WPF. Есть какие-нибудь разумные альтернативы? Перенести в браузер — сложновато будет, на Qt завязываться не хочется, кросс-платформенность не нужна.
Я бы выбрал Delphi XE6. Дорого, но это мой выбор! Плохо но это работает!
Здравствуйте, remotecpp, Вы писали:
CS>>Sciter на самом деле, нынче это наше всё.
R>В чем именно оно все? Кросс-платформенность не рассматриваем. R>Работает быстрее, чем найтивный интерфейс? Скорость разработки вне конкуренции?
Некая корпорация (назовем её Foo Corp) так мне объяснила бенефиты от Sciter которые они с 2006 года используют:
1. Они выпускают новую версию своего продукта раз в год. При этом логика (backend) не сильно у них меняется за последние лет 20 или около того.
Но UI (то что customer's видят) они меняют регулярно — каждый год. Вчера были модны 3D кнопки, сегодня Metro UI.
В какие-то года они обходятся вообще косметическим редактированием CSS. Поэтому Sciter.
2. Их UX guy мне выдал следующую максиму: пользователь принимает решение покупать или нет в течение первых 40 секунд от начала download.
Т.е. скорость запуска и размер matters. Они вообще используют UI composition (загрузку интерфейса по требованию) когда пользователь
жмет кнопку "Детали..." или что-то там. Поэтому Sciter и HTML со скриптами в нем.
3. У них команды делающие UI и backend разделены. backend в своих worker threads выдает JSON или что-то на него похожее. frontend (UI) его потребляет.
Активно используется data-binding (sdk/samples/+plus — AngularJS alike databinding механизм).
Команды работают независимо практически ибо UI на данные не завязан сильно (естественное разделение UI и logic layers). Поэтому Sciter.
4. Direct2D graphics это GPU акселерация. В свете наличия уже на рынке retina grade (high-DPI) мониторов имеем увеличение фактически на порядок
количества пикселей которые CPU должен обработать (GDI, GDI+ и прочая). Только GPU короче. И в свете тех же мониторов получаются очень
нетривиальные конфигурации — здесь. Поэтому Sciter.
Там есть еще с десяток пунктов, но эти главные я думаю.
CS>>Примеры UI
R>Ну как-то сильно на любителя... Сплошные диалоги-раскраски с разноцветными кнопками.
Это да, согласен. Вот более гуманный что-ли, это все тоже HTML/CSS и скрипты по вкусу
Здравствуйте, ov, Вы писали:
CS>>Mac port я делал два месяца. Линукс будет дольше немного ибо приоритет пониже. Но около того.
ov>на последней макоси не запускается, кстати. даже ошибку не показывает.
ov>>на последней макоси не запускается, кстати. даже ошибку не показывает. CS>Эта версия mac os x и эта версия sciter?
макось 10.9.3, а скайтер из сдк с сайта. в sciter.app в info.plist прописана версия 1.0
в console.app при этом вылезает что-то такое:
27/06/14 3:30:55.808 pm com.apple.launchd.peruser.502[259]: (terrainformatica.sciter.110384[26611]) Job failed to exec(3) for weird reason: 13
27/06/14 3:30:55.809 pm Finder[26551]: 8837325: Attempting to SIGCONT to pid #26611 failed, with errno=#3, or the process failed to actually start
27/06/14 3:30:55.817 pm loginwindow[236]: ERROR | -[Application setAppContext:] | Unable to get PID for context [0,2929355]
27/06/14 3:30:55.817 pm Dock[302]: no information back from LS about running process LSASN:{hi=0x0;lo=0x2cb2cb}
27/06/14 3:30:55.819 pm Finder[26551]: 8837325: Attempting to SIGCONT to pid #26611 failed, with errno=#3, or the process failed to actually start
27/06/14 3:30:55.830 pm Finder[26551]: 8837325: Attempting to SIGCONT to pid #26611 failed, with errno=#3, or the process failed to actually start
27/06/14 3:30:55.841 pm Finder[26551]: 8837325: Attempting to SIGCONT to pid #26611 failed, with errno=#3, or the process failed to actually start