Можно ли использовать Scala для написания приложений GWT? - PullRequest
24 голосов
/ 24 декабря 2009

Можно ли использовать Scala для написания приложений GWT?

(ПРИМЕЧАНИЕ: новичок Java / Scala здесь ...)

Ответы [ 7 ]

18 голосов
/ 22 апреля 2010

Как уже говорилось ... НО точно еще нет! Этот проект должен позволить GWT поддерживать клиентский код Scala. Также проект поддерживается инженерами Google.

11 голосов
/ 24 декабря 2009

Краткий ответ: GWT может вызывать программу, написанную с использованием Scala. Самым популярным веб-фреймворком, написанным на Scala, является Lift - http://liftweb.net/, и он будет альтернативой GWT, если вы хотите получить чистое решение Scala.

GWT - это веб-фреймворк, написанный на Java. Клиентская часть написана на языке Java и компилируется в JavaScript, а серверная часть написана на Java и может использовать любые ресурсы, доступные в Java JVM. Scala - это язык, который компилируется в байт-коды, которые исполняются на JVM и могут также взаимодействовать со стандартными программами Java.

5 голосов
/ 24 декабря 2009

Компилятор GWT работает с исходным кодом Java, поскольку он обеспечивает максимальную прозрачность, позволяющую оптимизировать компиляцию в Javascript. Время от времени обсуждалась работа с байт-кодом, но проблема всегда заканчивалась тем, что многие оптимизации были бы потеряны, если компилятор работает с байт-кодом, а не с исходным кодом.

Тем не менее, есть интересная тема о , поддерживающем Scala . Тем не менее, приоритеты для команды GWT на данный момент, кажется, больше сосредоточены на компиляторе языка Java.

3 голосов
/ 24 сентября 2010

Мне известны два проекта, которые занимаются этой проблемой.

Jribble (произносится как dribble) - это особая форма java, которая не имеет некоторых человеческих ограничений java, поэтому ее можно использовать для байта scala и по-прежнему предоставлять GWT информацию, необходимую для генерировать эффективный JavaScript. Они упоминают проект GitHub под названием scalagwt-sample (http://github.com/rfc2616/scalagwt-sample), который кажется довольно активным.

В другой статье, которую я прочитал, был парень, использующий j2js (часть GWT) для кросс-компиляции scala в javascript. Они не позволят мне добавить более одной гиперссылки, но вот URL:

(http://www.j2js.com/scala-demo/scala-days-2010-paper.pdf)

Я еще не успел попробовать, но надеюсь скоро.

3 голосов
/ 24 декабря 2009

Если вы имеете в виду Google App Engine , сервис для размещения веб-приложений, ответ - да .

Если вы действительно имеете в виду Google Web Toolkit , инструменты для компиляции Java в JavaScript для запуска в браузере, я уверен, что ответ - нет. GWT выполняет все виды анализа кода при компиляции в JavaScript, и это зависит от наличия исходных файлов Java, а также файлов .class.

1 голос
/ 24 декабря 2012

Да!

Имеется проект Scala + GWT, scalagwt. Быстрый статус (мое мнение конечно): один шаг до использования продукции .

Подробный статус от scala-lang.org

Проект Scala to Javascript - это исследовательский проект, а еще не то, что мы могли бы назвать продуктом. Вы можете повеселиться, но это еще не все на стадии "ставь свою работу". Есть ошибки. Нам нужно немного поработать над документацией и сгладить края.

Github

Проект Scala + GWT направлен на компиляцию кода Scala для браузера с помощью цепочки инструментов GWT. Вы можете создать проект scalagwt на github здесь

Scala + GWT | GoogleDevelopers

Смотрите красивую презентацию и много объяснений на Youtube здесь

0 голосов
/ 18 августа 2010

Интересно. В этом случае, если я хочу сгенерированный javascript для красивого Web 2.0 с Ajax, я перейду к python и пижаме, которые изначально были портом Python GWT. Он также имеет некоторые другие интересные свойства, такие как создание кода для запуска в качестве независимого от платформы настольного приложения. Я не люблю писать POJO, тем более что POJO ограничен для преобразования во что-то еще.

...