1
lychee 2011-04-11 22:48:17 +08:00
- - 果断重构..
|
2
TheOnly92 2011-04-11 23:14:01 +08:00
http://stackoverflow.com/questions/1423109/convincing-coworkers-to-use-mvc/1423238#1423238
第一,你才刚刚来这家公司。你有什么资格告诉人家该怎么做?如果重构,失败了你显得你自己愚蠢。即使成功了别人对你印象也不好。不论如何你要不是笑柄,要不然你就踏上离开这家公司的路。 你应该解决的问题是:“我如何学习融入这个团队,帮助这个项目,然后让这个项目成功”从这一点来看,告诉别人你比他们知道得更多而他们是愚蠢的根本就不是解决方法。 放宽视野,你现在面对的问题是 10% 技术性,40% 学习如何在团队中付出,30% 社交和 20% 沟通。 从项目的角度来看,哪一个你觉得比较重要?你觉得你做什么能够让项目准时完成? 1)大家和乐融融地在乱七八糟的代码中工作 2)脱离团队一个人重构然后让其他人落单 你现在应该做的是闭上嘴做好自己应该做的部分,做得好,做得快,然后对自己的代码部分进行优化。如果你真的那么优秀,做事又快,就让他们给你更多事情做,然后重复以上的步骤。 一旦你在团队中受到尊敬,那么你就可以尝试让团队使用更好的方法重构代码。 |
4
summic 2011-04-12 00:21:26 +08:00
|
6
keakon 2011-04-12 01:10:58 +08:00
遇到这种团队根本就没兴趣加入⋯⋯
|
7
qichangxing 2011-04-12 01:16:25 +08:00
@keakon 同时也意味着这是一个机会 :)
|
8
TheOnly92 2011-04-12 08:05:40 +08:00
@bbs 何为硬的问题?先搞清楚自己在团队中的位置,然后搞清楚这项目究竟是要干什么。遇到困难可以问一问同事,只要你又快又有效率地完成你分内的工作,别人自然会对你尊敬了。那时候再谈代码重构的问题。
|
9
yelusiku 2011-04-12 10:29:21 +08:00
貌似大家猛烈抨击的重构,不是楼主提出的,是一楼。。。
|
10
darasion 2011-04-12 11:01:02 +08:00
我觉得 @TheOnly92 说的有道理,既然你不可能去控制改变别人,就改变自己吧。总会遇到不一样的事情,不管多烂,都要尝试一下,也算人生阅历。
硬的方面,其实还是要调整一下心态,尝试把 “创作” 看成 “体力劳动”。 我拿传统行业举例,比如说装配机床(我以前干过),每天总是完全相同的重复动作,比如拧螺丝、钻孔、刮研、打激光.... 像这样的工作,一点都没有“创造” 的喜悦,但是却有数量上的成就感,你会看到一件东西(不管有多枯燥)一点点的在你的手中完成。 对暂时改变不了的东西,不妨先看做是简单的生产线劳动,这样心态平衡了,不论多复杂,多难调试的东西。别的都不想,做一点是一点,慢慢的,突然发现居然就做完了。同样会有一点成就感。 当然,有问题一定要解决的。但要找个好时机,费力不讨好的就算了。 |
12
kamal 2011-04-12 11:18:38 +08:00
或者原来代码不是这么烂的,结构良好的代码也挡不住汹涌的需求啊。
莫名其妙的想法要立即上线,只能硬编码,然后效果不好又换,或者撤下,或者改回原来的界面,来几次代码就混乱不堪了。谁也不是故意要把自己的代码弄乱的。 你能做的就是尽快熟悉工作内容,理顺原来的代码,在完成要求的基础上尽量重构,不着急。 |
13
darasion 2011-04-12 11:34:10 +08:00
@kamal 嗯。这个我也遇到过。当时我的角色就是 “汹涌的需求” 的提出者,折腾了不少人。导致那些人见到我都是眼冒凶光,杀气腾腾的。。。
|
14
keakon 2011-04-12 11:45:56 +08:00
@qichangxing 我觉得这是浪费生命,与其融入一个不适合自己的团队,不如寻找或打造适合的团队。说句难听的,宁愿一个人吃蛋糕,也不愿一堆人吃屎。
团队不是为了表面上的团结而牺牲奋斗目标的。如果每个人都看不到这种问题,那说明这水平不值得你去掺合;如果看到了却都不敢说,那说明都是一堆不值得交往的人。人可以为饭碗而工作,但不能只为饭碗而工作;舍弃了理想和信念,和奴隶有什么区别? |
15
aligo 2011-04-12 11:47:08 +08:00
一个优秀的代码民工应该向好的建筑和采矿工人学习,努力使自己有强大的体格,并且有着暴力倾向,确保自己能用上与自己的愤怒相衬的方式,去解决开发中遇到的问题
|
17
qichangxing 2011-04-12 18:20:02 +08:00
@keakon 你如何判断是否适合?
|
18
kamal 2011-04-12 19:54:22 +08:00
@qichangxing 适合不适合凭气场就能知道
|
19
shanghaikid 2011-04-12 20:22:40 +08:00
重构这件事情,如果项目不紧,大家都乐意就可以,不然吃力不讨好
|
20
ine181x 2011-04-12 23:15:33 +08:00 via iPhone
mark 难得看到我感兴趣的主题讨论。重构不是一天完成的,可以逐步改进。
|
21
icespace 2011-04-13 11:24:10 +08:00
差不多每个新人都会如此,新工作,或者新公司.
读到新代码,因为和自己习惯不同,或者因为不理解需求,再加上别人代码难读 首先想到的就是开骂,琢磨这jb都是什么啊? 这么乱啊,这么多条件判断啊,怎么设计的啊 写的好丑陋啊, 然后就想重构,琢磨着自己能把代码优化,更合理,更优雅 如果真重构了,才发现,需求是这样的啊,运行条件是如此复杂啊 写啊写啊,发现自己的代码也臃肿了啊,分支也多起来了啊 杂七杂八的代码也来了,原来的设计也被打破了, 自我迭代之后也面目全非了, 甚至根本跑不通 才发现,原来前辈们不是省油的灯啊, 原来人家糙快猛的代码真能跑啊 原来自己改完了也操蛋了,别人读起来一样难受啊 同学,源代码不是诗歌, GUI前端是最复杂多变,运行状态最多的部分 前端哪怕只是负责展现也要比后台多得多的代码 有些东西避免不了修补和丑陋 在埋怨之前,先琢磨琢磨自己能给人家优化重构多少 否则就等着吃苦头吧 而且项目进度绝对不会让你在理想状态下工作 你遇到的事情几乎注定会发生, 最后你发现就算你全部重写,也一样丑陋 |