码迷,mamicode.com
首页 > 其他好文 > 详细

小总结

时间:2017-09-19 11:43:11      阅读:164      评论:0      收藏:0      [点我收藏+]

标签:一个   操作   风格   常用   有感   可读性   tab   而且   扩展   

之前定小目标时是8.29,现在是9.19,已经过了20天了,之前想要的东西也基本上收集好了。

之前定下要学习的有{1.Linq,2.扩展方法,3.反射,4.Xml读写,5.用到了再学正则、网抓等技术}

我知道我要学习研究的不是什么最新的技术,之前也看了很多文章介绍这些东西,但C#有严格的语法,很多东西具体写起来是不能模棱两可的。看看文章觉得这东西很好,但一写就错的我,一直懒于去静下心来学习。这次学习也只是浅尝辄止,因为知道自己懒,所以没有定下太高的目标。但既然学习了,那就总结反思下,对以后的学习也有好处。

首先,Linq是最符合我需求的。

最开始以为Linq就是可以查询,没有其他作用。所以一直使用Linq+foreach()语句来操作一些集合。但实际上在select子句中是可以用函数操作集合中的元素的。所以最终看来,Linq既能够遍历搜索集合,又能对搜到的东西进行操作,简直是万能的。我们的编程的核心一般都是对一些集合进行变形和计算。数组+for循环写起来费脑子,可读性也差。而Linq,只需要想好做什么,说出来,就不用管具体对数据怎么操作了。然后你读一遍就能得知大体意思。

Linq容易编写,可读性好,能够搜索,能够操作。

对数据的操作,一下子就能写好,太适合快速开发了。

然后,我发现扩展方法不应该常用

我写了一个对象集合转成对象集合的方法,命名为ToDataTable()了。然后用的时候望文生义,以为可以把普通集合,装到DataTable里去了,结果就是报错。

最后,想了一段时间。我觉得一开始封装一段代码的时候,应该先封装成静态方法。

一段代码一开始封装的时候应该封装静态方法,编写使用都简单,且修改方便。

封装静态方法很简单,简单也好用。也便于接下来改成对象方法,或者扩展方法,如果真的有必要。

之后,反射我封装了两个方法

就是把对象集合转为DataTable和DataTable转为对象集合的两个方法。

我觉得我的这个需求也是因为C#是一种面向对象的语言。

面向对象,类模型是树形的;而我们常用的高效的存储方式是二维表形式的;所以需要把看上去是树的东西,转为看上去是二维表的东西。

而面向对象的编程,辗转于树形模型和二维表模型;一边是方便人理解和操作数据,另一边是方便计算机存储数据。

再之后,Xml没什么说的

它就是一种存储方式。而我只是简单的封装了XmlSet类,让其可以AddDataTable(),和Save()而已。

Xml很好,解决了少量数据的存储问题,而且是树形的。

 

再之后,其他的就以后学习了

懒惰如我,用到了再学习吧。

最后,是一个总结

我发现,我现在的需求和问题,大部分是由于C#语言的一些特点而引起的,也有一部分是任何语言编程都需要的。

首先是C#一般的部分

  • 想要Linq这样的东西是因为编程语言语法都太严格、不易懂了,C#还是C风格的。
  • 想要XML也是因为一般编程都需要存取数据。

然后是C#特殊的部分

  • 想要把对象和二维表互转,是因为C#是面向对象的
  • 烦恼于类型问题,是因为C#是强类型的

接下来的烦恼和方向

首先要加强Linq,因为Linq好用,适合快速开发。

然后类型问题。C#强类型,很烦恼,可能多用,多熟悉就好了吧。每种类的方法,不熟悉的话,感觉跟方言似的,实在不懂,还是说我英语太弱了,不会猜呢?

还有感觉有些控件好难用,是深入学习怎么用,还是从网上找个好用的,还是自己动手,没想好。

最后好像,没遇到过需要复杂的数据操作的情况,对算法需求不是很大。也许是因为面向对象,我可以直接引用别人的缘故吧。

 

小总结

标签:一个   操作   风格   常用   有感   可读性   tab   而且   扩展   

原文地址:http://www.cnblogs.com/fabao/p/7549840.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!