SmartClient или SmartGWT?

Помимо очевидных различий между JavaScript и Java, каковы соответствующие различия при использовании SmartClient или SmartGWT?

5 ответов

Решение

SmartGWT - это GWT-оболочка для SmartClient, что, как вы говорите, означает, что вы можете написать свое приложение SmartGWT, используя Java.

Исходя из моего опыта, единственное различие, которое имеет значение при программировании, заключается в том, что обертка GWT является более строгой, чем непосредственное использование компонентов js. Например, программная прокрутка TreeGrid из java - это ад, поскольку тело базовой таблицы (к которой нужно обращаться, чтобы прокрутить взорванную вещь) не открывается через SmartGWT, в то время как его, конечно, легко достичь с помощью js.

В целом, я не буду основывать выбор между компонентами js и оболочкой gwt soley на этих различиях, но я бы посмотрел на другие факторы в вашем проекте. Какие техники вам наиболее удобны? Какую кастомизацию вы планируете делать?

В моем случае ремонтопригодность кода.

Мы Питон-хаус. Но для клиентского кода мы выбираем GWT, сначала с GXT, но теперь с SmartGWT.

Нам не нравится Java, но нам не нравится JS гораздо больше: упорядочение, поддержка библиотек для нескольких виджетов, расширение объектов для предоставления пользовательских функций и т. Д. Между выполнением этого в JS или Java, вариант был очевиден со стороны Java. Мы пишем многократно используемые компоненты здесь, и теперь мы пишем очень минимальный код для клиентской стороны, только повторно используем компоненты и используем REST для взаимодействия с нашими бэкэндами Python.

Мы знаем, что SmartGWT более многословен, чем SmartClient, но благодаря автозаполнению Netbeans (некоторые коллеги здесь используют Eclipse), мы имеем прямой доступ к каждому документально подтвержденному методу, вместо того чтобы каждый раз заходить на витрину или в Goo gle, чтобы протестировать и попробовать новые. функциональность.

SmartGWT предоставляет вам преимущество в том, что вы можете использовать мощные редакторы.

Вы можете легко отлаживать свой собственный код (однако это не очень полезно для погружения в сам код smartclient).

У вас есть все материалы для автоматического завершения eclipse/netbeans. Когда вы начинаете работать с SmartClient/Gwt, он помогает вам найти то, что вы ищете, потому что редактор может перечислить вам классы или доступные методы и некоторую базовую документацию, что на самом деле делает класс / метод. Экономит много времени, ползая по документам

Мы решили использовать Javascript (без SmartGWT) ... Я предпочитаю его таким образом, хотя некоторые члены нашей команды (новее Javascript) предпочли бы способ SmartGWT. У обоих есть свои плюсы и минусы:

Одним из преимуществ использования SmartGWT является то, что вы получаете ошибки времени компиляции, так как все сначала компилируется компилятором Java, а затем визуализируется в Javascript.

Одним из недостатков SmartGWT является то, что он не раскрывает весь базовый API Javascript Smartclient. Это означает, что если вы хотите делать более сложные вещи, вам может понадобиться сделать это в любом случае в Javascript.

Еще один недостаток SmartGWT в плане производительности заключается в том, что каждое изменение, которое вы делаете и хотите протестировать, должно проходить через болезненный процесс компиляции / развертывания Java EE, тогда как если вы делаете это в Javascript, вы можете изменить код на стороне клиента, изменив Файлы.js напрямую, без необходимости всего процесса компиляции / развертывания.

Banang: API для доступа к телу ListGrid / TreeGrid теперь доступны в Smart GWT.

SmartGWT основан на java-коде, и при компиляции он преобразует его в java-скрипт, является тяжелым, поскольку он преобразует java-код в js.

SmartClient - это фреймворк, основанный на js, вы можете использовать его компоненты на xml-странице и манипулировать ими в Js, и это легкий

le Showcase de smartclient Я рекомендую smartClient

Другие вопросы по тегам