Поскольку я изучаю Java в этот период, и я только что закончил с учебниками, я думаю, что я готов начать вносить свой вклад в проект (так как я знаю из опыта, это лучший способ действительно учиться).
Я видел GWT, выглядит интересно, поэтому я решил попробовать. Я думаю, однако, поскольку GWT развертывает Java-приложения на JavaScript, почему я должен изучать GWT, когда я мог бы изучать реальную вещь (это JavaScript). Мой вопрос: стоит ли это того? Разве кому-то не лучше изучать JavaScript, если он хочет создавать приложения JS вместо использования Java и GWT? Я понимаю, что с GWT было бы легче создавать определенные вещи, но в конце концов оно того стоит?
Спасибо.
java
javascript
gwt
Питер Боутон
источник
источник
Ответы:
GWT по сути является компилятором для нативного кода, так же, как Visual Studio компилирует исходный код в байтовые коды или машинный язык.
Это позволяет программисту абстрагироваться от различий в базовой архитектуре, так же как пользователям Visual Studio не нужно беспокоиться о различиях в длине слова, количестве регистров и точных соглашениях для вызова операционной системы, когда они кодируют для 32-битных или 64-битных систем. -немного.
Это хорошо, так как позволяет перенести часть бремени поддержки на другие. Поскольку это Google, вы знаете, что у них больше ресурсов для разработки, чем у вас, поэтому вы, по сути, привлекаете дополнительную рабочую силу бесплатно.
источник
Мне это не нравится
Все, что вы можете сделать с ним, вы можете сделать чище без него.
источник
Сама причина, по которой GWT взяла Java в качестве исходного языка, заключается в том, что с JS (Ecmascript) работать нечеловечески сложно. GWT - это просто хороший способ перенести программирование в Web / браузеры, где это было невозможно раньше.
До GWT были тщетные попытки программировать что-либо в браузерах (Ajax, dojo, обычный javascript). Но силы природы там слишком жестоки, поэтому все разваливается (браузеры меняются, они никогда не бывают одинаковыми, люди говорят на разных языках, люди думают, что 15 изображений должны быть на самом деле 15 файлами и т. Д.).
Ответ таков: если бы я написал код для интернет-котла (что не является моей работой), я бы выбрал GWT.
PS Еще одна мысль. JS сделан Netscape. Компания давно умерла, но язык остается там незаконченным и гниющим
источник
Несколько причин, по которым стоит догнать GWT:
Учитывая это, GWT на самом деле не тесно связан с фреймворками веб-сервисов от Google или Sun (сервлет). Интегрированные инструменты больше ориентированы на интеграцию со своими серверами из-за деловой природы Google или Sun. Чтобы использовать возможности технологии GWT, следует более или менее игнорировать некоторые из гипер-интеграции серверов. Просто используйте GWT в качестве инструмента клиентского приложения, это должно быть более полезным для вашей будущей карьеры.
источник
Это зависит от того, что вы хотите сделать (во всяком случае, для большинства инструментов).
Если вы хотите вникнуть в детали веб-разработки, используйте многие (иногда разные) приемы среды браузера и их новейшие функции, хватит смелости бороться с небольшими приемами, которые делают ваше веб-приложение «крутым», GWT всегда будет на вашем пути: если у вас есть время и опыт, вы можете делать все и больше своими руками. И да, есть много других наборов инструментов, которые помогут вам в процессе программирования на JavaScript.
Однако, если вы хотите создать «не такой необычный», но стабильный графический интерфейс для вашего приложения, который «должен», и в большинстве случаев действительно делает то же самое, и выглядит одинаково в разных браузерах без уловок, GWT - хороший выбор, лучшее, что я знаю. Объяснение: Google определенно заинтересован в том, чтобы синхронизировать его с большинством браузеров и новейшими технологиями, и определенно имеет достаточно ресурсов для этого. Да, вы придерживаетесь другого гиганта вместо того, чтобы заниматься своими делами. Вопрос: чем вы занимаетесь? Предоставить ту же услугу широкому кругу пользователей с помощью веб-интерфейса с наименьшими усилиями - или создать блестящий, исключительный веб-портал, который обладает самыми крутыми функциями на новейших платформах.
Причина +1: я думаю, что полезно хранить ваше приложение в одной кодовой базе и на одном языке. Вы можете сделать аккуратный трюк в сценариях базы данных - но вы привязываетесь к этому серверу БД. Вы можете выполнять внешние действия с помощью сценариев оболочки или пакетных файлов, но вы привязываетесь к операционной системе. Вы можете реализовать некоторую логику контроллера в JavaScript, чтобы обеспечить богатый клиентский интерфейс в браузере, но вы можете заблокировать себя в одном браузере. В любом случае, их непросто синхронизировать с основной структурой данных приложения и требованиями (и, возможно, самым сложным из них является постоянно меняющаяся среда браузера + инструменты JS). Я убежден, что если основное приложение находится на Java, все должно быть на Java - с очень малой долей случаев, когда вам действительно нужно поместить часть логики в другую среду.
Я выбрал GWT из-за моих ответов на вышеупомянутые вопросы - и он делает то, что хотел, чтобы он делал: примерно через 2 недели после установки у меня был приемлемый веб-интерфейс для внутренней системы мониторинга сервера - хотя у меня был опыт работы с Swing. (Нет, я не использовал внешний вид по умолчанию и да, я использовал CSS и классы для представления логической информации :-))
Проверьте свои текущие и запланированные задачи - и выберите правильный инструмент для них.
источник