周一
这周感觉不太行,周一早上居然在下雨,虽然是小雨,但是我昨晚晾的鞋子都被淋湿了,哎,事不如愿,因此感觉不行。
周一过的很快,我感觉自己什么都没有做,因为上午主要是讨论事情了,下午的话,也没有开发什么新功能,主要是优化了几段代码。
把一些函数进行了合并,代码进行精简。
比如之前的一个功能,是要判断一个表单的提交数据是不是有重复,如果重复的话,就不提交。但是这里涉及到一个问题,那就是在编辑的时候,是需要判断表单主键的,而新增的时候,因为没有主键,所以不需要判断。我的判断函数是写在一起的,根据是否新增来返回判断结果,要判断很多字段,所以那些相同的字段都写了两次,当我发现这两大段代码之后一行不同的时候,我就觉得这里肯定是有问题的,不符合代码的习惯,虽然这样看上去逻辑更清晰,但是却很臃肿。
所以我最后使用了一个办法,就是把公共字段的判断结果提取出来,然后把主键判断结果也提取出来,这样在新增的时候就只判断公共字段,判断主键的地方默认为真,这样就构成了布尔值的拼接。
如像:
function exist(){
// 这里有若干字段的相等判断
let common = a===b&&c===d&&e===f&g===h
let id = id===sid
return edit?common&&id:common
}
这个思路启发了我,又精简了好几处代码。
还有一个就是相似函数的合并:
比如我有三个函数,分别用于获取三种数据,之前我是写成三个函数,分别调用,然后获得相应的值。后来我想起来,可以写成一个函数,根据条件判断返回哪个函数的执行结果。这个思路是受到了工厂模式的启发。
如像:
function a(){
// do somthing
return data1
}
function b(){
// do somthing
return data2
}
function c(){
// do somthing
return data3
}
// 合并之后
function getData(condition){
let data;
switch(condition){
case 'a':
// do somthing
data = data1
break;
case 'b':
// do somthing
data = data2
break;
case 'c':
// do somthing
data = data3
break;
}
return data
}
这样优化过后,一个是可以让相似的功能得到整合,不会太分散,第二个是可以少开辟内存空间,也能节省一点资源,当然我是这么理解的。
如此思路,又优化了一些代码,下午就过完了。
吃过晚饭的时候,我又开始研究起winform,主要是在sqlite上。
sqlite和其他的数据有些不同,还有一个是ado.net 这个技术有点不熟悉,看文档,又看别人的示例,最后还是弄出来了。
回来的时候,看了一些房价,南充的房价算是比较友好的,没有特别高。
但是我和她说了以后,她好像没有表现出什么,也许是她不想把房子买在南充吧,也许有其他原因,后来我就都睡觉了。
周二
今天老板没有来,我去开了一个会,就是工会联合会的换届选举,希望大家踊跃参与,确实不是很重要的会,园区大概有二十几家企业,都不是很大,好像对这件事,积极性不是很高,回忆很快就结束了。
上午看了一些文档,主要是JavaScript的,想再汲取一点新的知识,但是好像并没有多少收获,基础的我都知道,剩下的就是一些偏门的东西和特别高深的知识,那些也没有找到多少,于是我感觉收获不大。
下午我准备优化一下组件,结果发现了一个大bug,这个bug找了好久,最后发现了原因,因此也牵扯出很多其他的模块,也是使用类似的方法传递参数,所以其他模块也有类似的bug,我们最后只把这个模块处理了,明天应该会讨论这个bug怎么处理。
怎么说呢,这个项目已经积累了太多的垃圾代码了,很难被维护,所以是一言难尽。
晚上我继续研究winform,已经把流程弄清楚了,差不多可以进行下一步了。
我说的流程是对单表的增删改查,只要这个流程通了,我就可以进行多表操作和其他附加功能的实现了。我感觉,主要的难点还是在于数据库交方面,而今已经把这个路子走通了,后面应该不会有太大的困难。
也是花了不少时间,八点过我才去吃饭,还是炸酱面,小碗,十块钱。边吃边看lpl的比赛,打的很不错,让我意外的是,lng居然这么强,把tes都打败了,而且是二比零,我开始看,tes还是有些优势的,甚至我以为都要被碾压了,但是几波团战过后,lng又打回来了,虽然中途有些失误和冒进,但是最终还是取得了胜利,不得不说,中野发挥很好,而且lng的心态很稳,胜利了也没有多激动,好像很平常一样,这就是一种强者的心态,而tes则看出来有些颓丧,在我看来他们不是输在技术上,而是输在心态上,不能冷静的发挥,以至于失误输掉了比赛。
lng值得关注,jdg也是,以前我是除了jdg的比赛都不看的,但是前几天,jdg输给了omg,让我有点意外,如今看来,lpl的队伍,其实强度差距没有那么大,当然最后几名除外。
也快十点了,我要准备休息,养生从现在做起。