入职新公司后的一些吐槽

刚换公司,先吐槽一下。
一进入公司就维护历史项目,搞得头都大了。都说历史项目是个坑,简直是个天坑,粪坑。代码过手的人多,各种style应有尽有,对于我这种有代码洁癖的人来说,简直是视可忍,孰不可忍。为汲取前人的经验教程,特归纳出其中的不足。

  1. 代码不分层,全部逻辑在一个controller中,动辄几千行,难以阅读。话说这是常规的java web项目,就一工作流而已,咋就这样呢。曾经听网上有人说可以不用按常规的分为 dao,service, controller三层,可以分为dao,controller两层。但不管是分层还是不分层,代码、组件之间松耦合,易复用; 代码有条理,易于阅读维护是必须的。不分层或是不合理的分层显然不能满足前面的条件的。不分层的缺点是一览无余。以下是截取的部分代码:
package com.*.*.deployplan;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;
//这是前面5行
//此处省略4780行
public void setDeploy
//快到末尾了,已经是4782行了
  1. 不合理的使用MyBatis, 不定义任何普通的javaBean作为Model。全部使用Map
List<Map<String, Object>> doComponentList = (List<Map<String, Object>>) ((Map<String, Object>) selectedDeployObj.get("detail"))
Integer status = (Integer) deployObj.get("status");
String name = (Integer) deployObj.get("name");
Long id = (Long) deployObj.get("id");
//像这种类型转换的地方全篇到处都是。

看到这里,头都大了的同学,有木有?
已经醉了的同学,有木有?
Bad smell有木用?

为什么不创建javaBean作为Model?
答曰:表添加、修改、删除了字段,model要作相应的属性操作,太麻烦了。
好吧,你确实也有你的难处。
项目已经上线了,迭代了几个版本了,老大暂时也不会给时间重构,如果重构就等于承认这项目不太成功,想想还是打消重构的念头。但为了更好避免以上惨不忍睹的状况,我还是给出了解决方案(见下文)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值