如何提高代码编写效率(编辑器篇)

一、前言

相信大部分人在日常 coding 的时候总是会碰到一些效率问题,即总能遇到一些重复繁琐的工作。既然我们是程序员,那么就应该用程序的能力来解决这部分问题。

下面,笔者就来分享一些基于编辑器的常见的能提高编码效率的手段。学会之后,不仅可以提高效率,也可以在其他人面前展示自己装 X 😄。

二、Code Snippets

code snippets 相信很多代码编辑器都是支持的,用的好的话可以让我们节省掉很多时间。

常见的比如说特定文件类型的一些初始化的代码。举个例子:像写 React 的时候,我们可以利用编辑器提供的能力来生成一份特定的 code snippets

import * as React from 'react'

export function Test() {
  return (
    <div></div>
  )
}

因此,这部分主要分享两个点:

  1. 如何在主流的代码编辑器中创建自己的 code snippets,如 webstorm 和 vscode
  2. 一些常用的 code snippets 分享

1.1、在 webstorm 中创建 code snippets

webstorm 中,打开偏好设置或者直接 command + , ,搜索 Live Templates 就可以看到:

如何提高代码编写效率(编辑器篇)
webstorm 会默认提供一些常见的 code snippets 来使用,你也可以创建完全由自己定义的 code snippets

1.1.1、自定义 code snippets

基于 React 场景,我们要写一个函数的话得花多少时间呢?可以看下面这个视频:

如何提高代码编写效率(编辑器篇)

可以发现,速度还是挺慢的,更别说我们日常开发的时候时间很紧,这个速度可以急死人😭

但是如果使用 code snippets 那速度就可以明显提上来了,如下图所示:

如何提高代码编写效率(编辑器篇)

我们可以在 Live Templates 下新建一个别名为 usccode snippets ,然后输入我们的 Template text:

const $HANDLER$ = useCallback(() => {
    $STATEMENT$    
}, [])

其中被 $ 包裹住的变量为占位符,我们在输入关键词之后会让我们依次填充这些位置的内容。废话不多说,我们来看一下具体的效果:
如何提高代码编写效率(编辑器篇)

1.1.2、Postfix Completion

上面这种方式就是纯静态的代码生成,只不过我们可以自定义占位符,实际上变量什么的还是得手动输入。如果想要根据变量来生成特定的 code snippets ,那就得用到 Postfix Completion 了。

同样的,在 webstorm 中打开偏好设置或者直接 command + , ,之后搜索 Postfix Completion 可以看到:

如何提高代码编写效率(编辑器篇)

如何提高代码编写效率(编辑器篇)

同样的 webstorm 内部已经内置了一些默认的 Postfix Completion

同样以 React 为例子,如果我们创建一个 Test 组件,正常来说是这样的速度:

如何提高代码编写效率(编辑器篇)

看着似乎还行,但是跟自动插入的 code snippets 比就慢太多了:

如何提高代码编写效率(编辑器篇)

如下图所示,我们只需要新增一段基于 Postfix Completioncode snippets 即可:

如何提高代码编写效率(编辑器篇)

其中 $EXPR$ 指的是变量的占位符。

1.2、在 vscode 中创建 Code Snippets

vscode 中按住 command + shift + p 并搜索 snippets 可以看到这些选项:

如何提高代码编写效率(编辑器篇)

可以选择在已有的 snippets 中新增,也可以创建一个新的 snippets 文件。

1.2.1、自定义 code snippets

配置可以参考:

{
  "try catch finally": {
		"scope": "javascript,typescript",
		"prefix": "trycf",
		"body": [
			"try {",
				"$1",
			"} catch (error) {",
				"console.error(error)",
			"} finally {",
				"$3",
			"}"
		],
		"description": "try catch finally"
	}
}

其中:

关键词 功能 / 描述
scope 生效的类型
prefix 自定义的前缀,输入之后可以插入 code snippets
body 插入的 code snippets
description 描述这段 code snippets 的作用

上面其实已经讲过 snippets 的用法了,所以这里可以重点关注一下 vscodecode snippets 的配置格式。

1.2.2、Postfix Completion

虽然 vscode 没有自带这个功能,但是所幸 vscode 有万能的插件,可以去插件市场搜索:

如何提高代码编写效率(编辑器篇)

目测功能和 webstorm 大差不差,推荐大伙可以自行去体验一下,这里就不再赘述。

三、常用的快捷键

3.1、前进 / 后退 / 最近编辑的文件 / 最近编辑的代码块

试想一下以下几种在日常 coding 中常见的场景:

  • 在同一个文件的不同代码块之间跳转
  • 在不同文件之间跳转
  • 在上次编辑的文件和当前文件中跳转

如果不使用快捷键的话,我们只能依靠滑动 / 搜索 / 点击 Tab 切换来处理这几个场景,但是用上了快捷键那么就方便多了。

3.1.1、在 webstorm 中使用这类快捷键

前面所说的这几种操作,在 webstorm 中的对应的快捷方式如下:

操作类型 快捷键
前进 command + ]
后退 command + [
最近编辑的文件 command + e
最近编辑的代码块 command + shift + e

下面附上一段录屏,演示一下上面所说的这几种操作方式的示范:

如何提高代码编写效率(编辑器篇)

3.1.2、在 vscode 中使用这类快捷键

前进 / 后退的快捷键和 webstorm 的一致,但是最近打开过的文件需要下载一个插件才能支持:

如何提高代码编写效率(编辑器篇)

3.2、refactor

代码重构是一个高频的操作,包括但不限于:

  • 改动变量名
  • 改动函数名
  • 移动文件 / 函数 / 变量 到另外一个目录下

不过这类属于高危操作,但是如果借助于 ide 的能力来做的话通常就会事半功倍。

3.2.1、在 webstorm 中重构代码

选中需要重构的变量 / 方法,按住 ctrl + t,选择 rename ,webstorm 会高亮出当前文件中所有的相关的变量 / 方法,填入重构后的名字即可全部替换。

如何提高代码编写效率(编辑器篇)

3.2.2、在 vscode 中重构代码

按住 shift + F6,如下图所示:

如何提高代码编写效率(编辑器篇)

键入需要修改的名字即可。

未完待续……

原文链接:https://juejin.cn/post/7334882866013683747 作者:Tonychen

(0)
上一篇 2024年2月17日 上午10:21
下一篇 2024年2月17日 上午10:32

相关推荐

发表回复

登录后才能评论