あらすじ こんにちは、深澤です。 最近javascriptを多用したのですが、なかなか動作が安定しない(安定させるのに苦労した)という事件がありました。 そんな中、なんとscalaで書いたコードがjsになっちゃうという夢のようなお話を聞きました。 それがscala.jsとの出会いです。 jsの最初の一歩ってなんやろ?って考えたときに、 「とりあえずアラート出したら最小構成っぽいし、第一歩じゃね?」という安直な考えから、scala.jsでアラートを表示する目標に向かって歩き始めました。 目指すは、staticなhtmlファイルでアラートを表示することです。 scala.jsのセットアップ ここはもう完全にチュートリアルを参考にしちゃいました。 Scala.js Tutorial チュートリアルのバージョンは少し古いようなので最新にしてみました(2015年10月11日現在)。 sbt 0.13
0) Siriではなく、Sri。 ...画像キャプチャで、何か嫌な予感を思い起こす人もいるでしょうが、AltJSなscalajsでreact nativeでクロスプラットフォーム開発という取り組み、Sri (Scala React interface)に注目中。 そもそも、直近使うには、自分にはちょっと大きすぎると思っているreact。ただ、ありうる未来な気がする、react nativeでのクロスプラットフォームの展開には興味がある。 そうしたところ、"記事:sri - Scala.jsを使ったReact Native実装"にて、scalajsがreactという取り組みに次いで、react nativeも、という取り組みが進んでいることを知る。 sbtコマンドを叩いて長時間待って試してみても動きはしなかったが、どのみち直近にreact nativeを使うことはないので、Altjs地雷の最
Scala Matsuri 2016おもしろかったですね! Scala.js推しな会社のブースにいたりしたので、久しぶりにモチベーションが上がって前からやりたかったScala系の依存の解決をnpmで解決できるようにしました。 これでSBTに頼らずにNode.JS friendlyな環境を作れるようになります! 話的には Scala.jsをnodeプロジェクトで扱う 続・Scala.jsをnodeプロジェクトで扱う Scala.jsはじめました! の続きな感じです。 目的・モチベーション Scala.jsをチュートリアルにある通りSBTを使用するとJSのエコシステムには乗れなくなります。 一応、Live Reloadingがあったり、WebJarsでJavaScriptの依存解決もできたりする(やったことはないけど)ので最低限開発には困らないです。 が、HTMLやCSSを含めたビルドフローを
目的 Scala.jsでクライアント側の処理を書いている時,ローカルにあるファイルをテストに使いたいと思った. 本来データはWebサーバから取得するのだけど,テストのたびに本番サーバにアクセスする訳には行かない,真面目なテスティングサーバを用意するのは面倒でやりたくない,といった感じの状況. そこで,src/test/resources/にhtmlファイル等を置き,そこへアクセスする事で,テストを書きつつ本番サーバへのアクセスをなくす,という戦略を考えた. sbt-httpserver プラグイン 調べたら具合の良いプラグイン(sbt-httpserver)が見つかったので試してみた.まず,plugins.sbtに /* sbt-httpserver */ resolvers ++= Seq( Resolver.url("wav", url("https://dl.bintray.com/
Scala.jsに入門したのでangularを使い、簡単なTODOアプリを書いてみた。 コードはコチラ angularのコントローラー todos変数をhtmlでng-repeatしてて、todoServiceでajax通信しデータ取得してる。 class TodoCtrl($location: Location, todoService: TodoService) extends Controller { var todos = js.Array[Todo]() def list() = { todoService.list().onSuccess { case j => todos = j.items.toJSArray } } TypeScriptで書いてたのと似てる。 Todoのcase classがサーバー側と共通で使えるので良い。 他はリポジトリのコード読んでください。 良かっ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 最近MinMax法を勉強したので、アウトプットのために三目並べを実装しました。あとScala.jsも使ってみたかった。 コード自体はほとんど以下のプログラムを参考にしています。 参考 http://postd.cc/tic-tac-toe-understanding-the-minimax-algorithm/ なんとなくAIってつけましたけど、AIなんて呼んでいいのやら・・・ 勝つことは無理です デモ MinMax法とは wikiに書いてある通りですが、先読みプログラムです。 playerがAである時はBのスコアを最大化するような手(
Playコードの"歴史"に学ぶ 現行のバージョン2.5系は最近出たばかりだが、Play Frameworkは、10年近い歴史を持つ1。そのため、結構凄いプロダクトがplayで作られ公開されていたり、ためになるサンプル実装が作られていたりする。ここでは、Play関連の知識の幅を広げる意味で役立ちそうな、2つのソースコードを取り上げたい。 [1] BaasBox BaasBoxは、Playで実装されたmBaaS(モバイル向けBaaS)であり、ニフティクラウドブログのオープンソースなmBaaS×9選でも取り上げられている。 サイトを訪問すると、月額課金でクラウド上のBaasBox を使える (の画面が用意されている2)ことが分かる。 左はじに"FREE"という文字があるが、こちらは、ダウンロードして自らbaasboxを動かすユーザー向けのもの。ここから、ダウンロードして、baasboxを任意のサ
Play2.5+Scala.jsのSPAチュートリアル フィンランドのochrons氏が下回りのライブラリを自ら開発しつつ作成した、Play2.5+Scala.jsのSPAチュートリアルに興味を持った。 Scala.jsは日本でBig...!? こちら、git bookベースの解説もつけてくれていてとっかかりやすい。そして、READMEに気になる一文が。 あなたは日本語を話せますか?Scala.js is Big in Japan, so I'm looking for help to translate the tutorial documentation into Japanese. はい、私は日本語を話せます・・・Scala.jsは日本でBigネーム・・・!? もしや、やはり、これのことか: 出典 : https://tototoshi.github.io/slides/tenka1
自己紹介 uryyyyyyy: しばたこ 本業はアドテクでScala/TypeScript 副業でReact Native(@ CureApp) 今回話すこと 最近のフロントエンドの問題意識 (普通の話をします。。。) フロントエンド間(Redux)でのロジック共有 (そこそこ過激なことを言います。。) サーバーとのロジック共有 (とても無茶なことをして失敗した話をします。。。) まとめ 最近のフロントエンド事情の問題意識 結論を三行で フロントにもドメインロジックが求められている ドメインロジックが散らばるのを避けたい React Nativeでしょ! フロントでも複雑なロジックを扱うことが求められている (元ネタ:クライアント主権時代にJSのモデルはどう共有すればいいのか) 近年のスマホファーストな時代では、WPAやネイティブアプリのようにスマホのみ(オフライン)でも動作することが求め
Scala.jsは、ScalaのコードをJavaScript(JS)に変換するコンパイラです。 公式の紹介ページでは、以下の4点がScala.jsの優れた点であると謳われています。 正確性: Scalaの優れた型システムやコンパイル時検査を活用 高性能: 実行時間は生JSの高々2倍 相互運用性: DOMやJSのライブラリが利用可能 IDE: IntelliJがScala.jsの記述を完璧にサポート Scala.jsは、単なるJSの代替記法(altJS)に加え、JSとJava仮想マシン(JVM)とで動作するコードのクロスビルドツールとして利用することができます。 クロスビルドに関する資料として、以下のようなものが挙げられます。 Scala.js - Cross-building (公式) Isomorphic web development with scala and scala.js s
この記事は、[Fringe81 アドベントカレンダー2017](Fringe81 Advent Calendar 2017 - Qiita)の23日目です。 はじめに いつもはScalaで広告配信サーバの開発を行っているichizinです。 Scala.jsを調べている中でMonixというライブラリを知ったので紹介します。 けっこう便利そうなので見てください!! Monixとは Monixは、非同期プログラミングのためのライブラリでScalaやScala.jsで使うことができます。 公式ドキュメント Monixは色々な機能があり、すべて取り上げるのはボリュームが大きすぎるので今回はTaskとSchedulerについて紹介したいと思います。 Task ScalaのFutureは、未来の結果を保持する値であって、Futureを評価しようしているスレッドが既に開始済みで完了している可能性もあるし
東京に引っ越した@armorik83です。 引っ越してから長らくデスクが整っていなかったので、こういった記事を書く気力が無かったんだが、やっと整ったのでその勢いで。 今回のテーマは、Scala.js学習の一環としてscalajs-reactのサンプルを読んでみたというもの。JavaScriptエンジニア目線でのScalaとして扱う。学習ノートで進めた順序通りに記事も執筆しているため多少構造が散漫になっていることは了承いただきたい。 どこから読めばいいか ルートはここ。 https://github.com/tastejs/todomvc/tree/24b83cdbd7d888540640bf3b64cf0f0348aa50d3/examples/scalajs-react ./project/Build.scala こういうのは勘で、とりあえずビルドツールであるsbt周りから。 https
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く