2008-02-27 日志:博彦科技C#周末班开课提示
博彦科技C#周末班开课提示Hi,各位博彦科技的同仁、各位C#粉丝和铁丝:
大家好!
在刘莹的精心准备下,咱们的C#周末班就要开课了。很荣幸,我能担任这次课程的主讲、与大家一同分享两年来积累下来的一点编程经验与感悟。本次课程将由Ida同学全程为大家提供热心细致的后勤服务,在此,表示对Ida同学的感谢。
大家一定都很关心这次培训的主要内容和目标。开宗明义,就让我简要地描述一下我们这次培训的主要目标和内容安排。
目标:
先说目标。我们这个培训班的目标是为了让大家掌握扎实、正确的C#编程技能,以期更好地为我们的客户——Microsoft——提供优良的服务。在工作中大家都已经体会到,目前微软的外包项目中,大部分项目都会用的C#语言进行开发(其中包括原创性的utilities的开发和二次开发性的脚本开发)。其中,utilities的开发比较贴近于市面上的软件开发,这就要求大家了解C#的各种开发技术,包括CUI、GUI、Web、Library、Database甚至是Office开发。而脚本式的开发多见于SDET们的工作中。
最新的统计结果表明,C#程序员点程序总量的4.5%左右。也就是说,使用C#的程序员并不是特别多,因此,学校中对C#学习的重视程度远不及Java和C++这两种“名列前茅”的语言。我们大多数同事在来博彦工作之前都没有系统地学习过C#,这样,大家在从目前的STE岗位向高级的测试岗位或者SDET“跃迁”时就会遇到不小的麻烦。
跃过这个因为缺乏C#技术而造成的鸿沟,实际上是有多种途径的——比如自学,我们公司很多非常优秀的同事就是依靠坚韧不拔的意志力自学C#而成才的。但自学有几个需要克服的问题,比如我们的时间不够多、毅力不够强、资料不知道用什么好、见效慢、走弯路多、挫折感强……其中对发展影响最深刻的就是见效慢。所以,公司组织这个培训班的目的(或者说交给我的任务)就是:帮助大家快速提高C#编程水平。快速是重要的,但必需以正确、扎实为基础,所以留给我和大家的学习压力还是不小的。这个大目标又可以具体地划分为两个子目标:
[*]帮助没有或较少C#开发经验的同事快速掌握C#编程技术、打下良好的发展基础(初级班)
[*]帮助已经有较高C#编程技术的同事快速掌握SDET所需技能、完成从STE到SDET的跃迁(提高班)
本期培训班的目标就是实现第一个目标,也就是初级班。因此,这期班主要面向:
[*]没有C#开发经验,在工作中需要或未来需要使用C#的同事
[*]有C#开发经验,但想要系统、扎实回顾的同事
[*]C#开发爱好者
如果你已经有足够多而且足够扎实的C#开发经验,请关注提高班的课程,届时我们将一同学习使用C#和.NET开发和驱动自动化测试框架的内容。这些内容无不需要扎实的基础知识做背景,这些基础知识不仅是C#编程知识,还有很多与Windows SDK/API、COM/C++相关的知识。
内容:
下面说说课程的内容。
当代编程的学习,无外乎这样几部分知识:语言/编译器,编程思想,框架,工具,实务。让我们来看看我们的培训班都会学习哪些东西。
语言:
C#是一门非常优美的语言,我们的学习中将有80%的时间是在探讨C#。另外20%的时间是与C/C++相关的。一方面是为大家补充C/C++方面新的知识,另一方面是为大家纠正一些常见的谬误。在C#语言的学习中,我们将以类(class)为核心,系统地学习C#语言的词法、句法、语法、77个关键字等引人入胜的内容。
思想:
我会尽可能地用面向对象的思想和设计模式的思想来“毒害”大家,让大家快速地得其精髓。
框架:
大约80%的时间,我们会与.NET Framework打交道——C#不像Java,Java有很多开源框架需要去学习。其余20%时间,我会向大家介绍Windows平台和MFC等框架。学习这些知识,是为大家向SDET转型打基础。了解Windows平台的工作原理是非常重要的。最后,我还会为大家分析一下目前微软流行的自动化测试框架的编程及工作原理。
工具:
工欲善其事,必先利其器。我们将系统地学习Visual Studio 2008的开发/调试方法。还有一个很重要的资源,那就是MSDN。很多同事把它称为“帮助文档”,真的是低估了MSDN的价值,所以,在课程的一开始,我还会向大家仔细介绍MSDN的使用方法。为了深入剖析C#程序,我还将带领大家一起领略MSIL反编译器的风采,让大家对托管程序的运行机理了如指掌。
实务:
学以致用是我们的指导思想。在我们初级班的课程中,我将带领大家使用IDE和命令行编辑和编译CUI、GUI、Library、Web等多种程序。还将为大家演示C#与VB.NET/VC++(原生)集成开发。对于C语言,我会带领大家剖析典型的Win32程序,让大家明白Windows程序的运行机理。
OK,我说一说我们使用的教材。开课之后,我会给大家分享一些电子书,这些书都是可以用eMule下载到的。但这些书不是我们的教材,它们只起一个辅助作用,帮助我们想一想看看还有哪些遗漏的东西没有讲到。我们主要的教材基本上只有两部——C# Language Specification和MSDN Library。
还有一点不得不提,那就是,这门课一共是40个学时,分配在8周(2个月)内。以往经验,这样一套东西讲下来,需要80个学时左右,现在我们只有一半的时间,怎么办呢?我想——
[*]我相信大家:相信大家的学习能力和领悟能力。因为大家已经通过了层层面试、成为博彦科技的正式员工了,这说明大家的实力还是相当强的。以往的教学我多是在培训机构中完成,有些时间是用来照顾领悟比较慢的同学。
[*]做好课前预习:基本上每次课后,我都会向大家公布下次课的内容,并为大家提供参考资料的URL,请大家做好预习。主要的目的是让大家带着已经“预热”过的大脑来学习。
[*]做好课后练习:学而时习之,课上的时间毕竟有限,如果不复习很快就会忘,程序员都是通过写程序把理论知识固化在头脑里的。面试的时候,经常出现有朋友说“这个我知道,就是忘了”、“原理我懂,就是写不出程序来”,原因就在于没有通过练习固化知识。功夫下在课外,是学习成功之道。
最后,我们说一说考核。
是不是一听“考核”二字就不想参加了呀?呵呵,考核不是针对大家的,而是针对我的:)每次课结束后,请大家向Ida索取课程评价表,为我打个分。我将在下节课或者我的Blog里回答大家的问题,同时,还要根据大家的建议来修正课程。我这个Blog,就作为我们学习的基地了,以后我会在这里发布许多与我们课程相关的知识,大家可以在后面尽情地发表自己的看法:)
====================================================
第一讲:清本正源
[*]C#的简史
[*]深入浅出话OO(面向对象)
[*]编程利器Visual Studio
[*]资源宝藏MSDN Library
[*]深入浅出Application(应用程序)
====================================================
一些资源的URL:
[*]Visual Studio 2008 Professional Edition 90天试用版:
http://www.microsoft.com/downloads/details.aspx?FamilyID=83c3a1ec-ed72-4a79-8961-25635db0192b&DisplayLang=en
[*]Visual Studio Team System 2008 Team Suite 90天试用版:
http://www.microsoft.com/downloads/details.aspx?familyid=D95598D7-AA6E-4F24-82E3-81570C5384CB&displaylang=en
[*]MSDN Library for Visual Studio 2008 DVD:
http://www.microsoft.com/downloads/details.aspx?familyid=6FF3BC60-32C8-4C22-8591-A20BF8DFF1A2&displaylang=en
[*]Visual Studio Team System 2008 Team Foundation Server 90天试用版:http://www.microsoft.com/downloads/details.aspx?familyid=B0155166-B0A3-436E-AC95-37D7E39A440C&displaylang=en
[*]C# 3.0 Language Specification:
http://blog.csdn.net/fantasiax/archive/2007/08/25/1759167.aspx
====================================================
帮助Ida提醒大家一句:别忘了带做笔记用的本子和笔,谢谢。
页:
[1]