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

JavaEEを主にシステム開発をしながら思うところをツラツラを綴る

GitHubにMavenを使って作ったJavaDocを公開

はじめに ざっくり Maven pom.xml 対象をまとめる JavaDocのための編集 タイトルをつける 概要・詳細を編集 外部プロジェクトのドキュメントのリンク パッケージをグループ化 ドキュメントの出力先を指定 タイムスタンプを除去 ローカル環境用のjarの出力先 …

Pluggable Annotation Processing API でコード生成

vermeer.hatenablog.jp で紹介したツールのコード生成のベースとなっているプロジェクトについて紹介したいと思います。 概要 本プロジェクトを使用することでのメリット AnnotationProcessorを統一的に操作できます 定義用XMLで外部からパラメータを指定で…

プロパティファイルからEnumを生成

Pluggable Annotation Processing APIを使用して、プロパティファイルからEnumクラスを生成するプロジェクトです. ビルドの都度、自動で生成するので常にプロパティファイルとEnumの整合性が取れた状態が保てます. vermeer.hatenablog.jp の続きであり、私が…

【考察】設計について(2)

要件定義からテスト設計までの流れで個人的に思うところのメモ(2) 自分の経験の整理 vermeer.hatenablog.jp の続き いきなりモデリングはやめよう (また?) 理由 モデリングのような抽象度の高いことよりも、個別具体のところから整理していった方がユ…

【考察】設計について(1)

要件定義からテスト設計までの流れで個人的に思うところのメモ 自分の経験の整理 いきなりモデリングは止めよう 理由 モデリングをしていると、仕事をやった気持ちになるけれど 実現してほしいことに近づいているか?というと そもそも近づくべき目的を共有…

FactoryはEnumで実装すると良さそう

Enum活用への提案 ヒントになったのは「現場で役立つシステム設計の原則」。 現場で役立つシステム設計の原則 変更を楽で安全にするオブジェクト指向の実践技法 [ 増田亨 ]ジャンル: 本・雑誌・コミック > PC・システム開発 > その他ショップ: 楽天ブックス…

Optionalへの考察

nullを安全に扱うために使用するOptionalの使い方について、自分なりの指針を整理しておこうかなっと。 戻り値にのみ使用する 以上、おわり。 いや、、それだけではだめですよね。。 使用側に通知するため 使用側にとって戻り値がnull可能性の有無が分かれば…

ツールのメモ

UML Google Code Archive - Long-term storage for Google Code Project Hosting. PlantUML Web Server

クライアントのメモ

SPAとかJavascriptとかクライアント関連のメモ SPAを構築するときに知っておいた方がいい7つの課題 | I am mitsuruog Yeomanを使った簡単SPA開発手順 - albatrosary's blog ブログをシングルページアプリケーション(SPA)にするメリット・デメリット | ある…

UIデザインのメモ

非デザイナーエンジニアが一人でWebサービスを作るときに便利なツール32選 - Qiita

メッセージングのメモ

vermeer.hatenablog.jp の流れで、ざっくりと拾い集めたもの。 Yahooの取り組み ヤフーの広告レポートシステムをSpring Cloud Stream化するまで #jjug_ccc #ccc_a4 from Yahoo!デベロッパーネットワーク www.slideshare.net Kafka sssslide.com Java Client…

JJUG ナイトセミナー 「メッセージングミドルウェア特集」に参加してきました #jjug

まとめ togetter.com メモ 実運用して分かったRabbit MQの良いところ・気をつけること ブローカー無しのメッセージングはダメ!メッセージングミドル導入は絶対 メッセージは標準仕様が使えるよ ロードバランサーはいらないよ(というか それが原因でメッセ…

要件定義のメモ

DDD

【RDRA】リレーションシップ駆動要件分析 speakerdeck.com

GitHubにMavenリポジトリをつくる

はじめに 環境 なぜGitHub 構築の流れ 格納先となるリポジトリを作成する 認証キーを作成する pom.xmlを編集する settings.xmlを編集する Maven資産をアップロード 簡易クラスを作成 リポジトリ資産を取り込む Git(コード) 応用編(親子pomで共通化) 同一…

DDD Alliance! 現場で役立つシステム設計の原則 Night! に参加してきました

ddd-alliance.connpass.com 書評も書かせていただいた「現場で役立つシステム設計の原則 」の著者である増田さん(@masuda220 ‏)の本には書けなかったこと、というのを聞いてきました。 2017/08/30(水) DDD Alliance! 現場で役立つシステム設計の原則 Night…

Pluggable Annotation Processing API Sample(実践編2)

前回の続き vermeer.hatenablog.jp 今回はAnnotationProcessorを開発する際のテストのやり方です。一部、自分のライブラリの機能を使うところがありますが、それを除けば基本的に汎用的なものだと思います。 はじめに 前回の続きを想定しているので、以下の…

Pluggable Annotation Processing API Sample(実践編1)

以前の記事の続きです。 vermeer.hatenablog.jp 予定としては この流れで作っておきたいツールがあるので それを作り切るまで 続けたいと思っています。 はじめに 開発環境 Java8、Maven、Netbeans8.2 コード 全てのリポジトリは以下のプロジェクトに格納し…

【書評】現場で役立つシステム設計の原則

現場で役立つシステム設計の原則 変更を楽で安全にするオブジェクト指向の実践技法 [ 増田亨 ]ジャンル: 本・雑誌・コミック > PC・システム開発 > その他ショップ: 楽天ブックス価格: 3,175円 読みました。断片的に収集していた増田亨さん(@masuda220)の…

JavaParser

構文解析をするときに便利そう。構文木の書き換えも出来るみたい。 CIとかaptと組み合わせると面白い事ができるかもしれない。 例えばプロジェクト独自の静的解析を走行したい場合や独自フレームワークの作法を強制させたいときとか。 ただ実行速度がどのく…

入力値検証

BeanValidation JavaEE使い方メモ(Bean Validation) - Qiita 私のBeanValidationの使い方(Java EE Advent Calendar 2013) — 裏紙 BeanValidationの相関バリデーションとそもそもの話 — 裏紙 4.1. 入力チェック — TERASOLUNA Server Framework for Java (5.…

DDDのメモ

概念 原本のエッセンス [ 技術講座 ] Domain-Driven Designのエッセンス 第1回|オブジェクトの広場 [ 技術講座 ] Domain-Driven Designのエッセンス 第2回|オブジェクトの広場 [ 技術講座 ] Domain-Driven Designのエッセンス 第3回|オブジェクトの広場 …

JSF(ManagedBean)

作成単位 コンポーネント単位(呼出元となるxhtml単位)。 またはユースケース単位(呼出元となるxhtmlが複数にまたがるケース) 個人的なこだわり 少し調べて見ると「ManagedBeanは画面単位で作成します」という表現を見かけることがある。 多くの場合、画…

JSF(Form)

アイディアメモ(随時更新) ViewForm ドメインと画面コンポーネントの仲介役。 ViewFormは使用するドメインクラスをhasするためのクラス。型桁などの基本ドメイン情報はドメインクラスで実装する。 HTMLでのinput要素は基本的に文字列(String)。ドメイン…

CDI

全般 パーフェクトJava EE (Perfect series) [ 井上誠一郎 ]ジャンル: 本・雑誌・コミック > PC・システム開発 > その他ショップ: 楽天ブックス価格: 3,456円 JavaEE7をはじめよう(13) - インジェクション候補が複数ある場合の対処方法 - エンタープライズ…

JPA

全般 パーフェクトJava EE (Perfect series) [ 井上誠一郎 ]ジャンル: 本・雑誌・コミック > PC・システム開発 > その他ショップ: 楽天ブックス価格: 3,456円 JavaEE使い方メモ(JPA その1 - 基本) - Qiita Hibernate Entity Manager リファレンスガイド…

スコープについて

@ConversationScoped 画面操作に関するスコープ 実装イメージ 開始ポイントを必ずindex.xhtmlにする。 ファイル名を除くフォルダパスが変更されるタイミングを@ConversationScopedの開始・終了の境界にする。 index.xhtmlは省略可能にする。(SAStruts風?)…

JJUG ナイトセミナー 「Java O/Rマッパー特集」に参加してきました #jjug

まとめ 【東京】JJUG ナイトセミナー 「Java O/Rマッパー特集」 7/26(水)開催 #jjug - Togetterまとめ スライド speakerdeck.com Doma MyBatis を利用した web application 開発についてのご紹介 from Tokuhiro Matsuno www.slideshare.net Reladomo入門 J…

PaaS

PaaSに関するブックマークとメモ 外部サービスなどを考えるのであれば、PaaSが良いと思う。理由は運用コスト。ローカル環境や社内環境だと自分でカスタマイズできる自由度に惹かれるけれど、時間は有限なので何かしらのトレードオフは必要。ということで、外…

認証・認可・セキュリティのメモ

HTTPステータス セキュリティ監査で文句を言われないHTTPステータスコードの使い分け - Qiita HTTPステータスコード - Wikipedia 【Java】HTTPステータスコード列挙型 Powered by Wikipedia - Qiita 認証・認可 業務システムにおけるロールベースアクセス制…

思い付きのストック(WebFW)

自分向けの書き溜め(思いついたときに書き足す)。 いつになるか分からないけど、自分なりのJavaEEに薄いラッパーをつくるにあたって、やっておきたいこと。今のシステムのベースとして既に作り込んでいるものも含めて。既に実装しているものについても拡張…