其实大话设计模式还没结束,但是整天敲代码也太无聊了,于是,就边敲代码边看视频了。看.Net视频的首个困难就是“语言不通”,台湾人说话的调调有的真心难以接受,权当方言听了!不过这样最大的好处就是能全神贯注,否则真的没法把前后内容串起来,虽然看了3集,但是鉴于以往看视频不及时总结的后果,决定及时总结了~
这三集视频的内容分别是:二十一世纪的程式执行、物件导向与类别设计、使用类别与基底类别库。下面说一下每集的大致内容:
第一集:二十一世纪的程式执行
既然是第一集免不了介绍背景把控宏观,然后介绍了.Net开发环境,.net 组成元素=BCL+CLR。【CLR的作用、组成部分(类别载入器、组件查验器、资源回收器、即时编译器、例外管理、出错引擎、COM互通、记忆体管理);基底类别库(BCL)是重点,在第三集中有所体现】
ASP.NET类别:ADO.NET类别+Windows类别+XML类别+GDI类别+系统类别
微软中介语言是IL ,所有.net语言编译器的目标都是IL,故语言不是重点,编译器的能力才重要,.net不使用Registry,故不会有DLL Hell问题(我的理解:一山不容二虎)
第二集:物件导向与类别设计
在这一集视频中,听着比较头晕的就是物件与物件参考,还有物件变数(存放物件参考),然后新的发现是:我一直只是了解new是用来实例化对象的,后来大圣老师讲的时候说,它的实质是一种呼叫方法。
建构函式听着也有点晕,但在我看来貌似就是“构造函数”,用来起继承后的初始化作用的,例如大话设计模式中“动物运动会”的一句代码——Cat cat=new Cat()。
第三集:使用类别与基底类别库
1、浅复制只会复制参考(指标),看到这些的时候很是熟悉,因为大化设计模式中有相关的知识,复制引用的方式叫浅复制,而逐一复制被复制对象的数据成员的方式称为深复制,二者的区别说白了就是“斩草是否除根,彻不彻底的问题”。
2、模组=所有成员均为共用的类别 class改成Module
3、namespace(命名空间)的用处:增加可读性,减少名称冲突
4、完整参照:
优点:确保物件的型别正确
缺点:需要撰写冗长的程式码
5、汇入命名空间
通过汇入命名空间,可以减少程式码的撰写(即将命名空间统一放在档头)
折衷的方案:建立命名空间的别名(缩写),以免类别冲突(imports SWF=System.Windows.Forms)
6、组件:类别在编译时,被包装成组件【.Exe档包含了启动点与类别;.DLL档中仅包含类别(元件=Dlls)】
7、如何使用元件?
使用之前,必须加入参考
加入参考的方式:直接参考DLL;加入专案
名词翻译部分:(我的理解)
(1)软体就是软件;
(2)程式就是程序;
(3)物件导向就是面向对象,同理:物件导向程式设计就是面向对象程序设计
(4)实质型别就是数据类型
【物件变数就是对象变量,拿旧知识来理解吧!
我的疑问,望您解答
物件参考是不是引用或是指针?
加入参考是不是我们说的添加引用?
建构式是什么意思?
求指导解答~
总结
看视频学习的时候,开篇要做的事情有时也许并不是总览全局,而是先摸索怎样去看,不同的人面对学习视频,看的方式和侧重点是不一样的,但是所有人学习来唯一的共性就是需要总结,总结的风格不同,源于看视频的思维和习惯不一样,但不是固定的,因视频而异~
.Net视频对于我的视频学习算是一种新的开始吧,不光是因为改掉了以往先看后总结的习惯,更是因为开始摸索视频的特色和规律了,拿这个.Net视频来说,它最鲜明的特色就是让我们无形中去充当一个翻译,一个中间桥梁,去把台湾人的物件导向及其所属知识和大陆的面向对象知识时时刻刻进行着投影,和米老师说的“没有新知识,以为新知识拿旧知识去理解后发现还是旧知识”不谋而合。
这15集视频是我们锻炼编织知识网的好机会,Let's go!