Springフレームワークをバッチ処理やHadoopにも適用する
最近、JavaのSpringフレームワークが熱いと思っている。
ラフなメモ書き。
【元ネタ】
Spring Framework | TECHSCORE(テックスコア)
Eclipseを使ったJava開発入門/フレームワーク/ライブラリ/Spring/DIでHelloWorld | DI wdsdx.com
今必要な人のための速習 Spring Framework - 今必要な人のための速習Spring Framework---目次:ITpro
Spring3入門―Javaフレームワーク・より良い設計とアーキテクチャ:書籍案内|技術評論社
Hadoop開発を容易にする「Spring for Hadoop 1.0」が登場 - SourceForge.JP Magazine : オープンソースの話題満載
【ハウツー】概説 Springプロダクト(12) - Spring Batchで簡単にバッチを作る (1) Spring Batchとは | 開発・SE | マイナビニュース
SpringBatchとは - omotenashi-mind
01.Spring Batchの基本概念(ステップ) - soracane
Springは、2000年代前半、理論先行で使いづらいEJBよりもDI(依存性注入)で実現したPOJOを使ったフレームワークとして注目されていた。
JavaでWebシステムを使う場合、StrutsベースのSAStrutsかSpringのどちらかのフレームワークを採用する場合が多いだろうと思う。
海外ではSpringが多いのかな。
「ドメイン駆動設計」の著者の方も、DDDで設計後、Springフレームワークで実装する方法で説明されていた。
ドメイン駆動設計の感想~OOAは過ぎ去りDOAはもう一度舞台に上がるのか: プログラマの思索
業務システムを設計するアーキテクトの観点では、Springが他のJavaフレームワークよりも勝る利点は、バッチ処理でも同様のフレームワークを流用できる点があると思う。
つまり、Webシステムと言うフロント側だけでなく、集計処理や帳票作成などで使うバッチ処理でもSpringフレームワークを元に実装可能なことだ。
すると、Java開発者は、Springという一つのフレームワークに慣れれば、Web画面もバッチ処理も実装できることになる。
従来の業務システムでは、Web画面はJava、バッチ処理は従来通りCobolというように言語が異なるため、Java開発者とCobol開発者を両方揃える必要があり、開発チームもWebとバッチのようにアーキテクチャの観点で分かれてしまってコミュニケーションが悪くなる弱点があった。
でも、Springを使うならば、数少ない人的リソースをWeb画面もバッチ処理にも一人のJava開発者で対応できることになり、開発人員を減らせるだけでなく、開発者が画面からバッチ処理まで全てのロジックに触れることになり、より理解も深まるだろう。
Conwayの法則「組織はアーキテクチャに従う」に従えば、より一体化したチームになれる可能性がある。
更に、上記の記事では、SpringがHadoopにも対応したらしいので、アクセスログのような膨大なデータから顧客の利用データを経営分析することに使うという発想にも役立てることができるだろう。
色々調べてみる。
| 固定リンク
« 本作りもチケット駆動開発で | トップページ | 構成管理パターンの記事「Streamed Lines: Branching Patterns for Parallel Software Development」 »
「モデリング」カテゴリの記事
- 組込みソフトウェア開発でUMLを使う手法を説明した書籍のリンク(2022.06.17)
- 超高速開発でアジャイル開発を実現する話に違和感がある(2022.05.06)
- 事業活動のシステム化は非差別化しない汎用ドメインや支援ドメインに注力すべき(2022.04.13)
- 「大国政治の悲劇」の感想~現代はパワーポリティクスの歴史に戻ったみたいだ(2022.03.25)
- マイクロサービスはアトミックな操作で閉じるべきシステム分割論に基づいたアーキテクチャなのか(2022.03.20)
「ソフトウェア」カテゴリの記事
- Javaのenum型はシングルトンクラスみたいだ(2022.06.20)
- テスラが従来の自動車メーカーと異なるところは工場までソフトウェア化すること(2022.02.09)
- 「RubyやRailsは終わった」という記事のリンク(2022.01.09)
- 実践した後に勉強するのがエンジニアの本来の道(2022.01.09)
- DB Browser for SQLiteを使う(2021.12.21)
「ソフトウェア工学」カテゴリの記事
- プロセス設計はどの範囲を指すのか?~プロマネの仕事はテーラリングにある(2022.06.19)
- 「大人の学びパターン・ランゲージ」の感想~知識と経験を行ったり来たりするタイミングを大切にする(2022.06.05)
- 「コーディングを支える技術」は良い本だ(2022.05.26)
- ソフトウェアテスト技法練習帳はテストケースの切り方に困っている人向けにおすすめの本だ(2022.05.14)
- 知識は経験よりも大切か、経験は知識よりも勝るのか、SECIモデルは相互作用を語る(2022.04.26)
コメント
初めまして。
springフレームワーク、長く使われ続けていますよね。
投稿: 師子乃 | 2020/06/07 18:16