タグ

MVCに関するd_akatsukaのブックマーク (12)

  • モデルとはなんなのかって話 · polidog lab++

    テストという言葉の定義はどこにあるのか?人によって、関わる仕事によってPHPerの中でもテストという言葉の認識のズレがあるなーと感じている今日この頃です。 人によってはモンキーテストと呼ばれる懐かしい物をさす人がいる。また、受け入れテストを想像する人もいるだろう。イケてるエンジニアの人々にはユニットテストを想像する人もいるかと思います。 MVC(MVC2的なMVC)におけるモデルにも同じ事が起きていることにみんな気づいているだろうか? 僕は最近このモデルの認識のズレがあるような気がします。まあ、モデルとは一口にいってもいろいろなモデルがある訳で、それぞれが違っている意味合いになってくるので仕方ない事でもある気がします。 ただその違いがうまく認識できないと、コミュニケーションの齟齬というか、そういったことが起きる。 そもそもMVCとは? 今回はWEBアプリケーション(PHP)界隈で言われるM

  • JavaScript MVCフレームワーク「AngularJS 1.2」リリース。要望の多かったアニメーション機能が追加、脆弱なコードを制限するモードも

    JavaScript MVCフレームワーク「AngularJS 1.2」リリース。要望の多かったアニメーション機能が追加、脆弱なコードを制限するモードも JavaScriptのMVCフレームワークはBackbone.jsやEmber.jsなど多くの種類が登場していますが、Backbone.jsやEmber.jsなどが比較的シンプルなフレームワークを指向しているのに対して、AngularJSの特徴はUIバインディングを含むリッチなフレームワークとして開発されていることです(ちなみにAngularJSのWebサイトでは「MVWフレームワーク」と名乗っています。MVWのWはWhateverらしいです)。 AngularJSでは、HTMLJavaScriptのコードを混ぜ込まなくとも、識別子を差し込むだけで、その識別子に対応したモデルのデータを自動的かつリアルタイムに表示してくれます。逆に、HT

    JavaScript MVCフレームワーク「AngularJS 1.2」リリース。要望の多かったアニメーション機能が追加、脆弱なコードを制限するモードも
  • WebにおけるMVCアーキテクチャの勃興と変遷

    どんなに当たり前になった開発手法やプログラム管理方法があっても、新人さんにとってはHello worldから入って行くと思う。インターネットで、「知の高速道路」が整備されたと言っても、意外と古い話を探すのは難しい話で、MVCみたいに当たり前になってしまったことについて、何故そんなものが存在するのか?という考え方を後から肌で感じるのは難しく、そんなことを考えていたら、突然MVCについて書きたくなった。 以下、書いていくがかなりの偏見が入っている気はするので、ぜひ、歴史認識が間違ってたら僕のためにツッコんでくださいませ。 僕がMVCアーキテクチャを知ったのは、JavaのServletを勉強していた時だった。Javaはオブジェクト思考で作られている言語かつ、Webに特化した言語ではないため、クラス間のデータは、インターフェース仕様に基いて秘匿されるのと、テンプレートエンジンは別に存在していたので

  • Webアプリケーション開発に使えるJavaScriptフレームワーク·ComponentJS MOONGIFT

    ComponentJSはWebアプリケーション開発用のMVC対応JavaScriptフレームワークです。 ここ数年JavaScriptのフレームワークが幾つも登場していますが、今回紹介するのはComponentJS、HTML5のリッチWebアプリケーション開発用のJavaScriptフレームワークです。 デモのログイン機能。 ビジュアルデバッガーが売りの一つです。 ComponentJSは階層化されたコンポーネント、MVC、イベント駆動型、状態管理などが特徴になっています。他のライブラリへの依存がなく、jQuery UIやSencha Touchなどとも連携できます。さらにビジュアルデバッガーという強力なライブラリが提供されています。 ComponentJSはJavaScript製、Mozilla Public Licenseのオープンソース・ソフトウェアです。 MOONGIFTはこう見る

    Webアプリケーション開発に使えるJavaScriptフレームワーク·ComponentJS MOONGIFT
  • PHPerのMVCの一体どこが間違っていたのか - MugeSoの日記

    メリークリスマス! PHP Advent Calendarもいよいよ24日目に突入です。 昨日はxhprofについてでしたね。僕もパフォーマンスチューニングの際に使っています。手軽に利用できるのでお勧めです。 さて、このエントリーでは表題の通りMVCについて書かせていただきます。これは、PHPカンファレンス2012&WordCamp Tokyo2012合同LT大会で発表した「やはりお前らのMVCは間違っている」で煽るだけだったこの問題をきちんと解説するものです。 この発表資料を公開するとPHPの枠を超えて広く閲覧いただき*1、また多くの方から突っ込みを戴きました。「LTだから」と言って逃げていた回答をして、気持ち新たに新年を迎えようと思います。 MVCとはなんなのか 間違いを指摘する前にMVCがそもそもどういうアーキテクチャであるのかを確認しなければいけません。 MVCは1970年代にパロ

    PHPerのMVCの一体どこが間違っていたのか - MugeSoの日記
  • JSのMVCについて考えてみた ~ その2 テンプレートエンジンの分業とパフォーマンス - mizchi log

    この前の続き。相変わらず思いつきでつらつら書いてて図とかまともなサンプルとかない。 JSのモデルには二種類ある フロントエンドである以上質的にすべてビューだとも言える。 であるがゆえにあやふやにしないほうがいい。 ビューモデル UIの状態を示す属性。選択しているタブとか、開いているダイアログとか、そういうものの状態をDOMから読むのではなく、JSとして一度確定し、その結果をビューに反映すべきだ。激しく画面を組み替える場合はビューというグローバル変数はどこからも汚染される可能性がある。 データベースのローカルキャッシュ たとえば、a地点からb地点の距離をユークリッド距離を求めるのに、わざわざサーバーに問い合わせるのは無駄。普通に三平方の定理で計算すればいい。アクション性が高いものほど、ここの振る舞いは分厚くなる。いわゆるHTML5アプリはここを重点的にやるほどサーバーの負担が減り、サーバー

    JSのMVCについて考えてみた ~ その2 テンプレートエンジンの分業とパフォーマンス - mizchi log
  • HADASHI RaterBug.com - Building a Respectful Video Community

    Log in to your Heroku account from this secure Heroku login page.

  • Backbone.js入門 「Events」 - Qiita

    閲覧上の注意 この記事で対象としているバージョン0.5.3は結構古いので注意してください。この記事でいえば、bindは無くなり、現在ではonやlistenToが使われています。 その他の割りと新しい情報は Backbone.js Advent Calendar 2012 などにあります。 (追記ここまで) ネタ切れ感が否めないBackbone.js Advent Calendarですが、今回から何回かに分けて懇切丁寧な入門記事を書いていこうと思います。 以下のように書き進めていく予定です。 Events View Model ViewとModelの連携 Collection ViewとModelとCollectionの連携 RouterとHistory なおここで扱うBackbone.jsのバージョンは0.5.3です。 Backbone.jsのドキュメントを開くとまず最初に解説されているの

    Backbone.js入門 「Events」 - Qiita
  • JavaScript MVCフレームワークはすでに十種類以上、その比較や最新情報などのまとめ

    グーグルが開発したJavaScript MVCフレームワーク「AngularJS」を紹介した1つ前の記事の反応が予想以上に大きく、1日たたずにブックマークが500以上もつきました。 記事では、AngularJS以外にもすでにたくさん存在するJavaScript MVCフレームワークに関する情報をまとめて紹介したいと思います。 JavaScript MVCフレームワークの比較記事 既存のJavaScript MVCフレームワークを比較した記事が「The Top 10 Javascript MVC Frameworks Reviewed」です。Top10と書いてありますが、12種類のフレームワークの比較です。これは公開当時は10種類だったものが、その後11種類になり、今回のAngularJSの公開で12種類になったためです。 上記のような比較表を載せた上で、12種類すべての利点と欠点を説明し

    JavaScript MVCフレームワークはすでに十種類以上、その比較や最新情報などのまとめ
  • O/RマッパーやActiveRecordによるMVCの誤解

    広木 大地/ エンジニアリング組織論への招待 @hiroki_daichi O/R MapperとりわけActiveRecordによって、Model/Entityの区別がつかない人ってのが増えたうえに意味不明な思い込みでMVC批判してみたりとかMVACとか言い出してる状況に名前をつけたいな。 広木 大地/ エンジニアリング組織論への招待 @hiroki_daichi Entityとは、システム設計上のデータの一塊としての実体をさしていて、DBのRowとは質的には無関係。ModelはMVCパターンにおいて、Controllerからeventをうけとり、Viewに修正を通知するインタフェースであり、実装としてビジネスロジック/ドメインを持ってる 広木 大地/ エンジニアリング組織論への招待 @hiroki_daichi 簡単のためにEntity = Row = Modelとして動的言語によっ

    O/RマッパーやActiveRecordによるMVCの誤解
    d_akatsuka
    d_akatsuka 2012/05/16
    あとで読んでおく
  • クライアントサイドMVCについて喋った - mizchi log

    月曜日のclient-side templating 勉強会 http://atnd.org/events/28189 で喋った内容をうろ覚えに書き出す。 クライアントMVCが求められるようになった背景 AJAXの流行 PushStateの流行の兆し メディア系のゲームで使えるAPIの充実 今まではページ遷移の度にJSのオブジェクトを破棄していた。 => シングルページでリッチなコンテンツが作れるようになり、JSのやることが増えた PushStateとは 遷移なしにURLを書き換える技術HTML5 History APITwitter, Github, Facebook URLを書き換えるだけなのでコンテンツ(DOM)の操作はアプリ製作者に一任されている。 大規模なHTML書き換えに、クライアントサイドテンプレーティングが重要になってきた。 PushStateのライブラリ defun

    クライアントサイドMVCについて喋った - mizchi log
  • Web Applicationを綺麗に設計するためのMVACという考え方 - $shibayu36->blog;

    【2016/03/04追記】以前まとめたこのMVACという名前の設計は既に古くなっており、今はこのようなアーキテクチャで設計していません。 こんにちは。最近ははてなでMVACというアーキテクチャに則って開発をしているのですが、ようやく意味を理解できてきました。そこで今回は「Web Applicationを綺麗に設計するためのMVACという考え方」について、サンプルを交えながら説明していこうと思います。かなり長くなってしまったので、時間があるときにでもどうぞ。 MVACって? データソースやロジックを扱う「Model」、表示・出力を管理する「View」、複数のModelとControllerをつなぐApplication、ユーザのリクエストなどを受け取りViewやApplicationを制御する「Controller」の4つの要素を組み合わせてシステムを実装する方式。MVCをさらに抽象化した

    d_akatsuka
    d_akatsuka 2011/03/03
    あとで読む
  • 1