热门关键字:  听力密码  听力密码  新概念美语  单词密码  巧用听写练听力

计算机程序员教程

中国水利水电出版社
    【作 者】主编 李学国 任小平 【I S B N 】978-7-5226-3451-7 【责任编辑】鞠向超 【适用读者群】本专通用 【出版时间】2025-09-01 【开 本】16开 【装帧信息】平装(光膜) 【版 次】第1版第1次印刷 【页 数】324 【千字数】584 【印 张】20.25 【定 价】59 【丛 书】暂无分类 【备注信息】
图书详情

    本书依据《计算机程序设计员国家职业技能标准》(2022年版),结合最新的行业技术编写而成。根据软件开发的项目周期及其需要掌握的基础知识,本书共分为4部分:第1部分为软件工程,包括软件工程基础知识、软件系统需求分析和开发文档的识读与编写;第2部分为必须掌握的计算机基础知识,包括计算机基础与体系结构、操作系统原理与技术和计算机网络;第3部分为实际的软件设计,包括基本应用程序开发、算法设计基础、数据库设计、桌面程序设计、网页程序设计和网络应用程序开发;第4部分为软件测试,包括软件测试基础、集成测试与系统测试、软件测试用例设计方法。

    本书可作为计算机程序设计员职业技能鉴定考试的参考教材,也可作为软件编程从业人员学习编程技术的教材或开展日常工作的参考用书。

    贴合职业标准:依据最新计算机程序设计员国家职业技能标准编写

    编排科学合理:章节安排遵循计算机知识体系,方便读者系统学习

    内容覆盖广泛:涵盖从基础知识到高级应用,遵循软件开发全流程

    在数字时代,计算机技术已经渗透到人们生活的每一个角落。从日常的通信交流到复杂的科学研究,计算机程序无处不在,它们在提高效率、创造价值方面发挥着不可替代的作用。随着技术的不断进步,社会对计算机程序员的需求也日益增长。无论是大型企业还是初创公司,都需要具备编程技能的人才来推动项目发展。然而,成为一名合格的程序员并非易事,需要进行系统的学习和大量的实践。

    根据职业发展需求,我国于2022年更新了《计算机程序设计员国家职业技能标准》,该标准以“职业活动为导向、职业技能为核心”作为指导思想,对计算机程序设计从业人员的职业活动内容进行了规范细致的描述,对各等级从业者的技能水平和理论知识水平进行了明确规定。

    本书旨在为初学者提供一条清晰的学习路径,帮助其从零开始掌握编程基础,逐步成长为一名能够独立完成项目的程序员。本书不仅关注教授具体的编程语言和技术,更重视培养解决问题的能力和良好的编程习惯。通过一系列精心设计的实例和练习,读者将能够在实践中学习和成长。

    本书覆盖了从基础到高级的广泛主题,编写方式遵从软件开发前、软件开发中和软件开发后的实际开发流程。软件开发前需要掌握软件工程相关知识,如软件开发生命周期、敏捷开发等理念,帮助读者了解专业软件开发流程。软件开发中需要掌握计算机基础知识,包括计算机及其组成原理、操作系统、计算机网络;软件开发基础知识,包括编程入门、数据结构和算法及数据库等。同时,根据软件使用场景的不同,将被开发程序分为桌面程序设计、网页程序设计、网络程序开发。软件开发后,主要是进行软件测试。本书在章节的安排上,遵从了计算机知识体系,如下图所示。

    无论是新手小白,还是有一定经验希望进一步提升自我的程序开发者,本书都将为您提供宝贵的知识和技能支持。我们相信,通过对本书的学习,您将能够开启一段充满挑战和机遇的编程之旅,最终成为技术领域的佼佼者。

    本书由重庆化工职业学院李学国和任小平任主编,黑龙江外国语学院高欣宇、重庆翰海睿智大数据科技服务有限公司陈继、重庆树德科技有限公司李军凯任副主编,夏家文、陈浩阳、宋三泰、罗谧、刘小勇参与编写。全书由李学国统稿,李廷真、程辰审稿。

    由于编者水平有限,书中难免存在疏漏之处,欢迎广大读者批评指正。

    前言
    第1部分 软 件 工 程

    第1章 软件工程基础知识 1
    1.1 软件工程基础概念 2
    1.1.1 软件的定义与特点 2
    1.1.2 软件危机与软件工程 2
    1.1.3 软件开发方法 3
    1.1.4 软件过程与生命周期 4
    1.1.5 软件工程的目标 8
    1.2 软件开发基础知识 8
    1.2.1 软件开发工具 8
    1.2.2 软件开发工具的功能要求和性能要求 8
    1.2.3 软件开发环境 10
    1.3 软件开发规范基础 10
    1.3.1 软件开发规范的重要性 10
    1.3.2 软件开发规范的主要内容 10
    1.4 软件项目管理基础 11
    1.4.1 软件项目管理的过程 11
    1.4.2 软件项目管理的内容 12
    1.4.3 软件项目估算与进度管理 12
    1.4.4 软件项目的实施阶段 13
    1.5 系统运行和维护基础 13
    1.5.1 系统运行和维护基础的重要性 13
    1.5.2 系统运行管理基础 14
    1.5.3 系统维护基础 15
    1.6 程序设计说明文档的识读 15
    1.6.1 程序设计说明文档的目的 15
    1.6.2 程序设计说明文档的内容 15
    第2章 软件系统需求分析 17
    2.1 需求分类 18
    2.1.1 功能性需求与非功能性需求 18
    2.1.2 用户需求与系统需求 18
    2.2 需求收集 19
    2.2.1 收集需求的方法 19
    2.2.2 需求规格说明书 20
    2.3 原型系统 20
    2.3.1 原型系统简介 20
    2.3.2 原型模型的主要思想 21
    2.3.3 原型系统的开发过程 21
    2.3.4 软件原型系统的分类 21
    2.4 提出需求分析建议 22
    2.4.1 软件需求分析的方法 22
    2.4.2 软件需求分析流程 24
    2.4.3 软件需求分析常用工具 25
    第3章 开发文档的识读与编写 26
    3.1 认知软件设计文档 27
    3.1.1 总体设计过程 27
    3.1.2 总体设计的图形工具 28
    3.1.3 软件总体说明书 30
    3.2 软件设计的原则 32
    3.2.1 开闭原则 32
    3.2.2 里氏替换原则 32
    3.2.3 依赖倒置原则 32
    3.2.4 单一职责原则 33
    3.2.5 接口隔离原则 33
    3.2.6 迪米特法则 33
    3.2.7 合成复用原则 34
    3.3 详细设计的工具 34
    3.3.1 程序流程图 34
    3.3.2 N-S图 35
    3.3.3 详细设计工具的选择 37
    3.3.4 软件详细设计说明书的典型内容 37
    3.3.5 编写软件详细设计说明书的注意
    事项 38
    3.4 软件设计代码规范 38
    3.4.1 软件程序步骤 38
    3.4.2 软件代码规范 39
    3.4.3 代码相关因素 39
    3.5 开发文档的编写 41
    3.5.1 UML的应用及case工具 41
    3.5.2 UML软件设计 43

    第2部分 计算机基础知识

    第4章 计算机基础与体系结构 50
    4.1 计算机科学基础 50
    4.1.1 数制及其转换 50
    4.1.2 数据的表示 52
    4.1.3 逻辑运算和算术运算 56
    4.2 计算机体系结构 57
    4.2.1 计算机系统结构概述 57
    4.2.2 存储系统 57
    4.2.3 指令系统 60
    4.2.4 中央处理器 64
    4.2.5 输入/输出系统 66
    第5章 操作系统原理与技术 68
    5.1 操作系统概述 69
    5.2 进程管理 69
    5.2.1 基本概念 69
    5.2.2 进程的死锁 72
    5.2.3 进程的同步与互斥 73
    5.3 存储器管理 74
    5.3.1 基本概念 74
    5.3.2 连续分配存储管理 75
    5.3.3 分页存储管理 75
    5.3.4 分段存储管理 77
    5.3.5 段页式存储管理 78
    5.4 I/O设备管理 78
    5.4.1 I/O设备的类型 79
    5.4.2 I/O系统的设备控制器 79
    5.4.3 设备独立性 80
    5.4.4 设备驱动程序 80
    5.5 文件系统 81
    5.5.1 文件与文件系统的基本概念 81
    5.5.2 文件的物理结构 82
    5.5.3 文件目录 83
    5.5.4 文件的共享 85
    5.5.5 文件系统的安全与可靠性 86
    第6章 计算机网络 87
    6.1 分层体系结构及网络协议 88
    6.1.1 分层体系结构 88
    6.1.2 网络分层模型及协议 89
    6.2 传输媒介 91
    6.3 网络设备 93
    6.3.1 按体系结构划分的网络设备 93
    6.3.2 交换方式 95
    6.3.3 网络的分类 96
    6.4 IP地址 98
    6.4.1 网络互联模型 98
    6.4.2 IP地址的分类 98
    6.4.3 IP数据报的构成及转发过程 100
    6.4.4 子网的划分 103
    6.4.5 超网的构成 104
    6.5 TCP/IP协议族 105
    6.5.1 网络接口层协议 105
    6.5.2 网络层协议 106
    6.5.3 传输层协议 107
    6.5.4 应用层协议 110

    第3部分 软 件 设 计

    第7章 基本应用程序开发 116
    7.1 代码风格与编程规范 116
    7.1.1 代码风格 117
    7.1.2 编程规范 117
    7.2 C#应用程序开发环境的搭建 120
    7.2.1 .NET平台 120
    7.2.2 C#开发环境的安装和搭建 121
    7.3 C#的第一个基本应用程序 124
    7.4 C#的数据类型 126
    7.4.1 值类型和引用类型 126
    7.4.2 数组、结构和枚举 130
    7.5 C#运算符和表达式 132
    7.5.1 算术运算符 132
    7.5.2 比较运算符 133
    7.5.3 布尔逻辑运算符 133
    7.5.4 表达式 135
    7.6 C#的结构化程序设计 136
    7.6.1 顺序结构程序设计 136
    7.6.2 选择结构程序设计 136
    7.6.3 循环结构程序设计 141
    7.7 面向对象程序设计基础 144
    7.7.1 基本概念 144
    7.7.2 类和对象 146
    7.7.3 类的属性和方法 147
    7.7.4 继承、多态、接口、委托和事件 149
    第8章 算法设计基础 154
    8.1 计算机算法概述 154
    8.1.1 算法的5个特性 154
    8.1.2 算法设计的要求 155
    8.1.3 算法效率的度量 155
    8.2 常见算法 156
    8.2.1 迭代法 156
    8.2.2 穷举搜索法 157
    8.2.3 递推法 157
    8.2.4 递归法 157
    8.2.5 分治法 158
    8.2.6 动态规划法 159
    8.2.7 回溯法 160
    8.2.8 贪心法 161
    8.2.9 分支限界法 161
    8.2.10 概率算法 162
    第9章 数据库设计 163
    9.1 MySQL概述 163
    9.1.1 数据库的相关概念 164
    9.1.2 MySQL数据库 165
    9.1.3 集成化的服务器和数据库软件 171
    9.2 SQL 173
    9.2.1 SQL通用语法 173
    9.2.2 SQL的分类 173
    9.2.3 DDL 174
    9.2.4 DML 178
    9.2.5 DQL 181
    9.2.6 DCL 198
    9.3 函数 200
    9.3.1 数学函数 200
    9.3.2 字符串函数 202
    9.3.3 日期和时间函数 203
    9.3.4 聚合函数 205
    9.3.5 条件函数 205
    第10章 桌面程序设计 206
    10.1 Windows编程的基础知识 207
    10.1.1 窗口 207
    10.1.2 Windows的消息系统 207
    10.1.3 Windows编程接口和类库 207
    10.1.4 Windows应用程序的基本结构 208
    10.2 常用控件和类的使用 213
    10.2.1 控件通用属性 213
    10.2.2 Form类 214
    10.2.3 标签(Label)控件 214
    10.2.4 按钮(Button)控件 216
    10.2.5 事件处理函数的参数 217
    10.2.6 文本框(TextBox)控件 217
    10.2.7 Convert类 218
    10.2.8 单选按钮(RadioButton)和GroupBox
    控件 218
    10.2.9 Font类 219
    10.2.10 多选框(CheckBox)控件 220
    10.2.11 列表选择(ListBox)控件 220
    10.2.12 下拉列表框(ComboBox)控件 222
    10.2.13 ToolTip控件 222
    10.2.14 超链接(LinkLable)控件 223
    10.2.15 定时(Timer)控件 223
    10.2.16 DateTime类 224
    10.2.17 菜单 225
    10.2.18 工具条 226
    10.2.19 状态栏(StatusBar)控件 228
    10.2.20 鼠标事件 229
    第11章 网页程序设计 231
    11.1 网页程序设计简介 232
    11.1.1 什么是Web开发 232
    11.1.2 HTML的基本结构 233
    11.1.3 HTML注释 233
    11.2 开发环境的搭建 234
    12.2.1 下载 HBuilder X 234
    11.2.2 安装 HBuilder X 234
    11.2.3 基本配置 235
    11.3 HTML基础 238
    11.3.1 基础标签 238
    11.3.2 高级标签 239
    11.3.3 HTML布局 242
    11.4 CSS基础 244
    11.4.1 CSS简介 244
    11.4.2 CSS的编写位置 244
    11.4.3 样式表的优先级 245
    11.4.4 CSS语法规范 247
    11.4.5 CSS代码风格 249
    11.5 JavaScript基础 250
    11.5.1 JavaScript简介 251
    11.5.2 引入方式 251
    11.5.3 基础语法 252
    11.5.4 JavaScript对象 257
    第12章 网络应用程序开发 268
    12.1 Socket的编程及应用 268
    12.1.1 Socket套接字介绍 268
    12.1.2 C#中的Socket类 271
    12.1.3 Socket应用程序的实现 273
    12.2 TCP/IP编程应用 276
    12.2.1 TCP程序设计和应用 276
    12.2.2 UDP程序设计和应用 279
    12.2.3 TCP/IP 异步处理方法 281
    12.2.4 TCP/IP出错处理方法 291

    第4部分 软 件 测 试

    第13章 软件测试基础 294
    13.1 软件测试的目的和原则 294
    13.1.1 软件测试的目的 294
    13.1.2 软件测试的原则 295
    13.2 软件测试的分类 295
    13.3 软件测试的一般流程 296
    第14章 集成测试与系统测试 298
    14.1 集成测试 298
    14.1.1 集成测试的注意事项 298
    14.1.2 集成测试的集成方式 298
    14.1.3 集成测试的一般流程 299
    14.2 系统测试 302
    14.2.1 系统测试的目标 302
    14.2.2 系统测试的流程与内容 302
    第15章 软件测试用例设计方法 304
    15.1 黑盒测试的测试用例设计方法 304
    15.1.1 黑盒测试概述 304
    15.1.2 设计方法 305
    15.2 白盒测试的测试用例设计方法 307
    15.2.1 白盒测试概述 308
    15.2.2 设计方法 308
    参考文献 315





最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册