今天的问题来自知识星球的星友:如何写好一篇技术文章?
如果真的能写好技术文章,别说10种新可能,20种都可能有,所以,我认认真真地做出了回答。
我写了几年技术文章,出版过6本书,这里提供一点点经验之谈和研究心得,你看完之后稍加练习,就能建立起来你自己的技术文章写作模板、方法,使得自己的技术文章写作效率大大提升并且水准可以保持在一个基线之上。
接下来,我分三个方面大概说下:
一篇技术文章要考虑的8个方面
如何设计文章结构
语言、修辞、文法
我在介绍每一个方面内容时,会随手给出一两本参考书。
(一)技术文章要考虑的8个方面
以编程类技术文章为例,需要考虑如下8个方面:
价值。这篇文章要带给读者什么价值,站在读者角度,ta看了文章,应该得到什么。这是最先要考虑的。
受众。比如是面向小白还是资深开发者。这是要和第1点结合在一起考虑的,也非常重要。不确定受众,就没办法有针对性的写。
选题。这篇文章要写什么。通常来讲,单篇文章,选择比较小的一个点来讲明白,比较好。比如我曾经用一个章节大约七八页的内容介绍如何安装Qt SDK,无论有没基础,看了一定会安装。
示例。要给出示例,甚至代码。(如果是架构类技术文章则可以给出案例)
说明所选知识点可以解决什么问题,以及它的应用场景。
注意事项。比如使用StringBuffer类的常见误区。
关联参考资料。你引用了什么,扩展阅读,关联主题等。
练习。给读者一些练习,以便它们可以行动起来。
就我的阅读范围,《编程珠玑》《重构》《代码大全》《Unix环境高级编程》《Windows程序设计》《Windows核心编程》《Unix/Linux编程实践教程》《深入浅出MFC》《Head First 设计模式》,都做得很好。
这部分考虑的是文章的原始素材,相当于积木块,是我们写文章的基础。
(二)如何设计文章结构
考虑了前面的8个方面,接下来就是如何把文章写出来。这方面必须要遵循一定的结构,没有结构,就没有文章。而且,有了好的结构,不但能让读者易于理解你要传递的内容,还能使你的文章保持一个基线水准,不至于看起来太糟糕。
文章结构在很多经典技术图书中都有采用。
比如《代码大全》中“变量初始化”这一节,“变量初始化原则”。
它采用的是QA结构,先说问题,再给建议(N条并列)。同时在给建议时,还给出了正反代码片段,让人一对比就能体会到差别,Get到作者想传递的东西。
比如《重构》中“将单向关联改为双向关联”这一节:
重点看蓝色线条标注的那些小标题,你可以看看,实际上它采用了“动机(有何好处)-做法(行动步骤)-范例(演示给你看怎么)”这样的结构。不止这一节,书里很多章节的重构建议都采用了这种结构。这样就给读者一种一致的阅读体验,一旦读者接纳了这种文章结构,就很容易理解。
比如《编程珠玑》第4章“编写正确的代码”
以二分搜索为例,讲如何编写正确的代码,重点看4.1、4.2、4.3、4.4、4.5那些小标题,你可以看出来,它采用了“问题-代码-解释代码-讲解原理-验证测试-练习题”这样的组织结构。这种结构,《编程珠玑》一书中反复出现,我们写技术文章时,也可以借鉴。
比如《大型网站技术架构》一书的“大型网站架构演化发展历程”一节
着重看1.2.1、1.2.2、1.2.3、1.2.4等小标题,它们的编排,其实是按照架构发展的历史时间线进行的。这也是一种常见的文章结构,很多讲技术历史、技术人物、项目案例的泛技术文章,都会用到。
一篇技术文章,除了刚我们说的这种结构体,还有开篇、总结、呼吁行动等环节。综合起来,常见的技术文章组织结构如下:
开篇,这部分阐明文章讲什么、能带给读者什么价值;
结构体,按照一定的结构,展开叙述,比如时间线、比如走读代码的逻辑、比如设计演示示例的过程(问题-设计思路-代码演示-代码解读-结果展示)、比如QA(问题-答案)、比如并列条目、比如总分总、比如实战小项目的讲解过程(项目背景-效果展示-设计解释-代码演示-代码解读-延伸场景)等;
总结,一段话,回顾讲过的要点,点出读者应该注意的地方;
呼吁行动,可以一两句话,呼吁读者自己设计代码、动手试试,或者给出一些练习题,让读者去做。
我们写博客、写书、写公众号,可以设计几种常见的文章结构,反复使用,操练纯熟之后,写文章就会很快,直接整理素材,然后填空就好了。这也是为什么很多人能够日更、隔日更的一种原因——把重复性的东西模板化(类似设计模式中的模板模式),减少时间和精力占用。
有一本书——《结构化的技术写作与内容管理》,研究的就是技术写作,我搜到的,但没看过,不知道具体内容如何,看目录的话,应该有一定参考作用。
其实不单技术文章可以采用模板结构提高生产率,自媒体文章、干货类文章、论文、演讲、沟通,都有各种各样的模板,而且有很多书讲,其内容,也可以供我们写作技术文章时参考。推荐几本吧,《金字塔原理》、《爆款写作课》、《即兴演讲》、《高效演讲》、《靠谱》、《非暴力沟通》、《关键对话》等,都可以看看。
另外还有很多方法,可以帮助我们设计文章结构,尤其是逻辑思考方面的,因为文章是逻辑的体现,所以也可以看看这方面的书,比如《逻辑思考力》(易读)、《逻辑思维简易入门》等。
(三)语言、修辞、文法
有了素材、有了结构,一篇技术文章就呼之欲出了——写就行了,别管词汇是否丰富、用词是否优美、修辞手法是否到位等等问题。
先写。写起来再说。
等你写一段时间,再来追求语言啊修辞啊这些东西。
这方面的提升,不是一夕之功,而是长时间积累的结果。以我个人经验,比较重要的是:
阅读文艺类书籍。
熟读唐诗三百首,不会写诗也会偷嘛。
当然关于文章修辞,也有几本超级好书可以推荐。
一本是《风格感觉》
一本是《七十二堂写作课》
当然,如果你不想看这些书,也可以看看技术人写的技术类图书
比如《程序员思维修炼》《程序开发心理学》《高效程序员的45个习惯》《项目百态》等技术领域的大师们写的书,模仿结构、语言等,都可以。
(四)买本书,写篇文章
写作之前先从8个方面思考和准备,然后按照自己建立起来的文章结构模板来快速整合素材呈现为文章,再加上一点点语言和修辞,你就可以写出不错的技术文章了。
这就是我能分享的所有内容了,接下来,就要看你的了。强烈建议你选择一个知识点——比如单例模式,复制我前面提到某一种结构体,写两篇文章来练练手。等写熟练了,自己再改结构、定义自己的文章结构。
共同学习,写下你的评论
评论加载中...
作者其他优质文章