小佩上班日记
6.26
第一天上班,总结一下:
- 全栈工程师
- 重点选择一个工作方向
- 需求分析、设计
- 有一个对于需求的规划
- 每周一总结上周内容,并进行汇报
- 做不完的内容要及时提出,并找出原因
- 有问题及时沟通
Maven settings.xml 配置:
- 放在 $M2_HOME 下。
- 修改为自己的仓库。
今天的心情有点糟糕,一方面是嗓子不太舒服,另一方面是环境太陌生了。咱们技术人员处的很融洽,是个好事。诶,距离还是太远了,需要两个小时才到住处,很累。想找个房子租。
6.27
早上讨论了一下规范的问题,提出的规范对我来说不痛不痒,因为我平时代码就是这么写的。
今天遇到几个设计方面的问题以及想法:
- 在接收 Parameters 的时候,用 XXXParams 接收:面向对象思想,利用对象处理流程。
- Controller 抛出异常还是返回错误:都可以,能处理的尽量处理,在 Controller 中本来就要返回数据(无论是正确的还是错误的),可以不抛出异常直接处理。在 Service 中最好抛出异常(Controller 返回的数据不应该错误)。
- 没加泛型参数的问题:不取出来,可以不加;要取出来,最好加,限制类型。
- ServiceImpl Service:不一定需要 ServiceImpl,因为基本上没多态。不过我想了一想还是持反对意见的。ServiceImpl 还是要有的,以后对 ServiceImpl 实现修改的话最好创建一个新类实现,这样保留了原来的类,如果以后要用原来的类的话还可以复用。这样可以选择多种实现,毕竟不一定就没有多种实现。
- 类名过长:分解类。
做了一个 MyBatis 模块,利用了 TypeHandler。
至于心情,我忘了,上面的总结是我后一天写的。
6.28
今天修了两个 bug:
- 第一个 bug 是缺少了页面用户名, 原因是后台 SQL 查询缺少了一个字段,解决办法是加上该字段。
- 第二个 bug 是缺少了购买时间,原因是后台 SQL 查询缺少了一个字段,解决办法是调整 SQL 语句,并加上该字段。
话说 JDBCTemplate 很麻烦,要修需要修很多内容。很好奇当时怎么选择了 JDBCTemplate 这个技术,有时间问一问。
今天感冒严重了。不过没大碍。今天我第一个走了。我是觉得东西做完了,回去也没什么问题。东西做不完,加班是应该的。
这个阶段我要多学习 设计模式 和 数据结构与算法。Python 上班路上看看。Spring 技术内幕也准备了解。
最主要的是,好想问问两个大神数据库是怎么设计的,模块是怎么设计的。
6.29
感觉技术氛围还是挺好的。
今天黑盒检查了系统。
明天编写文档,直接写个程序跑起来就好。技术人员特色,哈哈!
今天同事遇到了一个 bug,Spring Security 设置了权限,总是没用。后来发现是 Filter 链的问题,Filter 将他自定的过滤器作为第一个节点了,在这个结点认证不过会报错误。
6.30
今天写了一个程序,从文件读取每行,用正则表达式匹配出分组,再将分组的内容格式化。
写好了之后,我利用这个程序去分析 Spring 日志中的接口信息,我想着偷懒,正则表达式写的不完全,结果漏掉了很多数据。正则表达式匹配还是完整匹配去写比较好,然后输出没有匹配的项目进行查看,这样才不容易出错。
之后我想用正则表达式匹配代码中的注释和函数名,匹配来匹配去总是不完美。后来想想这相当于分析程序结构,可以划分到编译原理了,做不出来也是正常。下次做工作一定要评估好工作量。
https://github.com/mofadeyunduo/Tools Tools 工具以后要经常更新了。
7.3
早上开会开得很累,讨论一个技术方案。问题在于,开发能不能接触生产数据库?好处是处理特殊问题效率提高,坏处是可能破坏生产环境。仁者见仁智者见智。
下午开始从 JDBCTemplate 向 MyBatis 升级项目。很繁琐。表关联很多,逻辑也复杂。
7.4
今天有点困,早点休息。今天一天在做从 JDBCTemplate 向 MyBatis 升级项目,也顺便看了数据库逻辑。
很难受,很多 JOIN 语句。写的人知道是什么,写起来很方便,看的人一脸懵逼,可读性很差。
记录一下我升级流程:
- 将 JDBCTemplate 改成 MyBatis。
- 两种结果测试对比。
- 理解 SQL 语句。
- 修改 Service 层逻辑。
7.5
今天不困了。今天真正开始做一个项目。
做项目首先:
- 需求分析,我到底要做什么,做出什么样子
- 概要设计,我需要什么,我怎么处理
- 详细设计,写代码
如何看代码,改写代码:
- 熟悉业务流程
- 寻找业务逻辑代码
- 编写新代码
今天感谢大哥和我们讲了这么久如何实现一个功能,受益匪浅。
7.6
哎,写代码虽然不算很顺利,但也不算很不顺利。加油。
还是对 SQL 想法比较少,需要多看一些 SQL 知识。
7.7
下周一周几次记录吧,刚来的感触比较多。
7.10 - 7.14
第一天开会的时候有个同事改了 Database DDL 导致系统异常。按照开放 - 封闭原则来说,是尽量不应该改DDL的,除非原来的某个特定功能设计有问题。
这周做了一个员工能力配置的功能。首先是设计(原型、接口),其次是调查,最后是实现。
这周写前端的时候遇到了一个 var 在异步中引发的 bug。let 的发明确有必要。