今天主要重构项目,从其它项目复制文件过来改,本想尽可能少的复制,尽量精简。但有些代码环环相扣,最后哪个都少不了。。。
把登陆页和配置页也移植了过来,项目中判断登陆的逻辑是:
1、Home/Index直接跳到Home/Login
2、Login判断登陆,成功后跳到Main/Index
3、退出登陆后,如果直接输入地址,会跳到Home/Login
一开始想,这个Index不是没用吗,干脆把默认路由改成Home/Login算了。结果发现,如果要访问/Main,那就会去找/Main/Login。。。所以默认路由还是不能随便改。
以前做练习的项目是在Index里判断,没登陆就到Login,有登陆就到首页内容。
从其它地方复制过来改也不是容易的事,这项目一开始是个空壳,复制过来改,命名空间、类名等都要改。好在Resharper很给力,重构时效率很高。不知VS自带的重构功能怎么样,如果没有Resharper,真不知要如何重构这一堆代码。(看其它人的VS,很多不规范的都没提示出来,用Resharper会有各种提示,规范代码好处多多)
顺便也把大小写、空行、空格之类的优化了。我比较喜欢行数尽量缩简,不然一个文件老长,不易维护。
if(xxx==xx) { DoSomething(); } else { DoOther(); }
这种最讨厌,花了8行。。。一般if里是一句的,我都会缩成一行来写
if(xxx==xx) DoSomething(); else DoOther(); //或用三目运算符 (xxx==xx) ? DoSomething() : DoOther(); //有时长太,三目运算符要换行 (xxxxxxxxxxxxxxxxxxxx == xx) ? xxxxxxxxxxxxxxxxxxxxxxxx : xxxxxxxxxxxxxxxxxxxxxxxx
重构过程还会把var解析成相应的类,var虽然写起来爽,但维护时还是希望看到具体类型的,而且也方便智能提示。
该空行时还是要空行,不会看起来挤成一堆
下午整了半天代码,终于重构得差不多了,不报错了。一开始各种报错,命名空间不同,类名不同,大小写不同,路径不同。。。慢慢熟悉了系统,也把代码整理了一下,看上去美观多了,明天还要再整理一下就可以测了。
=============================
晚上花了2小时左右重构,主要是实体增加备注和描述特性、规范代码。现在代码看起来非常整齐,感觉上就好很多