我即将在一个新的工作岗位上开始一个新的项目,我遇到了一个小问题。他们不是MVC的忠实粉丝。
这让我感到困扰的原因是,他们声称他们目前正在使用Zend框架,而实际上他们并没有。他们几乎没有使用DB模型类,仅此而已。没有MVC,没有Zend类的扩展来实现他们的目标。
我参与的最后一个项目使用了大量的Zend。一旦项目完成,我们就得到了一个很好的MVC框架。非常干净的控制器,大部分重负荷逻辑都在它所属的模型中,并且是一个很好的模型-网关系统。用手写的SQL编写sphagetti代码是一件令人震惊的事情。
所以,我问你,StackOverflow社区。我如何说服我的同事转向MVC框架?我有一种感觉,他们害怕使用MVC,因为这对两个成熟的程序员来说意味着一个学习曲线(这是一个小的初创公司)。我一直在考虑使用MVC和Zend的所有优点在一个独立的SVN存储库中复制当前项目(在我自己的时间内),并在几周内将其展示给他们,看看他们的想法。
对如何将同事转换为MVC有什么想法吗?
发布于 2009-09-14 18:42:06
有一个很好的帖子,你应该读一读“他们在学校没有教的最重要的事情是什么”。其中之一是社交技能。在我看来,你是在自暴自弃。
首先,你是团队中的新手。你是谁来告诉他们该做什么或怎么做?如果你重写了代码,如果情况更糟,你就是个笨蛋。如果你成功了,你就是个笨蛋。不管怎样,你要么成为笑柄,要么就快要走了。
你需要做的是解决以下问题:“我如何才能学会融入这个团队,帮助项目成功,并做出贡献?”从这个角度来看,让别人知道你比他们知道的更多,他们是笨蛋,这不是解决方案。
拓宽你的视野--你的问题可能是10%的技术问题,40%的学习如何作为团队的一部分,30%的社交和20%的沟通。
从项目的角度来看,你认为什么更重要?你认为怎样才能按时完成这个项目?
a)每个人都在错误的框架下高效、和谐地合作。b)团队分裂,一个人在一个框架下工作,另两个人忽略他,每个人都让团队经理/管理层看起来很糟糕。
你已经说了你的话,现在闭嘴,做他们告诉你做的工作,做好它,快速地做,如果你想,只要你不告诉其他人如何编写他们的代码,你想放多少MVC就放多少(你的部分) :)如果你做得很好,你可以更快地完成它,然后要求他们做更多的工作,并重复上述步骤。
一旦你赢得了他们的尊重,最好是友谊,然后再试着再次提起这个话题。
发布于 2009-09-14 18:19:17
如果这是一家没有技术人员的“小型初创公司”,你很可能不会有更多的时间从管理层那里得到更多的时间来返工大多数已经完成的工作。“上市时间”是他们可以用来解释->的关键字“让它先工作,快”。
我也不喜欢,但这可能是你的现实。
发布于 2009-09-14 19:28:31
这是“你永远不应该做的事情”之一。
http://www.joelonsoftware.com/articles/fog0000000069.html
现在迁移到MVC是最好的资源利用方式吗?
你不能把自己的时间算作“免费”,因为那是作弊。如果这一切都是在你自己的时间内完成的,那么你可以在公司时间的0小时内做任何事情--重写它,用RoR编写,等等。
因此,假设您需要N个小时来编写它。你是否也增加了回归测试所需的时间,以确保它完美地工作?不是吗?然后再加上2N个小时。让其他开发人员熟悉新代码怎么样?不是吗?然后再加上2N个小时。
所以,我们现在可能达到了5N个小时。在你的下一次发货日期之前,还有哪些事情需要完成?你是否也能适应这额外的5N个小时,并仍然保持那个日期?如果是这样,在此之后的发货日期有哪些项目?可以在5N小时内完成的项目是否比在MVC中重写更有价值?
重写在时间和维护方面有什么好处?
你可能没有从项目管理的角度来考虑这个问题。从这个角度来看,我个人怀疑重写是最好的利用你的时间。
https://stackoverflow.com/questions/1423109
复制相似问题