这个问题的灵感来自这个封闭的问题:
Prism 实际上为开发者提供了什么?值得吗? https://stackoverflow.com/questions/6242156/what-does-prism-actually-offer-the-developer-and-is-it-worth-it
我已经在企业应用程序中实现了我自己的自定义 MVVM 实现。我有兴趣知道:
- 我为什么要学习 PRISM(特别是 PRISM,而不是其他 MVVM 框架)?
- PRISM 相对于自定义 MVVM 实施的优势
- 学习 PRISM 值得投资吗?
希望这个问题不是主观的,大家不要争论:)
与许多为您执行常见任务的框架一样,您将获得:
-
经过更多人的眼球测试: 不仅仅是你自己。这(希望)包括单元测试,您在构建自己的框架时可能会或可能不会进行单元测试。
-
对于其他开发人员来说更具可读性:没有其他人有您的自定义 MVVM 框架的经验。但是,如果其他开发人员加入您的项目,或加入您的团队,或加入您的公司,他们可以直接跳入 Prism 代码。
-
更好的文档:同样,任何新加入的人都可能必须通过手动从您的大脑和团队中的任何其他用户收集集体知识并查看源代码来学习诀窍。第三方框架有自己的文档,并且互联网上还有大量博客文章。
-
更好的社区:您可以在 StackOverflow 上提出有关“如何使用 Prism 执行 X 操作?”的问题。你不能用你的自定义框架来问这个问题。
-
可能更有能力:由于需要为您/您的团队之外的更多用户提供服务,因此将添加更多功能。如果您需要做一些以前从未做过的与 MVVM 相关的事情,那么您自己的 MVVM 框架中很可能没有内置对它的支持。但这很可能在棱镜中。
-
更好的结构:假设您想做一些与 MVVM 相关的事情,但 Prism 中没有。很可能,这是有充分理由的!如果某些东西不在为给定领域工作而设计的(相当成熟的)框架中,则表明您正在尝试做的是一种不自然或尴尬的解决问题的方式。使用您自己的框架,很容易说“哦,我会添加该功能”,然后 6 个月后意识到您犯了一个巨大的错误,因为这个新功能使您的代码很难遵循,或者最终成为很多代码的向量错误或诸如此类的问题。
-
简历行项目:对于雇用“实现并使用过自定义 MVVM 框架”的人,我的心情很复杂。虽然这可能意味着它们很聪明,但它也可能表明可怕的“非在此建造综合症”。另一方面,将“Microsoft Prism MVVM Framework”放入大量技术中可能会很好,但并不是令人惊叹的。两全其美的是一个更长的要点,大致是“对 MVVM 模式的深入理解,通过在切换到 MVVM Prism 之前首先实现用于学习目的的玩具 MVVM 框架来实现”。是的,这三者之间的区别不会影响你的简历,也不会在面试中出现非内置综合症,但值得记住,特别是当你正在申请时对于一个拥有足够简历的地方,他们有能力扔掉任何让他们稍微不安的东西。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)