Webアプリケーションを作成する上で重要になってくるのがMVCと呼ばれるソフトウェア設計モデルです。
MVCとは
ソフトウェアを「Model」・「View」・「Controller」という3要素の組み合わせでシステムを実装する方式です。
MVCモデルのイメージ
Model
Modelは、システムの中で処理の中核を担うビジネスロジック(アプリケーションが扱う領域のデータと手続き)を担当するシステムの本体部分に当たります。
データベースなどに格納された生のデータを隠蔽し、抽象化された形のAPIを通じて他のモジュールからのアクセスをコントロールするモジュールです。
Modelは入出力や表示といった処理は行わず、業務モデルの実装といった部分を担当します。
アプリケーション特有のルールやロジック(ビジネスロジック)を持ち、データの整合性に絶対の責任を持ちます。
データの変更をViewに通知するのもModelの責任となります。(Modelの変更を通知するのにObserverパターンが用いられることもあります)。
多くのアプリケーションではデータの格納に永続的な記憶の仕組み(データベースなど)が使われています。
MVCの概念では、データの(UI以外の)入出力は取り扱わないので、データアクセスも本来MVCの概念の範疇を超えるものではありますが、敢えて言えばModelの中に隠蔽されると考えられます。
J2EE では JavaBeans、EJBがモデルを担当します。
サーバサイドでいうserviceに関する処理を行なっています。
View
Viewは、表示、入出力といった部分を担当します。
Modelのデータを取り出してユーザが見るのに適した形で表示する要素です。
UIへの出力を担当します。
Modelが提供する抽象化されたデータを、どのような形式で人へ見せるのかを記述したモジュールです。
GUIアプリケーションの場合、使用するGUI部品や画面上のレイアウトを指定します。
必要な情報をModelから取り出して画面へ表示させる為の処理を行います。
J2EE ではServletやJSPで実装します。
一般的な HTML表示に関してはJSP、そのほかの特殊なデータ(バイナリデータ)を出力する場合は Servletを用いるのが標準的な使用方法となります。
Controller
コントローラは、ViewとModelを制御します。
自分自身では表示を行ったりロジックの実行は行わず、Viewからの入力に応じて、必要なロジックの実行をModelに依頼し、その結果表示をViewに依頼します。
ユーザの入力(通常イベントとして通知されます)に対して応答し、それを処理する要素です。
UIからの入力を担当します。
ViewとModelの間に位置して、ユーザーにどんな順序でデータを見せて行くとか、Viewを通したユーザーからの入力をModelへのAPIコールへとマッピングするのがこのモジュールの役割となります。
ModelとViewに変更を引き起こす場合もありますが、直接描画を行ったり、Modelの内部データを直接操作したりはしません。
J2EE ではServletでControllerを実装します。
イベントはコントローラで受け取り、画面上構成するボタン(イベント)の数だけ処理があります。
MVCモデルのメリット
並行開発 機能毎の分離が明確になることにより独立性が確保出来る。 ・開発の分業が可能になる ・専門家を配置しクオリティーを上げる事が可能になる
再利用性 コンポーネント間の依存性が最小限に抑えられる為、他の部分の影響を受けにくい。 ・コンポーネントの再利用がしやすくなる ・他のコンポーネントの変更が原因で、複数の担当者が同一のソースに対してメンテナンスを行う、というような事態を避けることもでき、保守性も確保される
RDT272WX(BK) ふとパソコンのモニターを眺めたら、なんだか画面の文字や画像が全体的に薄っすらとぼやけている現象が発生・・・。
色々調べてたらどうもモニターの故障と判明し、購入からもう4,5年は経つので寿命だろうと思い買い替えを決断。
予算は前回と同様4,5万位で店頭で探して値段的にも4万円位で妥当だったのでMITSUBISHIのワイド液晶ディスプレイ「RDT272WX(BK)」へ決めました。
以前使用していた、BENQの「E2400HD」と比較すると以下の様に性能面は全体的に向上してます。
しかし、しばらく見てない内にIPS方式やらTN方式やらVA方式だのと色々ありすぎて素人の自分にはよく分からないっすっ(><)。
MITSUBISHI ワイド液晶ディスプレイ「RDT272WX(BK)」とBENQの「E2400HD」の機能比較
機能 MITSUBISHI「RDT272WX(BK)」 BENQ「E2400HD」
発売日 2012/6/1 2007/10/31
価格 \39,100 \4万円前後
最大表示画素数 1920×1080 1920x1080
輝度 250cd/m² 300cd/m²
応答速度 3.5ms 5ms
視野角 左右178°/上下178° 左右160°/上下170°
コントラスト比 8000:1 1000:1
解像度(規格) 高透過率IPS方式液晶パネル フルHD液晶パネル
皆様は動画再生プレイヤーは普段何を使用しているでしょうか?
私は通常「GOM Player」を使用しているのですが、一部のmkvファイルを再生すると映像は表示されるが音声だけ出ないという事象がたまに発生します。
対応方法
以下の様なmkv専用の再生プレイヤーをインストールしてmkvファイル再生はそちらをメインにするのが一番手っ取り早い対応です。
mkv再生ソフト
ダウンロード先
さて、年も明けたところで年末から作業していた新PCへの移行作業が一段落してきたのでマシン構成をまとめておきます。
ハード構成
項目 製品名 参考価格 備考
PCケース COOLER MASTER「CM 690 II Plus rev2」
\10,260 メーカーサイト
マザーボード Intel Z77シリーズ「P8Z77-V」
\16,300 メーカーサイト
CPU Intel® Core™ i7-3770K Processor
(8M Cache, up to 3.90 GHz) \27,200 メーカーサイト
CPUクーラー Hyper 212 EVO
\3,305 メーカーサイト
グラフィックカード ELSA GeForce GTX 680
\48,000 メーカーサイト
メモリ DDR3 240pin PC3-12800 1600Mhz 8GB×4(32GB) \12,000
電源 Owltech Xseries「SS-860XP」
\27,800 メーカーサイト
光学ドライブ I-O DATA BDXL対応 内蔵型ブルーレイディスクドライブ BRD-S14XE
BD-R14x(DL12x)/RE2x(DL2x)/DVD±R16x(DL8x)/+RW8x/-RW6x/RAM5x
\8,898 参考サイト
メインドライブ(Cドライブ) Intel SSD 520 series 480G
型番:SSDSC2CW480A3K5
読込最大:550MB/s
書込最大:520MB/s
\40,607 メーカーサイト
内臓HDD1 [SATA3]3TB 64MB 7200rpm 6Gb/s対応 \14,000
内臓HDD2 [SATA3]3TB 64MB 7200rpm 6Gb/s対応 \14,000
サウンド機能 CREATIVE「Sound Blaster Recon3D PCIe」 \6,738 メーカーサイト
カードリーダ Owltech FA507(B)/BOX
※44種類のメディアに対応
\2,018 メーカーサイト
ネットワーク 1000Base GigabitLAN オンボード \0
キーボード Owltech「OWL-KB109LBMN(B)」
\11,280 メーカーサイト
マウス Microsoft「Arc Mouse(ブルー)」
\4,700 メーカーサイト
パソコン保障期間 3年保障 \12,027 メーカーサイト
主な構成は上記の通りですが、使用してやはり一番実感したのがOSの起動速度。今まではXPのメモリ2Gでまともに使用出来るまで10分位掛かっていたのですが、30秒程でデスクトップが表示されてしまいます・・・。SSDの威力は絶大!
PCケースについてはほとんどメッシュなので多少の音は覚悟してましたが、思っていた以上に静かです。
長く愛用していければと思います。
新しくPCを購入しましたが、肝心のOSを「Windows 7 Professional」を選択したつもりが、間違えて「Windows 7 Home Premium」を選んでしまっていた・・・。やはり通販でPCを買うものではないかもと思いつつ両者の違いを再度調べてまとめてみました。
Windows 7「Home Premium」と「Professional」の違い
項目 Home Premium Professional 備考
最大認識メモリ 64bit = 16Gbytes
32bit = 4Gbytes 64bit = 192Gbytes
32bit = 4Gbytes
Windows XP Mode × ○
リモート・デスクトップ接続 × ○
Active Directoryドメイン参加機能 × ○
自動バックアップ機能 × ○
Microsoftのサポート期間 メインストリーム サポート終了日:2015/01/13
延長サポート終了日:2020/01/14 メインストリーム サポート終了日:2015/01/13
延長サポート終了日:2020/01/14 Microsoftプロダクトサポートライフサイクル
延長サポートについて以前はHome Premiumの方は無かったけれど、2012/12/26現在はProfessionalと差異は無いようです。(但し、「Windows 7 Home Premium N」の場合は延長サポートなし)
個人的に大きい違いは「認識メモリの許容量」と「XPモードが使用出来ない」の2つでしょうか。
XPモードについては個人PCでの利用ではあまり出番はなさそうなので、あまり気にする必要ないと思われます。
ちょっと痛いのはせっかくメモリを32Gbytesにしたのに64bitマシンでも16Gbytesまでしか認識されないことですね・・・。実際にメモリをここまで使用することがあるのか疑問もあるので今後使用しながら不便に感じたらアップグレードすれば良いかなという結論になりました。
Windows7 Home PremiumからWindows7 Professionalへのアップグレードする方法
・Windows Anytime Upgrade(WAU)でエディションのアップグレードする。(コンピュータのプロパティから実施可能。価格は1万円前後)
サクラエディタを起動したら「エディタ間の対話に失敗しました。権限レベルの異なるエディタが既に起動している可能性があります」というダイアログが表示されました。
<環境>
OS:Windows7 Professional Service Pack 1
システム:64bit
サクラエディタ:Ver. 2.0.5.0
<対処内容>
1.一旦、サクラエディタを終了します。
2.タスクマネージャーを起動し、「プロセス」タブを開き、サクラエディタのプロセスが起動していないか確認します。
3.「sakura.exe *32」というプロセスがあったらプロセスを終了させます。
4.再度、サクラエディタを起動して上記エラーが発生しなければ対処完了です。
<考えられる原因>
「アタッシェケース」という暗号化のフリーソフトをインストール直後にも同様のダイアログが表示されました。アプリの相性問題という可能性もあります。
Excelファイルを開くと「このファイルを開こうとしたときに、officeファイル検証機能によって問題が検出されました。」というダイアログが表示されました。
<環境>
OS : Windows7 Professional Service Pack 1
システム : 64bit
オフィスソフト : Microsoft Office Excel 2003 SP3
<確認した作業>
・該当のExcelファイルをそのまま開いて、変なマクロが使用されていないか調べる。・・・特に見当たらない。
・ファイルが共有化されてたので共有解除後保存し再度開いてみる。・・・メッセージは表示されない。
・再度、共有化して該当ファイルを開く。・・・メッセージが表示されなくなりました。
<Officeファイル検証機能とは>
そもそも「Officeファイル検証機能って何?」と思い調べてみると、「Word、Excel、PowerPoint、または Publisher 97-2003 のファイルを開こうとしたときに、Office ファイル検証によるファイルの検証が失敗した場合、次の警告が表示されます。」との事。
<考えられる原因>
古いOfficeソフトで作成されたファイルを開く際に何らかの原因で誤検知されたようですね。・・・Microsoftさん頼みますよ~。
「FFFTP」を使用してテキストファイルを転送していたら、何故か転送後のファイルサイズが転送元より増えているという現象が起きていました。文字コードなどの設定を色々試しても結局解決出来なかったので、FTPソフトを「WinSCP」に変えて試してみたら特にオプションの設定も不要でファイルサイズも変わらずに転送出来ました。
調べてみたら転送後のファイルサイズが変動する原因としては、「WindowsとUnix系OSの改行コードの違い」という説が有力みたいですが、ファイルサイズが変わるのはどうも気持ちが悪いので、今後は「WinSCP」を使用する事にします。
投稿ナビゲーション
「駑馬十駕」 IT系情報を中心に調べた事をコツコツ綴っています。