システム開発で思うところ

Javaで主にシステム開発をしながら思うところをツラツラを綴る。主に自分向けのメモ。EE関連の情報が少なく自分自身がそういう情報があったら良いなぁということで他の人の参考になれば幸い

JJUG CCC 2017 Spring に参加してきました

日本Javaユーザーグループ 年次総会

ここから話題ににする必要があるか分かりませんが、会長の鈴木さんの話し方は妙に安心感があるなぁと毎度のことながら感心しきり。

大事な事

  • 申し込みしたけど参加できない場合はちゃんとキャンセルしましょう
  • キャンセル待ちを諦めないで!

ふつうのJavaコーディング

ふつうのJavaコーディング #ccc_e1 // Speaker Deck

印象に残ったところ

  • コードは読み物
  • メソッドは高次元に特化したものに
  • 防御的プログラミングを避ける
  • ギリギリまで文字列に頼らない
  • 型と向き合う(DDD的なことだと思う)

業務アプリにおける実装としては正しいことが多いと思った。ただ基盤的なところの実装については(コアAPIとまではいかないけど)ある程度 汎用的であった方が個人的には分かりやすいと思う。いずれにしても、その汎用的なものは業務アプリに落とし込む過程で「特化した実装」にした方が良いと言うのは賛成。

ちょっと考えたところ

  • 固定値の引数はメソッドを作る
    型がEnumでメソッド名と定数の組み合わせで文章として成立していたら可読性は保たれていると思うんだけどなぁ。どうなんだろ?
    でもコンストラクタのパラメータで属性を分類するのではなくて、それはクラスで実装するから、正しい気もするな。
    ひょっとしたらサンプルのメソッド名がドメインを表現するような命名だったら印象違ったのかな? 基本思想としては賛成だから、賛成で良いかも。

Java Clientで入門するApache Kafka

基本知識が無かったので駆け足で理解できた。話し方も丁寧だった。 過剰にモックを準備することなく、ローカルでテストするためのやり方を具体的に目にすることが出来たのは、とても良かった。 これってController層とService層の間の通信をKafkaで疎結合させたら冗長性を簡単に拡張出来るのかな?と思った。

Selenideを使ってみた ブラウザテスト自動化

ブラウザのテストは現状、手作業でやっているけど、Selenideは機会があったら使ってみようと思った。自動化に頼りすぎないというのも良い知見だと個人的には思う。

Javaで実装して学ぶOAuth 2.0

Javaで実装して学ぶOAuth 2.0! // Speaker Deck

  • 対象とするのは認可(認証じゃない)
  • 登場人物の名称と定義を正確に理解するべし

歯ごたえのある内容だったので大変満足。
誤解しがちなところを強調して下さったので、雰囲気での理解から一歩踏み出せた気がする。 結構、自分で実装しないといけないところがある低レベルフレームワークなんですね、という印象。よく言えば汎用的で幅広いのかな。
触ったことは無いけどApache Shiroみたいな感じのものがあると利用しやすいのかな?

Java x Arduinoで始めるIoT

格安のクライアント環境をテスト的に準備してみようとRaspberry Piを試してみたことはあったけどIoTという感じではなかった。
値段も安いし、ハンダも不要のArduinoは、いろいろと試すのには面白そうに思った。
JJUG的な側面の話は少しだったかもしれないけど、こういう話があるのもJJUGの面白さだと思う。

さいごに

以前、お仕事を一緒にさせていただいた方に会って、懇親会はLT大会そっちのけで、その方と話をしたのが何気に充実した時間だったり(笑)
縁とは不思議なものだと思うのと共に、興味の範疇が似ていることが面白かった。
新しい情報が少ないのでJJUGで取り上げられる機会が少なくなっていますが、JavaEEJSF・Facelets含めて)ってそんなに悪くないと思うんですけどねぇ。。良い感じに復権していただきたいところです。