我与Jetbrains的这些年

前言

本章主要说一下如何去使用Jetbrains的各种工具,而且在上周参加了Jetbrains开发者日的大会,把参会的感觉和体验在这里分享给各位。话很少说,咱们进入正题。html

使用

想必各位必定使用过Jetbrains的任意一款产品,就算没用过也应该据说过吧。Jetbrains从开始至今总共分为三大模块java

  1. Developer Ide (集成开发工具)
  2. Language (Jetbrains的开发语言 Kotlin)
  3. DevOps (任务管理,持续集成,持续部署的一些东西)

对于Developer Ide我推荐使用Jetbrains ToolBox,它是管理全部Jetbrains Ide的工具。laravel

Jetbrains平均一个月作一次小更新,安装了Jetbrains ToolBox就没必要再去关心更新的事情了。而且Jetbrains ToolBox 还提供了项目列表的功能,若是这时候你须要打开一个项目,你无需去关心项目是哪一种开发语言作的,只须要打开它并选择你须要开启的项目便可。程序员

这里要注意,使用Alfred的同窗,Jetbrains ToolBox将Ide安装的目录不在是/Application而是~/Application,要记得加入到可搜索列表中,不然是找不到启动文件的。编程

以PhpStrom为例,来说解一下Jetbrains Ide的一些有趣的配置。json

快速编码

这在Jetbrains开发者日上范老师讲过的一个技巧,你须要打开api

Preferences -> Editor -> {General->Postfix Completion || Live Templates}性能优化

General->Postfix Completion 与 Live Templates 都是为了去提供编码速度的设置。首先咱们先看下 Live Templatesbash

当你在输入fore时按空格(固然也能够选择回车,Tab键,这是须要设置的)markdown

就会出现完整的foreach语句,你能够把他当作填空题去完善这个结构

fore 
----> 
foreach ($ITERABLE$ as $VAR_VALUE$) {
    $END$
}
复制代码

固然还有一些其余的例如 eco -> echo , prof -> 建立一个protected的类方法。Ide默认已经为咱们准备了一些经常使用的简写方法,涵盖了至少你知道的全部语言。固然若是没有你想要的你也能够自行添加新的模板。

真不愧叫 Live Templates,第二个来介绍下General->Postfix Completion,这个对于第一个来讲是另一种编辑,第一种是经过键入初始化命令来生成模板,例如eco -> echo ,第二种则是以对象形式去便捷的去生成模板。下面举个栗子

当你键入 a.notnull 则生成 if (a !== null) {}

$a.notnull
---->
if ($a !== null) {

}
复制代码

在编码的时候不是每次都会想好整个流程结构在开始编码,因此Live Templates 就有必定的局限性了。这时候 General->Postfix Completion 就起到了很大做用。最后咱们介绍 File and Code Templates , 在快捷生成编码及后续生成代码是在编码开始时的一些骚操做,为了将编码更快,咱们还须要将经常使用的文件模板加入其中

例如你长期使用Laravel框架去开发应用,在使用laravel写一个功能的时候咱们会经历下面几个步骤

声明一个路由 -> 建立一个Controller,Model,Action ... 文件 -> 调用Model操做数据 -> 返回给用户结果

若是你使用PhpStrom你大体这样写

  1. 打开路由文件 router+空格 完成一个路由结构的自动生成 (固然你须要提早设置)
  2. 建立一个 Php Controller,Model,Action 文件,文件结构已经设置好
  3. 使用General->Postfix Completion设置好的写法分分钟解决全部操做

Database

PhpStrom内置了Database,面板十分简洁易用。他面板的右上角

有兴趣你能够去试试

Api

细心的朋友必定知道PhpStrom内置了接口测试工具,他在 Tools -> Http Client -> Test RestFul Web Service 下。

临时的测试你没必要打开万能的Postman,你彻底能够经过ide内置的测试工具去完成api测试。固然还有另一种更厉害的方式 -> 建立一个 test.http 文件

GET www.baidu.com
复制代码

像上述这样,点击运行你将得到Response

GET http://www.baidu.com

HTTP/1.1 200 OK
Date: Fri, 23 Nov 2018 05:19:42 GMT
Server: Apache
Last-Modified: Tue, 12 Jan 2010 13:48:00 GMT
ETag: "51-47cf7e6ee8400"
Accept-Ranges: bytes
Content-Length: 81
Cache-Control: max-age=86400
Expires: Sat, 24 Nov 2018 05:19:42 GMT
Connection: Keep-Alive
Content-Type: text/html

<html>
<meta http-equiv="refresh" content="0;url=http://www.baidu.com/">
</html>


Response code: 200 (OK); Time: 71ms; Content length: 81 bytes
复制代码

固然对比Postman依旧不逊色,既然已经将软件改成编码形式,那在Postman内的功能,咱们在.http文件中很方便的就能够实现。能够添加请求参数

GET http://www.baidu.com
Content-Type: application/json
{
"name":"zhangsan"
}

复制代码

每一个请求如下一个请求方式前结束。具体请移步官网查看。

主题

工欲善其事,必先利其器。上面说的Jetbrains提供的功能只是冰山一角,想要具体的学习如何使用还请移步官方。帅气的UI也是调整开发效率的一部分。看到本身的ide很是漂亮,编码的心情本身好的不得了。我使用的是 Material Theme UI

关于字体的调整能够在 Editor -> Font 下进行

固然若是你不只仅从事PHP相关的开发,好不容易配置出来一个本身满意的IDE,写Go的时候用Goland还要配置,大可没必要这样。你能够经过 File -> Export Settings 来导出你的配置

随后在经过 File -> Import Settings 来导入你的配置。这样就OK了。若是你购买了 Jetbrains 全家桶或者任意的Ide,也能够经过File -> Sync Settings To Jetbrains Account 来同步到你的Jetbrains帐号,相似于云同步同样。

便捷

剩下的就是快捷键了,快捷键乃IDE编码之本,什么?不须要? 那你咋不用Word编码去?快捷键我就不总结了,网络上太多了。下面贴出laravel-china一位大神的总结。

laravel-china.org/topics/5420…

大会

以上说了一部分大会的内容了。Jetbrains的开发者日也并非所有商业宣传,至少它作的事情是值得让开发者承认的。PPT没法分享给各位,我也不知道怎么拿到。抱歉!大会主要将了如下几项内容,上午是主会场,下午分俩个会场 Kotlin & Java 和 Web,做为一个PHP程序员,我没得选。


上午

  1. 大会开始,说了不少关于他们的语言 Kotlin 的使用方法。
  2. 随后说了Jetbrains内部的工做方式及管理方法
  3. 开始ide -> Kotlin 显示 Kotlin特性

下午

  1. 简洁高效的PHP编程指南,推荐了一下测试、调试方法&类库及PhpStrom的使用方法
  2. 在真实世界中进行 Go性能优化 讲的go pprof
  3. 用TDD学习高效开发 开始这大佬写了一通的java测试用例,不咋能看懂。后面说了一些关于程序人生的事情
  4. JetBrains的无痛DevOps解决方案 最后讲了JetBrainsDevOps的一些套件,例如TeamCity (与TravisCi相似) ,Upsource 等等。具体可参考 www.jetbrains.com/devops/?fro…

总而言之,整体下来大多都是干货,至少我感受没有任何商业宣传的性质。

致谢

到这里本章就结束了,感谢看到这里,不过我还要提醒一句给各位开发者

编辑器不要汉化 编辑器不要汉化 编辑器不要汉化

相信你能够明白。谢谢!

相关文章
相关标签/搜索