本书的编写目的
众所周知,C#语言是微软在新一代开发平台.NET上推出的一种完全面向对象的新型语言。虽然只有短短的几年时间的发展与推广,但C#语言凭借着其自身的特性,使得它像程序设计语言中的一件艺术品一样,吸引着越来越多的开发人员转向它。
在这期间,市面上关于C#语言的辅导书也铺天盖地、多不胜数,使读者应接不暇、无所适从。但在仔细观察这些书中,我们不难发现都存在着这样一个问题:几乎市面上所有的C#书都向读者讲解的是纯粹的C#基础语言知识。我们知道,C#是一种完全面向对象的语言;我们更加知道,在我们的日常程序设计中,只有真正地掌握好面向对象的思想才能够设计出好的面向对象程序。如果没有成熟的面向对象的思想作为指导,就算你把语言学的再精通也是徒劳无功。
那么,为什么我们就不能够从一开始学习程序设计的时候就把C#语言和面向对象设计思想结合起来学习呢?为什么我们就不能够在写C#的相关的书籍中融入软件工程与面向对象的思想呢?
基于上面的这些描述和问题,使编者产生了编写本书的源动力。可以这么说,本书不仅仅是教会你如何使用C#语言进行程序设计,而更重要的是教会你如何用软件工程与面向对象的思想去分析设计软件以及如何使用C#语言进行面向对象程序设计,让你从一开始学习编程就养成良好程序设计习惯与打下坚实的基础。
在接下来的写作过程中,编者遇到了这样一个问题,那就是C#语言和.NET Framework的发展。当作者写这本书时,是以C#3.0语言和.NET Framework 的3.5版本来写的。但是,到目前为止,C#4.0已经开始蠢蠢欲动、整装待发了。这使得编者感到了微软技术的发展之快,发出了“学习微软的东西在某种程度上是一种痛苦”之叹!但是,编者始终认为,如果过分地去追求其形,而不修其心,那么将是花把势。学习一门语言如果不懂得该语言的最本质、最基础的东西,而是一味地追求语言的新特性对于程序员自身的修炼来说是有害无益的。
本书的内容结构
根据上面的描述,在本书中,我们分别使用了四部分来阐述如何使用C#语言与UML进行面向对象程序设计与编码。
l 第一部分是C#与UML基础。本部分我们将重点向读者阐述C#语言的发展史与基础语法知识,最后介绍相关UML图形的画法。
l 第二部分是C#与面向对象程序设计。本部分是本书的重点,它全面的阐述了如何使用C#语言和UML进行面向对象程序设计以及面向对象程序设计的相关原则。
l 第三部分是C#语言高级特性。本部分描述了C#语言的相关高级话题,如进程与线程、反射、委托、序列化、泛型、异常处理与C#3.0的新特性等。
l 第四部分是基于UML面向对象分析与设计过程。本部分是对前面的一个总结,通过一个项目实例《基于WEB的插件式框架系统的设计》来详细阐述如何使用C#与UML对实际项目进行的面向对象分析、设计与编码。
Web站点和联机学习中心
为了能够和广大读者更好的沟通与交流,本书特别提供了如下Web站点供广大读者学习与交流:www.comesns.com/csharp。
在本Web站点里,你不仅可以直接和编者与广大读者进行交流,而且还可以下载到本书的所有源代码与相关的电子教学文档,同时还有大量的学习资料与读者共享。
特别鸣谢
在最后,编者要感谢那些所有帮助过的人,没有他们的帮助与付出,是很难这么顺利地完成本书的。尤其要感谢下面这些人:
l 首先,出版社的编辑蒋佳老师为本书的修订和出版做了大量的工作,与他的合作是非常愉快的。同时,也正因为他对本书的不断要求,才使得本书的内容更加深刻化、语言更加幽默易懂化。
l 其次,编者要感谢自己的家人,尤其是编者的妻子吴亚峰女士。为了写这本书,编者投入了大量的时间和精力,牺牲了许多可以陪家人的周末和节假日。
l 最后,编者要感谢那些曾经为本书的编排提过意见的朋友与同事,感谢他们对本书的支持。
尽管编者在本书的写作过程中非常认真与努力,但由于编者的水平有限,书中难免存在错误和不足之处,恳请广大读者批评指正。如果您对本书有什么意见、问题或想法,欢迎您通过编者的论坛留言,或者用下面的邮件通知编者,编者将不胜感激:
论坛: www.comesns.com/bbs
Email: madengwei@hotmail.com
编者
2009年4月