Java ジェネリクス入門 2024
- なぎせゆうきさん
ジェネリクス
- Java5からある(2004)
- 昔はlistから取得するときにキャスト必須だった
- ClassCastExceptionが実行時に起きていた
- 型変数
<T>
- メソッドのINとOUTの型の関係性を示したもの
<>の種類- 型変数の宣言
- Tを受け取るよっていう宣言
- 型変数のバインド
- Tにこれを入れるよ
- パラメータ化された型
- 変数宣言するときに入れる型
- ワイルドカード
?が使える
- 型変数の宣言
社内での開発コミュニティ活動 ~バッチ処理方式設計とSpringBootでのバッチ開発~
- Yuichiro Hayashiさん
開発コミュニティ活動
- 提供してるもの
- 一部を除いて社内の利用に今はとどまってる
- 社内の開発ノウハウを共有して効率化できるように
- フロントエンド/バックエンド/インフラ
- ReactとかSpringとかk8sとか
- バッチ設計ガイドライン
- バッチの設計強呂ポイントは情報が少ないのでまとめた
- 単語の定義
- バッチはプロジェクトによって用語や意味が多様
- バッチ開発ガイド
現場で役立つモデリング超入門
- masuda220さん
モデリング
- 入力を元に出力を作る
- その処理がモデリング
- 三原則
- 簡略化/実用性/経済性
- 目的にあった簡略化がされてること
- 図を書くことをゴールとしない
- 少ない労力で
- モデルの表現
- 囲って矢印つけて境界を引く
- 箇条書きで特徴要点分類流れを表現
- 知識が十分にある時は複数の視点で作って整合性を見るといい
- 知識や情報がない時はいったん先に進んであとから戻る
- モデリングの効果
- 分かったか伝わったか見つかったか
- 具体的なモデリング
- 一般的なモデリング手法はそのままでは使えないことが多い
- ノウハウは詰まっているので用途を理解して活用する
- 出発点としての利用価値はある
Java 21とSpring Boot 3.2を採用して新規事業を開発した話
- shogo muraokaさん
新規事業開発
- 技術スタック
- どうせ使うなら新しいバージョンでいいということでJava21とSpring3.2
- 古いの選んでもどこかで上げることになる
- Qodana
- JetBrains製のコード解析サービス
- Java21
- 特別嬉しかったことがあるわけではない
クレディセゾンにおける内製開発の取り組み
- Kazutoshi Onoさん
- Kazuhiko Okumuraさん
- https://speakerdeck.com/lalha/20241027-dot-jjug-ccc-creditsaison
内製開発チーム
- 2019-2020
- スモールスタート
- 外部ベンダーに完全に依存した体制をやめる
- 内製という選択をとれるように
- アプリの部分的なところからスタート
- いろんな負債が見えてアプリ全体を内製化する選択に
- 内製化することで本当に必要なものだけを作る
- ビジネスサイドのすぐ横で開発していける
- Mode1と2を混在させた組織
- 価値観の違いでぶつからないように
- CXとEXを向上させるためのDX
- 2021-
- 基幹システムも内製に
- 2023-
- 全社員のDX
- ノーコード/ローコード
- 社内チャットボットの活用
- 内製開発チーム150人
内製化の実践
最近のSpring Bootの便利機能を復習!
- makingさん
- https://docs.google.com/presentation/d/1DvHGeJnXRMvgSsu6J3DF8DcxaelVCe6UjZWQ7zjc1wc/edit?usp=sharing
SpringBoot3
- 3.0は2022年
- 半年に1回マイナーバージョン上がってる
- 3.0の注目
- Observability
- GraalVM
- Java Interface Client
- 3.1
- Service Connection
- SSL Bundle
- 3.2
- RestClient
- JdbcClient
- VirtualThreads
- CheckpointRestore
- 3.3
- Class Data Sharing
- SBOM Actuator Endpoint
- 3.4
- Structured Loggin
- JSONのログはきやすく
- @Fallback
- 何も候補がなかったら使われるとか
- Paketo Buildpack ARM support
- Structured Loggin
Service Connection
- データベースなどの接続情報を抽象化する機能
- これまではプロパティから渡してた
- これからはConecctionDetailsという一回層増えたところから取得して接続するようになる
- デフォルトはプロパティから
- ライブラリの依存を追加すると使えるようになる
- Testcontainersで起動したコンテナ上のDBに接続できる
- テストだけでなくローカル開発中も使える
- docker-composeの設定を置いておくとそれを見て起動してくれる