《C#本质论(第4版)》一导读

简介: 本书开始的几章指导你学习顺序编程结构。在这种编程结构中,语句是按照编写的顺序来执行的。这种结构的问题在于,随着需求的增加,复杂性会按指数级增长。为了降低复杂性,将代码块转变成方法,产生了**结构化编程模型。在这种模型中,可以从一个程序中的多个位置调用同一个代码块,而不必在程序中重复这些代码。


_

前言

C#本质论(第4版)
在软件工程的发展历史中,用于编写计算机程序的方法经历了几次范型的重大转变。每一种范型都是以前一种为基础的,其宗旨都是增强代码的组织,并降低复杂性。本书将带领你体验这样的范型转变过程。

本书开始的几章指导你学习顺序编程结构。在这种编程结构中,语句是按照编写的顺序来执行的。这种结构的问题在于,随着需求的增加,复杂性会按指数级增长。为了降低复杂性,将代码块转变成方法,产生了**结构化编程模型。在这种模型中,可以从一个程序中的多个位置调用同一个代码块,而不必在程序中重复这些代码。然而,即使有这种结构,程序还是会很快变得臃肿不堪,需要进行进一步抽象。所以,在此基础上,人们又提出了面向对象编程的概念,这将在第5章进行讨论。在此之后,你将继续学习其他编程方法,比如基于接口的编程和LINQ(以及它促使集合API发生的改变),并最终学习通过特性进行初级的声明性编程1(第17章)。

本书有以下3种主要职能。

全面讲述C#语言,其内容已经远远超过了一本简单的教程,为你进行高效率软件开发打下坚实的基础。
对于已经熟悉了C#的读者,本书探讨了一些较为复杂的编程范型,并深入讨论了语言最新版本(C# 5.0和.NET 4.5)的新功能。
它是你永远的案头参考—即便在你精通了这种语言之后。
成功学习C#的关键在于,要尽可能快地开始编程。不要等自己成为一名理论方面的“专家”之后,才开始写代码。所以,不要犹豫,马上开始写程序吧。作为迭代开发2思想的笃信者,我希望即使是一名刚开始学习编程的新手,在学到本书第2章末尾的时候,也能动手开始写基本的C#代码。

有许多主题都没有在本书中进行讨论。你在本书找不到ASP.NET、ADO.NET、智能客户端开发以及分布式编程等主题。虽然这些主题与.NET Framework有关,但它们都值得用专门的书分专题进行讲述。幸运的是对于这些主题,都已经有丰富的图书供读者选择了。本书的重点在于C#以及基类库中的类型。读完本书之后,你在上述任何领域继续深入学习都会有游刃有余的感觉。

目 录

第1章
1.1 Hello, World
1.2  C#语法基础
1.3  控制台输入和输出
1.4 小结
第2章 数据类型
第3章 操作符和控制流
第4章 方法和参数
第5章 类
第6章 继承
第7章 接 口
第8章 值类型
第9章 良构类型
第10章 异常处理
第11章 泛 型
第12章 委托和Lambda表达式
第13章 事 件
第14章 支持标准查询操作符的集合接口
第15章 使用查询表达式的LINQ
第16章 构建自定义集合
第17章 反射、特性和动态编程
第18章 多线程处理
第19章 线程同步
第20章 平台互操作性和不安全的代码
第21章 CLI
附录A 下载和安装C#编译器与CLI平台
附录B 井字棋源代码清单
附录C TPL和C# 5.0之前的多线程模式
附录D C# 5.0 async/await模式之前的计时器

相关文章
|
开发工具 git
记IDEA Git版本回退并push到远程操作
记IDEA Git版本回退并push到远程操作
278 1
记IDEA Git版本回退并push到远程操作
|
人工智能 算法 数据可视化
AI Earth ——开发者模式案例2:Landsat系列影像数据去云
AI Earth ——开发者模式案例2:Landsat系列影像数据去云
245 3
|
6月前
|
存储 编解码 算法
计算机基础(3)——编码与解码
我们都知道计算机底层采用的是二进制码,即计算机底层存储的全都是0和1,不管是我们看到的视频、图片、音乐、文档和其他任何存储在电脑上的文件,其底层都是0,1,那么为什么要采用0和1来进行存储呢?这些0和1在计算机底层又是如何存储的呢?0和1又是如何变成我们需要的文件呢?
497 1
计算机基础(3)——编码与解码
|
机器学习/深度学习 人工智能 自然语言处理
OpenAI Sora是什么?如何使用?新手小白必看
在AI领域不断迈向创新的今天,OpenAI引领了一系列令人瞩目的技术进步。今天,我想向大家介绍一个名为Sora的全新产品——一个革命性的视频创作工具,旨在为内容创作者、艺术家和企业提供前所未有的便利和创作能力。
517 0
OpenAI Sora是什么?如何使用?新手小白必看
|
机器学习/深度学习 自动驾驶 算法
深度学习在图像识别中的应用与挑战
【6月更文挑战第24天】本文深入探讨了深度学习技术在图像识别领域内的应用进展和面临的主要挑战。通过分析深度学习模型如卷积神经网络(CNN)的工作原理,以及它们如何被用于解决复杂的图像处理问题,本文揭示了这一领域的最新研究成果和实际应用案例。同时,文章也指出了数据偏差、模型泛化能力不足等挑战,并讨论了未来可能的研究方向和技术进步。
58 2
|
人工智能 运维 大数据
现代化运维管理实践与挑战
在当今快速发展的科技领域,现代化运维管理已成为企业发展中不可或缺的一环。本文将探讨现代化运维管理的重要性,以及在实践中所面临的挑战和应对方法,旨在帮助读者更好地理解和应用运维管理的最佳实践。
67 0
|
Java Swift
:: 是什么语法javaEE
:: 是什么语法javaEE
67 0
|
数据采集 机器学习/深度学习 算法
Python小姿势 - # Python的字典排序
Python小姿势 - # Python的字典排序
|
存储 缓存 安全
Pwn 二进制漏洞审计
Pwn 二进制漏洞审计
319 0
Pwn 二进制漏洞审计
|
安全 Shell 网络安全
Symfonos靶场打靶记录
Symfonos靶场打靶记录
201 0