2019JavaScriptClojureClojureScriptReactこんにちは。普段はClojureとClojureScriptだけ書いていてJavaScriptは書かないのですが、いつもより広い範囲のオーディエンスにClojureの良さを語りたくなったので参加させていただきました。ClojureScriptでReactプロジェクト作るのめっちゃ楽しい!という点を今回作った小さなプロジェクトを添えて主張しようと思います。Hickeyが作ったJVM上で動く言語です。さんの書いたキメるClojure高速開発がオススメです。そのヤバめな言語であるClojureをソースとして読み、JavaScriptを吐き出すコンパイラがClojureScriptです。Compilerに依存しており、プロダクションビルドの際にその圧縮力の恩恵を受けることが期待できる点がアピールポイントです。(ClojureとClosureで名前が衝突する点もよく話題に上がります。)開発環境事情ClojureScriptは良い物だとして、素のClojureScriptコンパイラにはいくつか課題があります。Compilerによって行なわれる変数リネームによってプロダクションビルドで壊れがちこの辺りをナイスにケアしてくれるshadow-cljsというツールが数年前に登場し、nodeとJavaランタイムさえあればClojureScriptを始められる時代が来ています。shadow-cljsを使うshadow-cljs自体はnpmでインストールできるcliなので使い始める敷居が低いのが特徴です。installするなりするだけ!shadow-cljs.edn各ビルドの設定やClojureScriptの依存ライブラリを書くファイルです。shellに打つとコンパイルされ、開発用のwebサーバーが起動します。この状態ではソースの変更が監視されており、cljsのソースを触る度に最新のコードがブラウザにwebsocketで配信されます。最新の動作を確認するためにブラウザの更新ボタンを押す必要がない幸せを得る機能がデフォルトで付属しているのは嬉しいポイント。moduleでデモ今回はボタンを押すとnodeが追加、node間をドラッグするとedgeが追加される物をvis-networkとReagentというReactラッパーで作りました。"stop"))細かい解説は需要があれば足しますが、ポイントはnodeモジュールが特別なことをしなくても使えるreagentというReactラッパーが広く使われているホットリローディングがデフォルトという点です。Clojure/ClojureScriptに興味を持っていただいた方は、twitterでつぶやくと捕捉されやすいです。radioというClojureの日本語ポッドキャストを今年から始めているので聴いてみてください。requestStockLike8@iku000888Follow株式会社テンクーゲノムおよび生体情報解析のトータルソリューション「Chrovis」の開発をしています。upLoginユーザーは見つかりませんでした。