我在一家公司工作,自从我来到这里,我就可以完全自由地使用任何 Microsoft 技术、模式和工具来开发我的应用程序。
我开始使用 ASP.NET MVC3 开发所有应用程序,目前有 5 个应用程序已部署并正在运行。
有一天,我与经理开会审查所有应用程序,他意识到我的代码与他的预期完全不同。他基本上意识到我不使用 Web 表单,而是我使用 MVC。他认为他只是一些组件/工具,而不是完全不同的编程方法。他很好奇,简单研究了一下什么是 ASP.NET MVC。
两天后,他说我需要将所有应用程序转换为Web 表单,并从现在开始仅使用Web 表单。他说 MVC 类似于旧的 asp(在某些方面确实如此),并且需要更长的时间来开发应用程序并使人们当需要更改/维护应用程序时感到困惑。
我认为这不是真的,因为经过一段艰难的开始,我已经习惯了 MVC 的魔力,它简化了应用程序的开发、组件化和维护。
我告诉他Web 表单UI/逻辑/DAL 耦合性太高,一段时间后代码变得不可读并且>危害单元测试。我还展示了用 jQuery 或 MVCContrib 网格替换旧的 GridView(他主要关注的问题之一)的可能性。
没有办法说服他。无论是为了工作还是个人发展,我都不想退回到 Web 表单,因此我恳请您告诉我使 MVC “优于”Web 表单的最重要的几点。
谢谢
最佳答案
不幸的是,经理给出充满商业用语的“我不明白这个,所以我希望你按照我的方式做”的情况并不罕见。这往往会阻碍进步。 (实际上,我过去曾经因为这个原因离职过,经理们拒绝允许任何非他们个人设计的开发。)
但是,您也需要对这个问题保持开放的态度。他这样做很可能有充分的理由。支持代码是一个大问题,虽然我同意在 MVC 中编写干净且解耦的代码更容易,但同时他可能会看到一个以低成本雇用外包开发人员更容易/更便宜的市场支持 WebForms 应用程序。他的抽屉里可能有一叠简历,描绘了 WebForms 和 MVC 之间截然不同的画面。
实际上,你能做的最好的事情就是以完全开放的心态对待这两种范式。请注意,有关 WebForms 消亡的传言被过分夸大了。因此,如果你真的想让他相信任何事情,那么你就必须提供适当且公正的比较。
从一个简单的优缺点列表开始比较这两种范例。确保你没有跳过任何事情。如果他对 WebForms 的优点和对 MVC 的缺点你试图忽略,那将会损害你的情况。将列表演变为一些例子、演示、概念证明等。让你的论点变得有触觉,给它数字和有形的值(value),这些对管理层来说意味着真正的东西,而不仅仅是“这是一个更好的发展战略”。量化它。
如果你的论点只不过是“好吧,我的方法更好,因为它就是这样”,那么你就不会走得太远。即使你有观点要表达,你也必须成功地向他表达观点。你必须用他的语言来表达。
这实际上不是关于哪种发展策略更好,而是更多关于沟通和澄清你的想法。毕竟,如果你不能捍卫自己的立场,那么从他的角度来看,这不是一个好的立场。
如果您完全澄清和量化所有这些,并且对 WebForms 保持开放的态度至关重要,那么您所做的就是为他提供做出明智决策所需的信息。该决定可能不会改变。他可能仍然坚持使用 WebForms。但这是他的决定。你在这里所做的就是向他展示所有的优点和缺点,所有的成本和 yield (无论是直接的还是长期的,包括重写你已经拥有的东西和持续的支持等等)。即使他的决定被证明是错误的,至少那是他明智的决定。你不会对他隐瞒任何事情。
最终,他可能仍然坚持要求你按照他理解的方式做事。有些管理者就是这样。但请将此视为您职业生涯中掌握表达论点艺术的机会。这不会是您最后一次这样做。
关于asp.net-mvc-3 - 我怎样才能说服我的经理不要放弃 MVC 而重新使用 Web 表单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6875110/