已有81人关注
C#极限学习方法——挑战C#学习的最快速度
发表在新手报到 2018-04-22
是否精华
版块置顶:

CSDN旗下水之真谛出品(http://blog.csdn.net/FantasiaX

 

小序:

         最近,应邀为朋友公司新招聘来的新员工进行C#培训,由于项目要人相当紧,可以用于培训的时间不是很多——大概只有2到3周——而且要求员工能够跟着老员工上手写Code。新员工完全是大学计算机相关专业本科毕业,经初步测试,得知水平比较平均。这样的培训对自己也是一种考验。本文的目的是与大家探讨在这样一种情况下学习C#的最快速方法。

 

正文:

 

一.培训的时间长度和课时安排

1.         时间长度:3周

2.         课时安排:每周二、五晚上7:00 – 9:00

二.学生情况

1.         学历:大学本科毕业

2.         专业:全部为计算机相关专业

3.         成绩:学习成绩中等

4.         英语水平:较低

5.         编程能力:有C语言基础,个别会Java

6.         性别:男-女 = 2-1

三.培训目标

1.         经过培训后能上手跟老员工一起coding

2.         淘汰率小于30%

四.培训资料

1.         Visual Studio 2005 自带MSDN离线版(英文版)

2.         Visual Studio 2005 自带C# Language Specification(英文版)

3.         《Beginning C# Objects》中文版(自选)

五.培训方法

1.         培训中贯彻的原则——

                         i.              抛弃以往从语言本身入手的方法,一切以Class为核心

                        ii.              “三不原则”,不为了学语言而学语言;不为了学控件而在窗体上堆控件;不为了做网页而学习ASP.NET

                      iii.              业务驱动,从一开始就分析一个即定的业务,学习数据抽象的能力。

                      iv.              服从架构设计,了解和使用UML和Design Pattern,学会简单的分析架构,更重要的是在给出Class的要求后能够使用C#进行实现,在实现功能时能找到合适的控件;实现完后能正确把程序编译为合适的组件。让学生们养成习惯,拿到一个任务后是先抽象Class和分析架构,然后再动手写程序。

2.         课时技术分配——共6次课

                         i.              IDE的使用;C# Lang Spec的使用;MSDN的使用;Class的核心意义(各种成员的意义)

                        ii.              给出一个小任务,先分析架构,然后再用C#实现,最后编译(有类库)。任务中,类、成员数据、成员方法、属性(先不讲特性)、委托+事件、继承、多态,都要有体现。

                      iii.              C#与多种项目的接口,如什么时候使用P/Invoke、什么时候使用GDI+、什么时候使用XML和Regex等。同节课讲解Web程序从静态HTMLà客户端脚本àCGIàWeb ServeràASP.NET的进化。

                      iv.              学习使用C#连接SQL Server。再给出一个任务,先进行架构分析。

                       v.              使用三层结构和MVC理论,让学生先实现数据层和业务层(学习Web Service),然后再使用WinForm和WebForm来实现表示层。

                      vi.              分析公司现有项目的从需求到实现,总结三周来学习的内容。如果时间足够,进行验收考试。

六.学生务必具备的四个能力

1.         文档内导航能力:因为C#语言部分需要快速学习,而最快的方法莫过于读grammar productions(第一节课内容),读grammar productions需要很强的、在文档中跳跃的能力,还需要有最基本的“调用展开”和“递归”思想。

2.         MSDN内导航能力:从搜索或者Index开始,找到一个类,然后阅读相关类,然后返回主类——要能在MSDN中进退自如。

3.         代码导航能力:在多文件代码中能够快速定位到一个类/成员的声明/定义处,在各种程序元素和作用域中跳跃而不迷失方向并能进退自如。

4.     在网络中快速搜索需要的内容(我会介绍一些优秀的网点给学生) 

 

        大家如果有什么好的建议和讨论,也请回复在后面。本文的构成内容就不止是我一个人想出来的,还有阿虎的指导。希望本文这块砖能引出大家更多的“玉”来。


分享到:
精彩评论 1
csharp99
学分:940 LV7
2018-04-22
沙发

“深入确实很难”,要看这句话怎么理解了。如果是深到CLR或者IL/Metadata级别,的确是比较难,但一般情况下我们在实用编程中是用不到那么难的。
如果你感觉到难了,我猜十有八九是因为基础知识没有精通。我试着给你一点建议吧,不见得有用:)
1. 如果是Windows程序领域,那么C++和COM的知识知道的越多越好——如果你打算把VC++学完再回来学C#,那就更精通了。Win32 API -->MFC-->COM/ATL-->COM+-->.NET(COM3),微软就是一步一步这么走过来的。
2. 如果你是Web程序领域,HTML/DHTML/XML/XHTML/CSS/JavaScript这些知识一定要精通,这才能让你在Server端对Client端“决胜于千里之外”。
3. 无论是Windows还是Web,掌握纯熟的面向对象思想和设计模式思维都是必需的。
4. 无论是Windows还是Web,掌握SQL Server的编程都是必需的。
5. 学一些网络知识(可能没必要达到公司IS部门兄弟的水平),比如TCP/IP原理、Windows Domain、路由与交换网等,对编程是非常有好处的。4和5是保证你写大规模程序(或者说挣大钱)的基础。

首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照