在本节内容开始前,先定义一下使用场合,没有哪一种系统或者设备是万能的,都有它的优势和缺点,可以在具体的使用场景,根据自身的需求来取之便可。html
在本节以前,花了大量的篇幅来强调如何美化和如何安装平常办公应用程序,其实都是为了配合开发人员的 重开发,轻办公,基本无娱乐 的需求而提出的。是以做为生产力平台为目的而作的一些开发环境搭建。前端
在Linux下面有丰富的linux
总体点评:git
可视化的文本编辑器在 Linux Desktop 中是很重要的应用,首先由于Linux的文件系统就是一切皆文本。另外,在Linux下面高级的文档写做和开发工做也基本上全依赖于文原本实现的。github
文档的写做工做主要有以下几个步骤:sql
在Windows系统下面的传统Office办公用户,基本上是MsOffice全套所见即所得的方式来完成以上步骤,MsOffice为上面全部的内容都提供了一站式的服务,上手门槛低,只须要可以熟悉使用计算机,而后学习一些软件的基本操做就能够胜任基本的需求。数据库
此方法缺点也很明显:windows
总体来讲 ,传统的MsOffice的文档模式,是一种离线单体包办的模式,固然同时也是一种最简单上手的模式。浏览器
在Linux下,对于有Geek范的人,或者有必定开发能力的人,更新一些文档理念和使用一些更先进的文档工做是颇有必要的。服务器
Linux下面文档的写做也基本上遵循如上的步骤,可是它的工具链则更加接近开发人员的思惟,将文档的非内容部分的步骤变成和编写代码同样的过程了。所以 文档书写 在这里实际上变成了 文档开发 了。在Linux下面进行文档干发,须要有以下技能:
不论是哪一种平台使用哪一种工具,都是必须的,毕竟文档的展示形式只是表象,内容才是文档的核心价值体现。
此文档排版方式须要将版式信息包含在录入的文本当中 ,因此必需要一些简单的语法约束。
根据文档语法,对文档的源文件进行编译转化,生成指定的文档,主要是HTML,PDF等等。
对于普通非开发人员来讲,可能第3条是门槛最高的,可是目前已经有一些至关友好的可视化工具的产生,将使用门槛下降到普通非开发人员也能上手的程度了。
主要的文档语法以下(由上到下,语法的难度依次增长,可是功能也依次增强):
语法简单,对于绝大多数人来讲易学习并且够用,主要用于内容扁平涉及不多量的交叉引用的小文档写做,经过极其简单的语法能够快速生成整洁的文档。目前在网络上的主要:博客/发帖/邮件等场合。
语法稍微复杂,能够处理不少复杂的文档需求,工程组织性和交叉引用方面都有很强的优点,主要用于大型文档的写做,真正的接近于代码开发的思惟和模式(后面会专门开辟章节来详细讲解)。目前在网络上的主要应用:大型技术文档/产品介绍书等等场合。
主要用于科技论文的排版写做,语法最复杂,通常用于科研在学术刊物上的投稿。在网络上的应用还很少见。此语法是全部语法性文档的鼻祖。
主要的网络写做(最后要发布到网络上的文档)使用的语法是:Markdown和RestructuredText。这两种写做语法在Linux下面的主要开发工具以下:
只要是最终运行环境是基于Linux或者是跨平台的浏览器的开发,在Linux下面均可以找到很好的开发环境解决方案,固然对于Windows 客户端程序或者iOS客户端程序开发,Linux则显得很乏力。
目前对于这三类程序的开发,在Linux下面有很好的解决方案:
目前Linux Server绝对是互联网服务器的主流,全部的致使服务器开发的主流生产力工具在Linux基本上是最优解。
在服务器端确立以后,客户端是运行于浏览器的,在Linux下面对高级浏览器支持度很好。
因为Android自己就是基于Linux的架构,因此在Linux下面开发也是一种很天然的选择。
主要的开发用途及对应的生产工具以下:
这些程序通常要么是直接到官网上下载安装包,或者是直接在软件源里面使用:
apt-get install XXXX
便可轻松完成相应的环境搭建。
不少人觉得在Linux下做开发就只是只有黑窗口的控制台,以下:
而后对Linux环境下的开发就产生了恐惧感,其实并非这样的。
Linux本质是内核,而后上面运行各类应用程序,桌面也只是运行在Linux内核之上的一个应用程序而已。因为绝大多数用户习惯了Windows或者Mac下的图形用户界面,目前主流的Linux分支都将发行的Linux文件分为两个版本:
主要用于服务器程序运行。重视系统调用的稳定性,而弱化了人机交互体验,没有图形交互界面,纯粹依靠CLI命令行来进行操做。
主要用于平常的办公和开发。重视人机交互体验,集成了比较强大的Desktop桌面及桌面应用程序。
普通新手入门的时候,恐惧的都是没有界面的Server版,而不肯意在Linux作平常的办公和开发,即便有些项目的生产服务器是在Linux系统下,仍然会有人舍近求远坚持在Windows下作开发。这样每每会人为形成文件路径和系统环境移植上的麻烦。
其实Linux Desktop下面有不少成熟的桌面应用,特别是在开发领域,这些桌面应用的便捷性不亚于Windows。例如,下面的一些主要的IDE。
Python IDE(Pycharm):
Java IDE(Eclipse):
前端所说的这些内容,基本上算是以Linux的功能以及做为生产力设备能够发挥的做用给概述一遍了。有了这些总体认识,创建起了朴素的Linux的世界观和方法论以后,再补充一些基本的Linux操做系统(非Desktop)的知识,就能够开始互联网开发和应用之旅了。
后续会对Linux的原理及其强大的生产力工具和方法进行介绍。
PS: 可能有人会问,什么是“生产力”,在此要解释一下:
按照恩格斯的观点,从本原看,生产力是具备劳动能力的人和生产资料相结合而造成的改造天然的能力。
按照目前世俗的观点,从表象来看,生产力就是可以给你带来更好的生活体验和生活自由的东西(其实我不想说是“钱”,太俗气了)
做者: | Harmo哈莫 |
---|---|
做者介绍: | https://zhengwh.github.io |
QQ: | 1295351490 |
时间: | 2015-08-24 |
版权说明: | 未经许可,严禁用于商业目的的非法传播 |
联系或打赏: | http://zhengwh.github.io/contact-donate.html |