Dark - サーバーレスバックエンドを開発する新しい方法
(darklang.com)-
プログラミング言語(Dark自体が新しい言語)、IDE、インフラを統合した開発ツール
-
API、CRUDアプリ、内部ツール、ボットなど、さまざまなバックエンドをインフラ/フレームワーク/デプロイを気にせずに作成可能
→ 5つの主要コンポーネントを簡単に開発: REST API、非同期バックグラウンドワーカー、ジョブスケジューリング、データストア(キー・バリュー/ハッシュマップ)、REPL
-
Trace Driven Development: コードを書く前にまずHTTPリクエストを送ると404エラーが発生し、その404エラーがIDEに表示され、そのエラーを処理するハンドラーを生成する方式
-
Darkプログラミング言語は静的型付けの関数型/命令型ハイブリッド言語。OCamlやElmに近く、RustやHaskellとも類似。そのほかClojure、Ruby、Python、CoffeeScriptなどから影響を受けている。
-
言語自体がエディタとインフラに接続
→ Play & Replayボタンで単体実行が可能
→ v1、v2などが付与され、自動で関数バージョニング
- パッケージマネージャーはあるが、現在はベータのためDarkの社員だけがパッケージに関数を追加可能
→ Slack、Asana、Mailchimp、Stripe、Trelloパッケージなどがあり手軽に利用可能
-
作成したバックエンドは
canvas名.builtwithdark.comでアクセス可能で、自分のカスタムドメインにも接続可能(CNAME) -
ソースはGitHubで公開されているが、オープンソースではない
5件のコメント
ライセンスは本当に独善的ですね。バグ修正などの参加はできても、それ以外には何の権限もない……
クローズドにしてもよさそうなものを、とりあえず一度見てみてください〜と言って公開してくれた程度ですね(笑)
肝心の OCaml や Elm のコミュニティでは、むしろ歓迎しているというコメントを見た気がします。
うわあ、すごく不思議です。
これは黒魔術なんでしょうか……すごいですね。
でも、有料のサーバーレスプラットフォームになるのが目標なんだろうとは思うものの、まだ表に出ているのは Dark 言語/プラットフォームだけなので、目指している着地点がよく分かりませんね。
かなり独特な開発環境なので、動画などをご覧になると理解しやすいです。
まず全体的な開発環境を理解するには、CEO の Elen Chisa 自身が説明する9分間の「Office Sign-In アプリを作る」動画を見るとよいです。
( 上の動画のブログ解説版 : https://medium.com/darklang/… )
短いので、ぜひ一度フルスクリーンで見てみるとよいと思います。面白い開発環境です。
登録して Hello World サイトを作ってみると、外部からアクセス可能な自分のサイトを作るのに10秒もかかりません。
そして、主要な概念である Trace Driven Development を紹介する1分動画も面白いです。