为什么有人说每个开发者都需要学一下Markdown?

DanceWithPython


首先,什么是 MarkDown 呢?要想清楚为什么?必须先知道它是什么?有什么优点,知道了这两点,就知道为什么(原因了)了?

所以,我们必须弄清楚,什么是 MarkDown 呢?


MarkDown

Markdown 是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。


Markdown 是一种轻量级标记语言,让使用者专注于写作而不用关注样式。它允许人们使用易读易写的纯文本格式编写文档,然后转换成格式丰富的 HTML 页面(且 Markdown 是兼容 HTML 语法的)。所以用 Markdown 写文章,写文档是最适合不过的了。

MarkDown 有什么优势?

  • 相比其他编辑器的特点,MarkDown 是轻量级标记语言,语法简单

  • 内容也是文本

  • 格式是统一固定


最大的优势就是语法简单,非常轻量,常用的标签记住几个就能够把文档排的非常漂亮,而是格式非常统一固定,不会因为导出导致排版混乱。所以,非常好。

为什么开发都需要学一下 MarkDown ?

因为开发者经常要写文档,尤其是现在很多程序员和 IT 网站都支持 MarkDown ,比如 GitHub 就是使用 MarkDown 来写 readme 的。现在很多开发工具以及技术文档都是 markdown 格式的。


作为程序员和开发者,如果你不懂,那就太落伍了,重点我感觉使用 markdown 写文档,简单,方便,快捷,可以节省开发者很多时间,提高效率。


所以,开发者真的都有必要学习 markdown 。


关注「非著名程序员」,每天分享有价值的科技内容,也欢迎大家在回答底下留言,一起交流分享,另外回答不易,请点赞支持。感谢!

非著名程序员


首先我们来看一下Markdown的百度百科与维基百科是怎么说

Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。

维基百科说

Markdown is a lightweight markup language with plain text formatting syntax. Its design allows it to be converted to many output formats, but the original tool by the same name only supports HTML.Markdown is often used to format readme files, for writing messages in online discussion forums, and to create rich text using a plain text editor.

总之,markdown是一种语言,它可以被用来编写文档。你可以使用简单的标记语法,来写出具有一定格式和样式的文档。

markdown被广泛用于博客程序,在一些博客引擎中,markdown最终会被转译为html元素,markdown最终被翻译为html文档。使用这种方式的博客引擎有、等。

markdown被github指定为README专用的文档格式,github中的每一个目录下的文件都会被当成是当前目录的解释文件,被显示在详情页上。

我觉得这一点很重要,GitHub是程序员很重要的网址,而markdown被github指定为README专用的文档格式,你说程序员需不需要知道呢?


markdown的语法特别简单,只需要稍作学习,就可以轻松运用。

但markdown也有局限性,例如大多数markdown的使用场景都是在电脑上,由于移动端的输入特性,markdown没有一个好的方式为移动端提供支持。再就是markdown支持的格式没办法实现类似于论文那样的精准格式要求,所以不适用于一些对格式要求过强的场景。

markdown基础语法

markdown文档的后缀名是。

markdown文档不需要任何标签,你可以在一个为后缀名的文件中的任意位置写符合markdown语法的内容。

markdown语法指的是通用的markdown文档的约定,不代表下面叙述的内容在实际应用上能被全部编辑器或解释系统输出为同样的结果。通常在博客系统中,markdown还会被转译为html,在转译过程中,开发者会按照自己的喜好或主题的要求,将markdown内容转化为一些特定的样式,将markdown文档进行相应的美化。但通常来讲,markdown文档都会遵循下面语法所描述的约定。

标题

在一行文字前写1~6个号,当前行会被当成标题来处理。1个号表示1级标题,字号在标题中最大;6个号表示6级标题,字号在标题中最小。标题会加粗处理,并且单独占领一行。

实现效果是

这是一级标题这是二级标题这是三级标题这是四级标题这是五级标题这是六级标题字体

下面将展示一些字体的写法。

实现结果是

加粗的文字两边用两个包围

倾斜的文字两边用一个包围

加粗倾斜的文字两边用三个包围

要加删除线的文字两边用两个包围

引用

引用的文字使用 来开始,下面的一段都会被显示为引用形式。例如

这段是引用文字

如果需要多行,可以在引用中使用 来折行。

> 第一行
第二行

第一行 第二行

如果内容太多,则需要使用 标签,在这个标签中的所有内容都会被显示为引用的形式。

这段文字你真的放心不管换几行都是引用

而且,引用可以和其他标记一起使用。

这段引用里放了个一级标题

引用可以使用多级

我打算在这引用点东西我打算弄个第二层

分割线

使用 >= 3个的 或 号都可以表示一个分割线。

下边是两个分割线

列表

使用 来表示无序列表,符号和内容之间要有一个空格。

  • 列表
  • 列表
  • 无序列表

使用来表示有序列表,数字和内容之间要有一个空格。数字顺序不会影响列表真正的数字顺序。

  1. 第一个
  2. 第二个
  3. 就算写的是4实际上也是3

列表之间可以嵌套,子级比父级多打即可。

  1. 第一个
    1. 第一个里的第一个
    2. 第一个里的第二个
  2. 第二个
  3. 第三个
  • 我也不敢问
  • 我也不知道
  • 第二个里咋啥都没有

链接

使用来表示一个点击了会跳转的超链接。

图片

使用来表示一个图片。

表格

表格的格式较复杂,但是一些markdown编辑器都会提供快捷的编写表格的功能。

表格的格式是

实现效果是

表头表头表头表头右默认左对齐靠右中右默认左对齐靠右中右默认左对齐靠右中

表格使用类似来分割表头和身体。表头、分割线、表体的格子数都要一样。分割线中不加,该列默认左对齐;右边加,该列右对齐;两边加,该列居中对齐。

原生的markdown语法要求表格两边都要用包起来,一些特殊的markdown引擎没有此要求。

代码

在多行代码的第一组三个反引号右边,可以标注代码所属的语言,这样可以方便markdown转译时做相应处理。例如

代码功能也不一定应用于代码,在一些文献的编写中,可以用于公式。代码块的功能主要是可以将里边写入的内容按原样显示,不被markdown解释器所解释。本文的markdown标记部分全部都是使用代码块的方式写的。

markdown高级用法应用于一些博客系统

在上一篇文章中提到如何使用hexo搭建一个个人博客。搭建成功后,就可以使用markdown语法来写文章了。由于hexo使用的是markdown引擎,所以在执行的时候markdown会被hexo转译为对应的html形式。再加上hexo有优秀的主题模块,同样的markdown遇到不同的主题,也会变成不同的样子。

如果使用typecho博客引擎的话,hi在编写博客的时候使用markdown,但是不会被马上转译为html。在查看对应内容的时候,typecho会使用markdown解释器来显示文档内容。

如果你会使用html标签

markdown文档中是可以插入html标签的,所以如果你会使用html标签,你的markdown文档会更加丰富的。例如我们可以使用css样式来使markdown文档内容具有颜色。例如:

这行字是红色的

虽然markdown支持使用html来丰富内容,但在实际使用上还是不建议过多依赖于这种形式。因为我们选择使用markdown时就是看中了markdown简单快速,但是html标签的支持却与markdown本身的理念背道而驰。所以建议偶尔使用或者是在必要的时候使用html标签来增强markdown的功能或者是完成必要的内容,而不是过度依赖于html来编写markdown文档。

一些工具typora

推荐使用typora来作为markdown编辑器。它符合markdown的初衷,简洁、高效。输入好的一段markdown文档,会在你光标切换到下一段的时候直接显示为markdown应该成为的样式。但是缺点也有一些,例如不支持多标签,没有命令行工具。typora支持windows、macOS、Linux平台,官网提供主题下载功能。

vscode

如果你的电脑上有vscode,同样推荐你使用vscode来编写markdown。vscode默认支持markdown解析,并可以将界面分成左右两边显示,左边输入markdown文档,右边显示结果。vscode比typora更多地支持命令行工具,所以在使用一些博客系统的时候会感觉到更舒服一些。

vscode也有更多的插件可供选择,如果对typora的“马上就能看到结果”不太感兴趣的话,不妨试试vscode。

sublime

sublime和vscode原理相同,支持命令行,可以安装插件。但是vscode完全免费,就没有尝试sublime。

结语

markdown真的很好用,很多编辑器也支持将markdown导出为其他格式。试想老板让你几分钟之内做出一篇文档,当别人还在等待word打开的时候,你的文档已经写好开头了。当别人给老板甩过去一个.doc的超大文件,老板也在等待word打开的时候,你使用markdown生成的html两秒内就展示在老板面前了,是不是这样的结果可以让人眼前一亮呢。

还有那个notepad,打开就白底黑字,缩进都支持不全,打上去的都是楷体字巴丑巴丑的。还有好多同行在聊天窗口里打代码,每行有几个缩进就按几个Tab,还不一定缩得准;一个手滑就把换行里的shift忘掉了导致打了一半的代码发出去了。所以我求求你们了,都学一学markdown吧,真的比你们用的好用好几百倍,效果更是比你们实现的效果强好几千倍。


源源而来


Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。

Markdown具有一系列衍生版本,用于扩展Markdown的功能(如表格、脚注、内嵌HTML等等),这些功能原初的Markdown尚不具备,它们能让Markdown转换成更多的格式,例如LaTeX,Docbook。Markdown增强版中比较有名的有Markdown Extra、MultiMarkdown、 Maruku等。这些衍生版本要么基于工具,如Pandoc;要么基于网站,如GitHub和Wikipedia,在语法上基本兼容,但在一些语法和渲染效果上有改动。

Markdown的语法简洁明了、学习容易,而且功能比纯文本更强,因此有很多人用它写博客。世界上最流行的博客平台WordPress和大型CMS如Joomla、Drupal都能很好的支持Markdown。完全采用Markdown编辑器的博客平台有Ghost和Typecho。

用于编写说明文档,并且以“README.md”的文件名保存在软件的目录下面。

除此之外,由于我们有了RStudio这样的神级编辑器,我们还可以快速将Markdown转化为演讲PPT、Word产品文档、LaTex论文甚至是用非常少量的代码完成最小可用原型。在数据科学领域,Markdown已经广泛使用,极大地推进了动态可重复性研究的历史进程。

综上,如果开发者学习了Markdown之后,就会有很多可以借鉴的地方。


优良家风


与其说每个程序员要学一下 Markdown,不如说每个程序员都要养成写文档的能力。程序员平时的日常工作中,经常会使用文档去记录一些工作方面的信息以及一些技术架构的设计等等。打个比方,我日常就会使用文档记录一些 Linux 方面的命令和一些有用的网址,这些信息有时候我不可能每个都记住,文档方面的记录,也便于我以后的回顾使用。

Markdown 本质是一门轻量级标记语言,一般使用 Markdown 用来编写文档。我刚开始写文档时,用的最多的还是 Word 进行编辑,但是用的时间一久,发现我很多精力会消耗在文档的格式编排上面。比如字体加粗、字体的大小设置、标题设置、表格、图片等等,有时候弄格式的时间比写文档还长,这也肯定不是我们程序员想要的。

后来的话,我开始使用 Markdown 语法来编辑文档。程序员日常工作中,最多的还是写代码。使用 Markdown 的好处是,在格式方面的编排全都是相关符号进行编排,全部都是自己手打各种符号来编辑格式。写一篇文档,感觉就像一直在写代码一样,这对于程序员来说,很熟悉和方便。我现在使用 Typora 这款软件写 Markdown 文档,整体编写非常顺畅。

学习 Markdown 的终极目的,还是为了日常工作的文档编写。可能你在工作中,经常听到主管们说要有工作沉淀,那么文档沉淀,也算其中一种。健全的文档,能够帮助新人快速的融入和熟悉将要从事的工作内容。自己多写文档,进行总结,其实对于自己的技术提升也是很大的一种帮助,自己未来也可以再进行回顾学习。

写文档的其他一个方面,尤其是技术文档,可以提升个人的技术影响力,尤其是你未来晋升的时候,个人的影响力是一个评判的标准。你编写的技术文档给别人看,帮助别人解决问题和技术学习,那么你的技术就会得到别人的认可,未来在这方面的技术难题时,别人都会来找你,你所起的作用,在公司里面,也会更大。

我是Lake,专注大数据技术原理、人工智能、数据库技术、程序员经验分享,如果我的问答对你有帮助的话,希望你能点赞关注我,感谢。

我会持续大数据、数据库方面的内容,如果你有任何问题,也欢迎关注私信我,我会认真解答每一个问题。期待您的关注


Lake说科技


因为大部分人没说,只有少数人说了,所以叫有人说。为什么少数人要这么说,我估计是因为他学会了,而他看好多其他人还不会,优越感和自豪感油然而生。这种感觉,可能就像使用git的人说大家都应该学git而不是SVN,使用idea的人有人说不要eclipse,使用GO丢弃c++,使用PYTHON不用PHP。其实,markdown如果只是使用,学习时间只需要几分钟入门极为容易,学学当然没坏处,技多不压身。但肯定没到每个开发者都必须学的地步。它更多作用是写文档,现在写文档的工具多了去了,选择余地很大。

当然,我也建议大家都学一学。[马思纯的微笑]



编程圈


开发者?搞过HTML、XML之后,Markdown 还用学?


分享到:


相關文章: