eclipse复制代码连接数据库404_再见,Eclipse ...

点击上方“Java基基”,选择“设为星标”

做积极的人,而不是积极废人!

源码精品专栏

 
  • 中文详细注释的开源项目

  • RPC 框架 Dubbo 源码解析

  • 网络应用框架 Netty 源码解析

  • 消息中间件 RocketMQ 源码解析

  • 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析

  • 作业调度中间件 Elastic-Job 源码解析

  • 分布式事务中间件 TCC-Transaction 源码解析

  • Eureka 和 Hystrix 源码解析

  • Java 并发源码

来源:http://t.cn/Eq4SjTV

  • eclipse 的三足鼎立时期

  • eclipse 称霸

  • Intellij IDEA 横空出世

    • eclipse和idea,哪个更好?

    • 开始使用的一些注意事项

    • 三个很常用的设置按钮

    • 常用的快捷键(mac)

    • 我喜欢的特色功能


使用了eclipse10年之后,我终于投向了IDEA

最近,改用了idea,同事都说我投敌了。当然,这些同事都是和我一样的“老”程序员。不说毕业生,公司里的90后基本电脑都不会安装eclipse。

eclipse 的三足鼎立时期

开始我写Java程序,用的并不是eclipse,而是用的一款叫做jbuilder的工具。当时使用这个工具的时候,我已经觉得非常的好用,因为在此之前,我好像记得只是用个简单的文本工具来编辑。后来才发现,那些喜欢宣扬文本编辑器才能学会精通java的“高手”真的有点不敢恭维,至少于我,一个好的工具太重要了。

并没有过了多久,我发现一款叫做eclipse的工具,而且身边还越来越多,于是我决定试一试。尝试的最后,我发现实在是太好用了,他的界面变得更漂亮,而且里面的功能感觉就是为程序员量身定做的一样,最激动人心的功能是他竟然支持源源不断的插件,而且这个插件你还可以,自己来编写。

eclipse2001年由ibm创立,2003年就成立基金会,可惜国内嘛,在那个时代,总是要晚一些,而我更落后,直到07、08年才开始真正使用。《程序员》在06年还出了一起专题-Eclipse风暴。那时候,eclipse、jbuilder、netbean三足鼎立的局面,基本形成了。

b5a8e9d5f93f517526dc57824b94d049.png
img

eclipse 称霸

再后来myeclipse出现了这个东西更加厉害,他集成了所有常用的插件,只要你一键安装完就啥也有了,基本上用它,你可以开发出java的任何东西。虽然他不是免费的。

慢慢的,jbuilder已经没什么人使用;而netbean不知道是不国内还是我圈子太窄,身边用的人总是很少,倒是在国外翻译的技术书里经常和eclipse一同出现。

重构的流行,让eclipse更受青睐。熊节在《重构》译本里推荐eclipse,后来我亲眼看了他使用eclipse纯键盘(基本不用鼠标)飞快的重构代码,有点傻了眼。后来背诵快捷键成了我的一项课题。

在接下来接近10年的日子里,就是他陪着我度过了漫长又有意思的编程生涯。虽然经常有人争论用简单版的eclipse好还是用丰富的myeclipse好,用丰富版的经常会嘲笑用简单的,什么都没有,什么插件都得重新来一遍,用简单版的又会鄙视使用丰富版的,什么插件都不会安装。我曾经见过有一个同事,使用的滚瓜烂熟,每一个插件在文件夹下叫什么名字应该删除哪些文件应该放在什么地方,应该增加哪些配置,怎么安装怎么卸载都倒背如流,随后我也慢慢学会了这招。再后来插件安装,已经不需要这么麻烦了,只需要在市场上搜索一下,点击一下安装就可以了。但是这些功能的改进并没有让他免除用户群慢慢转移的危机。

Intellij IDEA 横空出世

其实很久之前我就听说idea非常好用,说只要使用过后就不会在使用eclipse了。还说JetBrains这家公司怎么怎么懂得java程序员。但是,我实在找不到什么改变的理由,所以一直没有尝试使用。况且,我还需要开发c++、python,这些语言,eclipse都有完善相应的版本插件支持。

其实中间,我也不断地询问已经转向使用的同事,我问他究竟别/好像哪里?但是没有一个同事能够清晰的回答我这个问题。大部分的同事只是说就是很好用,你如果细细地问他好在哪儿,他却说不出来。还有一些同事确实列举了一些,他认为更为好用的功能,然后告诉我,然后我听完之后告诉他,其实这些功能eclipse也有。还有一个同事更搞笑,用了两个月了,说非常的好用,然后我叫他调大一些,字体让我看看,他竟然说不知道怎么调。这些遭遇实在让我想不出来什么要改变的理由。

但是上个星期出现了一个契机,就是公司主持了几个培训,不约而同的这几位培训,是都使用IDEA来培训,其实,工具的不同并没有太大的影响及对培训知识的吸收,但是我实在忍受不了我明明花了一个小时听培训,但是只听了55分钟的知识,剩余的5分钟关于工具的使用技巧也应该吸收过来。加上早就听说Robert C Martin也许从一个eclipse转向了这个工具,于是我决定我要改变一下了。

上周一是我改变的第一天,安装过程非常顺利,官网提供免费版和试用版,我当然毫不犹豫地选择的试用版,至于30天以后,咱们心照不宣,再说。安装过后当然是黑糊糊的一个界面,上面的所有按钮实在是非常的陌生,我使用的10年的那些快捷键发现全部不好使了,我甚至连怎么导入一个现有的工程都不会了。

我有点受不了了,我受不了的不是对新知识的学习与掌握,而是效率迅速降低20倍,甚至一百倍。没办法,一个一个问题百度吧。大概过去了半天到一天,神奇的事情发生了,我竟然不再想继续用eclipse了,甚至有点没有了IDEA,感觉更麻烦了。于是家接下来的四天,我越来越顺畅地开始编写我的代码了。

对于只是使用了五天的,我来说,我说的什么,其实都只是一个新手的废话,但是我还是喜欢总结一下。

eclipse和idea,哪个更好?

idea,个人觉得,确实比eclipse要更好,但是它的好处并不主要是多了哪些功能,从功能的多少数量上来说,他们俩其实是差不多的, IDEA,更优秀的关键点在于他在细节上更为人性化,做得更优秀而已。

比如配置tomcat,我竟然不用百度,自己尝试点点,就成功跑起来了。感觉它真的懂我的心一样。

开始使用的一些注意事项

如果你是刚开始编程,那就没什么关系,但是像我一样是用的eclipse很多年的老程序员,那么对快捷键一定是一个障碍,但是idea已经做了很人性化的设置,默认的快捷键可以一键改成eclipse的快捷键,但是我尝试了,确实改变了大部分,但并不是百分之百,所以我放弃了。

还有就是对工程和模块要理解好,以前的eclipse都是做工程的概念并没有模块的概念,所以你可以把很多的工程都导入进去,但是IDEA完全不一样,他只能导入一个工程,如果你要在导入另外一个工程,你必须新开一个界面,当然你不用担心耗费内存的问题,已经。优化好了,但是在一个工程里面你可以导入多个模块,其实这个更适合我们平常的开发,因为maven 就是模块化的配置。

tomcat的设置也非常人性化,注意的是,可以通过勾选tomcat实例,就可以一个tomcat多个工程使用了。当然,端口要不同,才能同时启动。

三个很常用的设置按钮

  • Preperences

  • Project structure

  • Run configuration

常用的快捷键(mac)

  • cmd+shift+f 全project或模块等查找某个字符串

  • cmd+shift+o 查找文件

  • cmd+0 查找类

  • cmd+f 本文件中查找字符串

  • cmd+x 删除一行

  • cmd+c 选中该行并且复制

  • alt+enter 自动提示错误修复

  • ctrl+alt+h 显示调用该方法的方法

  • cmd+7 显示该类的全部方法

  • cmd+alt+l 整理代码格式

  • ctrl+alt+o 整理import

  • shift+f6 重构rename 还有很多。。。基本都和eclipse不同,但是我必须一个个的“寻找”回来。

我喜欢的特色功能

  • idea默认下面显示了teminal,很好用,现在我很少用mac自带的终端(虽然eclipse找找也有,但实在不好用)

  • 右手边有个数据库连接,我现在也很少用Navicat和mysql workbench了

  • 同样右边的maven也很好用,不像eclipse要右键,而且默认的还不齐全

2018.10.27

==========

JetBrains确实是伟大的公司,现在我弄js,也用了它的webstorm,弄python也用了他的pycharm而不是eclipse的pydev了。

再见,eclipse。

2018.11.4

==========

又断断续续用了一周,发现没有想象中完美。偶尔有些卡,毕竟太多东西放内存。而且也出现过闪退。快捷键实在有些还记不住,有个快捷键要按四个键太难记了。有些个别功能感觉还是有点不如eclipse方便比如改字符集(也可能我不熟悉)。断点调试也还不习惯。也有很多功能真的要把eclipse彻底忘记,比如重构rename,idea默认竟然把同名的都rename掉。我重构个我自己写的类的get方法,它把map.get的get也rename掉了,真的有点无语。不过习惯就好,总比漏了一些rename自己慢慢改好。

2018.11.18



欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢

69019520eb2af4d23e3afb292b661ade.png

已在知识星球更新源码解析如下:

7dd81598bae0325259271964e4099d2e.png

751d5cfa3e6644a411c40c6e1465dce1.png

6022b4954d2a4bd3b98d1f39df347cad.png

如果你喜欢这篇文章,喜欢,转发。

生活很美好,明天见(。・ω・。)ノ♡

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/350963.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单页vue路由router

Vue.js vue-router 可以很简单的实现单页应用。 <router-link> 是一个组件&#xff0c;该组件用于设置一个导航链接&#xff0c;切换不同 HTML 内容。 to 属性为目标地址&#xff0c; 即要显示的内容。 以下实例中我们将 vue-router 加进来&#xff0c;然后配置组件和路…

python 多线程为什么鸡肋?

什么是全局解释器锁GIL Python代码的执行由Python 虚拟机(也叫解释器主循环&#xff0c;CPython版本)来控制&#xff0c;Python 在设计之初就考虑到要在解释器的主循环中&#xff0c;同时只有一个线程在执行&#xff0c;即在任意时刻&#xff0c;只有一个线程在解释器中运行。对…

usb端点轮询_使用Spring Integration轮询http端点

usb端点轮询如果您想用Spring Integration编写一个流程来轮询HTTP端点并从http端点收集一些内容以进行进一步处理&#xff0c;那有点不直观。 Spring Integration提供了几种与HTTP端点集成的方式- Http出站适配器–将消息发送到http端点 Http出站网关–将消息发送到http端点…

tensorflow下载

以下下载的为tensorflow版本为1.2.1 GPU python3.6 python3.5 https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.2.1-cp35-cp35m-win_amd64.whlhttps://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-1.2.1-cp36-cp36m-win_amd64.wh…

make时候说找不到makefile_找不到对象,应不应该接受相亲?听听三个过来人怎么说...

找我分享你的故事&#xff0c;点击右上角关注&#xff0c;你就是我的人了&#xff01;相信每一个人都有这样一个愿望&#xff1a;希望在自己感情的世界里面能够遇到一个执子之手&#xff0c;与子偕老的人共度余生。可是不是每个人都能够那么幸运的&#xff0c;那么轻易的就遇上…

Synchronized总结

一、synchronized加锁原理 synchronized可以保证方法或者代码块在运行时&#xff0c;同一时刻只有一个线程可以进入到临界区&#xff0c;同时它还可以保证共享变量的内存可见性。 Java中每一个对象都可以作为锁&#xff0c;这是synchronized实现同步的基础&#xff1a; &#x…

dpkg命令

dpkg命令如果ubuntu要安装新软件&#xff0c;已有deb安装包&#xff08;例如&#xff1a;iptux.deb&#xff09;&#xff0c;但是无法登录到桌面环境。那该怎么安装&#xff1f;答案是&#xff1a;使用dpkg命令。dpkg命令常用格式如下&#xff1a;sudo dpkg -I iptux.deb#查看i…

linux进程间的通信(C): 共享内存

一、共享内存介绍共享内存是三个IPC(Inter-Process Communication)机制中的一个。它允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在进行的进程之间传递数据的一种非常有效的方式。大多数的共享内存的实现&#xff0c;都把由不同进程之间共享的内存安排为同一段…

使用js在桌面上写一个倒计时器_论一个倒计时器的性能优化之路

原文发表于 2018.05.25&#xff0c;搬运自个人博客。引子回顾这半年&#xff0c;扛需求能力越来越强&#xff0c;业务代码也是越写越多。但稍一认真看看这些当时为了满足快速上线所码的东西&#xff0c;问题其实还是不少。这次就从一个简单的计时器说起。现状问题很明显倒计时器…

Vue 导入文件import、路径@和.的区别

***import&#xff1a; html文件中&#xff0c;通过script标签引入js文件。而vue中&#xff0c;通过import xxx from xxx路径的方式导入文件&#xff0c;不光可以导入js文件。 from前的&#xff1a;“xxx”指的是为导入的文件起一个名称&#xff0c;不是指导入的文件的名称&…

python split()

python函数&#xff1a;split() Python中有split()和os.path.split()两个函数&#xff0c;具体作用如下&#xff1a; split()&#xff1a;拆分字符串。通过指定分隔符对字符串进行切片&#xff0c;并返回分割后的字符串列表&#xff08;list&#xff09; os.pa…

windows聚焦图片为什么不更新了_为什么年轻明星都不愿意接周星驰的戏? 林更新道出了事情的真相|周星驰|林更新|喜剧之王|演员...

要说华语电影史上最有成就的喜剧之王&#xff0c;那么大家脑中一定会闪过周星驰的名字&#xff0c;相信在不少60后、70后心目中&#xff0c;都有周星驰的一席之地。《大话西游》、《逃学威龙》、《九品芝麻官》等一系列作品都是非常经典的作品&#xff0c;就算是拿到当下来看都…

多线程多进程解析:Python、os、sys、Queue、multiprocessing、threading

当涉及到操作系统的时候&#xff0c;免不了要使用os模块&#xff0c;有时还要用到sys模块。 设计到并行程序&#xff0c;一般开单独的进程&#xff0c;而不是线程&#xff0c;原因是python解释器的全局解释器锁GIL&#xff08;global interpreter lock&#xff09;&#xff0c;…

练习1

方法一&#xff1a; 统计在一个队列中的数字&#xff0c;有多少个正数&#xff0c;多少个负数&#xff0c;如[1, 3, 5, 7, 0, -1, -9, -4, -5, 8] lists [1, 3, 5, 7, 0, -1, -9, -4, -5, 8]positive 0 negative 0for number in lists:if number > 0:positive 1elif nu…

python sort()、sorted()

python sort、sorted排序 这篇文章主要介绍了python sort、sorted高级排序技巧,本文讲解了基础排序、升序和降序、排序的稳定性和复杂排序、cmp函数排序法等内容. python list内置sort()方法用来排序&#xff0c;也可以用python内置的全局sorted()方法来对可迭代的序列排…

电脑内存占用莫名很高_CPU占用高,电脑莫名卡顿?万能的重启拯救不了就用这3招,妥了!...

大家还记得windows 10 1903推送时发生的大翻车事件吗&#xff1f;那次的更新主要是修复早期版本的Visual Basic 6、VBA和VBScript无反应、远端桌面出现当机黑屏幕等问题&#xff0c;但win10的更新总是“捡了芝麻&#xff0c;丢了西瓜”&#xff0c;解决早期问题而又出现新的问题…

5. 多线程程序如何让 IO 和“计算”相互重叠,降低 latency?

基本思路是&#xff0c;把 IO 操作&#xff08;通常是写操作&#xff09;通过 BlockingQueue 交给别的线程去做&#xff0c;自己不必等待。 例1: logging 在多线程服务器程序中&#xff0c;日志 (logging) 至关重要&#xff0c;本例仅考虑写 log file 的情况&#xff0c;不考…

tomcat web应用_具有可执行Tomcat的独立Web应用程序

tomcat web应用在部署应用程序时&#xff0c;简单性是最大的优势。 您将了解到&#xff0c;尤其是在项目发展且需要在环境中进行某些更改时。 将您的整个应用程序打包到一个独立且自足的JAR中似乎是个好主意&#xff0c;特别是与在目标环境中安装和升级Tomcat相比。 过去&#…

anaconda在ubuntu中添加环境变量

在ubuntu上安装好anaconda后&#xff0c;如果输入conda命令报错&#xff0c;很有可能需要以下修改注册表&#xff08;相当于windows中将路径添加到系统环境变量&#xff09; ~ /anaconda3/bin为.Sh所在home目录路径 在终端输入&#xff1a;sudo gedit ~/.bashrc 打开注册表后…

webpackjsonp 还原_具有催化CO2还原性能的非贵金属配合物的配体设计

Non-noble metal-based molecular complexes for CO2 reduction: From the ligand design perspectiveDong-Cheng Liu, Di-Chang Zhong, Tong-Bu LuEneryChem, 2, 100034 (2020).DOI: https://doi.org/10.1016/j.enchem.2020.100034全文链接https://www.sciencedirect.com/jour…