体会到那种维护"屎山"的感觉了

2019-03-31 11:24:06 +08:00
 whoami9894

楼主本科生,这周接手了校宣传部一个比赛网站的开发任务,代码是好几年前祖传下来的 PHP Yii 框架开发,之后每年这个比赛都会加一些新需求,然后每年学生都得修修补补

今年新加了几个分项,发现整个库表结构都得改,加上架构逻辑看起来很分散(不知道是框架的范式还是设计的问题),某个功能变了五六个文件得连带着改,还有不知道为什么某些表单结构和路由也放在数据库....。

部署到服务器后上传图片的接口崩了,半天也没定位到 Bug,易班认证的 OAuth2 接口也崩了,(说因为要推广易班所以需要先易班认证才能在本站注册),发现整个代码很多补丁的痕迹...头大 orz

老师本来告诉我有个功能前面几届都没给她实现,我当时没看项目代码,想着不是多复杂的功能,拍胸脯我今年肯定给她搞定...现在我明白为什么前几年没有实现了

12959 次点击
所在节点    程序员
97 条回复
jackmod
2019-04-01 11:36:01 +08:00
之前用 jekyll 重构一个大点的静态网站搞了好几天。这活不太好做。
leekafai
2019-04-01 11:37:18 +08:00
每个人都抱着重写的愿望去维护,所以最后四不像,各有各的风格
jimrok
2019-04-01 11:38:28 +08:00
注释里不要忘了加"// fuck xxx, FU"
JimiJimi
2019-04-01 16:56:41 +08:00
最讨厌学校分配不懂技术还喜欢瞎命令的老师来管理技术部
所以当年我解散了技术部
是真的闹心
whoami9894
2019-04-01 18:35:17 +08:00
@loading 嗯确实我有点逃避的意味在里面,还是经验能力不足吧....魔改的话对我来说感觉要花更多的精力
whoami9894
2019-04-01 18:38:05 +08:00
@zjsxwc 所以干脆在我手上重写一遍,但随着未来加新的需求修修补补,肯定又会变成现在的屎山
whoami9894
2019-04-01 18:40:22 +08:00
@Seney 我看他的代码风格架构等等可能算是学生中不错的了,但跟工作多年的前辈们比肯定有很大差距。变成现在这样还是因为每年修修补补加上维护者水平不一
whoami9894
2019-04-01 18:54:17 +08:00
@encro 您可能不太了解,说的只是安全的一个片面,pentesting 工程师、reverse 工程师等等,很多安全问题没有办法从大的架构层面解决。而且您关注一下 defcon 等等安全会议,安全研究员们研究的大多就是我说的语言框架层面的新式漏洞,比如 PHP 的 phar 协议

我们做过 ML 的 WAF 的玩具项目,也了解过市面上想关产品,被 AI 取代完全取代还是很遥远的(真有这一天那么应该 90%职业已经被取代了)

> 架构级别防止注入,网络通信安全,防止爬虫
架构级别怎么防止注入我还真不知道,愿闻其详。而举例 SQLi,即使有参数化查询能完全防止,但依然能在各大 SRC 平台看见 SQLi 漏洞,所以基础安全人员不会衰减的。后两样是基础,不太明白您说的不会是什么意思

而且您说了这么半天依然没论证您“开发和安全的先行关系”的逻辑
whoami9894
2019-04-01 18:55:53 +08:00
@liuzuo 代码整体感觉确实是分成不同组件层面,但是某些逻辑分散纠结在一起,感觉很难改单个功能
whoami9894
2019-04-01 18:57:18 +08:00
@alexmy 唉我对 PHP 仅仅停留在语法层面,日常也没有拿它开发过项目,所以看着那套范式还是很头疼的
whoami9894
2019-04-01 18:57:59 +08:00
@no1xsyzy 不重构了,感觉我也没能力去重构的比现在好,还是换个熟悉的语言重写吧
whoami9894
2019-04-01 19:00:04 +08:00
@jimrok 哈哈哈不太好不太好
sannyzeng
2019-04-01 19:37:18 +08:00
写代码最重要的还是第一代,不然后面都会给带偏。。。
encro
2019-04-02 09:14:45 +08:00
@whoami9894 “代码都看不懂能做安全?”
alexmy
2019-04-02 10:10:26 +08:00
@whoami9894 我接手的时候,还看了半天语法,我本身是做游戏开发的。
whoami9894
2019-04-02 13:26:32 +08:00
@encro
你觉得我看不懂就看不懂吧,你这逻辑能力我也是服了,回复全程不讲逻辑无脑杠,block
whoami9894
2019-04-02 13:28:14 +08:00
@alexmy 老师催着这周四前要上线,再慢慢踩坑怕是肯定来不及了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/550456

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX