这是第一篇C#的日记,到现在为止已经学习了一个礼拜的C#了。由于是实习中才开始学习,所以这次不准备像在大学学习那样,拿着课本划重点,背概念。这应当是一门实践的课程,应该一边编程,一边学。这是到公司第一个礼拜,没有分配电脑,只能手动写程序了。说说这礼拜的进度吧,首先熟悉了一下vs2010。这个软件真是体积庞大,可以说是包罗万象,在win环境下的事,基本都能做了吧。买了一本head first c#,书上内容比较轻松,图片也比较多,没有一上来就罗列概念,而是随着例子,边做边讲,用到什么就讲什么。事实上,这种方法还不错。比起一下子讲很多概念,这种用例子来诠释概念更为生动,更实际了,不仅知其然而且知其所以然。并且通过对一个例子的讲解,往往能起到对其他知识举一反三触类旁通的奇效。这本书可以说是做的了简单易懂,化繁就简。至于是不是深入浅出,就要等自己学的比较深入了才知道。总之,这本书的章节安排的小训练给了我很大的鼓舞,看到自己的程序能跑起来,心里还是满足的。

那么,来回顾一下一周所学吧。

星期一:第一章 快速开发可视化应用

这章上来就要做一个小应用,我也是吓坏了,不过跟着书本做下来,觉的还挺简单的。当然,只是依葫芦画瓢,照猫画虎。当时第一天做的时候完全就是跟着做,想不出别                的什么思路来。到了今天,我再回头看这个小程序,心里居然有很多想法,例如可以增加许多功能,这个设计有很多bug。事实上,这章最重要的应该是那张需求分析后的                程序结构图。即以图片的形式简要说明了软件的三个层次:可视化对象->数据库对象->数据储存。我想这就是人们常说的三层模型:GUI->业务逻辑->底层数据。

总结:这虽然是个最简单的win application,但是其模型可以说是麻雀虽小五脏俱全了。对于操作来说是没什么难度的,由一些简单的拖控件完成。但是学习的方向不应                          当是拖控件,应当是各个层次之间的衔接。当然,具体控件如何实现也是重要的。今天下午把所有控件熟悉了一下。

成果:完成了书中的名片查看器+自己设计了一个账号密码储存器。

星期二:第二章 控件的背后

书上的标题写的非常好,你是一个程序员,不是一个IDE用户。IDE知识辅助完成工作,要完成工作还是要会编码。

这章开始阐述一些最基本常见的语法知识,变量、循环、运算、命名空间等等。可以说掌握这些最基本的语法知识,可以稍微看看简单的程序。基本可以看出个大概了。

事实上,每个控件也是代码,只不过是一些已经写好的代码,有IDE集成了,写好了让用户调用。右键空间就可以查看代码。在代码页面中,每个控件的代码都能看到,每                个属性的实现,每个方法,每个参数都看的一清二楚。这些就是幕后的故事了。

总结:这章可以说透过了应用,看到了内部的零件。整个程序是如何运作起来的,整个代码的结构,整个工程中的各个文件。到此为止,可以说,对软件的由外到内的一些                        最基本的了解。对软件开发一个模糊的,大概的意识了。现在打开一个软件总是情不自禁的观察他的用户界面,看看它的功能模块。现在才开始了解一个大型软件的                        开发是一件多么复杂的事情。无论多么复杂的程序都是由人们一行一行写出来,拼接在一起。在这一点上,人类已经有些类似于蚂蚁了。

成果:对于程序各个部分的了解+一些简单的调试(变量的变化)+双循环的背景色改变程序

星期三:第三章(上) 编程序的时候也可以谈恋爱->因为你可以面向对象

面向对象是一种编程思想,它是一种思想。相比较于C语言的面相过程,是一种编程的进步,当然两种模式不是对立的。面向过程是一种符合人思维模式的思想方法,因为人              总是习惯一步一步来,按照顺序,按图索骥,很有逻辑感,顺序感。面向对象是一种伟大的创新(谁想出来的?)从这几天做下来看,我这么理解,对象可以看做是一种特殊            的数据类型。在编写程序时除了要面对流程,过程,还要注意所面向的对象(又绕回来了。。)其实是数据的集合,哪些数据可以集合在一起方便管理操作。

总结:看似简单的两个字:对象。这种思想一讲也明白,但是又是千变万化,在实际应用中很可能不知道做一个什么对象。对象的设立也是很复杂,怎样设计才能形式简单,                    功能实用。这个还是要随着不断学习和实践,不断加深理解。事实上,每次重新回顾一遍都会有许多新发现新理解。比如:对象==女朋友。带入到上边的描述毫无违和            感。

星期四:第三章(下)再进一步,对象,我们的方向!

因为感觉面向对象太重要了,于是多花了一天又看了一下。把类,对象,实例彻彻底底搞明白。。。

类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用储存空间。

而从一个类创建一个新对象时称为创建一个该类的一个实例。

关于static关键字,首先,静态方法和非静态方法都可以改变,唯一的区别是静态方法不要求有实例,而非静态方法需要先有一个实例。

创建一个对象实例前可以使用它的非静态方法,如果要使用非静态方法,还是要创建一个实例。

今天的编写代码稍微多了一点,开始注意到了编码的形式,例如喜欢乱起变量名,结果搞得晕头转向的,变量代表什么意思都忘记了,不注意缩进和大括号,总是依靠下面的提           示一股脑打完,这非常不好,不能在一开始就有这种坏毛病。要规范的写,学习书本上的范例的格式来写。

成果:借钱还钱小玩具+代码风格

星期五:第四章 类型与引用

数字类型的转换--数据是程序的基本,那个著名的公式就不谈了。在各个语言中,无疑都对数据类型有着各式各样的要求。数据和数据类型的正确与否的影响实在太大了。

各种数据的应用范围,占用空间大小,哪些可以强制转换,细节决定了很多问题。

引用这个概念我理解了很久,还是有些模糊。

是因为周五么,整个人好像不太稳定,学习效率也有点差。才上了一个礼拜,就。。可能是想明天就是周六可以休息了,这。。。

话说上班也不容易,早上6:40就起来了,自己又磨蹭,到了7:15到车站,坐一个小时的车,8:30到公司。下午5:30下班,到家都得6:50。把饭吃一吃,洗洗弄弄就到了

7:30。稍微码码程序就又要睡觉了。

星期六:我了个大去,起来就快10点了,都不好意思吃想早饭这个概念了。

下午实践,晚上博客总结,一周就这么过去了。周日就把家打扫一下,收拾下。

本周务必要将第四章结束。一共十五章,一个月一定得啃完了。最晚也得在5.1前搞定,包括四个大的练习。

2015.5.28

No.1__C#的更多相关文章

随机推荐

  1. Windows 7中无法访问FTP的解决方法

    解决: netsh advfirewall set global StatefulFTP disable

  2. 保留json字符串中文的函数,代替json_encode

    // 格式化json中的汉字函数    protected function encode_json($str) {        $strs = urldecode(json_encode($thi ...

  3. In close() at SocketHttpClientConnection in Android

    In close() at SocketHttpClientConnection Error In Android. when i tried to acess network data on Mai ...

  4. IOS开发支付宝集成思路

    一般情况下支付功能的交互流程 比如我们去某个APP去支付一个产品,流程为:1.用户点击支付->2.客户端请求服务器用户支付->3.服务器接收请求生成金额订单等要给第三方支付的一切信息,并生 ...

  5. mysql alter 语句用法,添加、修改、删除字段等

    2013-05-03 17:13 39459人阅读 评论(1) 收藏 举报  分类: Mysql(9)  修改表名: ALTER  TABLE admin_user RENAME TO a_use / ...

  6. hdu 2079

    ps:昨天刚做了个母函数的,觉得不太熟,今天又是母函数..很好.. 代码: #include "stdio.h" #include "string.h" ]; ...

  7. 百度之星热身赛-1001(dfs拓扑排序)

    题意:作为年度优秀魔法学员的奖赏,哈利得到了一台具有魔力的计算机.这台计算机一旦开始处理某个任务,就会一直处理到这个任务结束为止(所以你可以认为它是单线程的).有一天,这台计算机得到了n个任务要处理, ...

  8. 引用计数gc机制使用不当导致内存泄漏

    上一篇文章找同事review了一下,收到的反馈是铺垫太长了,我尽量直入正题,哈哈 最近dbd压测时发现内存泄漏,其实这个问题去年已经暴露了,参见这篇博客[压测周].当时排查不够仔细,在此检讨下.关于d ...

  9. 部分用到的python代码

    replace file extensions # change .htm files to .html for file in *.htm ; do mv $file `echo $file | s ...

  10. mysql存储过程详解(入门)

    delimiter //    #修改结束符号为// create procedure pro_wyx() /*创建存储过程*/ begin declare i int ; #定义变量 set i=1 ...