-
大学四年,因为这40个开发工具,我成为别人眼中的大神
2020-02-14 15:27:43亲测全部都很好用,自己开发都离不开的软件,如果你是学生可以看看,提前熟悉起来。点赞再看,养成习惯,微信搜索【三太子敖丙】我所有文章都在这里,本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试完整考点,文末有福利。
注意:下面的软件我都是简单的介绍下是干啥的,因为太多了,真正的功能需要大家深挖的,能力允许的朋友下载正版,PJ方法去Github https://github.com/JavaFamily 找一下
正文
我要用一个产品的研发流程角度去介绍软件,那我们先看看一个产品有哪些研发流程,帅丙就用自己接触的阿里系的研发流程举例了,这也基本上是互联网大厂的研发流程了,可能细节有出入,但是绝对大同小异。
Tip:我从开发的视角去介绍的话我就会跳过一些软件,比如提出需求这个其实一般都是文档类的,wiki呀这样的形式。
我就不介绍那种流程工具了,公司很多自研的,大家工作了再去熟悉也很快的。
概要设计:
概要设计,这个是大厂程序员需求下来之后基本上都会做的一步,不过看需求大小,可能很多小需求直接就详细设计了。
很多不了解的同学可能会问,需要设计什么呢?为什么要设计呢?
问得好,经常看我文章的都知道,技术是把双刃剑,你用了技术之后你是不是需要列出他的优点缺点,出问题之后的解决方案,还有可能出现的问题,注意点等等。
这么是为了让你能有把控力,比如你用了个Es(Elasticsearch)你什么都不管你就是要接入它,你把他开发好了上线了,但是有啥坑你知道么?上线崩了怎么办?
帅丙我做Es设计的时候设计被老大打回N次,不过成长真心大,对Es的了解也飞速进步。
其实远远不止这些问题,这就是我们做设计的主要原因,也是大家工作里面能成长的途径之一,你以为大佬们的经验是怎么来的?
工具:Xmind/ProcessOn
- Xmind官网地址: https://www.xmind.cn
- ProcessOn在线作图地址:https://www.processon.com
我这里列举了两个工具,他们两个都可以做概要设计的脑图,我给大家看看我设计过的一些脑图,都是出自这两个软件。
大家在学习,看书等等的时候做个脑图,我告诉你后面你复习还是干啥都思路贼清晰,而且效率瞬间高很多。
详细设计
小伙伴又要问了啥是详细设计呀帅丙?
诶呀简单,见名知意嘛,概要设计是大概的设计,详细设计是详细的设计。
我们研发的时候整个流程往往很复杂,如果你理解不对直接就写代码,最后容易造成返工,延期,加班,被骂,心情差,回家吵架,离家出走。。。
看到不做详细设计的后果了吧,其实大家花点时间做详细设计很有必要,你思路完全清晰了,写代码那就是分分钟的事情,不是嘛?
那再看看帅丙的一个小设计吧,之前文章中大量的流程图,时序图都来自它,主要是这玩意还是在线的,都不用下载很方便啊。
详细设计的工具我用的就是在线作图神器:ProcessOn
- 在线画图地址:https://www.processon.com
总之一句话很香,流程图、思维导图、原型图、UML、网络拓扑图、组织结构图、BPMN等等一应俱全
Ascilflow
- 官网地址: http://asciiflow.com
进入网站后直接开画!网页上端是菜单,自行操作!
研发
这个关键了:工欲善其事,必先利其器
想必大家都知道这个谚语吧,我就说一下我写代码要用到的软件吧。
Intellij IDEA
这个我想都不用我介绍了吧,Java的同学都耳熟能详了,有同学问为啥不用eclipse呀,我不作回答,但是我只能告诉你IDEA肯定是效率还有很多方面都要香的。
不过看个人习惯的哈,新同学还是推荐IDEA!!!
WebStorm
有知道同学要问了,帅丙这不是前端的开发工具么,为啥你要用,帅丙我呀全才来的呀,前端偶尔也写点的嘛,主要是js,vue,jq,还有丢丢React,不过最近帮三歪改前端居然是jsx有没有大佬救救我啊。
Visual Studio Code
Visual Studio Code是一个轻量且强大的跨平台开源代码编辑器(IDE),支持Windows,OS X和Linux。内置JavaScript、TypeScript和Node.js支持,而且拥有丰富的插件生态系统,可通过安装插件来支持C++、C#、Python、PHP等其他语言。
PyCharm
这个是python之前那次还记得我写代码大赛那期嘛,最开始就是用这个写的,平时学的时候也用用。
Navicat Premium
这个呀是数据库的可视化工具很香很好用,不过我们线上的表都是网页操作的,这个只能用来看看本地的开发表了,不过也是很有必要的,你SQL怎么都得本地跑一下没问题,才向DBA申请的嘛。
Postman
这个是接口调试的神器,单测比较繁琐的你可以试试这个嘛,不过很多接口还是只能写写单测,反正很香。
不过这个名字一看就是男生用的,那我们女生用啥呢?往下看
Postwoman
- 官网地址 :https://postwoman.io
PostMan一听就是男生用的,咋妹子们肯定要用最近开源的Postwoman啊,它是一款开源的 Postman 替代品
开源没多久优点如下:
- 轻盈,可直接在线访问;
- 简约,采用简约的 UI 设计精心打造;
- 支持 GET, HEAD, POST, PUT, DELETE, OPTIONS, PATCH 方法;
- 支持验证;
- 实时,发送请求即可获取响应。
GIt
- 官网地址 :https://git-scm.com
代码文档管理工具,版本控制工具,大家之后的代码基本上都是使用git做版本管理
Maven
- 官网地址 :http://maven.apache.org
目前帅丙用到Maven的主要功能是:项目构建、项目构建、项目依赖管理、软件项目持续集成、版本管理、项目的站点描述信息管理
Gradle
- 官网地址 :https://gradle.org
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。
它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,目前也增加了基于Kotlin语言的kotlin-based DSL,抛弃了基于XML的各种繁琐配置。
这个跟Maven功能是一样的,但是两者语法不一样,而且我觉得版本控制的时候没Maven好使,有小坑,胜在语法简洁。
Charles
这玩意是个HTTP代理服务器,我用它的主要用法就是抓包!
都知道我是做电商的嘛,很多线上接口线上问题怎么排查呢,抓包看看数据呗。
JMeter
Apache JMeter是Apache组织开发的基于Java的压力测试工具
是的就是用来压测的,你怎么模拟很多请求呀,就用它就对了。
Dash
- 官网地址 :https://kapeli.com/dash
Dash for mac是使用与Mac OS平台的软件编程文档管理工具,可以浏览API文档,以及管理代码片段工具。Dash自带了丰富的API文档,涉及各种主流的编程语言和框架。
Devdocs
- 官网地址:http://asciiflow.com
上面那个的兄弟,但是这个不用下载,在线的
DataGrip
DataGrip是JetBrains公司推出的管理数据库的产品,对于JetBrains公司,开发者肯定都不陌生,IDEA和ReSharper都是这个公司的产品,用户体验非常不错。
最开始我用它就单纯看同事在用很酷的界面,后面发现功能也香,高亮文本啥的,很多功能大家可以去挖。
JVisualVM
VisualVM 是Netbeans的profile子项目,已在JDK6.0 update 7 中自带,能够监控线程,内存情况,查看方法的CPU时间和内存中的对 象,已被GC的对象,反向查看分配的堆栈(如100个String对象分别由哪几个对象分配出来的)。
VisualVM可以根据需要安装不同的插件,每个插件的关注点都不同,有的主要监控GC,有的主要监控内存,有的监控线程等。
Iterm2
- 官网地址 :https://www.iterm2.com/
这个是我做日志排查的客户端工具,也是支持很多配置,直接ssh上跳板机查看线上机器的状态等等,线上问题排查还是很有必要的。
网*有道词典
- 官网地址 :http://www.youdao.com
有朋友要疑问了帅丙这是什么情况,鬼畜乱入么?
不是的,我们研发的时候很多单词不认识,或者命名的时候这个词汇的英文不知道还是很有必要查一下的,规范的命名是你成为顶级大牛的第一步,你命名都是A,B,C你代码review的时候,你的Leader会叫hr让你提交前回家过年的,马上过年了大家不要轻易尝试。
Sublime Text
这是个文本记录的工具,也可以用于写代码,但是我们有IDE了那就用来当日常琐事记录的工具,临时文档处理的工具也是可以的,反正还是很好用的。
安排!
印象笔记
- 官网地址 :https://www.yinxiang.com
这个可以说是陪伴我大学到现在的一个工具了吧,我数了下,上千文件了,我的生活琐事的记录,还有学编程之后的很多东西,我都是收录在里面的。
这个东西我就不和别的笔记比较了,因为我最开始就用的这个一直没换过,好不好用我说了不算的,大家下一个看看就知道了。
Typora
- 官网地址 :https://www.typora.io
Typora是我一直写Markdown的工具,好用到不行,还可以切换模式你敢信?打字机模式,专注模式,源码模式总有一个你的菜.
Ipic
- 官网地址 :https://ipic.ca
图床我是配合Typora一起使用的大家Markdown是不是复制图片进来都是本地的地址,发到网上就会失效的,但是跟Typora搞基的这个工具他可以在你复制进来的时候直接传到网上了,你再去任何平台发表都可以随心所欲了。
Md2All
- 官网地址 :http://md.aclickall.com
大家好奇我的markdown怎么这么好看呀,其实我写了markdown之后还转成了html的,用的也就是上面这个工具。
我写完也是在这里面进行排版然后发出去的,排版要花好久,忍不住给帅丙点赞。
图像处理
Adobe Photoshop CC 2019
Ps嘛大家都知道的,正常的图片处理啊用这个香,没事帮美女P下图,搞不好能找个女朋友(我又开始YY了)
Adobe Premiere Pro CC 2019
这个可能是大家使用得最多的视频处理软件了吧,很好用!!!
功能全到无法令人呼吸,缺点就是学习成本有点大,入门很快,想成为大神需要大量时间积累。
Adobe After Effects CC 2019
不知道大家视频看得多么,很多视频的特效开场都是这个做的,下面也有一个我的demo。
GIPHY CAPTURE
有时候大家文章不想用静态的图画去表达,想录制写代码的Gif动图,那这个软件是真的好使。
视频播放 KMPlayer
- 官网地址 :http://www.kmplayer.com
其实帅丙我心中有个播放神器的,快播。
可惜了还没用多久,播播就夭折了,我会使用下面这个播放软件去播放我自己的视频。
因为很多格式电脑自带的可能不支持,我又喜欢剪辑视频,所以一直用它了。
Iina
- 官网地址:https://www.iina.io
视频播放 同上
DouTu
大家是不是发现我之前的文章很多表情包,其实都是在线制作的。
Carbon
- 官网地址 :https://carbon.now.sh/
帅丙之前的文章里面很多代码的图片都是这个网站生成的,很多样式可以选择,就很好看。
CodeLF
这个网站有意思了,写代码不知道单词怎么命名就去这里查,他是GItHub的一个爬虫工具吧,看看大神的命名总是会有思路的吧。
注意:上面的软件我都是简单的介绍下是干啥的,因为太多了,真正的功能需要大家深挖的,能力允许的朋友下载正版,破解方法去Github https://github.com/JavaFamily 加我回复【软件】就好了。
总结
其实比较香的工具还有太多了,我这里就不一一介绍了,其实有个很简单的办法,就是问,学习,借鉴。
我就是这样的,我看Leader用的什么工具我就问他这是啥,好用不?怎么用?
包括我写博客吧,其实才写了20多天,第一天准备写的时候我就直接问三歪(Java3y),你用的什么开发工具呀,怎么用的呀,包括他主要发布的哪些平台呀,发布的时间段呀,我都直接问。
他坐我对面,迫于我的淫威不得不和盘托出,主要是最近有个需求需要我帮他写代码哈哈。
别人都这么多的经验下来了,软件能差嘛?而且使用过程中不会的还可以问一下对方,不香嘛。
这篇是吐血整理,大家好好食用,记得点个赞!👍
白嫖不好,创作不易,各位的点赞就是丙丙创作的最大动力,我们下篇文章见!
持续更新,未完待续……
絮叨
另外,敖丙把自己的面试文章整理成了一本电子书,共 1630页!目录如下
现在免费送给大家,在我的公众号三太子敖丙回复 【888】 即可获取。
我是敖丙,一个在互联网苟且偷生的程序员。
你知道的越多,你不知道的越多,人才们的 【三连】 就是丙丙创作的最大动力,我们下期见!
注:如果本篇博客有任何错误和建议,欢迎人才们留言!
文章持续更新,可以微信搜索「 三太子敖丙 」第一时间阅读,回复【资料】有我准备的一线大厂面试资料和简历模板,本文 GitHub https://github.com/JavaFamily 已经收录,有大厂面试完整考点,欢迎Star。
-
Java的常用开发工具
2018-01-27 15:05:14都说工欲善其事必先利其器,要想学好java这门语言,选择一款好用顺手的开发工具是必不可少的。另外面试java工作时开发工具的使用也是一个重要的考核点。 要想全面了解java开发工具,我们首先需要先了解一下java...Java开发人员的常用工具
java常用的开发工具。都说工欲善其事必先利其器,要想学好java这门语言,选择一款好用顺手的开发工具是必不可少的。另外面试java工作时开发工具的使用也是一个重要的考核点。
要想全面了解java开发工具,我们首先需要先了解一下java程序的开发过程,通过这个过程我们能够了解到java开发都需要用到那些工具。
首先我们先了解完整项目开发过程,如图所示:
从上图中我们能看到一个完整的java项目的开发包括很多的环节,每个环节都需要用到不同的开发工具。在实际java项目开发中,一般每个环节都有专门的人负责。比如:原型的设计有产品经理负责。界面的美化有专门的美工负责。前端有专门的前端开发人员负责。我们的课程中主要涉及的是研发这个环节。而研发主要工作就是根据项目的需求文档设计系统架构、设计数据库、编写调试程序代码。对于普通的码农来说,主要的就是编写和调试程序。
从上图中我们可以看到:
1、要想编写程序,需要一个能编写源代码的编辑工具。例如:Notepad++; 2、要想测试程序,需要一个编译、执行工具。例如:JDK; 3、要想单独测试一个单元,需要一个单元测试工具。例如:JUnit、TestNG; 4、要想编写开发文档,需要开发文档编辑工具。例如:word、Excel、PPT; 5、要想分析设计程序,需要程序的分析设计工具。例如:StarUML; 6、要想方便管理源码和版本升级,需要源码管理和版本维护工具。例如:SVN,Git; 7、要想多个团队协作开发或者项目用到很多的第三方类库和Jar包。需要自动化构建工具。例如:Maven、gradle; 8、要想在一个工具中使用以上所有功能,需要用到集成开发工具IDE。例如:Eclipse;
大家看到这么多工具是不是很头疼。哈哈:) 所以说java开发入门门槛有点高。没关系。后面的课程我会一个一个逐步给大家详细介绍。 下面我们先简单了解一下这些java开发常用工具。
一、java初学者常用源码编辑工具介绍
java源代码本质上其实就是普通的文本文件,所以理论上来说任何可以编辑文本文件的编辑器都可以作为我们的java代码编辑工具。比如:WINDOWS记事本、写字板、word等。但是这些简单工具没有语法的高亮提示、自动完成等功能,这些功能的缺失会大大降低代码的编写效率。所以学习开发时一般我们不会选用这些简单文本编辑工具。我们一般会选用一些功能比较强大的类似记事本的工具,比如: Notepad++、Sublime Text、editplus、ultraedit、vim等,具体介绍如下:
Notepad++
Notepad++是 Windows操作系统下的一套文本编辑器(软件版权许可证: GPL),有完整的中文化接口及支持多国语言编写的功能(UTF8技术)。Notepad++功能比 Windows 中的 Notepad(记事本)强大,除了可以用来制作一般的纯文字说明文件,也十分适合编写计算机程序代码。Notepad++ 不仅有语法高亮度显示,也有语法折叠功能,并且支持宏以及扩充基本功能的外挂模组。Notepad++是免费软件,可以免费使用,自带中文,支持所有主流的计算机程序语言。
editplus
EditPlus是一款由韩国 Sangil Kim (ES-Computing)出品的小巧但是功能强大的可处理文本、HTML和程序语言的Windows编辑器,你甚至可以通过设置用户工具将其作为C,Java,Php等等语言的一个简单的IDE。EditPlus功能强大,界面简洁美观,且启动速度快;中文支持比较好;支持语法高亮;支持代码折叠;支持代码自动完成(但其功能比较弱),不支持代码提示功能;配置功能强大,且比较容易,扩展也比较强。
ultraedit
UltraEdit 是一套功能强大的文本编辑器,可以编辑文本、十六进制、ASCII 码,完全可以取代记事本,它是一款需要花费49.95美元的共享软件,它提供了友好界面的编程编辑器,支持语法高亮,代码折叠和宏,以及一大堆其他的功能,内置了对于HTML、PHP和JavaScript等语法的支持,可同时编辑多个文件,而且即使开启很大的文件速度也不会慢。因为收费它的流行程度不及以上两款软件。但是用它编辑十六进制时非常好用。另外在国内是否收费对我们影响不大:)。
Sublime Text
Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim。它是一款收费软件,但是可以无限期试用,它是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统,Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。它目前非常流行的一款编辑器,特别是前端开发,基本成了标配。
vim
im是从 vi 发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用,和Emacs并列成为类Unix系统用户最喜欢的文本编辑器。目前Vim已经有各主流系统的版本,但因为学习入门难度比较大,因此在windows平台一直没有流行起来。但是在类Unix系统非常流行。尽管vim较vi已经改良了不少,但是初次使用还是会一头雾水,不知如何操作,所以学习vim要首先过2关。第一关是理解vim的设计思路,vim设计之初就是整个文本编辑都用键盘而非鼠标来完成,键盘上几乎每个键都有固定的用法。第二关是命令关,vim有过百条命令对应编辑的需要,如果能熟练使用vim这些命令,编辑速度会比鼠标要快很多。
二、java编译执行工具介绍
以上工具的主要功能是编写java源代码,要想编译、执行编写的java代码,我们还需要一个编译和执行的工具。也就是java官方提供的JDK(Java Development Kit),也叫java开发工具包。关于JDK的安装与配置。我们下一节专门讲解。在这我们简单了解一下就行了。
JDK
JDK是 Java 语言的软件开发工具包,JDK是整个java开发的核心,它包含了JAVA的运行环境,JAVA工具和JAVA基础的类库等。当我们编写好java源码后,使用JDK提供的java工具来编译、执行java程序。所以要做java开发,首先就是要在开发电脑上安装JDK。下节课我们专门介绍JDK的安装与配置。
三、java单元测试工具介绍
单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为是否合理正确。例如:是在现实世界中,某公司为神州十一号生产了一个零件,必须要单独测试这个零件是否有问题。如果单个零件都不测试。等到都集成到产品中以后再测试。遇到问题往往会找不到原因出在那里,会造成非常大的损失。所以要把所有问题在零件集成到产品以前就解决。这就是单元测试。
JUnit
JUnit是一个Java语言的单元测试框架。它由Kent Beck和Erich Gamma建立,逐渐成为源于Kent Beck的sUnit的xUnit家族中最为成功的一个。 JUnit有它自己的JUnit扩展生态圈。多数Java的开发环境都已经集成了JUnit作为单元测试的工具。JUnit是由 Erich Gamma 和 Kent Beck 编写的一个回归测试框架(regression testing framework)。Junit测试是程序员测试,即所谓白盒测试,因为程序员知道被测试的软件如何(How)完成功能和完成什么样(What)的功能。Junit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。
TestNG
TestNG即Testing, Next Generation,下一代测试技术,它是一个测试 Java 应用程序的新框架。是一套根据JUnit 和NUnit思想而构建的利用注解来强化测试功能的一个测试框架,即可以用来做单元测试,也可以用来做集成测试。TestNG 不仅确实强大、创新、可扩展、灵活。TestNG是一个设计用来简化广泛的测试需求的测试框架。由于设计目标的不同,对比junit的只适合用于单元测试,TestNG无疑走的更远。
四、java源码管理与版本控制工具
java项目一般都是团队开发,当多人共同编写一个项目的时候。代码的整合就需要用到专门的源码管理工具了。另外java项目版本的不断更新,也需要版本的管理。所以源码管理与版本控制工具也是每个java程序员必须要熟练掌握的。目前比较流行的java版本控制工具主要有svn、git这两款软件。这两种工具也是每个java程序员必须要熟练掌握的。本节我们只是简单介绍一下,后面的课程我们会拿出专门的一节来讲解这些工具的具体使用。
SVN
SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。SVN的缺陷是过分依赖网络,不适合分布式开发。使用svn的工作流程如下:1、早上从从服务器下载项目组最新代码。2、进入自己的分支,进行工作,每隔一个小时向服务器自己的分支提交一次代码(很多人都有这个习惯。因为有时候自己对代码改来改去,最后又想还原到前一个小时的版本,或者看看前一个小时自己修改了哪些代码,就需要这样做了)。3、下班时间快到了,把自己的分支合并到服务器主分支上,一天的工作完成,并反映给服务器。
Git
Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持(ps:这得分是用什么样的服务端,使用http协议或者git协议等不太一样。并且在push和pull的时候和服务器端还是有交互的。),使源代码的发布和交流极其方便,目前GIT已经可以在windows下使用,主要方法有二:msysgit和Cygwin。Cygwin和Linux使用方法类似,Windows版本的GIT提供了友好的GUI(图形界面),安装后很快可以上手使用。
五、自动化构建工具
一个大型的java项目的开发往往需要加载很多的各式各样的第三方jar包依赖,这时就需要专门工具来维护这些繁杂的jar包,否则各个jar包的版本问题,依赖问题会让你头很大,当多个团队协作开发时,项目的标准框架配置也需要能够快速在不同团队之间复制,另外项目从创建、开发、测试、发布的整个项目生命周期也需要专门的工具来维护。自动化构建工具就是为了解决以上这些问题的。目前比较主流的自动化构建工具主要有:Maven、gradle、Ant等。其中Ant已经走下坡路,除了维护以前的老项目以外,已经基本没有公司用了。过去几年中Maven已经成为java项目的事实构建工具,没有之一。而近两年Gradle获得越来越多的人使用,分走了不少Maven的用户。在这我们主要了解一下Maven和gradle。
Maven
Maven是一个采用纯Java编写的开源项目管理工具。它包含了一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。Maven采用了一种被称之为project object model (POM)概念来管理项目,所有的项目配置信息都被定义在一个叫做POM.xml的文件中,通过该文件,Maven可以管理项目的整个生命周期,包括编译,构建,测试,发布,报告等等。
gradle
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。面向Java应用为主。当前其支持的语言限于Java、Groovy和Scala,计划未来将支持更多的语言。和Maven一样,Gradle只是提供了构建项目的一个框架,真正起作用的是Plugin。Gradle在默认情况下为我们提供了许多常用的Plugin,其中包括有构建Java项目的Plugin,还有War,Ear等。与Maven不同的是,Gradle不提供内建的项目生命周期管理,只是java Plugin向Project中添加了许多Task,这些Task依次执行,为我们营造了一种如同Maven般项目构建周期。
六、java集成开发工具介绍
初学java为了能更好的掌握java代码的编写,我们一般会选用一款高级记事本类的工具作为开发工具, 而实际项目开发时,更多的还是选用集成IDE做为开发工具,比如当下最流行的两款工具:Eclipse、IDEA,所谓集成IDE就是把代码的编写、调试、编译、执行都集成到一个工具中了,不用单独在为每个环节使用工具。对于这两款软件近些年广大网友一直有争议。有说IDEA最流行的,也有说eclipse最流行的。实际情况估计没人能说的清。大家在学习的时候,这两款软件都尝试使用使用吧。具体介绍如下:
Eclipse
Eclipse是一个开放源码的项目,是著名的跨平台的自由集成开发环境(IDE),最初主要用来Java语言开发,后来通过安装不同的插件Eclipse可以支持不同的计算机语言,比如C++和Python等开发工具。Eclipse的本身只是一个框架平台,但是众多插件的支持使得Eclipse拥有其他功能相对固定的IDE软件很难具有的灵活性。许多软件开发商以Eclipse为框架开发自己的IDE。目前最新版本已经到了4.5版,代号为Mars。基于Eclipse平台开发并集成了很多插件的myeclipse也有很多人在使用。但因myeclipse属于收费软件,所以大公司很少使用。
IDEA
IDEA 全称 IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的java开发工具之一,尤其在智能代码助手、代码自动提示、重构、J2EE支持、各类版本工具(git、svn、github等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。IDEA是JetBrains公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。它的旗舰版本还支持HTML,CSS,PHP,MySQL,Python等。免费版只支持Java等少数语言。
七、java项目分析与设计工具介绍
由于面向对象技术的发展,传统的java项目的开发过程需要做很多的面向对象的分析和设计。整个分析和设计过程中,需要专业的工具来描述和记录分析设计的结果。也需要专门的工具来协助理清分析的思路,UML就是这样的工具。
UML的全称是,统一建模语言(UML,UnifiedModelingLanguage),它是面向对象软件的标准化建模语言。UML因其简单、统一的特点,而且能表达软件设计中的动态和静态信息,目前已成为可视化建模语言的工业标准。在软件开发过程中,统一建模语言可以在整个设计周期中使用,帮助设计者缩短设计时间,减少改进的成本,使软硬件分割最优。
需要注意的是:在现在流行的敏捷开发中。UML的地位远不如以前重要了。另外数据库的分析与设计也需要专门的工具来描述和理清数据库之间的关系。下面我们就来简单介绍两款这样的软件。
Staruml
StarUML是一款开放源码的UML开发工具,是由韩国公司主导开发出来的产品,是一种创建UML类图,生成类图和其他类型的统一建模语言(UML)图表的工具。它可以绘制常用的9种UML图,而且完全免费,软件也比较小,是非常好用的一款软件,不过作者已经很多年不更新了。由此软件延伸一款新的软件:StarUML2。但这款新的软件属于收费软件。
PowerDesigner
PowerDesigner最初由Xiao-Yun Wang(王晓昀)在SDP Technologies公司开发完成。PowerDesigner是Sybase的企业建模和设计解决方案,采用模型驱动方法,将业务与IT结合起来,可帮助部署有效的企业体系架构,并为研发生命周期管理提供强大的分析与设计技术。PowerDesigner独具匠心地将多种标准数据建模技术(UML、业务流程建模以及市场领先的数据建模)集成一体,并与 .NET、WorkSpace、PowerBuilder、Java™、Eclipse 等主流开发平台集成起来,从而为传统的软件开发周期管理提供业务分析和规范的数据库设计解决方案。此外,它支持60多种关系数据库管理系统(RDBMS)版本。PowerDesigner运行在Microsoft Windows平台上,并提供了Eclipse插件
本节课内容虽然简单,但是对于初学者来说很重要,这些工具都是以后开发经常用到的,在本节课中我们只是做了简单的介绍,后面的课程我们会详细讲解这些工具的使用。下节课我们将介绍JDK的安装与配置。下课!!~~~
PS:文章是由华宇互联旗下品牌乐橙谷java培训组织整理编写,转载请注明出处!本文源发表至:乐橙谷 www.lechengu.com
-
web前端常用开发工具排行:8款html开发工具推荐下载
2018-08-18 18:51:40网站开发一般分为前端和后端两个部分。前端负责实现页面效果,后端主要负责功能开发。一般的开发流程是先由美工或者网页设计师进行网页设计和切图...最常用的前端开发工具有哪些呢?本文推荐8款最好用的web前端开发...网站开发一般分为前端和后端两个部分。前端负责实现页面效果,后端主要负责功能开发。一般的开发流程是先由美工或者网页设计师进行网页设计和切图,所谓切图就是将设计好的网页效果图利用html开发工具进行代码实现成网页形式,并且加入一些网页特效。然后交给后端开发人员进行功能开发,一般采用主流的php技术进行开发。
那web开发都用什么工具呢?最常用的前端开发工具有哪些呢?本文推荐8款最好用的web前端开发工具供美工或者前端开发人员使用,当然若你是NB的全栈工程师也可以下载使用。
WEB工具集下载合集地址 http://t.cn/Rk4fd1x
1.Dreamweaver
工具简介:
老牌的网页编辑软件,功能非常强大,最大的优点是可视化编辑,还有错误提示,深受前端开发人员和网站开发人员欢迎!Dreamweaver CC 专注于快速响应设计、代码编辑功能的改进、在设备上进行网页预览以及从 Photoshop 复合中批量提取具有多种分辨率的 Web 优化图像。与 Bootstrap 框架的集成可帮助您构建移动优先、快速响应的网站。视觉媒体查询通过让您在各种断点处对您的设计进行可视化和修改,进一步完善了快速响应网页设计的体验。
2.Photoshop
工具简介:
Photoshop简称PS,全球最受欢迎的图形图像处理软件。网页设计师或者web前端开发人员可利用此软件进行网页的设计和切图,PS的切图工具非常强大,可以自动生成html网页格式,大大提高了网页开发效率。
3.WebStorm MAC版
工具简介:
非常好用的JavaScript开发工具,被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。
4.browser-sync-master
工具简介:
省时的浏览器同步测试工具,Browsersync能让浏览器实时、快速响应您的文件更改(html、js、css、sass、less等)并自动刷新页面。更重要的是 Browsersync可以同时在PC、平板、手机等设备下进项调试。您可以想象一下:“假设您的桌子上有pc、ipad、iphone、android等设备,同时打开了您需要调试的页面,当您使用browsersync后,您的任何一次代码保存,以上的设备都会同时显示您的改动”。无论您是前端还是后端工程师,使用它将提高您30%的工作效率。
web前端开发工具排行:8款html开发工具推荐下载
作为前端开发工程师,以上这些工具基本就够用了,若是想更专业、装逼一点,可以参考下面的htm代码编辑器工具
其它4款html开发工具推荐
1.SublimeText3
工具简介:
Sublime Text是一款流行的代码编辑器。Sublime Text 具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。
2.Notepad++7.3.1
工具简介:
Notepad++是在微软视窗环境之下的一个免费的代码编辑器。它使用较少的CPU功率,降低电脑系统能源消耗,但轻巧且执行效率高,使得Notepad++可完美地取代微软视窗的记事本。内置支持多达27种语法高亮度显示(包括各种常见的源代码、脚本,能够很好地支持.nfo文件查看),还支持自定义语言;可自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,还可显示缩进引导线,代码显示得很有层次感;可打开双窗口,在分窗口中又可打开多个子窗口,允许快捷切换全屏显示模式(F11),支持鼠标滚轮改变文档显示比例;提供了一些有用工具,如邻行互换位置、宏功能等;可显示选中文本的字节数 (而不是一般编辑器所显示的字数,这在某些情况下,比如 软件本地化 很方便)。
3.Zend Studio 13.0.1
工具简介:
Zend Studio是一个屡获大奖的专业PHP集成开发环境,具备功能强大的专业编辑工具和调试工具,支持PHP语法加亮显示,支持语法自动填充功能,支持书签功能,支持语法自动缩排和代码复制功能,内置一个强大的PHP代码调试工具,支持本地和远程两种调试模式,支持多种高级调试功能。
Zend Studio 9 正式发布,主要包含以下更新:
Git和Github支持云开发部署深度,Zend Framework和Zend Server集成更快、更精简的IDE。
4.PhpStorm 10.0.1 Mac版
工具简介:
phpstorm免费版是目前网络上最为流行的php开发软件。phpstorm免费版能全面的提升用户php代码编写的效率,并且提供能代码补全、快速导航、即时错误检查等等功能,大大的节省php代码编写时间,phpstorm 2016.2版全新的软件界面,全面的提升所有编写功能,希望大家能够喜欢,下载使用。
-
Python开发工具
2019-07-16 19:13:47刚开始学习Python就开始遇到难题了,对于Python IDE都比较纠结,希望找到一些适合自己的、Python开发工具。本篇给大家分享几款Python开发工具,供正在纠结用哪种开发工具的小伙伴们参考~ 对于学习Python的小伙伴,...刚开始学习Python就开始遇到难题了,对于Python IDE都比较纠结,希望找到一些适合自己的、Python开发工具。本篇给大家分享几款Python开发工具,供正在纠结用哪种开发工具的小伙伴们参考~
对于学习Python的小伙伴,小编首推的Pycharm。
首先,PyCharm用于一般IDE具备的功能,比如, 调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制
另外,PyCharm还提供了一些很好的功能用于Django开发,同时支持Google App Engine,更酷的是,PyCharm支持IronPython。
PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。
其次是sublime text啦,看看下图,是不是觉得很漂亮呢?它就是sublime text~~
Sublime Text 支持多种编程语言的语法高亮、拥有优秀的代码自动完成功能,还拥有代码片段(Snippet)的功能,可以将常用的代码片段保存起来,在需要时随时调用。支持 VIM 模式,可以使用Vim模式下的多数命令。支持宏,简单地说就是把操作录制下来或者自己编写命令,然后播放刚才录制的操作或者命令。
Sublime Text 还具有良好的扩展能力和完全开放的用户自定义配置与神奇实用的编辑状态恢复功能。支持强大的多行选择和多行编辑。强大的快捷命令"可以实时搜索到相应的命令、选项、snippet 和 syntex, 按下回车就可以直接执行,减少了查找的麻烦。即时的文件切换。随心所欲的跳转到任意文件的任意位置。多重选择功能允许在页面中同时存在多个光标。
还有Jupyter, Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言。
Jupyter Notebook 的本质是一个 Web 应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和 markdown。 用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等 。数据挖掘领域中最热门的比赛 Kaggle 里的资料都是Jupyter 格式 。
最后就是最基本的nopad++,最开始的时候是实用这款作为开发工具进行基础练习。
Notepad++是一套自由软件的纯文本编辑器。该软件以GPL发布,有完整的中文化接口及支持多国语言撰写的功能(采用万国码UTF-8技术)。它的功能比Windows中的记事本(Notepad)强大,除了可以用来制作一般的纯文字的帮助文档,也十分适合用作撰写电脑程序的编辑器。
建议在学习Python基础的时候还是多使用Python自带的IDLE。IDLE是开发python程序的基本IDE(集成开发环境),具备基本的IDE的功能,是非商业Python开发的不错的选择。当安装好python以后,IDLE就自动安装好了,不需要另外去找。学习python过程中有不懂的可以加入我的python零基础系统学习交流秋秋qun:前面是784,中间758,后面是214,与你分享Python企业当下人才需求及怎么从零基础学习Python,和学习什么内容。相关学习视频资料、开发工具都有分享
同时,使用Eclipse这个强大的框架时IDLE也可以非常方便的调试Python程序。基本功能:语法加亮;段落缩进;基本文本编辑;TABLE键控制;调试程序。
如果小伙伴们有其他好用的Python IDE,欢迎在下边留言哈~~~
-
Android开发工具之道
2016-09-08 10:36:19Android开发工具实战视频教程:1、开发借助IDE工具,开发者可以快速编写代码,掌握IDE的使用技巧,对提高编码效率、代码质量都有很大的帮助,同时,利用IDE的重构功能,可以对项目进行持续优化和改进。2、性能优化 ... -
Java 程序员常用的开发工具
2018-03-30 11:45:161、常用开发工具作为一名Java程序开发人员,可以的选择集成开发环境IDE(Integrated Development Environment)非常多,得益于Java是一门开源语言。有开源免费的;有商用收费的。如何选择一款适合自己的集成开发环境... -
Golang 开发工具
2017-12-15 09:22:06作为一个理想的开发工具,可以设定对其的期望,具体如下: ·支持语法高亮的文本编辑 ·支持Unicode编码,便于在代码中直接使用非英文字符串 ·支持工程构建 ·直接执行构建结果 ·单元测试 ·... -
Web前端开发常用的开发工具
2019-09-06 11:26:55为了使得Web开发人员能够更加专注于业务层面的开发,市场上涌现了各种各样的Web开发工具,灵活运用这些工具就能使得你的开发效率大幅提升,实现事半功倍。Web前端开发常用的开发工具都有哪些呢? 1.Web应用框架 这些... -
[开发工具] CodeSmith 6.5.0 完美破解版
2012-06-24 07:59:14☆ 资料说明: ☆ CodeSmith Generator Professional 6.5.0 Revision 14588 完美注册破解版 压缩包内附有注册补丁及使用说明; 支持Visual Studio 2010; -
Linux开发工具和Windows开发工具对比
2012-11-12 15:34:49Linux开发工具就C++开发工具而言,与Windows下微软(VC, VS2005等)一统天下相比,Linux/Unix下C++开发,可谓五花八门,各式各样。Emacs, vi, eclipse, anjuta,kdevelop等层出不穷。 Windows下 开发工具多... -
Lua开发工具LuaEdit
2019-07-09 21:30:39Lua开发工具LuaEdit 文章目录Lua开发工具LuaEdit一、简单介绍二、下载地址三、简单设置及使用说明四、最后 一、简单介绍 notepad++也可以作为lua开发来使用,但是没有函数列表,使用起来太费劲了,找到了一个免费的... -
Python3教程——3、Python3 用什么IDE开发工具好呢
2018-01-05 19:52:48Python3教程——Python3 用什么IDE开发工具 这也许是学习一门语言时大家都会问的一个问题,其实我个人认为无所谓哪个最好,关键在于哪个用着顺手,方便。还有很多人乐于去做排名,去看排名,哪个最好什么的,... -
python开发工具有哪些?我推荐这5款python开发工具!
2019-05-16 11:57:19python开发工具有很多,目前我们用的比较多的是pycharm,除了pycharm还有文本编辑器像微软的vscode,sublime text都有非常好的插件,今天,我就把Python程序员使用频率比较高的5款开发工具推荐给大家,希望对大家的... -
HarmonyOS 鸿蒙开发之02开发工具安装
2020-09-12 09:09:32DevEco Studio开发工具请通过下面的文章下载。 《HarmonyOS 鸿蒙入门教程之01 基础环境和开发工具 (教程含源码)》 二、 解压安装 1、解压 2、一路next 3、全部都勾选上 4、建议重启一下 更多技术交流请... -
nodejs开发入门——开发工具介绍
2017-01-31 19:08:29该篇博客将首先来介绍开发nodejs中使用的开发工具。IDE 目前可以使用很多的编辑器或集成开发环境来编写nodejs,如Sublime、WebStorm,个人强烈推荐使用WebStorm这个IDE来进行开发。WebStorm可以非常方便的进行代码... -
微信小程序教程资料和开发工具大全(文档+代码+例子+工具)
2016-09-27 09:45:24微信小程序教程资料和开发工具大全,文档、代码、例子、工具 微信小程序开发者文档官网地址 https://mp.weixin.qq.com/debug/wxadoc/dev/index.html -
IOS开发工具介绍之Xcode开发工具使用
2014-08-15 11:07:55Xcode开发工具是ios开发的流程使用范围最广的工具。 在所有课程开始之前,柯博文老师先教会我们认识Xcode。把Xcode工具使用作为这节课的重点,现在我们将其做一个简要的归纳。 定制工作区间 柯博文老师在课程... -
Java集成开发工具
2017-01-25 01:26:22Java集成开发工具 -
深受C/C++程序员欢迎的11款IDE_开发工具
2017-09-07 14:34:55概述:C/C++在全球范围内广受欢迎,在应用程序和系统开发中不可或缺。本文总结了近些年深受C/C++程序员欢迎的11款IDE, 深受Java程序员欢迎的10款Java IDE 深受C/C++程序员欢迎的11款IDE 几十年过去了,C... -
NodeJs开发工具
2017-04-26 14:55:03目前流行的是webstorm, sublime. 1. webstorm功能很丰富,前端开发工具的集大成者,相比sublime稍重一些; 2. sublime插件也很丰富,界面也比较美观,很轻量,也有简单的project管理功能; -
安卓开发工具对比
2017-04-21 14:37:13安卓开发工具的比较 -
Linux开发环境必备十大开发工具
2016-12-04 15:48:56Linux是一个优秀的开发环境,但是如果没有好的开发工具作为武器,这个环境给你带来的好处就会大打折扣。幸运的是,有很多好用的Linux和开源开发工具供你选择,如果你是一个新手,你可能不知道有哪些工具可用。本文将... -
MAC版php开发工具推荐:10款最流行的mac版php开发工具
2018-08-18 13:29:37可能对于php初学者不知道该用哪些或者哪些mac版的php开发工具比较好?php中文网特为PHP开发者推荐几款最好用,最流行的php开发工具!php中文网的同学们可以免费下载使用! 一.MAC版代码编辑器 在代码编辑器... -
安卓app开发-01-开发工具及环境配置
2018-09-18 19:23:10安卓app开发-01-开发工具及环境配置 请大家根据推荐指数和自己的意愿选择 使用 Android Studio 1.可以使用 Android Studio 下载地址:http://www.android-studio.org/ 配置方法我就不转载了,请参考:... -
Qt开发工具简介
2018-04-26 13:09:37转载地址:http://www.cnblogs.com/tangkaixuan/p/6504105.html 1.5 认识开发工具本节专门介绍开发常用到的 GNU 工具集、MinGW、 CMake 和 Qt 工具集,这些工具虽然不需要完全学会,但是基本的概念和用途必须... -
QT 开发工具简介
2017-12-22 12:54:371.5 认识开发工具 本节专门介绍开发常用到的 GNU 工具集、MinGW、 CMake 和 Qt 工具集,这些工具虽然不需要完全学会,但是基本的概念和用途必须清楚。 1.5.1 GNU 工具集 在上个世纪八十年代,计算机都是奢侈品,操作... -
移动端开发工具整理
2015-03-29 15:24:31整理移动端开发工具 -
Android开发之使用AndroidStudio开发工具实现JNI的开发
2016-06-02 16:38:39Android开发之使用AndroidStudio开发工具实现JNI的开发 上一篇博文已经详细介绍了通过Eclipse开发工具是如何进行JNI开发的,So这篇文章我将详细介绍通过AndroidStudio开发工具是如何进行JNI的开发的,相信你阅读... -
前后端开发工具篇
2018-01-22 16:18:53开发工具 sublime 一款比较轻巧的适合前端开发的工具 Webstrom Phpstrom Idea 连接数据库工具 Navicat SQLyog PLsql 流程图工具 Visio 原型图工具 Axure 思维导图工具 Xmind 数据库流程图工具 ...
-
muiAndroid移动开发期末项目
-
2021-01-19
-
typeof类型判断的精细讲解
-
vue-router的基本使用
-
【2021】Python3+Selenium3自动化测试(不含框架)
-
MyPersonalBlog.zip
-
Error:Nettwork Error报错信息(我们在做项目的时候,会遇到偶尔前1秒项目页面加载好好的,可后1秒怎么也加载不出来,而且弹出报错)
-
AHP层次分析法软件.zip
-
咸鱼学数据结构和算法——稀疏数组
-
A41772易初莲花大型连锁超市的竞争优势挖掘.doc
-
igraph
-
42605基于74HC164单片机的作息时间控制器.doc
-
你听说过价值3亿元的披萨吗?区块链系统开发讲解知识
-
Redis数据库入门与使用
-
微信支付2021系列之扫码支付一学就会java版
-
国家注册渗透测试工程师(Web安全)
-
clickhouse-common-static-dbg-20.9.2.20-2.x86_64.zip.001
-
Idea中启动Spring Cloud项目后在debugger下显示Frames are not availabe
-
边缘计算论文汇总CCF A B 2018-2020(近二百篇论文)
-
IP控制台(php+python)源码