LINUX.ORG.RU

Расширение сферы знаний и выбор ЯП, нужны советы


0

2

Привет всем, который год программирую под веб на php. Но с каждым годом понимаю что хочется что-то нового. Присматриваюсь к другим ЯП, но их так много, что не хочется даром терять время на что-то, что в конечном итоге может оказать не нужны для моих потребностей. Скажу сразу, что коддинг для меня скорее just for fun, но это одно из любимых занятий. И так чтобы я хотел от ЯП:

1. кроссплатформенность. очень люблю linux, но и за окошками приходится трудится. на этом этапе два кандидата (java, qt). Судя по описаниям первое кажется тяжеловатым, но интересным. Второе имеет прекрасную возможность компилится под вин и линь из одного исходного кода. Но тут напрашивается вопрос, для написания на QT требуются знания плюсов?

2. написание как десктопных приложений, так и веб приложений. Тут, судя по описаниям, подходит JAVA

3. мне не критично время на изучение.

4. какие ЯП подходят под первые два пункта?


написание как десктопных приложений, так и веб приложений

Python + PySide

Тут, судя по описаниям, подходит JAVA

Ты ради интереса потрагай дюжину ДЕСКТОПНЫХ приложений на жабе и ответь на вопрос: я хочу плодить говно?

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

ну говно не говно, но тормознутость ощущается.

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

У меня работает пяток десктопных приложений на Java. Не идеал, но и не «говно».

PS: Не джавист, и не фанат Java. Но и помои на неё лить просто так не намерен.

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

У меня работает пяток десктопных приложений на Java. Не идеал, но и не «говно».

Кому и кобыла невеста. Отрицать, что у жаба большие проблемы с гуем, по-моему, могут только упоротые.

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

Отрицать, что у жаба большие проблемы с гуем, по-моему, могут только упоротые.

А какие у нее поблемы с гуем? (не java-программист)

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

Ок, Ok. «Упоротый» спрашивает: какие именно «большие проблемы с гуем» у Java. Интерфейс слегка корявенький, не идеальный (повторяю ещё раз), но в чём «большие проблемы»?

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

какие именно «большие проблемы с гуем» у Java

Не только с гуем, а вообще десктопностью:

1. большой расход памяти;

2. долгий запуск;

3. сглаживание не нативное (вроде что-то в openjdk делают, но я пользуюсь оракловской жабой);

4. ненативный L&F:

4.1. линукс — сдвиги есть, но все равно без слез не взглянешь, я переключаю на нимбус;

4.2. винда — многочисленные мелкие косяки и тормоза (попробуйте ресайз окна, например);

4.3. мак — тут, вроде, все норм;

Собственно, кроме я даже не могу придумать хоть один аргумент за жабу на десктопе.

p.s. смотрел биндинги java-gnome — вот там все ок, гуй нативный, памяти жрет мало, запускается быстро. Но они полумертвые, вроде, и никем не используются. А жаль.

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

1. большой расход памяти;

Пусть жрёт - мне, как пользователю, пофик. Объём памяти, установленной на системах, растёт постоянно.

2. долгий запуск;

1-2 секунды (это я про используемые мною приложения). Для меня это не долго. Пусть красноглазики фапают на микросекунды.

3. сглаживание не нативное (вроде что-то в openjdk делают, но я пользуюсь оракловской жабой);

Так я же говорил: да, корявенько слегка, но сносно. То есть, это не слишком «большая проблема».

4. ненативный L&F:

Ну, не знаю...по мне, так это вообще не проблема. Немного мысленно перестроился и вперёд.

Собственно, кроме я даже не могу придумать хоть один аргумент за жабу на десктопе.

Да и не надо придумывать - десктопные приложения на Java есть, и ими вполне можно пользоваться. Кому не нравится - не пользуются.

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

Который раз отвечаю - все проблемы из-за легкости неоптимальной разработки на Java. У меня ничего не тормозит, я привык писать под телефоны с 700 кб памяти и 180-200 мгц процессорами без jit.

Мои аргументы против не связаны с языком:
1. Действительно плохой интерфейс. Можно использовать SWT, или попробовать javafx 2.0, тут неоднозначно все.
2. Необходимость в java-машине. У большинства она есть, но как-то не принято требовать обязательной установки 20-мегабайтного пакета. Не знаю, можно ли по лицензии таскать ее с собой.

Аргументы за:
1. Реальная кроссплатформенность.
2. Очень быстрая виртуальная машина, молниеносный GC, если задать правильные параметры запуска и не злоупотреблять выделениями (тут и C++ затормозит).
3. Много одинаковых приемов программирования для сервера, десктопа и андроида.

Но сейчас я бы выбрал QML + C++11.

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

в phpStorm к примеру jre вшит в установочник

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

PS: Перфекционист?

Безуспешно пытаюсь излечится :-)

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