![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| regis |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 12.12.2005 Где: Москва, Россия Репутация: нет Всего: 7 |
Всех Java-программистов приветствую!
Требуется консультация по теме, вынесенной в заголовок. Насколько я понимаю, в Java-приложениях графический интерфейс реализуется через классы AWT? Хотелось бы знать мнение профессионалов, насколько эта библиотека классов удачна (я прежде всего имею в виду идеологию, а не реализацию). Эта тема интересна мне потому, что мне (для собственного проекта) нужен абстрактный графический интерфейс, не зависящий от платформы (Windows, Linux+X) --- хотелось бы знать, насколько Java-подход можно считать удачным с точки зрения практика. Сам я в Java ориентируюсь очень слабо, поэтому и решил поинтресоваться здесь. Заранее признателен... --------------------
В. В чем разница между hardware и software?О. В отличие от второго, по первому можно двинуть кулаком или пнуть ногой. |
|||
|
||||
| Бонифаций |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 827 Регистрация: 15.9.2005 Где: Brisbane Репутация: нет Всего: 40 |
AWT очень уж старенькая. Горазжо чаще используют swing
Если вы привязани именно к яве - лучше все же swing или swt. Если вы _не_ привязаны (вы пишите что слабо ориентируетесь), то посмотрите в сторону QT или wxwidgets для C++ -------------------- Бонифаций. |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
AWT - это старая технология, отличается зависимостью отображения GUI компонентов от платформы на котором выполняется программа. AWT представляет собой набор тяжелых компонентов, прорисовкой которых занимается сама OC. Это означает, что под разными операционными системами интерфейс будет выглядеть по разному, а то что красиво под Windows не всегда хорошо смотрится под Linux.
- это Swing. На смену AWT пришел легковесный Swing с улучшенной архитектурой и универсальным для всех платформ отображениям компонентов. Swing рисует графическая система Java, а ОС ничего не знает о Swing в отличии от AWT компонентов. Плюс Swing обладает расширенным набором элементов управления и множеством полезных меточей, отсутствующих в AWT (один Look And Feel чего стоит). Мое мнение такое: если GUI, то Swing. |
|||
|
||||
| batigoal |
|
|||
![]() Нелетучий Мыш ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 6423 Регистрация: 28.12.2004 Где: Санктъ-Петербургъ Репутация: 7 Всего: 151 |
В плане идеологии, я считаю, Swing спроектирован очень грамотно. Четкая иерархия классов и строгое соблюдение идеологии модель-представление. -------------------- "Чтобы правильно задать вопрос, нужно знать большую часть ответа" (Р. Шекли) ЖоржЖЖ |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 38 Всего: 538 |
Минусы состоят в том, что нельзя на полную катушку использовать возможности платформы. Например сворачивание Java приложения в трей, не реализовать без сторонних библиотек. Работает это дело медленней, чем нативные компоненты.
Хотя с другой стороны, тот же SWING полностью прозрачен, для программиста и позволяет довольно сильно вмешиваться в свою работу. Да и спроектирован, очень грамотно. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| regis |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 12.12.2005 Где: Москва, Россия Репутация: нет Всего: 7 |
Спасибо всем, покопаюсь в SWING, за который подано больше всего голосов.
Хотя, как я понял, если все компоненты интерфейса выглядят одинаково между платформами -- значит, отрисовываются они средствами самого SWING'a? А как это сказывается на эффективности? Вроде, если за отрисовку ответственна сама ОС должно быть быстрее? --------------------
В. В чем разница между hardware и software?О. В отличие от второго, по первому можно двинуть кулаком или пнуть ногой. |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 38 Всего: 538 |
Да, вопрос только в том насколько велики потери в скорости. По мне ими можно и пренебречь. -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
| regis |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 232 Регистрация: 12.12.2005 Где: Москва, Россия Репутация: нет Всего: 7 |
Еще один вопрос: а исходники SWING доступны? И если да, то где их можно скачать?
--------------------
В. В чем разница между hardware и software?О. В отличие от второго, по первому можно двинуть кулаком или пнуть ногой. |
|||
|
||||
| powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 31 Всего: 159 |
Исходники доступны. Исходники Swing идут вместе с исходниками JDK. А исходники JDK поставляются вместе с JDK (src.zip). По крайней мере 1.5.06 и 1.5.07 имеются. А так исходники JDK здесь лежат.
|
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |