前言

我刚开始是一名 Java 程序员,陪伴我最久的老伙计是 Java 世界里面出名好用的是 Jetbrains 家族的重量级产品 Intelli IDEA 编辑器,不过 IDEA 主要是用来写代码,文本编辑,配置编辑,我都是使用 Vim,Sublime Text 3 来处理,但是随着我学习的编程语言越来越多,例如 Ruby,Go,JavaScript,我的电脑开始安装很多编辑器,具体如下:

  • Intelli IDEA:用于编辑 Java 程序
  • RubyMind:用于编辑 Ruby 程序
  • GoLand:用于编辑 Go 程序
  • WebStram:编辑 JavaScript 程序
  • Sublime Text:文字、文本、JSON、XML等编辑任务
  • Vim:系统、配置文件、少量代码修改等编辑任务
  • Typora:Markdown 编辑器
  • 等等……

且不说这么多编辑器让人眼花缭乱,光是动辄上 GB 的空间占用,也让我低配版的 Macbook 磁盘吃紧,而且不同软件之间的快捷键,界面布局不同,学习起来也造成很大的心智负担。

最后还有一个理由就是 ,这么多软件,要买正版可不是一笔小的费用,我还没有土豪到那个地步。

另外你问我为什么不用盗版,如果我们程序员自己还用盗版软件的话,那么不是自己砸自己的饭碗吗 ?

我开始思考一个问题:有没有一款编辑器能解决我所有的编辑任务?

于是我开始清点自己对于编辑的需求,整理如下:

  • 开源免费(每年几百美金的 Licence 去买好吃的不香吗?)
  • 轻量级,不太占用空间(Mac 磁盘寸土寸金)
  • 高性能,毕竟我平时有很多大文件编辑的工作
  • 扩展能力强:当我切换到其他编程语言,我不需要切换工具
  • 能解决我所有的编辑需求,例如编程语言:Java、Ruby、golang,文本编辑,Markdown,XML,JSON 等

我开始想象,如果找到这样一款编辑器,我可以用大部分的精力去学习它,然后深入研究精通它。

这样我所有的编辑工作都用它来完成,这样所有的编辑效率都能提高,从而整体的工作效率都能提高。

且不说降低磁盘占用的空间,起码也可以降低不同编辑器之间的学习成本和心智负担。

然后我就找到了它,今天我要分享使用心得的主角:VSCode

VSCode 入门介绍

严格意义上来说 VSCode 并不是类似 Jetbrains 产品,它只是一款纯文本编辑器,类似你在 Windows 上使用的TextPad,也类似 Mac 平台上的 TextEdit,或者 Sublime Text,所以 VSCode 的本质工作还是文本编辑。

因为 VSCode 是基于 Electron 框架开发,所以它可以再在不安全任何插件的情况下,对 HTML、CSS、JavaScript 提供很好的支持,也这是很多前端程序员一直推崇 VSCode 的原因

在原生情况下,它的核心功能还是编辑,但是相比传统的编辑器,VSCode 提供以下几点内置功能,所以它应该是更加适合程序员使用的编辑器,如下:

  • IntelliSense 智能提示:通过机器学习分析你过往的输入,给出代码补全和职能提示(和 IDE 的补全不同)
  • 内置 Git 支持:这里不多介绍了,程序员应该都知道 Git。
  • 内置 Terminal 终端:Sublime Text 想要集成终端都还要装插件,VSCode 开箱就送了。很方便
  • 插件市场:让你的 VSCode 扩展无限可能(这才是 VSCode 的杀手锏功能)

最后,因为它是跨平台的编辑器,所以你也不用担心你是用 Windows 还是 Mac 操作系统了

轻便的 VSCode

VSCode 原生包只有 100M 大小,就算不在进行扩展包安装的情况下,已经可以替代 Sublime Text、Vim 帮我完成平时的编辑工作了,而且只需要进行简单的 PATH 配置,就可以替代原来的 vim 指令:

原来的 vim 编辑:

vim fileName

使用 code 编辑

code fileName				// 使用 vscode 编辑指定文件

另外一个是我比较常用的技巧:使用 code 快速打开编辑目录

cd /target/dir/
code . // 使用 vscode 编辑当前目录

另外 VSCode 上手曲线比 Vim 更加平缓,适合新手,也更容易获得成就感,也就更容易坚持。

性能

除了本身占用空间小,编辑性能也是 VSCode 值得拿得出手的地方,至少目前近半年的编辑工作中还没有遇到过无法用 VSCode 打开的情况,整体性能的优化比师出同门的 Atom 还要领先许多,在我接触过的大文件加载和编辑中没有掉过链子,而且内存占用率也非常低,对比 Jetbrains 动辄 3-4G 的内存占用来说,可谓是轻便许多,使用 8G 版本的 Macbook 完成轻量级的编程工作也是没有任何问题的

插件扩展

扩展是 VSCode 的招牌能力了,我们看看它是如何通过扩展能力,VSCode 扩展可以通过以下2个思路解决:

  1. Extension Pack:流行的扩展包,通常找到对应语言的 Extension Pack 一键安装即可
  2. 插件:例如 Markdown,Vim 可以通过直接安装插件即可

下面推荐几个替代 Jetbrains 产品的 VSCode 功扩展包:

  • Intelli IDEA:使用 VSCode + 扩展包:Java Extension Pack 解决
  • RubyMind:使用 VSCode + 扩展包:Ruby Extension Pack 解决
  • GoLand:使用 VSCode + 扩展包:Go Extension Pack 解决
  • WebStorm:VSCode 原生支持
  • TypTypora:VSCode + 插件 Markdown All in One 解决
  • 流程图:推荐插件:PlantUML (现在所有系统架构,设计类图,我都通过它来实现)

通过上述插件,VSCode 虽然在很多其他语言开发中,还不够强大,但是满足 80% 的功能就已经足够了,最重要的是它带来的方便,轻巧,远比那些重量级的功能要好用的多

VSCode 插件:

好用的插件可以让 VSCode 事半功倍,推荐几个我在用并且觉得好用的 VSCode 插件给大家:

  1. Code Runner:一键运行 32中编程语言的执行器,非常好用
  2. Atom One Dark Theme:基于Atom的 One-Dark 主题。市场上最受好评的一个黑暗主题
  3. Git Graph:Git 图仓库,对于 Git 仓库提交历史一目了然,非常清晰
  4. GitLens:不多说了,VSCode 必装 Git 插件,没有之一
  5. LeetCode:平时刷题的小伙伴,一定要装,集成度非常高,墙裂推荐
  6. Markwodn Preview Github Styling:类似 Github 风格的 Markdown 解析器,常用 Github 小伙伴不能错过
  7. Peacock:多工作区标记,对于同时打开多个工作区,反复切换的同学,可以通过颜色标记,快速找到目标
  8. VScode-icons:一款美化后的 VScode 图标库,提升了很多 default icon 的美观
  9. 等等…… 期待你自己发掘
VSCode 快捷键:

高效利用工具的秘诀在于熟练掌握它的快捷键,

所以推荐几个常用的 VSCode 快捷键,帮助大家提高效率:

  1. 快速打开用户设置:⌘ + .
  2. 快速打开命令面板:⌘ + ⇪ + P
  3. 快读跳转代码段:⌘ + ⇪ + O
  4. 快速查找文件:⌘ + P
  5. 跳转到指定行:⌃ + G
  6. 文件内搜索:⌃ + F
  7. 跨文件搜索:⌃ + ⇪ + F
  8. 打开终端:⌃ + `
  9. 创建终端:⌃ + ⇪ + `
  10. 代码格式化:⌥ + ⇪ + F

日常编辑常用的快捷键就这些

更加详细的可以自行查看 VSCode 键盘映射表(File -> Preferences -> Keymap Extensions)

VSCode 小技巧:

分享一些不为人知,高效且实用的 VSCode 实用经验的和技巧,如下:

  1. 用户设置分为:User Settings /Workspace Settings,它们设置页面一样,区别是全局,工作区生效范围不同
  2. 大部分的快捷操作,都可以通过控制面板(⌘ + ⇪ + P)的指令来完成
  3. 通过 “editor.tabSize”: 4 可以设置 tab 的空格数
  4. 通过 "files.exclude": {} 设置可以排除你在 VSCode 中不想看到的代码和文件
  5. 在资源管理中直接输入文件名,可以直接搜索文件
  6. 通过 View -> Apperance -> Zen Mode 进入禅模式,可以更加专注的编写代码
  7. 多光标:按住 Alt + 左键,可以同时编辑多处文本
  8. 通过 File -> Auto Save 可以直接自动保存,也可以通过 settings.json 进行更加个性化的设置

最近几个月的 VSCode 使用心得就分享到这里,未来 VSCode 依然会是我的主力编辑器,承担的所有的写作/文本/编程的工作,毕竟它这几个月来也完成的非常出色。我相信 VSCode 在后续的版本中会越来越强大,插件也更加完善和丰富,所以投资时间学习 VSCode 应该是一件很有回报的事情

完全使用 VSCode 开发的心得和体会的更多相关文章

  1. <2048>调查报告心得与体会

    老师这次给我们布置了一个任务,就是让我们写一份属于自己的调查报告,针对这个任务,我们小组的六个人通过积极的讨论,提出了一些关于我们产品的问题,当然这些问题并不是很全面,因为我们是从自己的角度出发,无法 ...

  2. .Net Core Linux centos7行—vscode开发,linux部署运行

    前面搭建好啦linux运行环境,下面搭建windows下的开发环境.并完成调试 参考地址:https://www.microsoft.com/net/core#windows. 按照步骤来就好.安装. ...

  3. vscode 开发.net core 从安装到部署 教程详解

    一:环境准备: windows系统需要 win7 sp1 / windows 8  / windows 2008 r2 sp1 / windows10: 其他版本的windows系统在安装.NET C ...

  4. 用VSCode开发一个基于asp.net core 2.0/sql server linux(docker)/ng5/bs4的项目(1)

    最近使用vscode比较多. 学习了一下如何在mac上使用vscode开发asp.netcore项目. 这里是我写的关于vscode的一篇文章: https://www.cnblogs.com/cgz ...

  5. 用VSCode开发一个基于asp.net core 2.0/sql server linux(docker)/ng5/bs4的项目(3)

    第一部分: http://www.cnblogs.com/cgzl/p/8478993.html 第二部分: http://www.cnblogs.com/cgzl/p/8481825.html 由于 ...

  6. Java开发学习心得(二):Mybatis和Url路由

    目录 Java开发学习心得(二):Mybatis和Url路由 1.3 Mybatis 2 URL路由 2.1 @RequestMapping 2.2 @PathVariable 2.3 不同的请求类型 ...

  7. Java开发学习心得(一):SSM环境搭建

    目录 Java开发学习心得(一):SSM环境搭建 1 SSM框架 1.1 Spring Framework 1.2 Spring MVC Java开发学习心得(一):SSM环境搭建 有一点.NET的开 ...

  8. DEPHI XE5 XE6 ANDROID IOS开发的几点体会

    DEPHI XE5 XE6 ANDROID IOS开发的几点体会 2014-09-04 20:48 1.不纠结于APK或者APP的大小.现在的客户端设备都很廉价,300元以上的新安卓设备都不在乎软件的 ...

  9. 使用vscode开发调试.net core应用程序并部署到Linux跨平台

    使用VS Code开发 调试.NET Core RC2应用程序,由于.NET Core 目前还处于预览版. 本文使用微软提供的示例进行开发及调试. https://github.com/aspnet/ ...

随机推荐

  1. Java对象延迟初始化的实现

    一.什么是延迟初始化? 在Java多线程程序中,有时候需要采用延迟初始化来降低初始化类和创建对象的开销. 延迟初始化实际上就是:当我们要进行一些高开销的对象初始化操作时,只有在使用这些对象时才进行初始 ...

  2. word2vector论文笔记

    背景 很多当前的NLP系统和技术都把单词像ont-hot一样当做原子性的一个概念去对待,单纯就是一个索引,无法表示词之间的相似性.原因就是往往一个简单的.鲁棒的.可观测的模型在海量数据集上的学习效果要 ...

  3. 一个http请求的完整详细过程

    整个流程 域名解析: 与服务器建立连接:tcp连接: 发起HTTP请求: 服务器响应HTTP请求,浏览器得到html代码: 浏览器解析html代码,并请求html代码中的资源(如js.css.图片): ...

  4. QUIC协议文档翻译——什么是QUIC

    原文地址https://docs.google.com/document/d/1gY9-YNDNAB1eip-RTPbqphgySwSNSDHLq9D5Bty4FSU/edit QUIC是一个谷歌提出 ...

  5. 破解编码面试第六版 - JavaScript

    破解编码面试第六版 - JavaScript Cracking the Coding Interview: 189 Programming Questions and Solutions 6th Ed ...

  6. Swift 5.3 All In One

    Swift 5.3 All In One refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!

  7. VS Code All in One

    VS Code All in One Visual Studio Code All in One https://github.com/xgqfrms/vscode/ VS Code Shift + ...

  8. CORS All In One

    CORS All In One 跨域资源共享 https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS CORS 请求类型 简单请求 预检请求 Ac ...

  9. WebView & WKWebView & UIWebView

    WebView & WKWebView & UIWebView WebView WKWebView https://developer.apple.com/documentation/ ...

  10. CentOS 7.6.1810 运行pupperteer

    故障排除 安装puppeteer,使用cnpm 解决依赖 $ yum -y update $ yum install -y pango libXcomposite libXcursor libXdam ...