こんにちは!CAMPHOR- 運営のPanoramaです!
4/2(土)に株式会社ビズリーチ(Visionalグループ)のエンジニアの方をお招きして「【Visional】Webサーバーの実装で学ぶ Java, Scala, Clojure」というイベントを開催しました!
イベント動画
それでは本イベントがどのようなものだったか簡単にご紹介いたします。
Webサーバーについて
最初にWebサーバーを作るに至ったご自身のモチベーション、実装にあたって必要な知識から語ってくださいました。
具体的には「Webサーバーはそもそも何をしているのか」「HTTPの詳細な仕様を知るために当たるべき資料(RFC7230 ~ 7235)について」などです。
Java, Scala, Clojure
ここから本イベントの主題である Java, Scala, Clojure の話に入ります。
ScalaとClojureはどのような言語なのか、どのような特徴があるのかをざっくりと掴み、簡単なコード例でJavaと比較したりして、言語に馴染むところから始まります。
そしてWebサーバーを実装するのに必要最低限の文法を学びます。
Webサーバーの実装
実際に実装したサンプルコードの役割をざっくりと理解して、いよいよ内部に踏み込みます。
「Socketの扱い」「正規表現」「文字列の扱い」「リソースの解放」「並行処理」といったWebサーバーの肝になる部分をJava, Scala, Clojure のそれぞれの特徴をおさえながら各実装をわかりやすく説明くださいました。
Clojureの開発でよく用いられるREPLを使った小さいコード片の実行や並行処理の例え(コンビニのレジでお弁当を温めてもらう)など多彩な説明で非常に面白かったです。
Webサーバーの実装を通して
最後には「Webサーバーの実装を通して技術を学ぶ意義」や「Webフレームワークの抽象化の漏れの問題で、隠蔽されているHOWの部分がわからないと問題解決できない」といったエンジニアとしてやっていく上で重要なスタンスまでをも語ってくださいました。
最後に
今回のイベントではWebサーバーやJVM言語の基本から始まり、Webサーバーの仕組みと実装、エンジニアとして得られる学びについてまでお話しいただきました。
講義は全体で1時間半でしたが濃度の濃い、非常に有意義な講義でした。
本イベントにご参加くださったみなさん、協賛してくださった株式会社ビズリーチ(Visionalグループ)さん、イベントの調整やオープニングにご協力いただいた大野さん、そして登壇してくださった田所さん本当にありがとうございました!