Які ви думки щодо GWT? [зачинено]


11

Оскільки я навчаюсь Java в цей період, і я щойно закінчив підручники, я думаю, що готовий почати свій внесок у проект (оскільки з досвіду знаю, що це найкращий спосіб по-справжньому вчитися).

Я бачив GWT, виглядає цікаво, тому я подумав, що варто спробувати. Я думаю, однак, оскільки GWT розгортає Java-програми в JavaScript, чому я повинен вивчити GWT, коли я міг дізнатися фактичну річ замість цього (це JavaScript). Моє запитання: чи варто це? Чи не буде хтось краще вивчати JavaScript, якщо вони хочуть створювати JS-програми, замість того, щоб використовувати Java та GWT? Я розумію, що може бути простіше будувати певні речі з GWT, але врешті-решт, чи варто того?

Дякую.


3
Але люди навчаються С замість систем програмування в машинному коді безпосередньо.
haylem

Відповіді:


6

GWT по суті є компілятором для рідного коду, подібно до того, як Visual Studio компілює джерело в байт-коди або машинну мову.

Це дозволяє програмісту абстрагувати відмінності основної архітектури далеко, як і користувачі Visual Studio, яким не потрібно турбуватися про різницю в довжині слова, кількості регістрів та точних умовах для виклику операційної системи, коли вони кодують 32-розрядні або 64 -біт.

Це гарна річ, оскільки дозволяє перенести частину навантаження на обслуговування на інші. Оскільки це Google, ви знаєте, що у них більше ресурсів для розробки, ніж у вас, тому ви фактично залучаєте додаткову робочу силу безкоштовно.


2
Ще однією перевагою є налагодження розміщеного режиму. Таким чином, ви можете налагоджувати логіку вашої програми через клієнтську та серверну сторони та за допомогою всіх інструментів кроку через налагоджувач.
Джеремі

5

Мені це не подобається

Все, що ви можете зробити з цим, ви можете зробити чистіше без нього.


Погодьтеся. Але ви пишете сторінки з декількома зображеннями з одним файлом на зображення. Правильно?

1
@Rocket: Я не розумію, що означає "кілька зображень, один файл на зображення" .
Джош К

4
@Rocket: Я не бачу, які зображення стосуються GWT. Якщо ви хочете включити спрайт, ви можете, інакше так, у вас є кілька зображень.
Джош К

1
@Josh Моя здогадка, ви додаєте невеликі анімації тощо, а не пишете великий комплекс. Ось причина, через яку мови сценаріїв обмежуються невеликими завданнями, а мови для статичного набору використовуються для більш великих завдань.
mP01

2
Словом інструментарій. Ніхто не написав справжнього порівнянного редактора для JavaScript порівняно з багатьма доступними для Java.
mP01

2

Сама причина, по якій GWT взяла Java як вихідну мову, полягає в тому, що з JS (Ecmascript) працювати нелюдсько важко. GWT - це просто приємний спосіб наблизити програмування до Web / браузерів там, де раніше це було неможливо.

Перед GWT були марні спроби запрограмувати щось у браузерах (Ajax, dojo, звичайний javascript). Але сили природи там надто жорстокі, тому все розпадається (браузери змінюються, вони ніколи не бувають, люди розмовляють різними мовами, люди думають, що 15 зображень мають бути насправді 15 файлами тощо).

Отож відповідь: Якби я кодував котел для інтернет-океану (що це не моя робота), я б вибрав GWT.

PS Ще одна думка. JS виготовляється Netscape. Компанія давно мертва, але мова залишається там незавершеною і гниє


6
-1 ECMAScript постійно розробляється; Щойно з'явився ECMAScript 5, а ActionScript - мова Flash, - ECMAScript.

16
-1. Програмувати JavaScript не є "нелюдсько складно" . Це вам здається, що JavaScript складний, ви, ймовірно, не дуже розумні. До GWT були люди, які знали, що роблять. Після GWT є люди, які не можуть кодувати JavaScript (і використовувати GWT), і такі, які можуть (і не використовують GWT). Крім цього, JavaScript вибухнув повз браузер, подивіться на Node.js та MongoDB. Використовуйте SpiderMonkey або V8 для написання незалежних сценаріїв платформи.
Джош К

3
@ Джош К. Я також вважаю Visual Basic 6 ще важче програмувати, ніж JS. Java легше приблизно в 50 разів, ніж Basic. А CSharp легше може бути в 2 рази, ніж Java. Під труднощами я маю на увазі виконання практичних складних додатків, які можна ремонтувати, створювати в командах, продавати клієнтам. Мене не хвилює різниця в синтаксичному цукрі. І я думаю, що якщо вам потрібно бути дуже розумним, щоб користуватися мовою, то з мовою щось не так.

3
JavaScript дуже легко створювати великі ремонтопридатні програми, створені командами. Я це зробив. Немає нічого складного в написанні модульного коду, крім того, що люди вирішили цього не робити.
Джош К

Не плутайте DOM з JavaScript. Це не JS.
Ендрю Т Фіннелл

2

Кілька причин, які добре наздогнати GWT:

  • Кожна технологія має життєвий цикл. GWT в самому розпалі. Навчання GWT дасть вам перевагу технології протягом більш тривалого періоду майбутнього часу.
  • GWT, використовуючи Java, вносить структуру в веб-додаток. JavaScript більше підходить для сценаріїв. Підтримувана Java, GWT більше підходить для великих застосувань. Якщо ви помітили рамки / набори інструментів поверх JavaScript, ви можете зробити висновок, що я вважаю, що JavaScript сам по собі недостатній для серйозних проектів. Усі ці рамки приносять структури для розробки додатків. GWT - одна з таких рам, і це та, яка буде переважати.
  • Мобільний додаток - це революція у світі програмного забезпечення. Революція зараз знаходиться на ранній стадії. Все більше і більше програмного забезпечення буде переходити на мобільні платформи. Зараз GWT - це найповніший інструмент для розробки додатків між платформами, який ви можете знайти.

З огляду на це, GWT насправді не тісно пов’язаний із рамками веб-служб від Google або від сонця (сервлет). Інтегровані інструменти більше фокусуються на інтеграції зі своїми серверами, завдяки діловій формі Google або Sun. Щоб використовувати потужність технології GWT, слід більш-менш ігнорувати деякі гіпер інтеграції сервера. Просто використовуйте GWT як інструмент для клієнтських додатків, це має бути вигідніше для вашої майбутньої кар’єри.


1

Це залежить від того, що ви хочете зробити (як і для більшості інструментів у будь-якому випадку).

Якщо ви хочете розібратися в деталях веб-розробки, використовуйте безліч (іноді різних) хитрощів середовища браузера та найновіших їх функцій, майте можливість боротися з невеликими хитрощами, завдяки чому ваш веб-додаток 'виглядає крутим', GWT завжди буде на вашому шляху: якщо у вас є час і досвід, ви можете зробити все і більше руками. І так, існує багато інших наборів інструментів, які допоможуть вам програмувати в JavaScript.

Однак якщо ви хочете створити "не дуже фантазійний", але стабільний графічний інтерфейс для свого додатка, який "повинен", і в більшості випадків дійсно так само, і виглядати те саме в різних браузерах без хитрощів, GWT - це добре вибір, найкраще, про що я знаю. Пояснення: Google, безумовно, вмотивований підтримувати синхронізацію з більшістю браузерів та найновіших технологій, і, безумовно, має достатньо ресурсів для цього. Так, ви дотримуєтесь іншого гіганта, а не займаєтесь своїми справами. Питання: яка ваша робота? Надати ту саму послугу найширшим людям користувачів через веб-інтерфейс з найменшими зусиллями - або зробити блискучий, винятковий веб-портал, який має найкрутіші функції на новітніх платформах.

Причина +1: Я думаю, що вигідно зберігати свою програму в одній базі коду та одній мові. Ви можете зробити акуратний трюк у сценаріях баз даних, але ви заблокуєте себе на цьому сервері db. Ви можете виконувати зовнішні речі зі скриптами оболонки або пакетними файлами - але ви заблокуєте себе в операційній системі. Ви можете реалізувати частину логіки контролера в JavaScript, щоб забезпечити багатий клієнтський інтерфейс у браузері, але ви можете заблокувати себе в одному браузері. У всіх випадках непросто тримати їх у синхронізації зі структурою даних та вимогами основної програми (і, мабуть, найскладнішим є середовище браузера та інструменти JS, що постійно змінюється). Я переконаний, що якщо основний додаток знаходиться на Java, всі речі повинні бути на Java - з дуже невеликою частиною випадків, коли вам дійсно доведеться перенести частину логіки в інше середовище.

Я вибрав GWT через свої відповіді на вищезазначені питання - і він робить те, що я хотів це зробити: приблизно через 2 тижні після встановлення у мене був прийнятний веб-інтерфейс для внутрішньої системи моніторингу сервера - хоча я мав досвід роботи з Swing. (Ні, я не використовував зовнішній вигляд за замовчуванням, і так, я використовував CSS та класи для подання логічної інформації :-))

Перевірте свої поточні та заплановані завдання - і виберіть правильний інструмент для них.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.