2024-01-01から1年間の記事一覧
はじめに この記事は、以下の記事の補足説明です。 blog1.mammb.com 識別子による外部の集約の参照 集約ルートである以下のような Order がある。 @Entity public class Order { @Id private Long id; @OneToMany private List<LineItem> lineItems; @ManyToOne privat</lineitem>…
DDD コンセプト表現 アーキテクチャ コンセプト表現 CQRS・アーキテクチャ ヘキサゴナル・アーキテクチャ レイヤード・アーキテクチャ オニオン・アーキテクチャ オニオン・アーキテクチャ(ドメインモデルとサービスを分離しない) インターフェース型に基づ…
sized 型 std::marker::Sized トレイト sized 型 Rust のほとんどの型は、値のメモリ上におけるサイズが既知であり、このような型を sized型 と呼ぶ。 u64は 8 バイトであり、(f32, f32, f32)型のタプルは 12 バイトであり、sized型 である。 さらに、列挙型…
OsStr と OsString &OsStr の生成 OsString の生成 &OsStr と OsString の相互変換 OsStr と str の相互変換 OsString と String の相互変換 std::env::Args の例 std::fs::DirEntry の例 OsStr と OsString Rust の文字列は常に有効な Unicode であることが…
はじめに ベンチマーク環境 JMH Gradle プラグイン ByteBuffer.allocateDirect のスループット アロケートサイズによるベンチマーク はじめに Java NIO では、java.nio.ByteBuffer を介してチャネルとのデータの受け渡しを行います。 java.nio.ByteBuffer は…
依存関係ツリーの表示 依存ライブラリを最新化する 依存関係の解析 依存関係ツリーの表示 プロジェクトの依存関係階層を表示するには dependency:tree を使う。 mvn dependency:tree 依存関係の階層は、ビルドプロセスが実際に使用する依存関係の解決された…
インストール Apache の起動 いまさらな Apache ですが、簡素にまとまったページが見つからなかったのでメモしておきます。 インストール 公式からは、Windows向けバイナリは提供されなくなっているので Apache Lounge などからダウンロード。 解凍すると以…
blog1.mammb.com はじめに 最近の Gradle では、gradle init タスクでプロジェクトを生成すると、以下のような依存定義が生成される。 dependencies { testImplementation(libs.junit.jupiter) testRuntimeOnly("org.junit.platform:junit-platform-launcher…
PowerShell で Excle 操作する場合の足場は以下のようになる。 Set-Location (Split-Path $MyInvocation.MyCommand.Path -parent) $book = $null $excel = $null try { $excel = New-Object -ComObject Excel.Application $excel.Visible = $false $excel.Di…
はじめに document.execCommand() による入力テキストのクリップボードコピー document.execCommand() によるノードコンテンツのクリップボードコピー document.execCommand() によるノードのクリップボードコピー navigator.clipboard によるクリップボード…
blog1.mammb.com java -jar app.jar で実行できる実行可能 jar ファイル には、Manifest に Main-Class 属性を追加する。 application プラグインの mainClass を使って以下のように指定できる。 application { mainClass = "org.example.App" } tasks.named<Jar></jar>…
アコーディオン カード ドロップダウン グループ ローディング モーダル ナビ パンくずリスト プログレスバー ツールチップ 前回の続きです。 blog1.mammb.com アコーディオン <details open> <summary>Accordion 1</summary> <p> Flamingos are known for their bright pink feathers and distin</p></details>…
入力フォーム グリッド グループ ヘルパーテキスト 検索入力 ファイル入力 非活性・リードオンリー Valid・Invalid テキストエリア セレクト チェックボックス ラジオ スイッチ レンジ 前回の続きです。 blog1.mammb.com 入力フォーム <html lang="en" data-theme="light"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> </meta></meta></head></html>
pico とは バージョン カラースキーム コンテナ カラー グリッド 各種コンテンツ Heading group Blockquote Hr テキスト リンク ボタン テーブル pico とは シンプルで小さなCSS 2019年12月に v1 リリース 2024年02月に v2 リリース クラスレス版を使えば、…
blog1.mammb.com Markdown Documentation Comments リンク テーブル JavaDoc tags シンタックスハイライト openjdk.org Markdown Documentation Comments JDK23 より、JavaDoc コメントを Markdown 形式で記載できるようになります。 Markdown 形式のコメン…
GUI から設定 「システム設定」-「サウンド」から変更 ターミナルから設定 Off にする場合 sudo nvram StartupMute=%01 On にする場合 sudo nvram StartupMute=%00 nvram は NVRAM の内容を操作するコマンド % nvram -h nvram: (usage: ) nvram [-x|-X] [-p]…
office-crypto パスワード付きの MS Office ファイルを復号化できる。 復号化したExcelファイルは calamine で読み取り操作できる。 [dependencies] office-crypto = "0.1.0" calamine = "0.24.0" 以下のようにして、calamine で読み取り操作できる。 use st…
blog1.mammb.com モジュールインポート宣言 曖昧なインポート プレビュー言語機能 openjdk.org モジュールインポート宣言 モジュールを指定した一括インポートが可能になります。 モジュールインポートはモジュール名を指定して以下のように宣言します。 imp…
リリースチャンネル ツールチェーンの指定 ツールチェーン オーバーライド省略記法 環境変数 RUSTUP_TOOLCHAIN ディレクトリオーバーライド rust-toolchain.toml リリースチャンネル リリースチャンネル 説明 nightly master ブランチから毎晩リリース beta …
はじめに Gatherer 組み込み Gatherer Gatherers.windowFixed Gatherers.windowSliding Gatherers.fold Gatherers.scan Gatherers.mapConcurrent Gatherer.ofSequential まとめ JDK 22 でプレビュー公開(https://openjdk.org/jeps/461)、JDK 23 でセカンドプ…
はじめに javet javet の導入 V8Runtime の利用 はじめに Java 上で JavaScript を実行するスクリプトエンジンは以下のように変遷してきました。 Java 6 Rhino Java 8 Nashorn Java 11 Nashorn 非推奨化(https://openjdk.org/jeps/335) Java 15 Nashorn 削除…
はじめに リポジトリ Parameter based automatic query method Annotated query method Query by Method Name Jakarta Data Static Metamodel クエリ条件 クエリ結果 リソースへのアクセス はじめに Jakarta EE 11 の目玉機能である Jakarta data 1.0 の先取…
IPAddress は、IPv4 や IPv6 の IP アドレスに対する様々な操作が可能なライブラリ。 Java の実装と Go の実装が提供されている。 seancfoley.github.io 簡単に使用方法を見ておく。 導入 Gradle の場合は以下。 implementation("com.github.seancfoley:ipad…
小分けで追加されているのでここにまとめておきます。 Gradle 8.2 で Groovy DSL に代わり、Kotlin DSL がデフォルトに Gradle 8.5 で --java-version オプション追加 Gradle 8.6 で --use-defaults オプション追加 Gradle 8.7 で --no-comments オプション…
はじめに ウインドウの変更 キーイベントの捕捉 ゲームの描画 ゲームの実行 まとめ はじめに 前回は、テトリスのゲーム部分の実装を行いました。 blog1.mammb.com 今回は、winit と tiny-skia による描画をあわせて、ゲームを完成させましょう。 実装の全体…
はじめに テトロミノ ブロック 盤面と落下ブロック テトリス ブロックの移動と当たり判定 はじめに 前回は、winit と tiny-skia にて簡単なウインドウへの描画方法について説明しました。 blog1.mammb.com 今回は、もう少しだけ凝った例として、テトリスをゲ…
はじめに Are we GUI Yet? にある通り、Rust で GUI を扱う場合のライブラリは、未だ決定打が無い状況にあります。 ディスクトップ・アプリケーション の構築には、WebView ベースの Tauri が、現時点での有力候補になるでしょうか。最近では、Atom の後継エ…
はじめに Java 18 からJEP 400: UTF-8 by Defaultにより、デフォルトのエンコーディングが UTF-8 に統一されたため、Windows 環境での文字化けが頻出する。 対策としては、全て UTF-8 に統一してやるのが良い。 ソースコードを UTF-8 とする システムプロパ…
Zig Lang とは インストール WinGet Homebrew 手動インストール バージョン確認 VS Code Extension zig コマンド Hello World Zig Build System Zig Lang とは 2016年登場の新しい命令型静的型付けコンパイル言語 簡素で明確な言語仕様 GC無し(メモリはスタ…
はじめに スペースの定義の違い スペースっぽいもの全てを切り捨てる はじめに Character.isSpaceChar() と Character.isWhitespace() はいずれも引数の文字がスペースかどうかを判定する static メソッドだが、その違いは? 文字列の前後のスペースを削除す…