70__程序员练级攻略:零基础启蒙
如果你从来没有接触过程序语言,这里给你两个方面的教程,一个偏后端,一个偏前端。对从零基础开始的人来说,最重要的是能够对编程有兴趣,而要对编程有兴趣,就要有成就感。而成就感又来自于用程序打造东西,所以,我推荐下面这份不错的入门教程。
如果你从来没有接触过程序语言,这里给你两个方面的教程,一个偏后端,一个偏前端。对从零基础开始的人来说,最重要的是能够对编程有兴趣,而要对编程有兴趣,就要有成就感。而成就感又来自于用程序打造东西,所以,我推荐下面这份不错的入门教程。
你好,我是七牛云许式伟。
在“68 | 软件工程的宏观视角”一讲中,我们用最基本的“瀑布模型”来描述现代软件工程的全过程,大体如下:

在这个过程中,有两个阶段非常关键:一个是“产品设计”,一个是“架构设计”。产品设计由产品经理主导,关注的是“如何以产品特性来系统化地满足用户需求”。架构设计由架构师主导,关注的是“业务系统如何系统化地进行分解与交付”。
学习了前面文章中的入门级经验和知识后,你可能会有两种反应。
这篇文章,我主要是让你成为更为专业的入门程序员。请注意,此时,你可能需要读一些比较枯燥的书,但我想说,这些是非常非常重要的。你一定要坚持住。
设计模式模块已经接近尾声了,现在我们只剩下 3 个模式还没有学习,它们分别是:命令模式、解释器模式、中介模式。这 3 个模式使用频率低、理解难度大,只在非常特定的应用场景下才会用到,所以,不是我们学习的重点,你只需要稍微了解,见了能认识就可以了。
你好,我是七牛云许式伟。今天聊聊如何阅读别人的代码。
我们去阅读别人的代码,通常会带有一定的目的性。完整把一个系统的代码“读懂”需要极大的精力。所以明确阅读代码的目标很重要,因为它决定了你最终能够为这事付出多大的精力,或者说成本。
在完成上述的入门知识学习之后,我们要向专业的计算机软件开发进军了。但是在学习那些专业的知识前,我们先要抽一部分的篇幅来说一下程序员的修养。这是程序员的工程师文化,也就是程序员的价值观,因为我觉得如果你的技术修养不够的话,你学再多的知识也是没有用的。
你好,我是七牛云许式伟。
前面我们在“68 | 软件工程的宏观视角”一讲中谈到:一个软件工程往往是生命周期以数年甚至数十年计的工程。对于传统工程,我们往往把一个工程同时也称之为项目,项目工程。但软件工程不同,虽然我们平常也有项目的概念,但软件工程并不是一个项目,而是无数个项目。每个项目只是软件工程中的一个里程碑(Milestone)。
上一节课,我们学习了命令模式。命令模式将请求封装成对象,方便作为函数参数传递和赋值给变量。它主要的应用场景是给命令的执行附加功能,换句话说,就是控制命令的执行,比如,排队、异步、延迟执行命令、给命令执行记录日志、撤销重做命令等等。总体上来讲,命令模式的应用范围并不广。
为了进入专业的编程领域,我们需要认真学习以下三方面的知识。
编程语言。你需要学习 C、C++ 和 Java 这三个工业级的编程语言。为什么说它们是工业级的呢?主要是,C 和 C++ 语言规范都由 ISO 标准化过,而且都有工业界厂商组成的标准化委员会来制定工业标准。次要原因是,它们已经在业界应用于许多重要的生产环境中。
你好,我是七牛云许式伟。
上一讲“72 | 发布单元与版本管理”我们聊了版本管理中,只读思想给软件工程带来的确定性价值,它在软件工程质量管理中也是很核心的一点。