《C程序员:从校园到职场》出版预告(2):从“百花齐放”到“一枝独秀”

古语云“治大国如烹小鲜”,写作一本书和写作一篇文章在本质上是一样,首先要确定自己要想写作的内容是什么。
对于本科学生来说,每个人都有至少一个专业,大学四年自己主要的学习内容就围绕专业来展开;对于研究生来说,每个人都至少有一个研究方向,在校三年的学习计划要围绕这个方向来安排;当然,对于入职的程序员来说,每个人也会有至少一项工作内容,自己或领导制定的工作计划的基础就是工作内容(具体来说就是要开发一个什么样的软件或系统)。
对于我来说,从入职到现在,我的大部分时间都是在从事语音业务的开发。总结起来,我的工作内容囊括了如下图所示的5大领域。

我逐一来进行说明。
(1) 编程语言:我所做的工作主要使用C语言。除了编码规范(程序样式、变量及函数的命名、注释等)之外,内存操作、异常保护等都是重点和难点所在。
(2) 数据库技术:我所做的工作主要使用SQL语言,涉及到的数据库包括ORACLE和SYBASE等。编写创建数据表和存储过程的脚本占据了我大部分的开发时间。
(3) 操作系统:我所做的工作主要使用Linux操作系统。与Windows下的开发相比,Linux下的开发需要开发者熟记很多操作命令及文件配置。
(4) 研发流程:“没有规矩,不成方圆”,从接手任务到完成任务,开发流程为“需求评审–>软件详细设计–>代码编写–>程序自测–>版本提交–>系统测试支持”。软件项目实际工作从本质上来说就是将在校学习的过程规范化。
(5) 系统架构:任何一个软件,都需要有一个总体的框架,每个开发人员负责不同的功能模块。就像OSI参考模型一样,软件系统也需要分工合作,也需要各个部分配合来满足用户的需求。

在最开始构思本书的时候,对于内容选择,我思考了很久。要想精通系统架构,需要在岗位上工作很多年。我现在来给大家谈论系统架构,还为时尚早。因此在上图中的5个部分中,我可以比较详细地介绍给读者的是前4个部分。
难道要把这4个部分放到一本书中呈献给大家吗?我回忆起自己在校的学习时光,大学4年学习了好几十门课程,但毕业之后真正用到的只有那么有限的几门课程的知识。就拿C语言课程来说,一学期的课程下来,老师不仅将C语言所涉及到的全部东西走马观花似的“灌输”给了学生,还附带将数据结构(如链表、树等)一并“抬”了出来,真是让学生们有点“消化不良”。大学的课程“百花齐放”,让很多学生望而生畏,失去了学习的兴趣,深陷“迷茫”的泥沼中而不能自拔。
那么,我是否也要将一本软件开发的“百科全书”展现在读者面前,让他们“一劳永逸”呢?显然,我不希望让大家看到一本“大书”而对软件开发产生畏惧,让他们觉得软件开发如珠峰一样难以攀登。既然如此,那么我就将某一方面的知识详细地告诉大家吧。
这样一来,我就要在“编程语言”、“数据库技术”、“操作系统”和“研发流程”四者之中选择一个作为本书的主题,我毫不犹豫地选择了第一个,也就是C语言。为什么是C语言呢?有如下几个方面的原因:
(1) 在这四个主题中,我对C语言最熟悉,讲解起来更有自信。:)
(2) C语言是计算机相关专业的核心基础课程,打好C语言基础对于学好其他课程或者是将来就业都是很有好处的。
(3) 在C语言编程方面,我积累了较为丰富的实践经验,这些经验可供广大的读者参考学习。
就这样,我放弃了在书中让多个主题“百花齐放”的想法,而选择了让C语言“一枝独秀”。
“剧透”一下吧,本书从C语言的发展历程讲起,结合丰富的代码实例讲述了程序的样式、变量和函数、内存操作、文件、指针和结构体、算法和协议、程序重构、SQL语句和Shell命令以及程序问题排查等诸多C程序开发中的典型问题。
此时,你可能会问:你说本书只讲解C语言的知识,现在市面上的C语言书籍已经很多了,你的书有什么特色呢?且听下回分解。



本人微信公众号:zhouzxi,请扫描以下二维码:

时间: 2024-07-31 01:51:54

《C程序员:从校园到职场》出版预告(2):从“百花齐放”到“一枝独秀”的相关文章

《C程序员从校园到职场》一第1章 概述1.1 C语言的发展历史

第1章 概述 C程序员从校园到职场 本章介绍C语言的发展历史和主要特点,以及实际项目工作中软件开发工程师常用到的工具软件. 1.1 C语言的发展历史 1.1.1 C语言之父 C语言是1972年由美国贝尔实验室的计算机科学家Dennis Ritchie(丹尼斯·里奇)设计发明的.因此,Dennis Ritchie被誉为"C语言之父"(他已于2011年10月9日去世,享年70岁).图1.1所示的人物就是Dennis Ritchie. 图1.1 "C语言之父"Dennis

《C程序员从校园到职场》带领大家从校园走向职场

七夕节刚过,就有好消息传来:本人新书<C程序员从校园到职场>正式出版并在各大电商平台上发售了! 下面,让我们一起来欣赏一下纸质书的"风采"吧. 本书目录 第1章 概述 1.1 C语言的发展历史 1.2 C语言的主要特点 1.3 常用工具软件 1.4 小结 第2章 学校到职场 2.1 认清自身不足 2.2 破除错误观念 2.3 工作所需软技能的培养 2.4 小结 第3章 程序的样式 3.1 头文件 3.2 源文件 3.3 空格和空行 3.4 大括号 3.5 注释 3.6 小结

《C程序员从校园到职场》一导读

前言 C程序员从校园到职场 在刚入职的时候,我与一个工作多年的老员工之间有以下一番对话. 老员工:"你的C语言功底如何?" 我:"还可以,考试考了九十多分." 老员工:"你觉得编码规范重要吗?" 我:"什么编码规范?我之前没听说过呢." 老员工:"你觉得把代码写完并运行通过,你的工作就算结束了吗?" 我:"差不多吧,在学校里面程序运行没问题就OK了." 老员工:"对于测试,你是

《C程序员从校园到职场》一第2章 学校到职场2.1 认清自身不足

第2章 学校到职场 C程序员从校园到职场 踏出校门,对于我们整个学习生涯来说,只是"万里长征走出了第一步".为了使得之后学习和工作的道路走得更加顺畅,我们需要认清自身所学知识的不足,我们需要破除一些有关软件开发的错误观念,我们更需要在学校里面就未雨绸缪地开始培养工作所需的一些技能. 2.1 认清自身不足 我在走出校门的时候非常"轻狂",认为自己在学校里面已经学得够多了,工作就只是"小菜一碟".但在工作中屡次碰壁之后,我才发现自己当时的很多想法都是

《C程序员从校园到职场》勘误

(本人正在参加2015博客之星评选,诚邀你来投票,谢谢:http://vote.blog.csdn.net/blogstar2015/candidate?username=zhouzxi) 自从<C程序员从校园到职场>一书上市以来,受到了大家的欢迎,很多读者通过各种途径向我反馈了读书心得,在此表示感谢.但"金无赤足,人无完人",书中的内容也存在一些纰漏.本文用于持续收集目前发现的本书的一些问题,也希望大家将对本书的一些意见或改进建议及时告知我. 本书的勘误如下: 1.P5,

《C程序员从校园到职场》一2.2 破除错误观念

2.2 破除错误观念 要让我们做事情的能力能够有所提升,观念的转变是关键. 从学生转变为职业人的过程是很艰难的,因为我们要与自己积累了多年的"老毛病"作斗争,这些"老毛病"包括:做事拖拉.不守时.不遵守规则.怕吃苦等.就像发射火箭卫星一样,摆脱重力的束缚所花费的燃料是最多的,一旦成功,那么以后的流程就会比较轻松了.所谓"万事开头难",也就是这个道理. 那么,要想掌握工作中C语言的基本技能,我们需要破除哪些错误观念呢?如图2.1所示. 图2.1 我

《C程序员从校园到职场》一2.3 工作所需软技能的培养

2.3 工作所需软技能的培养 在新员工刚进入公司的时候,一般都会有一段时间的试用期,也叫做培训期.对于大部分IT企业来说,这个试用期大体分为3个阶段:第一阶段,企业文化.办事流程.公司业务范围等的培训:第二阶段,工作所需专业知识的培训:第三阶段叫做"以师带徒",也就是由一位老员工带着来从事具体的开发工作. 但是,我们不能奢望通过这个短短的培训期就能够将工作中所需的技能全部掌握,因为学习重在长期的积累,个人习惯的改变更是一个漫长而痛苦的过程.这就需要我们在学校里面就有目的性地培养工作所需

《C程序员从校园到职场》一1.2 C语言的主要特点

1.2 C语言的主要特点 C语言是一种功能强大的.被广泛应用的面向过程的编程语言,可用于编写系统软件和应用软件. C语言的主要特点如图1.4所示. 如图1.4所示,C语言的诸多特点使其越来越受到广大软件开发人员的青睐,也使其成为了使用人数最多的计算机编程语言之一.学习好C语言,对于深入学习计算机科学的其他课程都是很有好处的. 图1.4 C语言的主要特点

《C程序员从校园到职场》一1.4 小结

1.4 小结 本章对C语言的发展历史.C语言的主要特点,以及软件开发工程师常用到的工具软件进行了详细的介绍.本章对后续章节起到了一个抛砖引玉的作用.

《C程序员从校园到职场》一2.4 小结

2.4 小结 本章作为一个过渡章节,从认清自身所学C语言知识的不足入手,接着让大家破除几个有关软件开发的错误观念,然后让在校学生有意识地培养工作所需的一些软技能.认清自身的不足让人谦虚,破除错误观念让人不惑,培养技能让人信心百倍.现在,我们可以正式开启软件项目实践中C语言的学习征程了.