【程序设计】 前言及目录

 

前言

编程,如同驾驶,越来越成为现代人的一项基本技能。掌握编程技能,能够用编程处理日常工作生活中的问题,其好处是无庸多言的。

但是,当前 IT 领域的程序语言几乎全部是面向专业人员设计的,要把这些语言学到可以处理日常业务的程度,其难度远远超过那些不以程序开发为职业的非专业人士可接受的范围。这也间接导致了很难找到一本面向这类人群讲述程序设计并做到学以致用的书籍。

实际上,理解程序设计的基本概念和逻辑并不很难,有合适的程序语言再配合图书教程,编程就可以像驾驶一样,成为绝大多数人都能掌握的技能。

本书希望能对这个进程起到帮助。

本书内容大体可以分为两个部分。

前一部分是基础,介绍几乎所有程序语言都有的基本概念,了解这些知识后再去学习一种新程序语言,可以很快地抓住关键内容从而掌握新语言。但是,仅学会这些内容后,只会做一些工作中几乎从来不会碰到的算术题,无法做到学以致用。虽然如此,这些内容也作为基础仍然是必要的。

后一部分则是讲述日常事务中最常见的结构化数据及其处理方法,获得这些知识后就可以得心应手地处理工作生活的表格、数据分析等任务了。本书讲述的结构化数据计算内容远远超出当前以关系代数为基础的传统体系,许多运算类型在全世界范围内也是首次编入书中,而掌握这些运算对于结构化数据处理非常重要。

本书不是面向已经对编程有深入了解的专业程序员,没有涉及到面向对象、事件驱动、框架模式等专业内容。这里的知识大都可以被初学者理解并掌握,但也有少量内容相对艰深。章节名上标了 * 的部分,可以作为选读内容以加深对编程的理解,跳过不看也没关系,不影响其它部分的学习以及日常的工作应用。

本书中用于举例的程序设计语言称为 SPL,开发环境称为集算器,可以到北京润乾公司官网下载一个集算器,目前免费。具体安装过程非常简单,这里不再详述了。

SPL 可以说是业界中拥有程序设计所有基本特征的、且能便捷地处理结构化数据计算的程序语言中最简单的那一种了。其它语言要么过于艰难、要么过于繁琐(包括当前很流行的 Python 也是这样),都不适合作为初学者的教学和使用。

本书是中文写作,但因为要翻译成英文,所以其中的截图和数据例子将使用英文。好在我国人士素质够高,读懂这些简单的英文不成问题,但国外人士却无法读懂这些最简单的中文。

目录

【程序设计】1.1 [做算术] 数据

【程序设计】1.2 [做算术] 变量和语句

【程序设计】1.3 [做算术] 函数

【程序设计】2.1 [做判断] 逻辑运算

【程序设计】2.2 [做判断] 分支结构

【程序设计】2.3 [做判断] 注释和跳转

【程序设计】3.1 [做循环] 单层循环

【程序设计】3.2 [做循环] 多层循环

【程序设计】3.3 [做循环] 条件循环

【程序设计】3.4 [做循环] 死循环

【程序设计】4.1 [排成队] 序列

【程序设计】4.2 [排成队] 序列循环

【程序设计】4.3 [排成队] 多层序列

【程序设计】4.4 [排成队] 理解对象

【程序设计】5.1 [一把抓] 集合运算

【程序设计】5.2 [一把抓] 循环函数

【程序设计】5.3 [一把抓] 循环函数进阶

【程序设计】5.4 [一把抓] 迭代函数 *

【程序设计】5.5 [一把抓] 定位选出

【程序设计】5.6 [一把抓] 排序相关

【程序设计】5.7 [一把抓] Lambda 语法 *

【程序设计】6.1 [重复用] 自定义函数

【程序设计】6.2 [重复用] 递归 *

【程序设计】6.3 [重复用] 可复用脚本

【程序设计】7.1 [字与时] 字符串

【程序设计】7.2 [字与时] 拆分合并

【程序设计】7.3 [字与时] 日期与时间

【程序设计】8.1 [表一表] 结构化数据

【程序设计】8.2 [表一表] 序表与排列

【程序设计】8.3 [表一表] 序表生成

【程序设计】8.4 [表一表] 循环函数

【程序设计】8.5 [表一表] 字段上的计算

【程序设计】9.1 [分类别] 分组与汇总

【程序设计】9.2 [分类别] 枚举与对齐

【程序设计】9.3 [分类别] 有序分组

【程序设计】9.4 [分类别] 扩展与转置

【程序设计】10.1 [找关联] 主键

【程序设计】10.2 [找关联] 外键

【程序设计】10.3 [找关联] 归并

【程序设计】10.4 [找关联] 连接

【程序设计】11.1 [大数据] 大数据和游标

【程序设计】11.2 [大数据] 游标上的函数

【程序设计】11.3 [大数据] 有序游标

【程序设计】11.4 [大数据] 大游标

【程序设计】12.1 [图画师] 画布与图元

【程序设计】12.2 [图画师] 坐标系

【程序设计】12.3 [图画师] 更多坐标系

【程序设计】12.4 [图画师] 图例

【程序设计】 后记