2012-01-01から1年間の記事一覧

ASP.NET MVCを利用した業務アプリについて

今年はASP.NET MVCを利用したアプリケーション開発に携わったのでその感想をまとめます。 軽量・小回りが利く ASP.NET WebFormに比べて出力するHTMLを全てコントロール可能でシンプルなHTMLを出力することができます。このためCSSやJavaScript(jQuery)の利…

ストリームベースのDB変換ツール(3)

Oracle対応と自動的にテーブルを作成する機能拡張をした版*1を作成しました。あと、SQL Azureに対しても使ってみましたが、とりあえず問題なく動作しました。このツールは使い道ですが、もともとは開発時にデータベース変更があるとテストデータの変更が大変…

ストリームベースのDB変換ツール(2)

DbStreamConverterを使ったデータ変換ですが、簡単に手順を紹介します。 準備 まずはデータベースの用意が必要です。ここではNorthwindを利用します。手順は単純なので別に他のDBでも構いません。データベースが用意できたら、転送用のテーブルを作ります。…

ストリームベースのDB変換ツール(1)

DBデータをストリーム処理するをツール(ソース)にしてみました。(UIはMVVM View Makerで作成しています。)変換元テーブルまたはSELECT文と、変換先テーブルを指定するとDBデータをストリーム処理するで紹介したIDataReader とSqlBulkCopyを利用してデー…

iPadでDatePcikerを利用する

最近、ASP.NET MVC、jQueryを使ってPCとiPadをターゲットにしたシステムを作成しています。業務アプリもPCだけをターゲットにするだけではなく、タブレットも合わせて考える時代なんですね。また、HTML5をはじめとするWeb技術の発達もあって、一昔前では考え…

バッチ処理を50倍高速化する

DBデータをストリーム処理するを応用するとバッチ処理を高速化できます。SQL Serverに1億件のテストデータを高速に作成するの結果からすると、ストアドプロシージャで作成する場合に比べて50倍高速に処理できることになります。メインフレーム上の基幹系のバ…

ASP.NET MVC3+Entity Framework Code Firstでオフショア開発

今回規模が大きくないオフショアの開発案件があって少しチャレンジをしています。 オフショア開発を行うとなかなか仕様が伝わりにくかったり期待しているコードがあがってきません。 以前もDBやアーキテクチャは日本側で作成して渡すようなことはあったので…

DBデータをストリーム処理する

CEP(複合イベント処理)の記事を見ていてふと業務アプリのバッチ処理に利用できないかなと思いました。ストリーム処理する構造にアナロジを感じました。 .NETのADO.NETにはストリームの読み込みにはDataReaderがあり、書き込みにはSqlBulkCopyがあります。…

お手軽ビジネスルール管理(BRMS)

最近BRMSという言葉とよく聞くようになりました。言葉だけは以前から知っていいて昔のエキスパートシステムの派生版のように思っていました。しかし、現在はより広範囲に、(少し違和感を感じますが)プログラムの自動生成的なものにもBRMSという言葉を使う…

ASP.NETもMVVMに向かうのか

ASP.NET MVCにSingle Page Applicationというプロジェクトテンプレートが追加されるようです。 以前ここでも紹介したknockoutjsを利用してMVVMアプリケーションを実装するようで、さらにデータアクセス用の部品に「upshot.js」、ナビゲーション(履歴)管理…

単機能・小さい部品の方が共有化し易い

業務ロジックの共通化を行いたいという話を聞いて見てみると業務機能単位で考えてことが多くあります。しかしあまり上手く共通機能を抽出できないことが多いようです。大きな機能は仕様が複雑で安定しないためだと思いますが、ではどうすればよいのでしょう…

継続的インテグレーション(CI)とは毎日ビルドすることではない

ソース管理を利用する場合どのようにブランチを作成していくか決めなくてはいけません。ブランチの切り方として大きくリリース都合単位に切る方法と開発機能都合単位に切る方法があるようで、それぞれのブランチをリリースブランチと機能ブランチなどと呼ば…

WPFのDataGridヘッダーを2段組にする方法

簡単にできるかなと思って手をつけたのですが案外大変です。 最初のDataGrid まずは出発点となるDataGridですが以下のような3つの列を持つものです。 ヘッダーを2段にする ヘッダーを2段にする方法をまず検索したところいくつかアイデアが見つかりました。…

詳細設計は必要です

業務アプリで詳細設計書と呼ばれるものをプログラムを作成したあとにリバースして作成しているようなことも良くみます。これは詳細設計をせずにプログラムを書いていることになります。詳細設計は意味のないことなのでしょうか?無駄な作業なのでしょうか? …