LINUX.ORG.RU

[посоветуйте][да будет срачъ]Надоела java

 


0

2

Доброго. Понимаю, что вопрос для срача, но постараюсь задать наиболее корректно.

Собственно, надоела ява. Хочется чего-то, что пошустрее и меньше памяти жрет, но чтобы можно было пистаь на «все» (Win+Mac+Linux) платформы. Софт чисто десктопный. Понимаю, что наиболее правильно писать 3 различных гуя + ядро, чтобы все нативно выглядело. Но все-таки. И хотелось бы, чтобы скорость разработки была сравнима с явовской.

Итого выбор:

C++: QT/GTK+ как они на маке смотрятся? А то GTK на винде не очень... Есть ли какой-нить стиль, чтобы оно более нативно смотрелось? Гугл дает только на 2000/XP. Как со скоростью разработки?

C#: WinForms/GTK/MonoMac патентные проблемы со стороны Мелкософта не волнуют.

Python: хм... даже не знаю...

Другие варианты?

Qt на всех виндах нативно смотрится, даже на семерочке. Скорость разработки нормальная, если хорошо владеешь инструментом. Переносимость почти идеальная.

anonymous
()

Если подвести итоги, то:

идеальный кроссплатформ, чтобы не жрал памяти там, где не надо, и не тормозил С++ (+ Boost??? ) и 3 нативных гуя к нему, но скорость разработки будет оставлять желать лучшего.

менее идеально Qt, скорость разработки получше, но нативность не идеальна (проги могут выбиваться из общего стиля оформления)

еще менее C# и 3 гуя, быстро пишется, но скорость работы не так высока.

Я правильно понимаю?

Rubbiroid
() автор топика
Ответ на: комментарий от Rubbiroid

> идеальный кроссплатформ, чтобы не жрал памяти там, где не надо, и не тормозил С++ (+ Boost??? ) и 3 нативных гуя к нему

Почему 3? Если ипользовать Qt (она прилично выглядит и в венде, и в Linux), получается 2 гуя.

tailgunner ★★★★★
()
Ответ на: комментарий от tailgunner

>Если ипользовать Qt (она прилично выглядит и в венде, и в Linux)

На маке тоже нормально. А если все-таки чего-то не хватает, можно воткнуть свои Qt-виджеты в Cocoa-приложение

annulen ★★★★★
()
Ответ на: комментарий от Rubbiroid

>проги могут выбиваться из общего стиля оформления

в винде это не проблема, там принято выпендриваться :)

в линуксе тоже не слишком актуально из-за зоопарка тулкитов, но для привередливых есть платформенная интеграция с КДЕ и Гномом

На Маке да, требования самые жесткие

annulen ★★★★★
()
Ответ на: комментарий от Rubbiroid

Это вообще раз плюнуть. И убирать иконки из менюшек для мака можно :)

annulen ★★★★★
()
Ответ на: комментарий от kamre

кроме jar надо еще dll или so поставлять, и хз, есть ли для мака. Когда-то пытался запустить на лине, было много гемора... хотя я тогда линь видел 3 раз в жизни

Rubbiroid
() автор топика
Ответ на: комментарий от note173

ну, это в сравнении с С++. Хотя, я когда-то в цикле открывал 1000+ фоток для выдирания из них превьюшек. Очень быстро получал «OutOfMemory», ибо GC запускался только после цикла, а память в 32 битах не резиновая. Пришлось вставивать в цикл вызов GC, что сказалось на производительности...

Rubbiroid
() автор топика
Ответ на: комментарий от Rubbiroid

Это последствия неправильной архитектуры. Сейчас принято как можно больше кода делать асинхронным, например.

note173 ★★★★★
()
Ответ на: комментарий от note173

> Это последствия неправильной архитектуры. Сейчас принято как можно больше кода делать асинхронным, например.

сишники/спиписники для цикла заюзали бы один буфер на все 1000+ фоток и не маялись

aho
()
Ответ на: комментарий от note173

и? Это не отменит того, что ГЦ стартовал только после того, как падала нагрузка на проц. А вообще, у все дело было и так в несколько потоков.

Rubbiroid
() автор топика
Ответ на: комментарий от Rubbiroid

> кроме jar надо еще dll или so поставлять

а в случае «C# и 3 гуя» ничего не придется нативного поставлять?

есть ли для мака

Eclipse же и для мака есть

kamre ★★★
()
Ответ на: комментарий от note173

> И получили бы тормоза в интерфейсе

с какой радости? обработку в поток, интерфейс крутится в основном потоке и получает готовые превьюшки

aho
()
Ответ на: комментарий от Rubbiroid

> ГЦ стартовал только после того, как падала нагрузка на проц

я и говорю, что так не должно быть. Или задача действительно не подходит для реализации на яве или c# (как и многие другие задачи потоковой обработки)

note173 ★★★★★
()
Ответ на: комментарий от note173

ну тогда (когда писал каталогизатор) я не умел подключать внешние сишные либы

Rubbiroid
() автор топика
Ответ на: комментарий от thevery

gedit на OS X

Для меня абсолютно нормально выглядит :). Я серьёзно, не вижу проблем. Наверно потому что я не мак-юзер :).

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

помимо того, что оно выгляди совершенно ненативно, так оно ещё и запускается секунд 10 (!!!), и это на SSD

thevery ★★★★
()
Ответ на: комментарий от true_admin

Страшноват, если не знать как должно выглядеть. Но есть gimp, вот он для сильных духом.

tensai_cirno ★★★★★
()
Ответ на: комментарий от Rubbiroid

Так проблема не в платформе, а в алгоритмах.

На яве можно очень аккуратно писать, но сложно это.

tensai_cirno ★★★★★
()

delphi очень хорош для твоих целей

Arkarar
()

Если хочется чего-то а-ля java и по-быстрее, то тогда mono,

anonymous
()

[синоптики]Когда выучишь Glib и Gtk+, (Win+Mac+ уже будет ненужно.[/синоптики]

backbone ★★★★★
()
Ответ на: комментарий от anonymous

>У Qt нативного вида на маке тоже нет. Выглядит как гумно. Посмотри хотя бы на Google Earth.

Другое дело - LispWorks, с его замечатетельным CAPI будет заюзан Cocoa.


Трололо такой трололо. Qt на маке тоже использует Cocoa.

thrall
()
Ответ на: комментарий от thrall

>Трололо такой трололо. Qt на маке тоже использует Cocoa.

от этого программа не будет чувствоваться нативно.

Ощущения от работы с программой делятся на 2 категории

1. Look – как программа выглядит. Даже использование нативных компонентов не особо что-то значит, потому как правила построения UI разные на разных платформах. Поэтому программа, интерфейс которой разрабатывался под Windows, на Mac OS X будет смотреться как минимум непривычно.

2. Feel – соответствует ли поведение программы ожиданиям пользователя. Этот момент тоже очень сильно зависит от платформы.

Резюмируюя – хорошего кроссплатформенного UI не будет. Хочешь сделать программу с хорошим UI – прийдется его придумать и реализовывать для каждой платформы.

anonymous
()

Если надоела, то тут все очевидно. C#, C++. Приложения на С++ будут достаточно эффективны. Для Gtk поставте Windows Impersonator, также есть Qt. .NET - нормальная платформа, не уровня Java, но решает большинство задач успешно и есть много вакансий

vertexua ★★★★★
()
Ответ на: комментарий от Deleted

> Плохое наследство от первых версий Qt. И это таки мелочь, которая не может сделать годный тулкит говном.

Спорное утверждение, но даже если принять его на веру, то оно про гипотетический «годный тулкит», а не про Qt.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.