程序员写好技术文章的几点小技巧

简介: 去年成为了内网技术分享平台的年度做者,受邀写一篇关于“如何写好文章”的文章。我自己并不喜欢写字,去年写的几篇文章,涉及的话题自带流量,因此阅读量多了一些,谈不上有多擅长。不过仍是决定分享一下本身在写文章时用到的一些小技巧,但愿对你们有帮助。
image.png程序员

做者 | 门柳
来源 | 阿里巴巴云原生公众号

去年成为了内网技术分享平台的年度做者,受邀写一篇关于“如何写好文章”的文章。我自己并不喜欢写字,去年写的几篇文章,涉及的话题自带流量,因此阅读量多了一些,谈不上有多擅长。不过仍是决定分享一下本身在写文章时用到的一些小技巧,但愿对你们有帮助。
浏览器

最重要的是内容


和全部人强调的同样,好文章最重要的是要有好的内容,好的技术文章要让读者有益。若是你想写一篇爆款文章,可是又以为没有内容可写,那就不要勉强了,放下笔,合上电脑,有这个时间不如去看书打游戏。

如何让本身有源源不断的内容可写?这与平时的积累有关,多阅读,多思考,多写做,真正的技巧无外乎这些。方法论层面的东西再也不赘述,我重点讲几个具体的小技巧,直接“授之以鱼”。
架构

优秀文章的特色

1. 阅读量 ≠ 文章质量

有些文章标题比较吸引眼球,有些话题自带流量,有些内容的受众比较广,因此有很高的阅读量,但这并不表明文章自己的质量。

前几天无心翻到一篇《超长用户行为建模在躺平家居内容推荐中的应用实践》,我以为写得不错,可是内容我彻底看不懂,是专业领域的文章,受众很少,有上千的阅读量就已经很不错了。可是另外一篇《如何画好一张架构图?》就有超过 3W 的阅读量。固然反例也有不少,就再也不列举了。我本身写的几篇讲技术细节的文章,就没有讲技术对比、讨论技术发展的文章阅读量高。内容越专越细,能读下来的人就越少,但并不表明文章质量不高,反之亦然。

技术文章盲目追求阅读量和点赞数不是件好事,因此第一个小建议就是不要太关注阅读量和点赞数,写的文章对别人有用,才是最有成就感的。至于除了阅读量和点赞数之外,还有什么指标能够衡量一篇文章的好坏,欢迎你们留言讨论。
app

2. 文章要长长长长长长长长长长长长长长长(也别太长)

我翻了几篇阿里技术公众号里阅读量较高的文章,各类话题都有,风格差别很大,可是有一个共同点:文章写得很长。这并不表明文章写了不少字就是好文章,背后的真实含义是:好文章的内容足够丰富。

内容丰富详实,这是一篇好文章的必要条件。还有一个条件是要包含真正有价值的内容,不能含太多水分。

提供一个小技巧:若是你写了一篇文章可是以为内容很单薄,能够先当成一篇笔记存起来,等有了更丰富的积累以后再整理成文章。扩展文章内容的方法,并非添加无心义的空话套话,而是根据文章探讨的问题延展开来。

好比说介绍本身解决的一个老大难 Bug,可能真正修改的代码并无几行,把过程讲出来也不过寥寥几段。这时候你就能够再分析一下 Bug 存在的缘由,为何一直拖到如今,再思考一下如何避免这类问题,遇到同类 Bug 怎样快速排查。这样本身想问题的角度更全面了,文章内容也更丰富了。

好比你想介绍一项本身在学的新技术,发现本身写的东西其实就是官方文档的简化版,去重以后几乎什么都不剩了。这时候不要再继续抄文档了,把本身的思考总结先记下来,继续学习技术,持续记录新的内容,有更全面的了解以后,再写文章。
框架

3. 清晰的叙事结构

优秀的技术文章,结构必定是清晰的,有可能目录就表明了某个技术体系,或者表明了解决问题的思路。
布局

优秀的内容 + 清晰的结构 = 好文章
能把技术问题讲清楚,就很考验表达能力,这是大部分程序员比较欠缺的。对于技术类文章,常见套路也很少,我简单介绍两类吧:
学习

线性叙事,逐步推动:适用于介绍排查问题的过程、分享设计思路、介绍项目的迭代进展。
结构化叙事,层层展开:适用于讲规划、作总结、画大图、介绍一整套技术方案。优化

4. 线性叙事,逐步推动

对于这类文章,读者是应该按顺序一段一段看的,写的时候脑海中模拟读者的视角来写。这类文章的小技巧就是:模拟读者视角,设定一条主线,有节奏的向前推动。和讲故事差很少,每一步的推动要有逻辑,要保持思路不要断掉。

有时候稍微加点趣味也是不错的,好比《Flutter Widget 和 CSS 布局原理 PK》这篇文章,目标是分析 Widget 和 CSS 的设计差别,我把文章写成一场比赛,先介绍参赛选手,而后分了 5 个 Round 开始 Battle,而后是 Love&Peace,最后一个 Happy Ending。

另一篇《记一次完整 C++ 项目编译成 WebAssembly 的实践》介绍了本身尝试新技术的心路历程,先介绍背景,再分析需求作拆解,而后讲尝试了什么方案,遇到了什么坑,又继续试其余方案,最终是什么结果。读起来比较流畅。
阿里云

5. 结构化叙事,层层展开

除了按顺序看的,还有不按顺序看的文章吗?有的,尤为在专业的技术文章里很常见,大部分是“总-分”的结构,先讲总体框架,再分章节介绍各个部分。

比较常见的是那种总结型的文章,好比《平台建设的 7 大问题:蚂蚁AI平台实践深度总结》和《救火必备!问题排查与系统优化手册》,就是翻阅性质的书,能够通读一遍,也能够只看其中一段,以后遇到相关的问题,根据目录跳着阅读。

对于文思泉涌的人,能够一口气把整篇文章写完。但实际状况是,不少时间被碎片化,可能还要引用一些专业内容,可能须要查资料,写文章的过程会被中断。这类文章不是一口气写完的,是先搭架子再填充完整的。其实写起来也很简单:先想好标题,再划分好目录结构,再一段一段的填充内容,最后再润色一下链接部分。文章能够不按顺序看,也能够不按顺序写。

我本身写的《关于浏览器、Weex、Flutter 的比较和思考》这篇文章就是先划分好了目录,再一点一点填充的,写文章的时间跨度也比较长,想起来一点写一点。spa

线性叙事是个链表,结构化叙事是树。

提高写做技巧


我初高中的时候比较喜欢看闲书,偶尔本身写点东西,可是我做文考得并不高,这里大言不惭地聊一下怎么写做文吧哈哈哈哈哈。只讲怎么写技术文章,并不能提高任何文学功底,但说不定能帮你避开一些小坑。

1. 碎片化记录,结构化整理

大部分人的问题是不知道该写什么,即便已经有足够的积累,有明确的话题要写,也不知道该如何下笔。这就要靠平常的积累了。

在平时工做的时候,能够建个文档库,把平常的一些琐碎的想法记录下来,随时写随时存。我是用手机的便签 App 随手记东西,比较喜欢它的语音转汉字功能,工做相关、生活相关,随时随地想起任何话题均可以记录下来。

在有了明确话题,准备写文章以前,先把各类碎片化的记录收集起来,造成一份“素材”文档,而后梳理文章脉络,把素材应用进去。操做起来很简单,刚开始的时候会遇到先后不通畅的问题,那就不要直接复制素材的内容,从新换个表达方式写出来。多练习练习就行了。

2. 刻意练习,先写再改

有了素材以后,平时能够专门练习写做能力,先写一小段话,明确的描述一个观点,而后不断修改。其实写周报就是一个很好的锻炼机会(如今不要求写了,自行练习),练习把作的事情描述清楚,说话的方式简单点,不要用太多高大上的词汇。最关键的部分在于:写完花五分钟再改一遍!读一下是否通顺,有没有把问题讲清楚。反复修改才是提高写做技巧的关键。

用周报举例有点奇怪,毕竟是邮件类型的东西,和写文章差异很大,仍是不要乱改周报了,改本身之前写的文章吧。找一篇本身之前写的,内容很不错可是写得不太行的文章,重写一遍!这个过程既温习了技术,又锻炼了写做技巧。不要以为无聊浪费时间,亲测颇有效的。

3. 注意排版和语法细节

对于不拘一格的程序员来讲,写出来的文章没有排版,就是屡见不鲜。不须要追求高级的排版技巧,稍微注意一下几个常见的问题就行了。

1)正确使用标点符号

大部分的文章里就只有逗号和句号,逗号和句号也是看心情随意划分,键盘上按到哪一个是哪一个。其实还有单双引号、顿号、冒号、分号、叹号、破折号、省略号、书名号、中文括号「」【】等等…… 使用方法能够去网上搜,这部分我以为问题很常见,就单独多讲了两句。对了,中文文章要用全角标点符号,尽可能不要混用英文标点符号。

2)添加多种展示形式,可参考 GitHub 的 Markdown 语法

若是全都是普通段落,看起来太平,能够加上无序列表、有序列表、段落引用、表格等等。行内排版能够加上粗体、斜体、代码标记等,偶尔还能够用删除线。

其余还有一些小的建议:

  • 区分大标题小标题,分配的均匀一些,最多不要超过三层。
  • 每一个章节的长短也尽可能均匀一些,太长的内容就拆个小标题。
  • 重要数据给出明确的数据源,扩展信息给出资料链接。
  • 中英文混写的时候,在中间加一个空格。
  • 注意英文的大小写,尤为是专业名词的缩写。
  • 英文喜欢长句,复合从句一层套一层;中文追求言简意赅,错落有致,能够多加标点符号,把长句分隔开。
  • 写完以后通读一遍,尽可能少写错别字……

最后一个小技巧:多用图片。即便图片里只有文字,信息量也远超文字。

image.png

然而这篇文章并无加不少图片,由于这并非一篇技术文章,你们在讲技术原理的时候要多用图片,一图胜千言!

写在最后


最后一个小建议:文章写多了就能够逐渐造成本身的风格,让全部文章都保持某种共性。

原文连接

本文为阿里云原创内容,未经容许不得转载。

相关文章
相关标签/搜索