程序员请收好:10个非常有用的Visual Studio Code插件
作者 | Daan
译者 | Elle
出品 | CSDN(ID:CSDNnews)
【导读】一个插件列表,可以让你的程序员生活变得轻松许多。无论你是经验丰富的开发人员还是刚刚开始第一份工作的初级开发人员,你都会想让自己的开发工作尽可能轻松一点。正确的工具使用则可以帮助你实现这个目标。
如果你选择使用Visual Code作为IDE,你就可以使它符合你的偏好选择。实现此目的的一种方法是安装正确的插件。为了让你的生活尽可能的简单,你可以添加很多你想要的内容。
你使用的插件将会对你的工作效率以及工作方式产生很大的影响。这就是为什么我们要运用Visual Studio Code插件列表的原因。
下面为大家推荐的所有插件都可以在 Visual Studio Marketplace 上免费获得。
一、Visual Studio Intellicode
下载超过320万次的Visual Studio Intellicode是Visual Studio下载次数最多的插件之一。而且,在我看来,它是你能用到的最有用的插件之一。
这个插件旨在帮助开发人员提供智能的代码完成建议而构建的,并且已预先构建了对多种编程语言的支持。
Visual Studio Intellicode使用机器学习技术来观察和查找众多开源GitHub项目中使用的模式,并在编码时提供建议。
二、 Git Blame
这是谁做的?!有时候,你需要知道是谁写了这段代码。好吧,Git Blame进行了救援,它会告诉你最后接触一行代码的人是谁。最重要的是,你可以看到它发生在哪个提交中。
这是非常好的信息,特别是当你使用诸如特性分支之类的东西时。在使用特性分支时,你可以使用分支名称来引用票据。因为Git Blame会告诉你哪一个提交(也就是哪个分支)的一行代码被更改了,所以你就会知道是哪一个票据导致了这种更改。这有助于你更好地了解更改背后的原因。
三、Prettier
Prettier是开发人员在开发时需要遵循一组良好规则的最佳插件之一。它是一个引人注目的插件,让你可以利用Prettier软件包。它是一个强大的、自以为是的代码格式化程序,可以让开发人员以结构化的方式格式化他们的代码。
Prettier与JavaScript、TypeScript、HTML、CSS、Markdown、GraphQL和其他现代工具一起使用,可以让你能够正确地格式化代码。
四、JavaScript (ES6) Code Snippets
每个略更新的网页开发人员可能都使用过各种JavaScript堆栈。无论你选择哪种框架,在不同的项目中键入相同的通用代码应该会减少你的工作流程。
JavaScript (ES6)Code Snippets是一个方便的插件,它为空闲的开发人员提供了一些非常有用的JavaScript代码片段。它将标准的JavaScript调用绑定到简单的热键中。一旦你掌握了窍门,你的工作效率就会大大提高。
五、Sass
你可能已经猜到了,这个插件可以帮助正在使用样式表的开发人员。一旦开始为应用程序创建样式表,就一定要使用Sass插件。该插件支持缩进的Sass语法自动设置语法指导 、自动补全和格式化。
在样式方面,你肯定希望将此工具包含在你的工具集中。
六、Path Intellisense
Path Intellisense是Visual Studio代码之一,它可以为你的开发提供有保证的生产力提升。如果你同时处理许多项目,使用了太多不同的技术,那么你肯定会需要一个可以帮你记住路径名的便捷工具。这个插件将为你节省大量的时间,否则将浪费在寻找正确的目录上。
Path Intellisence最初是用于自动完成文件名的简单扩展,但它后来被证明是大多数开发人员工具集中的宝贵资产。
七、Debugger for Chrome
如果需要调试JavaScript,则无需离开Visual Studio Code。微软发布的Chrome调试器允许你可以直接在Visual Studio Code中调试源文件。
八、ESLint
ESLint插件将ESLint集成到Visual Studio Code中。如果你不熟悉它,ESLint就会作为一个静态分析代码的工具来快速发现问题。
ESLint发现的大多数问题都可以自动修复。ESLint修复程序可识别语法,因此你不会遇到由传统查找和替换算法引入的错误。最重要的是,ESLint是高度可定制的。
九、SVG Viewer
SVG Viewer扩展添加了许多实用程序,可用于在Visual Studio Code中使用SVG。这个插件使呈现SVG文件和查看它们的外观成为可能,而不必离开编辑器。此外,这个插件还具有用于转换为PNG并生成数据URI模式的选项。
十、Themes
最后但并非最不重要的是Themes。既然你每天都会看到你的编辑器,那为什么不把它做得尽可能的漂亮呢?有大量的自定义插件可以改变侧边栏的配色方案和图标。一些流行的Themes是免费提供的,分别是One Monokai ,One Dark Pro 和Material Icon 。
原文:
https://medium.com/better-programming/10-extremely-helpful-visual-studio-code-plugins-for-programmers-c8520a3dc4b8
(*本文为AI科技大本营转载文章,转载请联系作者)
◆
精彩公开课
◆
推荐阅读
蚂蚁金服提新概率图模型GLN,正确率提升8.2%,具备可解释性 | NeurIPS 2019
远场语音识别错误率降低30%,百度提基于复数CNN网络的新技术
微软张若非:搜索引擎和广告系统,那些你所不知的AI落地技术
基于人脸关键点修复人脸,腾讯等提出优于SOTA的LaFIn生成网络
那些打着AI万金油旗号的产品欺骗大众,如何识别?
华为鸿蒙 OS 2020 计划曝光!手机仍然优先用安卓
详谈4大主流CPU处理器技术架构
用象棋的思维趣说 IT 人的职业发展和钱途
你点的每个“在看”,我都认真当成了AI
相关文章:

Python3中装饰器介绍
Python中的装饰器(decorator)是一个接受另一个函数作为参数的函数。装饰器通常会修改或增强它接受的函数并返回修改后的函数。这意味着当你调用一个装饰函数时,你会得到一个与基本定义相比可能有一些额外特性的函数。Python中的函数可以用作或作为参数传递。 Python…

Java数据访问对象模式
数据访问对象模式(Data Access Object Pattern)或 DAO 模式用于把低级的数据访问 API 或操作从高级的业务服务中分离出来。以下是数据访问对象模式的参与者。 数据访问对象接口(Data Access Object Interface) - 该接口定义了在一…

hdoj 5199 Gunner map
Gunner Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid5199 Description Long long ago, there is a gunner whose name is Jack. He likes to go hunting very much. One day he go to the grove. There are n birds and n tr…

Python3中上下文管理器介绍
在任何编程语言中,文件操作或数据库连接等资源的使用都很常见。但这些资源供应有限。因此,主要问题在于确保在使用后释放这些资源。如果不释放它们,则会导致资源泄漏,并可能导致系统变慢或崩溃。如果用户有一个自动设置和拆卸资源…
LatentFusion:华盛顿大学与英伟达联合提出6D姿态估计新方法
作者 | Keunhong Park、Arsalan Mousavian、Yu Xiang、Dieter Fox 译者 | 刘畅 编辑 | Jane 出品 | AI科技大本营(ID:rgznai100) 【导读】在本文中,华盛顿大学和英伟达联合提出了一种新的用于未见过目标 6D姿态估计的框架。作…

Java前端控制器模式
前端控制器模式(Front Controller Pattern)是用来提供一个集中的请求处理机制,所有的请求都将由一个单一的处理程序处理。该处理程序可以做认证/授权/记录日志,或者跟踪请求,然后把请求传给相应的处理程序。以下是这种…

提供第三种代码生成方式——通过自定义BuildProvider为ASP.NET提供代码生成
2019独角兽企业重金招聘Python工程师标准>>> 之前写了一些关于代码生成的文章,提供了两种不同方式的代码生成解决方案,即CodeDOMCustom Tool和T4。对于ASP.NET应用,你还有第三种选择——自定义BuildProvider。[文中涉及的源代码从…

Java拦截过滤器模式
拦截过滤器模式(Intercepting Filter Pattern)用于对应用程序的请求或响应做一些预处理/后处理。定义过滤器,并在把请求传给实际目标应用程序之前应用在请求上。过滤器可以做认证/授权/记录日志,或者跟踪请求,然后把请…

1200亿次日均位置服务响应、20亿公里日均轨迹里程,百度地图发布新一代人工智能地图生态全景
12月10日,百度地图首次公布了“新一代人工智能地图”生态全景。目前,百度地图日均位置服务请求次数突破1200亿次,日均轨迹里程20亿公里,注册开发者数量达180万,服务超过50万个移动应用。 百度地图事业部总经理李莹称&…

Python3中global/nonlocal用法
全局变量(global variable)是那些未在任何函数内部定义并且具有全局作用域的变量,而局部变量(local variable)是那些在函数内部定义并且其作用域仅限于该函数的变量。换句话说,我们可以说局部变量只能在初始化它的函数内部访问,而全局变量在整…

客户端动态调用WCF服务中的方法
首先要写一个执行动态调用的方法:在里面实现反射调用。 public static object ExecuteMethod<T>(string pUrl,string pMethodName, params object[] pParams) { EndpointAddress address new EndpointAddress(pUrl); Binding bindinginstance null; NetTcpB…

Python3中闭包介绍
Python3中的闭包(closure)是一个函数对象,它记住封闭作用域(enclosing function)中的值,即使它们不存在于内存中。它是一个将函数与环境一起存储的记录。由于闭包用作回调函数,因此它们提供了某种数据隐藏,这有助于我们减少使用全…

Java服务定位器模式
服务定位器模式(Service Locator Pattern)用在我们想使用 JNDI 查询定位各种服务的时候。考虑到为某个服务查找 JNDI 的代价很高,服务定位器模式充分利用了缓存技术。在首次请求某个服务时,服务定位器在 JNDI 中查找服务ÿ…

用AI加速物联网落地,安富利的客户洞察和解决之道
作为一家全球IT解决方案分销商,成立于1921年的安富利也紧随AI浪潮,为区域和全球的终端客户提供AI解决方案。据了解,安富利已为全球超过1400家企业提供技术支持,电子产品年度出货量达1220亿片。 近日在媒体沟通会上,安富…

Linux运维工程师发展前景
随着IT产业的不断发展,尤其是Linux行业的发展,现在互联网企业服务器数量越来越多,当到达几百台,上千台服务器之后,服务器日常管理也逐渐繁杂,每天如果通过人工去频繁的更新或者部署及管理这些服务器&#x…

Python3中__init__.py文件介绍
Python中的模块是包含Python定义和语句的文件(A module is a file containing Python definitions and statements),其文件名是模块名加后缀名.py。在模块内部,通过全局变量__name__可以获取模块名。 模块包含可执行语句及函数定义。这些语句用于初始化模…
赠书 | 熵的实际应用,赌场和金融圈最著名的一个数学公式
本文选自湛庐文化策划出版图书《模型思维》。作者斯科特佩奇,超过100万用户的“模型思维课”主讲人。密歇根大学复杂性研究中心“掌门人”。圣塔菲研究所外聘研究员。曾出版《多样性红利》一书。斯科特佩奇以对社会科学多样性和复杂性的研究和建模面闻名。具体研究方…

Java传输对象模式
传输对象模式(Transfer Object Pattern)用于从客户端向服务器一次性传递带有多个属性的数据。传输对象也被称为数值对象。传输对象是一个具有 getter/setter 方法的简单的 POJO 类,它是可序列化的,所以它可以通过网络传输。它没有…

图片下方出现几像素的空白间隙
1、如何定义高度很小的容器? 在IE6下无法定义小高度的容器,是因为有一个默认的行高。 列举2种解决方案:overflow:hidden | line-height:0 2、图片下方出现几像素的空白间隙? 这个也有多种解决方案,如将img定义为displa…

Python3中Pillow(PIL)介绍
PIL全称为Python Imaging Library,是Python中的免费开源图像处理库。PIL的最新版本为1.1.7,于2009年9月发布,支持Python的最高版本到2.7。原始的PIL开发于2011年停止。随后,一个名为Pillow的后续项目fork了PIL的repository并增加了…
GitHub有望在中国开设子公司?
作者 | Financial Times译者 | 弯月,编辑 | 郭芮出品 | CSDN(ID:CSDNnews)作为世界上最大的软件开发平台,GitHub 自去年被微软以 75 亿美元收购后,一直颇受外界的争议。虽然在交易完成后,GitHub…

OC指示符assign、atomic、nonatomic、copy、retain、strong、week的解释
在使用property定义property时可以在property与类型之间用括号添加一些额外的指示符,常用的指示符有assign、atomic、nonatomic、copy、retain、strong、week、等。详情如下: assign: 简单赋值,不更改索引计数(Referen…

项目沟通管理计划
沟通计划包括决定项目涉及人的信息和沟通需求:谁需要什么信息;什么时候需要;怎么获得。虽然所有的项目都需要沟通项目信息,但信息需求和传播方式差别很大。确认涉及人的信息需求和决定满足需求的适当方式是项目获得成功的重要因素…

PyTorch中torchvision介绍
TorchVision包包含流行的数据集、模型架构和用于计算机视觉的图像转换,它是PyTorch项目的一部分。TorchVison最新发布版本为v0.11.1,发布较频繁,它的license为BSD-3-Clause。它的源码位于: https://github.com/pytorch/vision T…
百度ERNIE登顶GLUE榜单,得分首破90大关
出品 | AI科技大本营(ID:rgznai100)12月10日,百度ERNIE在自然语言处理领域权威数据集GLUE中登顶榜首,以9个任务平均得分首次突破90大关刷新该榜单历史,其表现超越微软MT-DNN-SMART, 谷歌T5、ALBERT等一众顶级预训练模…

Java 重写(Override)与重载(Overload)
TestDog.java /* * 重写(Override) * 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变,核心重写! * 重写的好处在于子类可以根据需要,定义特定于自己的行为。 也就是说子类能够根据需要实现…

Oracle常用查看表结构命令
2019独角兽企业重金招聘Python工程师标准>>> select user from dual; //查看当前的用户名 select table_name from all_tables; //所有用户的表 select table_name from dba_tables; //包括系统表 select table_name from dba_tables where owner用户名 user_tabl…

TorchVision中使用FasterRCNN+ResNet50+FPN进行目标检测
TorchVision中给出了使用ResNet-50-FPN主干(backbone)构建Faster R-CNN的pretrained模型,模型存放位置为https://download.pytorch.org/models/fasterrcnn_resnet50_fpn_coco-258fb6c6.pth,可通过fasterrcnn_resnet50_fpn函数下载,此函数实现…

iOS-UIButton防止重复点击(三种办法)
目录 使用场景方法一 设置enabled或userInteractionEnabled属性方法二 借助cancelPreviousPerformRequestsWithTarget:selector:object实现方法三 通过runtime交换方法实现注意事项一 使用场景 在实际应用场景中,有几个业务场景需要控制UIButton响应事件的时间间隔。…
华为诺亚方舟开源预训练模型“哪吒”,4项任务均达到SOTA
出品 | AI科技大本营(ID:rgznai100)BERT之后,新的预训练语言模型XLnet、RoBERTa、ERNIE不断推出,这次,华为诺亚方舟实验室开源了基于BERT的中文预训练语言模型NEZHA(哪吒),寓意模型能…