新書推薦:
《
设计中的比例密码:建筑与室内设计
》
售價:HK$
89.7
《
冯友兰和青年谈心系列:看似平淡的坚持
》
售價:HK$
55.8
《
汉字理论与汉字阐释概要 《说解汉字一百五十讲》作者李守奎新作
》
售價:HK$
78.2
《
汗青堂丛书144·决战地中海
》
售價:HK$
172.5
《
逝去的武林(十周年纪念版 武学宗师 口述亲历 李仲轩亲历一九三零年代武人言行录)
》
售價:HK$
56.4
《
唐代冠服图志(百余幅手绘插画 图解唐代各类冠服 涵盖帝后 群臣 女官 士庶 军卫等 展现唐代社会风貌)
》
售價:HK$
87.4
《
知宋·宋代之科举
》
售價:HK$
102.4
《
那本书是(吉竹伸介与又吉直树 天才联动!)
》
售價:HK$
102.4
|
編輯推薦: |
C#(C
Sharp)是一种完全面向对象,类型安全且功能强大的计算机编程语言。可以生成运行于.NET Framework框架上的Windows桌面应用程序和Web应用程序,以及运行于各种Windows 10终端设备上的通用应用程序。在*的C# 6.0中,使用新的编译器(代号为Roslyn),使得编译速度和性能得到了质的提升。本书特点如下:
(1) 知识全面 共包括21章,全面系统地论述了C# 6.0的开发环境配置、语法基础、程序结构、编程技巧及编程案例。
(2) 实践性强 提供了近300个示例,并给出了两个商业案例照片面积计算机器和文件加密与解密工具,据此可将前20章的知识融会贯通,又可抛砖引玉,真正教会读者开发应用程序。
(3) 资源丰富 提供了全部21章的教学视频及近300个实例的源代码,这些学习资源有助于读者迅速入门,动手实践。
(4) 适用面广 本书为零基础的C#自学者编写,也适合作为相关培训机构的培训教材或者高校计算机类专业C#语言课程的参考教材。
盛东亮 《微软技术开发者丛书》责任编辑
|
內容簡介: |
本书全面系统地论述了C# 6.0的开发环境、语法基础、程序结构、编程技巧及编程案例。全书共包括21章,分别介绍了以下内容: 开发环境搭建、语法基础、面向对象编程、类型转换、字符串处理与数学运算、控制台应用程序、变体的应用、集合与泛型、调试与单元测试、Lambda表达式、LINQ查询语句、Windows窗体应用程序、WPF基础知识、多线程与异步编程、系统信息管理、文件与流、序列化技术、数据库访问技术、反射、网络编程、互操作性等。在本书最后一章,专门设计了综合实例——“综合实例1: 照片面积计算机器”和“综合实例2: 文件加密与解密工具”,通过这两个综合实例,既可以将前20章的知识融会贯通,又可以抛砖引玉,真正教会读者开发C#应用程序的实际方法。
为提高读者学习效率,本书提供了21章的配书视频教程及近300个实例的源代码。这些宝贵的学习资源有助于读者迅速入门,动手开发实践。
本书既适合作为C#完全自学图书,也适合作为相关培训机构的培训教材或者高校计算机类专业C#语言课程的参考教材。
|
關於作者: |
作者简介
周家安 微软最有价值专家(MVP),擅长.NET及其相关开发技术,专注于探索简单实用的编程学习方法。长期在博客园等技术社区撰写Windows相关技术文章,并出版有《深入浅出:Windows 8.1应用开发》《精通C# 5.0》《Windows 10 应用开发实战》等原创技术图书。
|
目錄:
|
丛书序(沈向洋)1
前言3
学习资源7
第1章准备工作
1.1为什么要编写程序
1.2C#与.NET框架的关系
1.3只需要一个工具Visual Studio
1.3.1下载和安装
1.3.2认识Visual Studio
1.3.3如何使用快捷键
1.3.4如何放置子窗口
1.3.5自动隐藏窗口
1.3.6巧用快速启动
1.3.7个性化设置
1.4创建第一个应用程序
1.5解决方案与项目的关系
第2章语法基础
2.1代码的基本结构
2.2命名空间
2.2.1为什么要使用命名空间
2.2.2如何访问命名空间中的成员
2.2.3引入命名空间
2.2.4using static指令
2.3Main入口点
2.3.1程序代码真的从Main方法开始执行吗
2.3.2如何选择入口点
2.4变量与常量
2.4.1变量
2.4.2变量的生命周期
2.4.3常量
2.5命名规则
2.6运算符
2.6.1示例: 简单运算
2.6.2示例: 自增和自减运算
2.6.3示例: 位运算
2.6.4示例: 比较运算符
2.7流程控制
2.7.1顺序执行
2.7.2有选择地执行
2.7.3循环往复
2.8写注释是个好习惯
2.9基本的数据类型
2.10不要错过《C#语言规范》文档
第3章面向对象编程
3.1类
3.1.1字段
3.1.2属性
3.1.3方法
3.1.4构造函数与析构函数
3.2结构
3.3引用类型与值类型
3.4ref参数与out参数
3.5方法重载
3.6静态类与静态成员
3.7继承与多态
3.7.1可访问性
3.7.2继承
3.7.3注意可访问性要一致
3.7.4隐藏基类的成员
3.7.5覆写基类成员
3.7.6如何阻止类被继承
3.8抽象类
3.9接口
3.9.1定义接口
3.9.2接口与多继承
3.9.3实现接口
3.9.4显式实现接口
3.10扩展方法
3.11委托与事件
3.11.1定义和使用委托
3.11.2将方法作为参数传递
3.11.3使用事件
3.12枚举
3.12.1使用枚举类型
3.12.2如何获取枚举的值列表
3.12.3如何取得枚举中各成员的名字
3.12.4枚举的位运算
3.13特性
3.13.1自定义特性
3.13.2如何把特性应用到方法的返回值
3.13.3通过反射技术检索特性
3.14数组
3.14.1定义数组的几种方法
3.14.2多维数组
3.14.3嵌套数组
3.14.4复制数组
3.14.5反转数组
3.14.6更改数组的大小
3.14.7在数组中查找元素
3.14.8灵活使用ArrayList类
第4章控制台应用程序
4.1输出文本信息
4.2获取键盘输入
4.2.1Read方法
4.2.2ReadKey方法
4.2.3ReadLine方法
4.3命令行参数
4.4设置控制台窗口的外观
4.5控制台窗口的大小和位置
第5章字符串处理与数学运算
5.1对象的字符串表示形式
5.1.1重写ToString方法
5.1.2扩展方法
5.2字符串的串联与拆分
5.2.1使用 运算符串联字符串
5.2.2使用Join方法拼接字符串数组
5.2.3使用Concat方法创建字符串
5.2.4使用StringBuilder类创建字符串
5.2.5使用Split方法拆分字符串
5.3转义字符
5.4英文字母的大小写转换
5.5Parse和TryParse方法
5.6查找和修改字符串
5.6.1查找索引
5.6.2存在性查找
5.6.3字符串的增删改
5.6.4填充字符串
5.7格式化字符串
5.7.1IformatProvider接口
5.7.2区域性相关的信息
5.7.3实现字符串的格式化
5.8字符串的复合格式化
5.9字符串内插
5.10生成随机数
5.11Math类与常用的数学运算
5.12与日期时间有关的计算
第6章类型转换
6.1隐式转换
6.2显式转换
6.3可以为null的值类型
6.4引用类型的兼容性转换
6.5类型转换帮助器
6.6自定义转换
第7章泛型、集合与变体
7.1泛型类型
7.1.1泛型与类
7.1.2泛型与接口
7.1.3泛型与类型成员
7.1.4泛型与委托
7.1.5泛型约束
7.2集合
7.2.1普通集合
7.2.2泛型集合
7.2.3字典
7.3自定义排序
7.4变体
7.4.1协变与逆变
7.4.2类型参数的输入与输出
7.4.3必不可少的技巧
第8章纠错与单元测试
8.1实时纠正语法错误
8.2代码调试
8.2.1断点法
8.2.2输出信息法
8.3断言
8.4使用日志文件
8.5异常处理
8.6单元测试
第9章匿名方法与Lambda表达式
9.1匿名方法
9.2Lambda表达式
9.2.1用于赋值
9.2.2用于参数传递
第10章集成化查询
10.1LINQ基本语法
10.1.1对查询结果类型的巧妙处理
10.1.2延迟执行与强制立即执行
10.2筛选
10.3排序
10.4分组
10.5更复杂的查询
10.5.1动态创建类型
10.5.2联合查询
10.5.3嵌套查询
第11章Windows窗体应用程序
11.1Windows窗体应用程序的基本结构
11.1.1客户区域
11.1.2控件
11.1.3应用程序项目
11.1.4Windows消息循环
11.1.5演练: 手动创建一个Windows应用程序
11.2ApplicationContext类
11.3窗体设计器
11.4控件的基类Control
11.4.1示例: 设置控件的位置和大小
11.4.2示例: 设置控件的前景色和背景色
11.4.3示例: 调整控件的Z顺序
11.5常规控件
11.5.1共享事件处理程序
11.5.2制作用户登录窗口
11.5.3CheckBox与RadioButton示例
11.5.4使用ListBox控件呈现对象列表
11.5.5自行绘制列表控件的项
11.5.6组合框
11.5.7TextBox的自动完成功能
11.5.8多视图列表
11.5.9图像呈现控件
11.5.10实时报告进度
11.5.11选择日期和时间
11.5.12规范用户输入
11.6容器控件
11.6.1在容器内部显示滚动条
11.6.2分组面板
11.6.3网格布局面板
11.6.4选项卡
11.6.5自动排列内容的面板
11.7工具栏和菜单
11.7.1工具栏
11.7.2菜单栏
11.7.3上下文菜单
11.7.4自定义承载控件
11.8对话框
11.8.1打开文件和保存文件对话框
11.8.2字体选择对话框
11.8.3颜色选择对话框
11.8.4自定义对话框
11.9用户控件
11.10自定义控件
第12章WPF应用程序
12.1WPF应用程序项目的结构
12.2XAML基础
12.2.1XAML命名空间
12.2.2代码隐藏
12.2.3标记扩展
12.2.4内容属性
12.3依赖项属性
12.3.1定义和使用依赖项属性
12.3.2使用元数据
12.3.3使用已注册的依赖项属性
12.3.4只读依赖项属性
12.3.5附加属性
12.4路由事件
12.4.1路由策略
12.4.2注册路由事件的类处理程序
12.5认识WPF控件
12.5.1Control类
12.5.2内容控件
12.5.3输入控件
12.6数据绑定与视图呈现
12.6.1用于数据绑定的XAML扩展标记
12.6.2使用InotifyPropertyChanged接口
12.6.3上下文绑定
12.6.4绑定转换器
12.6.5数据集合控件
12.6.6数据模板
12.6.7数据视图
12.6.8ObservableCollectionT集合
12.7布局
12.7.1Panel类
12.7.2网格布局Grid
12.7.3栈布局StackPanel
12.7.4停靠面板DockPanel
12.7.5绝对定位Canvas
12.7.6自动换行WrapPanel
12.7.7Z顺序
12.8用户控件与自定义控件
12.9样式与资源
12.9.1样式中的触发器
12.9.2资源的有效范围
12.9.3合并资源字典
12.9.4静态资源与动态资源
12.10图形
12.10.1Shape类
12.10.2基本图形
12.11动画
12.11.1演示图板
12.11.2简单动画与关键帧动画
第13章异步编程
13.1为什么要使用异步编程
13.2使用Thread类进行异步编程
13.3线程锁
13.4通过委托执行异步操作
13.5并行任务
13.5.1启动简单的并行任务
13.5.2Task与TaskTResult类
13.5.3创建可取消的Task
13.6async和await关键字
13.7ThreadLocalT
13.8AsyncLocalT
第14章系统信息管理
14.1管理进程
14.1.1管理正在运行的进程
14.1.2启动新进程
14.1.3重定向输入输出流
14.2管理服务
14.3WMI查询
14.4读取系统参数
14.4.1ComputerInfo类
14.4.2Environment类
14.4.3SystemInformation类
14.4.4用于WPF的系统信息类
14.5写入事件日志
第15章文件与流
15.1创建和删除目录
15.2创建和删除文件
15.3流
15.3.1读写文件
15.3.2内存流
15.4内存映射文件
15.5监控文件系统的变化
15.6独立存储
15.7压缩与解压缩
第16章序列化与反序列化
16.1二进制序列化
16.2XML序列化
16.2.1简单实现XML序列化和反序列化
16.2.2自定义XML文档的节点
16.3SOAP序列化
16.4数据协定
16.5JSON序列化
第17章访问数据库
17.1SQLLocalDB与SSDT
17.1.1创建和删除数据服务实例
17.1.2在Visual Studio中连接和创建数据库
17.1.3编写SQL语句
17.2示例数据库
17.3连接数据库
17.4ADO.NET基础
17.4.1使用DataReader来读取数据
17.4.2使用DataAdapter填充数据
17.4.3使用数据适配器更新数据库
17.4.4参数化查询
17.5LinQ to ADO.NET
17.6LinQ to SQL
17.6.1用DataContext直接执行SQL语句
17.6.2动态创建数据库
第18章程序集与反射
18.1类库
18.2反射技术基础
18.2.1动态加载程序集
18.2.2获取类型信息
18.2.3动态创建类型实例
18.2.4动态调用类型成员
第19章网络编程
19.1Socket编程
19.1.1Socket类
19.1.2TcpListener类与TcpClient类
19.1.3UdpClient类
19.2HTTP通信
19.2.1HttpWebRequest类与HttpWebResponse类
19.2.2WebClient类
19.2.3HttpClient类
19.3获取网络接口信息
19.4向目标计算机发送Ping命令
19.5用SMTP发送电子邮件
19.6访问Web服务
第20章互操作性
20.1调用Win32 API函数
20.2调用COM组件
第21章综合实例
21.1综合实例1: 照片面积计算器
21.1.1数据模型准备
21.1.2让用户选择照片文件
21.1.3计算所选照片的总面积
21.1.4语音朗读计算结果
21.1.5实现日志文件的写入
21.2综合实例2: 文件加密与解密工具
21.2.1密码的处理
21.2.2提取Key和IV
21.2.3实现加密与解密
|
|