有多少人在实际项目中采用 MVVM 模式 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
iOS 开发实用技术导航
NSHipster 中文版
http://nshipster.cn/
cocos2d 开源 2D 游戏引擎
http://www.cocos2d-iphone.org/
CocoaPods
http://cocoapods.org/
Google Analytics for Mobile 统计解决方案
http://code.google.com/mobile/analytics/
WWDC
https://developer.apple.com/wwdc/
Design Guides and Resources
https://developer.apple.com/design/
Transcripts of WWDC sessions
http://asciiwwdc.com
Cocoa with Love
http://cocoawithlove.com/
Cocoa Dev Central
http://cocoadevcentral.com/
NSHipster
http://nshipster.com/
Style Guides
Google Objective-C Style Guide
NYTimes Objective-C Style Guide
Useful Tools and Services
Charles Web Debugging Proxy
Smore
fakesnow
V2EX    iDev

有多少人在实际项目中采用 MVVM 模式

  •  
  •   fakesnow 2015-12-25 13:36:48 +08:00 4936 次点击
    这是一个创建于 3628 天前的主题,其中的信息可能已经有所发展或是发生改变。

    ViewController 越写越重

    -> MVVM

    22 条回复    2015-12-26 20:56:55 +08:00
    littleshy
        1
    littleshy  
       2015-12-25 15:12:11 +08:00   2
    哈哈。 WPF 项目表示一直是 MVVM 项目,嘿嘿嘿……
    ouyangzetao
        2
    ouyangzetao  
       2015-12-25 15:13:25 +08:00
    至少,我是坚持不下来,这种模式。
    Wangxf
        3
    Wangxf  
       2015-12-25 15:17:24 +08:00
    只要涉及到有大量数据计算, dom 操作的,偏业务的就可以 mv *,我现在就展示型的 jq 或者只需要少量 js 的直接原生,业务类型的应用久 mv *
    chaoxn
        4
    chaoxn  
       2015-12-25 16:07:36 +08:00
    现在在自己的练手项目中用了 RAC+MVVM, 挺爽的. 但是公司项目没敢用.
    yuuko
        5
    yuuko  
       2015-12-25 16:25:00 +08:00
    公司的项目一直用 avalon ,比 jq 爽很多
    fakesnow
        6
    fakesnow  
    OP
       2015-12-25 16:27:22 +08:00 via iPhone
    @yuuko 去哪儿网的那个大神写的?
    fakesnow
        7
    fakesnow  
    OP
       2015-12-25 16:27:51 +08:00 via iPhone
    @ouyangzetao 让你觉得不舒服的地方是什么呢
    fakesnow
        8
    fakesnow  
    OP
       2015-12-25 16:28:28 +08:00 via iPhone
    @chaoxn 有没有开源 看看
    PrideChung
        9
    PrideChung  
       2015-12-25 16:32:21 +08:00
    曾经实践过一段时间,后来放弃。因为我发现这样做跟 MVC 没有本质区别,无非就是把乱糟糟的代码挪了个地方而已

    最近看了这篇文章,深有同感 http://khanlou.com/2015/12/mvvm-is-not-very-good/
    longaiwp
        10
    longaiwp  
       2015-12-25 16:52:36 +08:00
    话说写 WPF 和 UWP 的人有别的选择么(笑
    LittleMK
        11
    LittleMK  
       2015-12-25 16:54:51 +08:00
    WPF 啊,天生就是 MVVM
    1023400273
        12
    1023400273  
       2015-12-25 16:55:48 +08:00
    表示 Android Data Binding 的 MVVM 也不习惯,感觉并没有减轻我的工作量
    beneo
        13
    beneo  
       2015-12-25 17:03:30 +08:00
    WPF 是啥?
    fakesnow
        14
    fakesnow  
    OP
       2015-12-25 17:30:03 +08:00 via iPhone
    @littleshy 23333
    fakesnow
        15
    fakesnow  
    OP
       2015-12-25 17:31:31 +08:00 via iPhone
    @longaiwp 23333
    fakesnow
        16
    fakesnow  
    OP
       2015-12-25 18:29:35 +08:00
    @PrideChung 我去看看这篇文章
    fakesnow
        17
    fakesnow  
    OP
       2015-12-25 18:30:01 +08:00
    @1023400273 在结构上有没有帮助呢
    jackisnotspirate
        18
    jackisnotspirate  
       2015-12-25 23:19:07 +08:00
    VIPER 各个模块功能分的更细。
    zhc
        19
    zhc  
       2015-12-26 00:48:53 +08:00 via iPhone
    这东西纯属扯淡,典型的 middleman 。那么难用还在坚持只能说还没看透。有些逻辑应该放到 model 层而不是所谓的 viewmodel 。
    IndexXuan
        20
    IndexXuan  
       2015-12-26 07:25:20 +08:00 via iPhone   1
    @zhc 说的真是醉了。。。不说别的,中小型应用特别是表单型,后台管理型项目,用 mvvm 双向数据绑定不要太爽。它改变了开发应用的思维模式,数据和状态为核心,一种大局观而不是局部的大量的手工思考和维护。就算你说做大了或者开发者水平不行,会和 mvc 或者其他一样把 state 搞混乱了,也有很多数据流约束构架可用,写起来不要太清晰,很约束。

    不是说 mvvm 多神,代码还是靠个人,但是对可维护性,思考的难度的简化,上手有帮助就很好了,至少前端 gui 这种模式得到了事实的考验。上来就乱喷却没看见什么理由也是醉了。。。
    zhc
        21
    zhc  
       2015-12-26 10:35:20 +08:00
    @IndexXuan 我说的是 ios 开发, 不过从你讲的所谓的双向数据绑定估计是没把 controller 是干嘛的理解清楚。
    IndexXuan
        22
    IndexXuan  
       2015-12-26 20:56:55 +08:00 via iPhone
    @zhc 那写久了剪不断理还乱的 controllerssssss... 您继续,你使用得当,理解入木三分,拆分合理,慧眼识真,永不需要重构,我等佩服。希望广大开发者都如大神般思路清晰,控制精细,构架稳如狗!怪不得 ios 不卡。。。
    发自 controller 阳顶天 逃
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     942 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 23:11 PVG 07:11 LAX 15:11 JFK 18:11
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86