富山合同勉強会 .NET & Java 〜ぶりしゃぶで休もう〜
が1/31(土)に開催されました。
.NETのセッションとJavaのセッションを2部屋並行してやるという富山ではなかなか例を見ない大規模な勉強会です。いろんな話題があって良かったですね。
僕はスタッフとしてJava部屋の担当をしていたのでずっとJavaセッションを聞いていましたが、こういう時こそ普段の自分の守備範囲外のセッションを聞くべきかと思います。とはいえ並列セッションはどの部屋を選ぶか悩ましいですね。
参加者は県外勢が過半数で修学旅行に似た様相でした。
以下、ツイッター上のツイートを引きつつセッションの概要とか感想とか。
「JavaOne 2014 サンフランシスコの最新レポートについて 」
OracleのJavaエバンジェリスト寺田さんのセッション。
JSRはJavaの仕様の話になるとよく出てきますね。三項演算子禁止ルールを敷いている会社にてラムダ禁止とかなんとか。禁止しないで使ってください!とのこと寺田さん「ラムダでコード量の削減が〜」櫻庭さん「そこは本質的なところではないので」Java SE 8u20からの新機能。Advances Management Console。別途契約が必要。大きな会社さんだと便利かもしれない。Oracle Mobile Application Framework
このあたりで勉強会のハッシュタグが相互フォロー支援botに拾われて大量に汚染されるトラブルががが。
サンフランシスコのときのJava carのデモムービーこういう指摘が入ることはジャンル跨ぎで合同勉強会やる利点ですね。Java8にアップデートしてくださいね。「Javaの新しい風 - Project ValhallaとProject Panama」
現在策定中の仕様のお話。櫻庭さん(@skrb)の未来のJavaのお話
New Wind of Java
finalキーワードが必要で不変(イミュータブブル)。現代ではイミュータブルに出来るところはイミュータブルにするのが主流になりつつありますね。ジェネリクスでプリミティブ型とか扱えるようにしようという動きですが、既存との互換性を考えると問題が山積みです。落とし所を探るのが大変そう。Javaのネイティブコードへのアクセスというと古典的にはJNIだけどもより便利に使えるJNR。これはJava9に入るかもしれないとのこと。
お昼休み
雪が少なくて助かったという印象(富山基準)お昼休みLTが少々(割愛)
「C# / F# / Java ジェネリクス談義」
私(@nagise)と猪股さん(@matarillo)となかやんさん(@pocketberserker)によるジェネリクス談義。
「なぎせさんはツイッターアイコンの宇宙服のイメージなんですよね」
「すいません!今日は着てくるの忘れちゃいまして!」
原理的にはイレイジャ方式でもnew制約のようなことは出来るはず…。今からの後付けで導入するのは大変そうですが。配列というのは言語にビルドインされた限定的なジェネリクス機能なんですね。ですから本質的に配列型を共編にしてはいけないのです。再帰ジェネリクスの話題も少々。ここを踏み込んでも言語比較論にはならないので割愛。C#で再帰ジェネリクスでequal演算子のオーバーライドがうまくいかないというような話題が上がったのでジェネリクスのサンプルとして宿題に。高階型はJava/C#世代の言語ではさっぱりなので面白そうですね。Javaのジェネリクスで具体的に困る事例としてはO/Rマッパーのようなケースでフレームワークがオブジェクトを生成するようなケース。これはnew制約があれば解決するのでC#が羨ましい点。
もうひとつは、アノテーションで処理を分岐するようなケース。ただ、アノテーションはJava/C#時代のオブジェクト指向の思想の外にはみ出るので致し方無い気はする。
総じて、ランタイム時に型変数にバインドされた型を持っているC#方式のほうが行き詰まった場合のリカバーが楽。これはJava/C#のオブジェクト指向でinstanceof/typeofを使う逃げに相当する。
逆にJavaVMはイレイジャ方式なのでScalaのような独自の言語拡張が可能。ランタイムによって機能が決まってしまうのでF#はILのレベルに合わせざるを得ない。
「なにから始める? Jenkins」
さぼてんさん(@cactusman)のJenkinsセッション。
warファイルなのでTomcatなどJavaEEサーバを用意してデプロイするのだけど、内部に組み込みのサーバーが入っていて単体で起動することもできる。CIだけではなくて定期実行するような処理に用いるような事例も。タスクを実行するための管理コンソールとして使うというカジュアルな利用もアリ。気負わずにもっと気軽に使って欲しいとのこと。「Hello, Minecraft」
俺九番さん(@orekyuu)のセッション。MinecraftのMOD開発。
前提MOD(MODを作るためのフレームワーク的なやつ)としては現在はMinecraftForgeの1強。やり始めると止まらないとか。冴え渡るダジャレで場内爆笑(言い過ぎそういえば、階段ブロックとかいろんな向きに置けるようになったのも比較的最近でしたっけ。デモもあって楽しく見れるセッションでした。この時間帯、みんな疲労してツイートが少ない…。
ハッピーアワー
ジュースとお菓子が配られてLT5本。割愛
懇親会
お座敷宴会でございます。懇親会費用が高額になってしまいましたがそのぶん料理は豪華になりました。若人に絡むエバンジェリスト。そしてやおら脱ぎ出すなぎせ(下に着ていたデユークTシャツを見せる)二次会
宿泊施設なので宿泊組は部屋を変えて二次会に。合宿だとこのあたりがスムーズで良いですね。時間も気にしなくていいし。
スピーカーをしてくださった皆さん、ありがとうございました!
陰で運営を支えてくださったスタッフの皆さんお疲れ様でした!
参加してくださった皆さん、楽しんでもらえたなら何よりです!
来年もまた遊びに来てください!