今年的感悟:
我所做的工作只是使用别人的研究成果,然后将这些成果变成对公司有用的东西,其实我对计算机科学一无所知。等人们利用这些科学做出了工具,我再利用这些工具做出一个一个功能,忽然明白自己只是一个码农。我既不思考我想要做什么功能,也不思考什么样的功能才是大家喜欢的,更不能推动社会的进步。我使用着别人发明的编程语言和写代码工具,却并不能对他们做出贡献,目前的我只是计算机领域中的一个小动物,我只能被动的生活在这片土壤中,而不能去改变环境。
今年的收获
1、学会了一些常用第三方组件如newston.json log4net echarts.js ligerui
2、对表单和webform生命周期有了深刻的认识。
3、自己封装了一些组件。
4、webForm分页和筛选功能的流程
1)用户使用Url访问页面
后台获取url参数-->构造sql-->将sql转化为分页后的sql-->绑定数据-->生成页码(保留页面参数)。
2)用户用表单提交参数
后台获取form参数和url参数,如果不存在则获取url参数-->构造sql-->将sql转化为分页后的sql-->绑定数据-->生成页码(保留页面参数)。
做了很久才将这个流程搞明白,明年将这些步骤的helper补齐。
5、能理解一部分公共类库的设计原理了
给写自己用的helper时,只是把自己的常用方法组变为一个方法。说白了就是一个语法糖,没当需要做其他稍微不一样的功能时,这个语法糖可能就需要修改了。类库是将一类操作都放到一起,在项目中可以用这个类库接入到各种各样的应用中。
一个公共类库,项目中我们常常只需要使用其中的一部分方法,我过去习惯单独新建个项目将我对类库的固定配置存放起来,现在想想性价比不高,为了少些一些代码,实际上有些地方我代码写的更不舒服了。其实过去一年的大部分工作是多代码的优化、类库的使用,而不是新领域的研究。
6、EF之复杂查询
每次有很多连表的操作时,比如left join,我都要搞半天,然后无奈的直接写sql来操作,后来直接映射视图,稍微好一点!!但是EF最大的缺点是数据库改变后代码有很多地方要变,需要变得有数据库对应模型、页面、仓储层也可能会变。Ado.Net的优势是改数据库只用改对应的sql和页面就好了,少改一个模型,缺点是如果需要在程序中处理数据就会很麻烦。
总的来说原生Ado.Net适合直接写sql,然后页面就将数据显示出来的情况,如各种记录,尤其是当这些记录不是从自己这边生成时,如游戏记录等。ef适合读取数据库后,需要在程序运行时在不同地方使用数据,如会员权限,配置信息等。
7、MVC与webForm的差异
MVC的优势是ajax调用方便,不用去理解webForm页面的周期和学习webForm各种事件,总的来说理解不容易,理解了就简单了,入门难,入门了路就好走了。webForm的优势,前后端合一,上手快,开发快,总的来说入门容易,深入难,可以很容易做一些简单的功能,但是太复杂的功能反而需要写更多的代码,没用的东西太多了。效率这东西怎么说呢,就像做数学题一样,熟练了就做的快,其实我也在慢慢转到MVC了,感觉webForm能做的东西都不值钱了,mvc跟大时代连接跟紧密一点。这些只是我个人的看法,毕竟写代码的时间不长,可能理解的不准确。
明年的期望
去做做cs结构,或则多做做前端项目,多用用MVC方式来编写程序。
--------------------------------分割线-大年初七---------------------------
初七就上班了,搭了个jira,可能要做jira的插件开发。今天的目标可能还有学习java作为编程第二语言,学习英语做第二语言。