順次、選択、そして繰り返し

プログラミングのことやITのこと、たまに演劇のことも書きます。

JJUG CCC 2017 Springに参加してきた

5月17日にJJUG CCC 2017 Springに参加してきました。
(大分前だけど...)

ようやく書く気が起きたので、参加してきたセッションについて
まとめてみる。

全部 Java で作っちゃえ!! Vaadin 8 による "オール Java" Web アプリ開発のしくみと実践

スライド
全部 Java で作っちゃえ!😁 Vaadin 8 によるオール Java Web アプリ開発の仕組みと実践


AWTみたいなコード
https://demo.vaadin.com/sampler/
https://demo.vaadin.com/valo-theme/#!common

v7からv8への変更点
・データバインディング系のAPI

SpirngBootとの連携が進んでいる

Eclipseが一番成熟している
ビルドシステムは基本Maven

Vaadinを採用するモチベーション
・フロントとバックで型を共通化したい
・JSやHTML5の知識がある人材がチームにいなくても
 WebUIを作成したい
・俺はJava(JVM言語)が書きたい人

Javaエンジニアに知って欲しいRDBアンチパターン

スライド→
RDB anti-pattern that Java engineer wants to know // Speaker Deck

DBの変更は難しいので設計をきちんとする必要がある
・削除フラグで設計書を確認しないとわからない値が入っているなど
・カラムの追加 memo,memo2,memo3 とか
・データにロジックを埋め込むのはNG 先頭1桁がユーザの種類を表す会員IDなど

RDBの機能に頼りすぎるとそれが制約となる(ストアドなど)
→DBとアプリの設計のバランスが重要

Javaの話ではなくRDBの話ではあったが、
どのシステムでもDBは使用するため為になる内容だった。
DBAよりの話のためアプリ側の人は特に見た方が良いスライドだと思う。

Introduction of Project Jigsaw

スライド→
Introduction of Project Jigsaw


JSR376→Project Jigsawに関する草案
JSR379→SE9に関する草案

SE9(JSR379)は通過したがJigsaw(JSR376)が厳しい
ちなみにJSR379の中にJigsawの記述があるみたい

jar地獄
→依存関係の解消が面倒(バージョン違いで動かないことも)
Java言語として依存関係の表現ができない
mavenでは表現できるよね

上記を解決するためmoduleが登場した

module-info.java
→これがあればモジュールとする
依存性と公開範囲を記載する
階層のトップレベルに配置する
requiresで指定する(モジュール依存関係)
exportsは公開範囲

java —list-modules
→モジュール一覧

Jigsawの草案が否決されているから
SE9のリリースはまだ先になりそうだな...

新卒2年目から始めるOSSのススメ 〜明日からできるコミットデビュー〜

スライド→
新卒2年目から始めるOSSのススメ~明日からできるコミットデビュー~


コミットしたOSS→ERFlute
ER図を作成するツール

OSSの勧め
簡単な修正から始めよう
nullぽとか文字化けをなど簡単なところから始めよう

業務知識が関係ないのが良い
ソースコードが全て

特殊な環境だったためコミットできた
→メインコミッターが会社の人
→導入が事前に決定しているプラグインだった
→明確に不具合がわかっていた

このセッションを聞いて、OSSに対する
ハードルが低くなった気がした。
コミットまではいかなくてもまずはソースコード
読むところから始めてみようと思った。