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

Visual Studio 2010でアプリケーションのパフォーマンス・チューニング

DBアプリケーションのパフォーマンス・チューニング − @ITの内容メモ クエリのデータ転送量を減らす 不要な項目をSELECT区に含めない。安易に*を使用しない。 SQLServerからの転送量がかなり節約できる。 クエリの内容をデバッグ出力 Entity Frameworkでは…

こんまり式の片付け

テレビで見て感心したので頭に残っていることを書き出しておく。 種類別に片付け 場所ごとに片付けするのではなく、種類ごと(服,本,書類,,,)に片付ける。 整理対象種類のものを一箇所にまとめて片付けする。こうすることでものの量が把握できる。(その多さに…

レバレッジ・リーディング

読書は自身への投資となる。 本で得た知識を仕事や生活で活かすことで大きなリターンを得ることができる。 "読書"ではなく、自分を運用するための投資作業という意味合い(-> レバレッジ・リーディング)。 多読を行い、より重要な知識を仕入れる。 同じジャン…

IObservableインターフェイス

C#

IObservable(T) インターフェイス (System) IObserver(T) インターフェイス (System) .NET Framework 4から追加されたこれらのインターフェイスを使ったサンプルを作成していました。 オブザーバーパターンは一方通行の通知を行うパターンだというのに、チャ…

匿名メソッドの変数キャプチャ

C#

基本的な大事なことです。 Javascriptのクロージャと同じ考え方です。。。 ど忘れしてましたので再確認を兼ねて書き置きします。 //非同期でFriendGridにイメージを追加していく (ダメバージョン) Task.Factory.StartNew(() => { foreach (var friend in Vie…

開発系エンジニアのスキルロードマップ Part 2

開発系エンジニアのスキルロードマップ Part 2 - とあるコンサルタントのつぶやき - Site Home - MSDN Blogs テスターって単体や結合テストする人たちのことでしょ?別に分ける必要ないのでは?と思っていましたが、 「デベロッパーとテスターの違い」を読ん…

デシジョンテーブルを使ったテスト

直交表はテストの専門家ががんばって勉強することでやっと使いこなすことが可能になるイメージ。 デシジョンテーブルは、専門家でなくても、テストケースを比較的容易に作成できる。 メソッドに対するテストでの使用を想定しているが、機能に対する単体テス…

直交表について4

水準数が少ない場合 2水準系直交表の因子より少ない水準の因子を割りつける場合、 割り付け可能な最小サイズの因子へ割りつける。余った水準値はダミー扱いにして、使用しない・重要パターン用に使用する。 水準数が多い場合 2水準系直交表の因子より多い水…

直交表について3

実際に作ってみた 対象とするのは下画面イメージなアプリケーション 社員情報は社員マスターから取得。全て平社員に属する。 社員を選択しない場合、全社員が対象になる。 有効データは2011/01/20〜2011/06/20に存在する。 実行を行うと処理結果がデータベー…

直交表について2

使用する直交表の決定方法 決定する方法が幾つかある。 最大水準因子の組み合わせから求める 「最大種類の水準を持つ因子と、その次に多い水準をもつ因子の組み合わせパターン数」を持つ直交表を使用する。 自由度からの見積もり(同じような水準数ばかりの場…

直交表について1

すべての組み合わせテスト行うのは時間的に無理 例えば57個の組み合わせテストをすべてやろうとしたら46億パターンが以上必要!! ほとんどの不具合は、2機能間の組み合わせで発見されている。 多人数で作成されているソフトウェアは3,4機能の組み合わせでも…

コントローラークラスのテスト

チュートリアル: ASP.NET MVC での TDD の使用 上記リンク先からダウンロードできるサンプルソースはMVC2のときのものですが、十分参考になります。 コントローラークラスに対するテストを勘違いしていたところがあったので、自コメント付けてソースを丸々貼…

DotNetOpenAuthのOpenId認証アダプタ作成

※8/25 OpenId用語訂正(RP⇒OP) asp.net mvcアプリで、DotNetOpenAuthを使用したOpenId認証を行う際、 DotNetOpenAuthのサンプルコードのようにControllerで認証関係処理をゴリ書きするのが嫌だったので、その辺の処理をクラスに分離してみました。 Factoryク…

SQLServerの基本事項メモ

今までアプリケーションのデータソースとして何気なく使っていて、デバッグ時は問題ないが、 本番環境への配置やリモートからの接続が発生した途端にエラーが発生し困ったことが多々ある。 とりあえず動くようにという感じで場当たり的な対応で乗り切ってい…

jQueryMobileでの動的ページ追加に関するメモ

※jQuery Mobile 1.0a4.1 でのはなし。 静的なページが必ず1つ必要っぽい。(ひとつも無いとエラーが発生する) そのため、ダミーページを作成して対応。 <div data-role="page" id="dummypage"></div> <div id="templ-page"> <div data-role="header"><h3>ヘッダー</h3></div> </div>

ASP.NETページのトレース

ページ単位 チュートリアル : ASP.NET トレースと System.Diagnostics トレースの統合 WindowsFormアプリケーションの場合はConsole.Writeline()でデバッグメッセージをコンソール出力していたが、ASP.NETで同じことはできない。 System.Diagnostics.Traceク…

ASP.NET 認証まわりメモ

メンバシップフレームワーク メンバシップ プロバイダの実装 サンプル メンバシップ プロバイダの実装 方法 : サンプル メンバシップ プロバイダを実装する 方法 : カスタム メンバシップ ユーザーを実装する DataSourceごとにプロバイダクラスを生成する必…

ルーティング機能

ASP.NETのルーティング機能。ASP.NET MVCのそれがASP.NETへ統合されたらしい。 ルーティングの有効化 IIS7.0以前のバージョンで使用する場合、modulesノードへUrlRoutingModuleを追加する必要がある。 以降の場合はmodulesノードのrunAllManagedModulesForAl…

ASP.NETのちょっと内側

.section-detail{ margin : 10px; margin-bottom : 30px; font-size : small;} .ref-info{ display : block; font-style : italic; margin : 5px; margin-left : 0px;} ASP.NET MVC のソースコードを読むにあたっての事前調査メモ。 ISAPI(Internaet ServerA…

属性値の取得、変更フック

jQuery1.6の新機能を試してみました。こんな感じで変更を感知できます。 参照元:jQuery1.6の更新内容をまとめたよ。 | Ginpen.com <html lang="ja"> <head> <meta charset="UTF-8" /> <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.min.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("a").hover( f…</meta></head></html>

Razorメモ

言語はC# レイアウト いままでのマスターページに替わって、Razorではレイアウトページという仕組みを使う。 共通のレイアウトページは_ViewStart.cshtmlで指定される。(デフォルトでは_Layout.cshtml) <html> <head> <title>@ViewBag.Title</title> <link href="@Url.Content("~/Content/Site.css")" rel="stylesheet" type="text/css" /> </link></head></html>

ADO.NET Entity Framework Code First メモ

C#

久しぶりに触ったので参考にした過去のメモたちをまとめておく。 CTP4のときに書かれた記事のクリッピング UntitledCTP4⇒CTP5での変更箇所一覧記事のクリッピング Untitled

時間帯重複チェック

お題:時間帯重複チェック - No Programming, No Life だらだらとなってしまいました <html> <head> <script type="text/javascript"> var DateRange = function(stH, edH, stM, edM){ var checkHour = function(obj){ return 0 <= obj.stHour <= 24 && 0 <= obj.edHour <= 24; }; var checkMinitue = fu</head></html>…

apply関数

Functionオブジェクトのapply関数を呼び出すことで、thisを差し替えての関数呼び出しができる! 第2パラメーターには関数パラメーターを配列で指定する。 サンプルその1 <html lang="ja"> <head> <meta charset="utf-8"> <script type="text/javascript"> var Foo = function(msg){ this.msg = msg; }; Foo.prototype.getMessage = func</meta></head></html>…

コンストラクタ呼び出しパターン

JavaScriptTheGoodPartsより new演算子をつけて呼び出された関数(コンストラクタ関数)は、新しいオブジェクトが生成される。 コンストラクタ関数はnew演算子指定なしでも呼び出せてしまう。実行時に何も言われないので、使用に注意する必要がある。 コンスト…

スレッドセーフなコレクションクラス メモ

C#

こういうクラスがあるのよということを箇条書きで。 System.Collections.Concurrentで定義されているクラスを使う。 System.Collections.Concurrent 名前空間 () BlockingCollectionクラス BlockingCollection の概要 スレッドセーフなキューとして使用でき…

スレッドとタスク

C#

スレッド 同時実行可能なスレッド数はプロセッサ数に依存する。 .netではスレッドひとつに1MBのサイズが必要。 スレッドの切り替えは高コスト。(コンテキストスイッチが発生する) 大量のスレッド作成はかえって逆効果。スレッドを作成するのではなく、タスク…

jQuery Templates メモ

こんな感じで書いていきます。 <html> <head> <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.5.1.min.js"></script> <script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.templates/beta1/jquery.tmpl.js"></script> </head> <script type="text/javascript"> $(document…</html>

どう書く? - 文字列に含まれる単語の最初の文字を大文字にする

F#

文字列に含まれる単語の最初の文字を大文字にする - どう書く? org正規表現使うのがスマートなやり方なんでしょうが、使ってません。 open System.Text; open System.Globalization; let toTitleCase str = CultureInfo.CurrentCulture.TextInfo.ToTitleCase…

正規表現クラスでの置換

C#

お恥ずかしい話ですが、RegexクラスのReplaceメソッドがこんなに便利なんて知りませんでした。 正規表現で指定しなくてもMatchした最小単位で置換処理が行なわれるのですね。 //hello world を Hello Worldに置換する class Program { static void Main(stri…