JJUG CCC 2019 Spring 参加レポート

公開日:2019-05-18
最終更新:2019-05-18

JJUG CCCに参加しました。
http://www.java-users.jp/ccc2019spring/#/

ちょっと3時ちょい過ぎぐらいまでしか居られなかったのですが、各セッションの情報量があまりに多くて、整理しきれません(T_T)

が、忘れないうちに雑ですけど、わーっとメモを書き出しました。

Java11時代のHTTP(S)アクセス再入門

https://www.slideshare.net/tamrin69/introduction-httpclient-on-java11

  • HttpUrlConnection、ApacheHTTPClientの復習から
    • すいませんHttpUrlConnectionバリバリ使ってます(´・ω・`)
  • ApacheHttpClientはAcceptHeaderに注意する、というのはデフォルトでAccceptHeaderがつかない
  • BackendからさらにBackendに通信するのに使っているので、あんまり意識しなかったところですが要注意
  • HttpUrlConnectionにはデバッグオプションが指定できる
  • ApacheHttpClientもLog4jでorg.apache.httpを指定すると、ログは出せる
    • 大体tcpdumpで済ませられるかな、という印象
  • SSLのバイパスは(^_^;)

Java11のHttpClientはClientBuiler,BodyHandlers,BodyPublishersの使い方がキモになりそうです。
Java11からのjava.net.http.HttpClientは、ApacheHttpClientに使い方が似ているということで、Java11に移行するのは楽なのかな?

What's new in Jakarta EE and Eclipse GlassFish (May 2019)

JavaEEからJakartaEEに移管、どういう影響があるか、ということで、

  • 主幹、標準化、仕様化がEclipseFoundationへ
  • JavaEE8->JakartaEE8で大きな変更はなし
  • javaxからjakartaへのパッケージ変更もJakartaEEではなし
    • javax.*は互換性で残る
    • JakartaEE9?10?から(になるかもしれなさそう。。。)
    • JakartaEE9からJSFのVerUp,SecurityAPIが強化されるので、ここらへんからパッケージ名がjakarta.*になりそうな

JakartaEEになってから、スピードがだいぶあがるということなのですが、JakartaEE Blogをウォッチするといいそうです。
https://jakartablogs.ee/

開発リーダー1年目。メンバーのスキルアップのためにやっていること。

  • スキルアップに正社員、パートナ関係ない!チームのレベルアップが大事!
  • メンバーの心理的安全性を守る!

  • 輪読の取り組み

    • 輪読を行うことで、チームとしての共通認識ができた
    • リーダブルコード、レガシーコード改善ガイドでチームとしての共通認識ができた
    • 輪読は担当わけで、章ごととかで発表するようにした
    • 輪読のときのまとめ資料は業務時間内に(これ大事かも)
    • なによりアウトプットの練習になった
  • ランチも強制参加、ではなく、自由参加
    • ここらへんは心理的安全性にも関わってきて強制感あると、心理的安全性が保てない
  • メンバの心理的安全性は雑談がカギ!
  • マネージャのスキルは、エンジニアとしてのスキルがA,B,Cとすると、それに加えてD,Eも必要
    エンジニアとしてのA,B,Cのスキルが絶対必要

ちょっと気になったのが、リーダ、マネージャの心理的安全性はどうなのであろうか・・・

先行開発!Javaでクリーンアーキテクチャ -- ゼロから始める新規開発

すごく人気のセッションでした!
フロントからの要求を、わかりましたー、というのはいいですが、できたものを確認するとなんか違う・・・
という点をどうするか、というところで、

全てはここに!セッションに参加できなくても、ここでOK!
https://nrslib.com/clean-architecture-with-java/

あと、

  • エリックエヴァンスのドメイン駆動設計は1ページめで大事なことが書いてあって、それは太字で書かれていない(T_T)
  • DIPで依存関係を外側から内側に整理するのが大事
  • アーキテクチャ、アーキテクトは線路を整備する、方向性を定めるのが大事

ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割

  • BFFとは?
    • Backends For Frontendsの略
    • BackendとFrontendの間をとりもつ層
      • Backendの開発が重くなってきて、それに引きづられてFrontendの開発スピードも落ちてきてしまって、ボトルネックを解消するときの対策としてBFF層がある
  • BFF層はアプリ固有のものとして、アプリチームで意思決定できるように
    • 他チーム依存をなくすとそれだけ開発速度がスピードアップする
  • BFFはBackendとFrontendの間をとりもって、Backendからの情報をいい感じでまとめること
    • BFFは、なんというか、ポート&アダプターというか、腐敗防止層というか、そんなところでしょうか。。。
  • Backendの粒度が大事になってきて、アプリに引きづられないように
  • 適切な粒度で、再利用できるような設計が大事
  • プレゼンテーションとビジネスロジックの境は悩みどころ、
    • どこをプレゼンテーションで持つか?ビジネスロジックで持つか
      • 金額とか、表示として5000円のがつくと、それはプレゼンテーション層もありだけど、ドメインとしての知識なので、ドメインロジックとして持とうとか、ここらへんは検討しないとね!
  • BFFとBackendでどこをどれだけ受け持つかの分担と歩み寄りが大事
  • チームとしては、クライアントアプリ、BFF、Backendでしているけど、ここはどうするのが良いのかはこれから

このセッションを聞いて、BFF層でうまいこと情報を取りまとめる、というのもあるのですが、このプロジェクトはナチュラルにドメイン駆動の考え方ができているのかな、というのも、素でその界隈の用語が出てきたので。。。

おわりに

今日のJJUG CCCの参加を通して、クリーンアーキテクチャ、ホットペッパーのセッションもそうでしたけど、ドメイン駆動の考え方はおさえておかねばならいかな、というのが強く残りました。

最後まで参加したかった、という思いと、これ以上参加したらしんでしまいます、という思いがあります・・・

記事が少しでもいいなと思ったらクラップを送ってみよう!
11
+1
yodai_u_uの技術ブログ

よく一緒に読まれている記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる

技術ブログをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

技術ブログを開設する

Qrunchでアウトプットをはじめよう

Qrunch(クランチ)は、ITエンジニアリングに携わる全ての人のための技術ブログプラットフォームです。

Markdownで書ける

ログ機能でアウトプットを加速

デザインのカスタマイズが可能

技術ブログ開設

ここから先はアカウント(ブログ)開設が必要です

英数字4文字以上
.qrunch.io
英数字6文字以上
ログインする