Scala -JS для реального веб-проекта
Кто-то использовал Scala-JS
в реальном веб-проекте, но не только для простой замены JavaScript
в изолированном env?
Я хотел бы использовать Scala как можно больше (я бы хотел). И кажется, что Scala-JS
претендует на то, что lib я мог бы использовать (сейчас) или в будущем.
Вот почему меня интересует небольшое рабочее решение для просмотра, для загрузки (например, PlayFramework
app, где Scala-JS
).
Решение/пример, который может продемонстрировать, что Scala-JS
можно использовать в реальной работе веб-разработки.
Я спрашиваю, потому что то, что я нашел около Scala-JS
пока вряд ли реально используется.
Q: некоторые примеры/доказывают, что он готов к использованию в реальном проекте?
ОБНОВЛЕНИЕ (через 1 год):
Например, есть несколько примеров для TypeScript
. То, что я имею в виду, когда я сказал "примеры" и "настоящие веб-проекты". И там много онлайн-тренингов. И если я запрошу в Google: "typescript github angular", он возвращает 172 000 страниц. ScalaJS
не хватает всего этого определенно и, к сожалению.
Но у него есть некоторые: "scala -js" github angular '- 4 980 соответствий. Но до сих пор большинство из них - "ранняя стадия развития" с "без коммерческой поддержки"
Это кажется многообещающим: https://github.com/greencatsoft/scalajs-angular
Ответы
Ответ 1
Я еще не видел проверку на стороне клиента. Однако существует несколько проектов, которые эффективно используют Scala.js, среди которых:
Ответ 2
Я только заметил этот вопрос и, вероятно, должен перезвонить - как упоминалось выше, мой продукт компании Querki имеет свой пользовательский интерфейс, который теперь полностью построен в Scala.js. Что о 8k SLOC Scala, последнее я проверил: не самая большая программа в мире, но намного сложнее, чем большинство сайтов. Я бы предположил, что он заменит то, что было бы 20-30 тыс. SLOC для JavaScript, и это действительно единственный способ, которым компания правдоподобна вообще.
Эта бета для небольшой компании, но очень в производстве, и это была находка: код SJS намного проще писать и поддерживать, чем замененный JavaScript, и гораздо более стабильный на практике. Кроме того, подключение внешнего интерфейса SJS к моему заднему концу Akka/Play значительно ускоряет разработку и уменьшает количество ошибок, поскольку API строго типизирован и без шаблонов в конце-концов Scala.
С тех пор, как люди спросили: оптимизированный JS-код в настоящее время составляет около 1 мегабайта, и сейчас растет довольно медленно, когда вся моя инфраструктура написана. (Плюс примерно столько же, что и для библиотек JS, которые я использую.) Это не тривиально, а одноразовая загрузка на выпуск; после его кэширования в браузере пользовательский интерфейс чрезвычайно быстрый, гораздо быстрее, чем динамические страницы, которые были там.
О, и поскольку вы ищете полностью обработанный пример: исходный код можно найти в GitHub. Это открытый, но ограниченный, поскольку это коммерческий продукт, но не стесняйтесь копаться и использовать его для вдохновения. (И не стесняйтесь запрашивать полезные биты: я постепенно поднимаю широко используемые биты и куски в лицензированные библиотеки MIT.)
Ответ 3
Я активно создаю панель инструментов webapp для моего запуска с помощью scala.js. Он неполный, но быстро развивается.
Мой первоначальный прототип был основан на angular.js, используя привязки angulate. Позднее я заменил angular сеткой реактивного стиля scala.rx, scalatags и scalacss, который использует систему типов scala. Вся логика/рендеринг безопасна по типу и на одном языке (scala), а не распространяется по строковому типу HTML, CSS и JavaScript
Хотя этот webapp разрабатывается как внутренний инструмент, он должен иметь возможность демонстрировать scala.js в реальном мире после его завершения.
Ответ 4
Тогда
-
W3C использует его в банано-rf: github.com/w3c/banana-rdf
-
@jducoeur строит Querki: github.com/jducoeur/Querki
-
TypeSafe использует очень существенный шаблон: typesafe.com/activator/template/play-scalajs-showcase
Все вышеперечисленное демонстрирует довольно продвинутые функции и методы.
Тщательный читатель может многое узнать и определить для себя, что ScalaJS готов к прайм-тайму.
Наконец, этот https://github.com/SemanticBeeng/play-scalajs-showcase является производным от оригинала, показывающего, как применять модели источников событий и функциональных доменов для перехода от ориентированного на CRUD API для функционального API.
Это эксперимент и работа в процессе.
Ответ 5
Совсем недавно (2016) у вас sri (Scala React interface).
Это библиотека scalajs для создания действительно родной кросс-платформы (мобильных (ios and android) и веб-приложений).
Он основан на reactjs и react-native.
Используйте этот модуль для создания приложений на основе браузера:
libraryDependencies += "com.github.chandu0101" %%% "sri-web" % "0.6.0"
Ответ 6
На официальной домашней странице Scala.js перечислены проекты, построенные с помощью Scala.js: http://www.scala-js.org/community/
Ответ 7
Приложение ThoughtWorks TodoMVC с помощью Binding.scala и Scala.js:
Я не знаю, является ли это настоящим веб-проектом, потому что он кажется неубедительным. DEMO содержит только один исходный файл, 147 строк кода, а реализация ReactJS той же функции TodoMVC занимает 488 строк кода.