タグ

mvvmに関するlizyのブックマーク (17)

  • 開発中のアプリをMVVMからMVCに戻した理由 MVVM×RxSwiftでの開発で得られた教訓

    2018年12月12日、株式会社サイバーエージェントにて「CA.swift」の 第7回が開催されました。AbemaTVやAmeba、AWAなどを担当しているiOSエンジニアが登壇し、それぞれのチームの開発ノウハウを惜しみなく語るイベント。今回は、『iOSアプリ設計パターン入門』の著者2名を含む5人のエンジニアが、iOS開発における知見を披露します。プレゼンテーション「なぜうちのチームは開発中のアプリをMVVMからMVCに戻したのか」に登壇したのは、株式会社ゆめみの史翔新氏。講演資料はこちら 開発中のアプリをMVVMからMVCに戻した理由 史翔新氏:先ほど紹介に預かりました史と申します。ふだんの勉強会では、loveeとか、星野さんと呼ばれているので、お気軽にどれでも好きな呼び方でお願いします。 というわけで、「なぜうちのチームは開発中のアプリをMVVMからMVCに戻したのか」というタイトルで

    開発中のアプリをMVVMからMVCに戻した理由 MVVM×RxSwiftでの開発で得られた教訓
  • やさしくわかるMVVM // Speaker Deck

    iOSDC 2017 Reject Conference days1の発表資料です

    やさしくわかるMVVM // Speaker Deck
  • Vue+VuexでMVVMなWebApplicationを設計するときに考えたいこと

    まえがき ここ最近、Vueを使って実装されたWebアプリが随分と増えてきたように感じます。自分も何度となく実装してきました。すごく小さなデモを作るときにも使えるし、中規模以上のWebアプリを作るときにも使えるし、扱いやすいライブラリでとても好きです。 ある程度の規模になってくると「複数の画面でデータを共有したい」「こっちのComponentの状態をあっちのComponentに伝えたい」といったような問題にぶち当たり、アーキテクチャを導入することでそれらを解決するというのもお馴染みな感じです。特にVueでは双方向データバインディングの特性上、MVVMアーキテクチャが使われることが多いと思います。 今回は、VueでMVVMを実現する際に起き得る設計上の問題について、現時点での私の解決方針をまとめてみました😌 まえがき Vue+MVVMとはどんなものか 一般的なMVVMを理解する View V

    Vue+VuexでMVVMなWebApplicationを設計するときに考えたいこと
  • MVVMって何? というか…MV○丸ごと、何?

    shibuya.swift #4 (http://shibuya-swift.connpass.com/event/31031/) で発表したスライドです。 もっと詳しいMVVMの話はこちら: 健康的なMVVM 書いてますか? ~MVVMアンチパターン集~ (https://speakerdeck.com/takasek/jian-kang-de-namvvm-shu-itemasuka-mvvmantipatanji)

    MVVMって何? というか…MV○丸ごと、何?
  • SwiftBondとMVVMで 状態管理をシンプルにしよう

    SwiftBond, MVVM, Swift, Sync, wantedly, susieyy

    SwiftBondとMVVMで 状態管理をシンプルにしよう
  • Android Data Binding + MVVMパターンのサンプルを書いてみた - Qiita

    notifyPropertyChanged とか、どこかで見たことのある機能が満載の Android Data Binding ですが、登場以来あまり追えてなかったのでやっとサンプルをつくってみました。 といっても RxJava + MVVM パターンで作るストップウォッチアプリ - Qiita で作ったストップウォッチアプリを Data Binding 化しただけです。 前回 との違いを図に示します。 View-ViewModel で全面的に使用していた rx.Observable<T> の代わりに、ObservableField<T> を使用。 View側で「オレオレDataBinding」を実装していた箇所を、Android の Data Binding に置き換え。つまりバインディングの定義はレイアウトxmlへ記述。 Model は相変わらず rx.Observable<T> のま

    Android Data Binding + MVVMパターンのサンプルを書いてみた - Qiita
  • 今最も注目されている設計手法!MVVM を Android アプリ開発に取り入れてみた

    こんにちは。共同開発部開発担当の北川です。 クロスプラットフォームなアプリ開発では Xamarin の使用はビジネスロジックの共通化が可能となり非常に効果的です。 すべてのアプリを単一の言語(C#)で実装することができる点だけでも魅力的ですが、MVVM 設計によりその再利用性を高めている点こそがその真価を発揮しているとも言えます。 私は Xamarin でのアプリ開発を通して MVVM 設計のすばらしさを経験してしまいました。もう後には戻れません。 Java や Objective-C でのアプリ開発でも MVVM 設計は開発スピードと品質確保を両立するために有効であるはずです。 今回は Android アプリ開発(Java)で MVVM を使うとどうなるか、紹介してみたいと思います。 MVVM 設計について MVVM 設計ではビジネスロジックを Model が担当し、ViewModel

    今最も注目されている設計手法!MVVM を Android アプリ開発に取り入れてみた
  • mizchi / すべてのMVCを過去にする - Glide

    Please note that Glide no longer supports Internet Explorer versions 7 or 8.

  • JavaScript MVVMフレームワーク「JsViews」の概要

    はじめに JsViewsはJsRenderのテンプレートに宣言型データバインドを追加するフレームワークです。これにより、MVVM(Model‐View‐ViewModel)パターンを簡単に実装できます。 対象読者 JavaScriptデータバインドフレームワークに興味のある方 WebアプリケーションにおけるMVVMパターンに興味のある方 JavaScript、jQueryの基を理解している方 必要な環境と準備 以下のサイトから、jsviews.jsとjQueryをダウンロードしてください。 JsViewsはJsRenderの機能を拡張するjQueryのプラグインです。JsViewsのダウンロードページでjsviews.jsをダウンロードしてください。jsviews.jsには、JsRenderとJsViewsが含まれています。 JsRender(jsrender.js)とJsViews(j

  • MVCの流れを簡単にまとめてみる - Qiita [キータ]

    理解しやすいように適当に遮ったり、言い切ってしまったところもあるがご容赦いただきたい。 MVCの登場 MVCは、SmalltalkのGUIライブラリのモデルとして登場した。 これはGUIアプリケーションを記述する際に、適切なモデル化を進めるのにとてもいい考え方だと思われていたし、実際にそうだった。 これはアーキテクチャパターンとして、それぞれがどのように依存するべきか、どこにコードを書くべきかということを端的に表している。 安定依存の原則というものがある。これは、要件が安定しているモジュールに依存し、要件が変動しやすいモジュールには依存しないようにするという原則だ。MVCアーキテクチャでは、GUIアプリケーションの安定関係をModel > View > Controllerの順でとらえている。データ処理や業務要件というのは安定しており、UIパーツもまた比較的安定している。それらを統合してア

    MVCの流れを簡単にまとめてみる - Qiita [キータ]
  • MVVMパターンの常識 ― 「M」「V」「VM」の役割とは?(1/5) - @IT

    .NET開発者中心 厳選ブログ記事 MVVMパターンの常識 ― 「M」「V」「VM」の役割とは? ―― 「the sea of fertility」より ―― 尾上 雅則 2011/05/18 「.NET開発者中心 厳選ブログ記事」シリーズでは、世界中にある膨大なブログ・コンテンツの中から、特にInsider.NET/.NET開発者中心の読者に有用だと考えられるブログ記事を編集部が発掘・厳選し、そのブログ記事を執筆したブロガーの許可の下、その全文を転載・翻訳しています。この活動により、.NET開発者のブログ文化の価値と質を高め、より一層の盛り上げに貢献することを目指しています。 MVVM(Model-View-ViewModel)パターンに関する知見があちこちに散らばっているように見えるので、そろそろまとめてみることにしました。この記事は、MVVMの基的な考え方・実装方法などを把握されて

  • AngularJSを使っている理由 - Kazzzの日記

    既に利用されている方々とほぼ同じ意見だと思うのだが、私がAngularJSを気に入って使っているのは 構造的に書ける MVVMぽい DOMを触らなくて良い ほぼこの3つに集約される。 1.構造的に書ける AngularJSはアプリケーションを書く際のコードを構造がほぼ決まっている。その構成はビューであるHTMLを除くと コントローラ サービス フィルタ プロバイダ ディレクティブ これらの要素に分類されDIにより疎に結合される。基的には誰が書いてもこれらの要素を配置する必要がある訳で、同じ要素で構成されるということは他の誰かが書いたコードを読むことが比較的容易だということになる。(JavaScriptで最も苦痛なのは他の誰かが書いた、一か所に固まりすぎた又は逆に分散しすぎたコードを読むことである) 2.MVVMぽい 今のGUIプログラミングでMVCを意識するのはもはやテーブルマナーだろう

  • MVC、自分用メモ - Smalltalkのtは小文字です

    ▼Reenskaug (XEROX PARC) 「MVC」/ Things - Model - View - Editor MVC / XEROX PARC 1978-79 変化しにくいインフォメーションと変化しがちなプレゼンテーションとの分離。メンタルモデルの記述としてのMVCは失敗(続きは DCI, Data - Context - Interaction で)。Smalltalk-76, 1978。 ▼Reenskaug (XEROX PARC) 「MVC」/ Model - View - Controller(Editor) MODELS - VIEWS - CONTROLLERS Controller を追加。Editor は特殊な Controller として位置付け。Smalltalk-80, 1979-。 ▼VisualWorks (ParcPlace Systems) 「

    MVC、自分用メモ - Smalltalkのtは小文字です
  • 雑把の UI アーキテクチャー史(MVCからMVVMへ) | プログラマーズ雑記帳

    Web の場合は View と Controller の違いははっきりしてます。 View は html ページとその作成を担当します。 CGI は アドレスとパラメーター(アドレスの ? の後など)を受け取り、処理を行います。 その受け取り部分が Controller です。 Model と View ではなく、なぜ MVC としたのでしょうか ? 『 GoF 』 では Controller を分ける利点をいくつか挙げられています。 キーボードの応答を変えたり、メニューからの呼び出しに変更するとき、表示方法を変更しなくていい。 入力イベントを無視するといったことをコントローラーのインスタンスの入れ替えで可能。 その他にも "View を入れ替えれば、 PC アプリ、 Web アプリでも使えるように" という理由もあります。 ちょっと無理そうな話ですが、例えば、 PC アプリが次のような

  • MVVMによるSilverlightアプリケーションの開発(その2)

    はじめに 「MVVMパターンでアプリケーションを実装するのは面倒だ」 そんな時、簡単に利用できるユーティリティや簡単なツールキットの使用を検討してみてはどうでしょうか。今回は、Silverlight 4の開発で利用できるユーティリティやツールキットを解説します。 RelayCommand ICommandインターフェイスの実装を行っていると、ExecuteメソッドやCanExecuteメソッド以外はほぼ同じような実装を行えば良いことに気づきます。MVVMを採用した多くのプロジェクトでは、ExecuteメソッドやCanExecuteメソッドをデリゲートで受け取るようにしたRelayCommandというユーティリティクラスを導入して、コマンド実装の手間や修正を簡素化しています。リスト1にRelayCommandのサンプルを示します。 public class RelayCommand<T> :

  • MVVMパターンの適応 – 2011年のMVVMパターンの常識 - the sea of fertility

    MVVMパターンに関する認識・知見があちこちに散らばっているように見えるので、そろそろまとめてみる事にしました。この記事は、他の各サイトの記事などでMVVMの基的な考え方・実装方法などを把握されている方が対象です。 そういった方がMVVMパターンを実務に適応してみようと思った時や、MVVMパターンを要件に合わせてカスタマイズしていく際に、認識すべきパターンの実装方式のそもそもの理由と考え方、要件に合わせて考えていかなければならないポイントを把握する助けとなる情報を提供するのを目的としてこの記事を書きました。(文字ばかりですいません><) MVVMの実装の各要素の実装をこねくりまわすばかりで、その過程でパターンを把握している気になって、パターンの来の目的を破壊してしまうような実装を推奨してしまっている人も見ます。そんな滑稽な事をしない認識を持って欲しいのです。 MVVMパターンは、WPF

    lizy
    lizy 2011/02/22
    ファウラー「15年前にかいたわー」 Analysis PatternのApplication FacadeをSilverlightに特化したモノ?がmvvmなのかな
  • MVVMによるSilverlightアプリケーションの開発(その1)

    はじめに Silverlightに限らない話ですが、ページからのイベントに対する処理をすべてイベントハンドラに記述してしまったために、再利用性が著しく低かったり、単体テストがひどくやりにくいシステムを見たことはありませんか? これは、プログラムの機能をすべて同じ層に記述していることが原因の1つです。 この問題に対するSilverlightでの解決策の1つが、MVVMパターンです。今回はMVVMパターンと、MVVMパターンの要となるデータバインディング、コマンドバインディングについて2回にわたって解説します。 MVVMパターンとは MVVMはModel-View-ViewModelの頭文字をとった、アプリケーションの階層化パターンの1つです。階層化パターンを適用することで各層の依存関係が薄くなり、アプリケーションの修正、複数人数での分散開発、単体テストなどが実施しやすくなります。 Expre

    lizy
    lizy 2011/02/22
    要するにアナリシスパターンのアプリケーションファサードみたいなものらしい
  • 1