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

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

JJUGナイトセミナー Jakarta EE特集

はじめに こちらに参加してきました speakerdeck.com メモ さっととったメモというか感想みたいなものを放流 豆知識 Spring Bootの成果物をOpen Libertyの上で実行すると高いスループットを出すこともあるよ。 Jakarta EE 11 Java SE 17が仕様の前提。 Jakar…

Interfaceのdefaultで多重継承(ファーストクラスコレクション編)

はじめに コードの全量のリンクをこちらの記事に書いているので、先読みで全量を見たい方はこちらを参照してください。 vermeer.hatenablog.jp こちらでファーストクラスコレクションを扱う実装例を考えてみました。 ファーストクラスコレクション - システ…

ファーストクラスコレクション

はじめに 僕がはじめて「ファーストクラスコレクション」という名前を知ったのは @masuda220 さんの 「現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法」から。 現場で役立つシステム設計の原則 変更を楽で安全にするオブ…

Interfaceのdefaultで多重継承(日時編)

コードの全量のリンクをこちらの記事に書いているので、先読みで全量を見たい方はこちらを参照してください。 vermeer.hatenablog.jp 今回はInterfaceのdefaultを使った「数値編」を拡張した「単位編」です。 Interfaceのdefaultではなくて、Interfaceを使っ…

Interfaceのdefaultで多重継承(単位編)

はじめに コードの全量のリンクをこちらの記事に書いているので、先読みで全量を見たい方はこちらを参照してください。 vermeer.hatenablog.jp 今回はInterfaceのdefaultを使った「数値編」を拡張した「単位編」です。 Interfaceのdefaultではなくて、Interf…

Interfaceのdefaultで多重継承(数値編)

はじめに コードの全量のリンクをこちらの記事に書いているので、先読みで全量を見たい方はこちらを参照してください。 vermeer.hatenablog.jp 今回はInterfaceのdefaultを使った具体的な実装編の「数値編」です。 もともとの出発点がこちらの数値編(計算編…

Interfaceのdefaultで多重継承(文字列編)

はじめに コードの全量のリンクをこちらの記事に書いているので、先読みで全量を見たい方はこちらを参照してください。 vermeer.hatenablog.jp 今回はInterfaceのdefaultを使った具体的な実装編の1つ目「文字列」です。 何が嬉しいの? Nullableであること…

Interfaceのdefaultで多重継承(下準備編)

はじめに こちらの続きです。 コードの全量のリンクをこちらの記事に書いているので全量を見たい方はこちらを参照してください。 vermeer.hatenablog.jp まずは多重継承の話の前に必要な土台作りがメインです。 Objectクラスを、ほんの少し(?)拡張するInt…

Interfaceのdefaultで多重継承(はじめに)

はじめに 広くはこちらの続き vermeer.hatenablog.jp Interfaceのdefaultでやろうと思って、やっぱりやめたというのを、やっぱりやってみたという感じです。 先に断っておきますが、以降はOOPLの話ではありません。 あくまで Javaの言語仕様で実現できる実装…

Developers Summit 2024

はじめに event.shoeisha.jp へ行ってきました。 参加したのは2月15日(木)だけ。 聴講しながら書き込んだメモとか感想を無加工で放流。 ソフトウェアセキュリティ チャットによるUIがイノベーションになった たしかに、IFとしてチャットというか自然言語を…

Kotlinのメモ

基礎学習 プログラマー向け Kotlin ブートキャンプ | トレーニング コース | Android Developers Kotlinでのインスタンス生成!10選の実践的なサンプルコード | Japanシーモア GoF Kotlinでのシングルトンのマスター8ステップ! | Japanシーモア 環境構築 Gr…

Android開発のメモ

パッケージ/構成 Android開発におけるアーキテクチャー設計について | プロダクト開発部Blog AndroidアプリのApplicationクラスについて - くま's Tech系Blog 【Android】2020年からの MVVM【実践】 #Android - Qiita 開発中のアプリをMVVMからMVCに戻した…

AndroidのLog出力について

はじめに Androidでの開発をすることになって、研修(カサレアル)を受けたりして事前学習をしていてログ出力を。 なんとなくAndroidStudioのページをみていると 注: アプリを公開する準備ができたら、デバッグ ログメッセージとスタック トレース出力の呼び…

BeanParamがOpenAPIで出力されない(未解決)

困っていること @QueryParamだったら出力できるのに、@BeanParamだと OpenAPIの出力が想定通りに出ない 実行環境 Payara Server 5.2022.3 Java 11 @QueryParamでやってみる コントローラー @GET @Produces(MediaType.APPLICATION_JSON) @Operation(summary =…

ArchUnitのメモ

参考 ArchUnit User Guide GitHub - TNG/ArchUnit: A Java architecture test library, to specify and assert architecture rules in plain Java ArchUnitで考えるアーキテクチャ構造とその検証 | 豆蔵デベロッパーサイト ArchUnit 実践:集約操作専用のリ…

typescript-generatorのメモ

参考リンク GitHub - vojtechhabarta/typescript-generator: Generates TypeScript from Java - JSON declarations, REST service client JavaのクラスからTypeScriptの型定義を生成するtypescript-generatorを使ってみた typescript-generator カテゴリーの…

BigDecimalを扱う共通クラス

はじめに 今までBigDecimalを使うようなコードを書くことが無かったのですが、とうとう(?)書く機会を得ました。 開発現場で共通部品として書いたものを振り返ることを目的にしつつ、現場では必要十分として*1 諦めたところなどを充足したものを整理しよう…

Swagger/OpenAPIのメモ

SpringFox SpringFox by springfox メモ ぱっと調べると SpringでSwaggerは SpringFox くらいの 感じだったし、既存のプロジェクトでも使っていたから採用はしたものの、最新バージョン(3_0_0)にすると SpringBoot2.6系にしたら 起動が出来なかった。 swagge…

パッケージ構成の考察(3)

はじめに 過去2回のパッケージ構成について vermeer.hatenablog.jp vermeer.hatenablog.jp 約3年ぶりに改めて考察してみようかと。 DDD関連に影響は受けていると思いますが別物です。 3層+ドメイン を基本とした構成です。 なぜ改めて見直すのか? React…

Draw.ioをGitHub管理して画像を埋め込む

はじめに ブログなどのMarkdownドキュメントにフロー図などを書いた画像を埋めたいなぁと思っているときに、Draw.ioで画像拡張子(png/svg)で編集情報を保持したままで管理できるということを知りました。 ということは、ひょっとして埋め込み画像を直接編…

LocalStorageを扱うHooks

何が嬉しいの? Windowをまたがった情報共有ができる。 ただし多用すると状態管理が散乱するので避けた方良い。 実装 import { useEffect, useState, useRef } from 'react'; const useCrossWindowState = <T>( stateKey: string, defaultValue: T, ): [state: </t>…

イメージファイルをPDFにまとめるシェルスクリプト

やりたいこと 複数のpngファイルを1つのpdfにまとめたい 環境 Lubuntu20.04(VirtualBox) 下準備 ImageMagick をインストール sudo apt install imagemagick-6.q16 ImageMagickの環境設定 /etc/ImageMagick-6/policy.xml の設定値を変更 resource 画像ファ…

Karateのメモ

GitHub - karatelabs/karate: Test Automation Made Simple マイクロサービスにおけるテスト自動化 with Karate from Takanori Suzuki www.slideshare.net APIのテスト自動化ツール「Karate」を使ってみる - Reasonable Code Karateツールを使用してテストケ…

【雑記】国産クラウド(もしくは官公庁で使うクラウド)

デジタル庁が採用したクラウド事業者がAWSとGCPという話を受けて個人的に思ったことをツラツラ。 はじめに www.yomiuri.co.jp 3社から応募があったが、安全面や事業継続性など約350の要件を満たした両社を採用した。 相応の基準をもって選ばれたと思いま…

VirtualBoxの共有フォルダ設定

いつも忘れる、VirtualBoxの共有フォルダ設定のメモ ツールのインストールに必要なものをインストール sudo apt install gcc make perl -y VirtualBoxツールをインストール インストールディスクを挿入 ディスクのフォルダへ移動 sudo sh VBoxLinuxAdditions…

文字列をBase64に変換する

はじめに ファイルパス(もしくはそれに準ずる文字列)をURLパラメータに使いたいと思いましたが、そのままではエスケープをあれこれしないといけないし、マルチバイトが入ってくると長くなります。そこで文字列をバイナリー圧縮してBase64変換したら良いか…

JSFの本番環境用設定

JSFの本番環境用設定に関するメモ web.xmlの切り替え 開発環境と本番環境の切り替え https://skill-up-engineering.com/2015/09/05/post-705/ パラメータの説明 Overview of all JSF-related web.xml context parameter names and values - Stack Overflow …

JavaFXのメモ

JavaFX NetBeansでJavaFX開発をする - きしだのHatena JavaFXで画面遷移がしたい!-Terra Sea- JavaFXとWebsocketを連携してみる(On Glassfish4.0) その1 | あらぶるトラブル OpenJDKでJavaアプリ配布パッケージを作る

NIO2のメモ

今更ながら… レッスン:基本的なI/O(Java?チュートリアル > 重要なクラス) パス操作(Java?チュートリアル > 重要なクラス > 基本的なI/O) ディレクトリの作成と読取り(Java?チュートリアル > 重要なクラス > 基本的なI/O) Javaファイル関連メモ2(Hishi…

JakartaBatchのメモ

Jakarta Batch Java EE 7 jBatchの使い方──『Java EE 7徹底入門』番外編 第3回 - builder by ZDNet Japan Java EE 7 検証環境構築(12) jBatch 簡易サンプル作成と Arquillian でユニットテスト | Glob Chunk方式のStepを使ってみる javaee7-samples/batch at…