作为 IT 从业人员,你觉得有什么工具大大提高了你的工作效率?

作为 IT 从业人员,你觉得有什么工具大大提高了你的工作效率?,第1张

1nodejs + npm, 这个是前端工具的一个平台,没有他们就没有以下的工具,建立开发环境,下载开发工具,运行开发工具的利器

2 bower, 库依赖管理器,类似于npm,但针对浏览器JavaScript的依赖管理,减少寻找库,下载库和升级库的烦恼

3grunt,流程自动化管理工具,将你非编程的开发步骤减到最小,grunt watch+liveReload或者grunt connect,可以使得免除你F5无尽地狱,发布和开发各种无压力。以下大部分开发工具,都有grunt的相对应的插件,也就是说他们都能利用grunt进行自动化运行

4liveReload, 本来是一套解决方案,自从grunt watch出现后,我们只要安装他的chrome或者firefox插件就行了。它的目的很简单,只要发现目标文件中有任何一个文件有改动,立刻通知浏览器刷新页面,这样就免除了手动按F5。如果和grunt watch合用,就是只要发现任何文件有改动,立刻运行自动化流程中的所有任务,然后通知浏览器刷新。

5 本人用less比较多,因为基本无缝兼容历史遗留系统中的css,(而Sass语法比较特殊,还没有专门用过,应该开发新系统的css比较好),一套css预编译语言,可以把less语法转成css语法,lessc是less语言编译器,配合grunt less,编写大型css文档毫无压力。

6Phantomjs,没有界面的浏览器,用js脚本控制其 *** 作网页。测试,抓图,网页流程自动化利器。配合casperjs的语法简化功能真强库后,控制Phantomjs就更加容易了

7 grunt PhotoBox, 利用phantomjs抓图功能和ImageMagick比较功能,在利用live-reload即时刷新功能,可以让你开发css的时候,快速对n多个页面进行观察,看其前后变化。不过缺点也比较明显,就是速度慢。但比起手动对比来看,还是非常快的。值得css开发时拥有

8 phantomCSS,这个和grunt photobox类似,都用于css开发的,差别是photobox是全局观察差别,而这个是单元组件观察差别,它方便你就抓页面中某一块元素然后进行前后比较,更加注重细节上的差异,这个比较合适组件开发时候使用。

9 jshint,帮助你快速定位JavaScript的语法错误和潜在的跨浏览器兼容性问题。在部署你JS前,用jshint检查一下是没错的 。

10UglifyJS,压缩JavaScript代码,使你的JS代码可以更加快速的加载。有grunt的插件

11 browserify允许你在浏览器里面使用CMD标准模块,但本人认为它的另外一个优势是合并代码,开发时候可以把代码模块化,分成很多很多小文件,然后有调理的放到相对应文件夹下,然后最后合成单一文件。本人曾经利用browserify开发greasemonkey代码,大大简化了greasemonkey的开发难度和增强了greasemonkey代码的质量。browserify有grunt插件,这样又减少的开发步骤。

12 Karma, google开发的一个单元测试运行器,这个自己本身不是一个单元测试框架,而是配合测试单元框架的一个工具。由于前端浏览器众多,就算你有live-reload这样自动化工具,但是还是要手动打开各种浏览器,手动把你的单元测试在各个浏览器都运行一遍。这个工具目的是目的就是让电脑能自动化打开各种浏览器,然后把单元测试在个个浏览器中自动运行一遍,让这个步骤也能自动化了。

13clean-css (grunt cssmin), 我用的是grunt cssmin,但是grunt cssmin实际上背后使用的是clean-css工具,这个工具就是用来压缩精简css的,让css文件大小更小。

还有些有名气的工具,应该不错,但是自己没有用过,所以也就没有提,但可以参考一下

yeoman 项目初始化工具

buddyjs 魔术数字检查器

Image minifier压缩工具

html-minifier html压缩

jade html预编译语言

jsdox JS代码注释文档生成器

jscs JS代码风格检查器

在当今的互联网时代中,Java语言越来越流行。关于Java的一些常用工具也需要我们不断的掌握和理解。下面北京java培训为大家介绍,Java程序员常用的开发工具有哪些。

一、ServiceLoader-加载服务

Java开发人员通常希望区分使用什么和创建什么,北京java课程培训机构发现通常是通过创建一个描述组件 *** 作的接口和使用某种中介创建组件实例。

二、SCanner

无数的Java开发工具可以帮助您构建解析器,许多函数语言已经成功地构建解析器库(解析器选择器)。但是,如果您想解析逗号分隔的值文件或空格分隔的文本文件呢?北京java课程发现大多数工具都太大了,不能在这里使用,Stringsplit()是不够的。

三、Timer

JavautilTimer和TimerTask类提供了一种方便且相对简单的基于周期性或临时延迟执行任务的方法。

四、StAX-解析XML文件

当许多Java开发人员首次使用XML时,分析XML文件的基本方法有两种。北京北京IT培训认为SAX解析器实际上是一个大型状态机,程序员对事件调用一系列回调方法。DOM分析程序将整个XML文档添加到内存中,分离并分割成各个对象,并将它们连接起来形成树。

我也谈谈自己的一些提高开发体验经验,就说软件工具部分。

这里的经验基本上都是冲着一个原则去的:“凡是需要重复做的,必须使用自动化工具完成。”

1 版本控制

一般自己的项目使用git,公司开发规定用svn。反正不管怎么样,版本控制少不了。有个说法,没有版本控制的项目,就等于没有。

版本控制的好处太多了,用过的人都知道。等于历史版本 + 代码备份了。这个提到的很多,就不多说了。

2单元测试工具

写程序需要验证,如果快速知道新的代码和过去的写的代码不冲突,这个时候单元测试就能起到作用了。

当然单元测试的功能不仅仅是这个:

验证代码正确性和可靠性

验证新代码不和原有代码冲突

验证自己代码不合团队其他人员代码有冲突

验证合并是否有冲突

验证快速

可以作为API使用实例

跨平台和跨环境测试

这个是现代开发流程的基本模块之一,没有单元测试的项目,不是一个合格完整的项目。

有了单元测试,就再也不用担心在大项目中,自己做的小修改有会有什么大影响了。开发压力大大减少

PHP的我用的是PHPunit,JavaScript用过的就多了,Jasmine,Qunit,Mocha等工具(不管哪一个,至少要用到一个)C#一般用nUnit。还有各种mock,faker辅助。

3功能测试工具

就是交互界面测试,也可以是界面样式测试。代码写的方式大致过程和单元测试差不多,不过单元测试每个单元都是独立的,理论上不应该有任何依赖关系(只要有依赖关系就叫做集成测试);而功能测试,就是最后成品的测试,必须把所有依赖打开,并且在界面上进行测试。

界面功能测试的优点

速度比人工快

模拟真人 *** 作

可以录像后导出测试代码

可以抓图

缺点:

依赖多,依赖的环境变化可导致代码失效

速度相对单元测试慢很多

测试成功率可能不是100%

功能测试,也是自动测试的一种,至少解放了大量重复性劳动,大大提升界面功能开发的速度。

功能测试工具主要有phantomjs和Selenium。我两个都用,根据不同情况使用不同策略。

4 依赖管理/程序包管理器

有了依赖管理,从此不用再手动去每个库的官方网站下载和更新库了。配置一下,运行一下命令行,然后就下载好了,定时在运行一下命令行,所有库又更新到最新版本了。开发体验大大提高。

列举一下主要好处:

自动安装依赖库

自动更新依赖库

自动安装/更新依赖库的依赖

最新库和现有项目有冲突,可以强制降级依赖库

开发依赖和项目依赖分开,发布版本时候可以自动删除所有开发依赖库

版本控制可以只收入依赖管理配置,无需收入依赖库的目录,大大节省版本控制大小

统一团体所有人员依赖库的版本

依赖管理下载速度快,免除开发人员手动的重复劳动。大大提高开发效率

PHP的依赖管理是composer,js的依赖管理是npm和bower,C#的是nuget,

5 流程管理/构建工具

这个叫法很多还有叫做任务自动管理工具的,不管是什么名字,都是一个意思:自动化流程管理。

简单的说从源代码到产品之间,中间还有一个复杂的过程,一般大致如下:

代码清洁

编译

配置

测试

一般对开发人员来说,凡是重复的,必须使用工具自动完成。开发人员是不愿意重复做这些流程,所以需要流程管理,把这些步骤全部用代码编排好,然后执行一个命令行,让电脑反复执行去。没有流程管理的项目不是一个好项目

JavaScript有grunt和gulp,PHP有Phing,Java有ANT。我用grunt比较多。

6 Live Reload

Live Reload一般是和流程管理一起使用的,(也有独立使用的版本)。独立出来说也是为了体现程序员一个终极特质:懒。凡是重复的,必须使用工具完成。Live Reload就是这个体现:按F5是个重复的低效率行为,必须交给工具完成

Live Reload的功能说起来很简单:

检查文件是否变动

如果变动刷新页面

给开发人员带来的直接好处就是查看页面变动,只要按ctrl+s保持代码就行了,连f5都不用按了。就这好处,足以把Live Reload这个工具当作神器了。配合流程管理工具,只要保存代码(ctrl+s),就马上进行构建,构建完成自动刷新页面。

我用的Live Reload是grunt-contrib-watch。

7代码质量分析工具

人工检查代码的效率是比较低下的,所以质量分析这一块可以作为开发辅助工具,来提高开发质量

常见的代码质量工具有:

语法检查,保证代码语法正确,可以跨平台,使用最佳实践

代码风格检查,保证团队代码风格一致

代码压缩,减少尺寸

重复代码检查

无用代码检查

模块复杂度分析

模块连接分析

等等,让然还有其他的质量分析,这些都是可以整合到流程管理上的。

JavaScript和PHP的用的比较多,Jshint,Jscs,uglifyjs,phpcpd,phpcs,phpdcd,PHPLOC等等工具,可以帮助开发人员提高代码质量,控制团队代码风格。

8持续集成

有人和我说过,持续集成可以让你开发水平提高达到到另外一个层级。当我实践后,终于明白持续集成的魅力所在了。

要会持续集成,你首先必须学会以上6条(live reload除外),以上6条基本就是持续集成的几个基础模块,学会后,你自然而然就已经会了持续集成了。

持续集成的主要流程如下

检查版本控制库是否更新

如果更新,就下载最新版本的代码

构建

测试

报告

当你设置好一个持续集成的项目后,以上的步骤应该就是全自动的了。还是那句老话: 凡是重复的步骤,应该用工具来完成。而持续集成就是这个终极工具。

持续集成其实就是流程管理的一个升级版本,或者说一个扩充。它们都是自动流程工具。它们的差别是:

流程管理主要在本机(开发人员自己的开发环境)上执行,而持续集成则是在一个独立设置的环境下执行。

流程管理继续的是本机代码,而持续集成构建的是版本控制中保存的代码

团队中任何一个人push代码到版本控制中,持续集成就开始构建验证新代码的可靠性。

项目流程配置完成后,流程管理需要执行命令行,持续集成应该全自动

流程管理是持续集成的一个模块,属于持续集成的构建模块

持续集成会有更多后续的专业功能,比如说产生报告,错误通知,构建历史,测试历史等开发新型

我们可以设想一下这样的一个情况,在有20-50个人的团队在开发一个PHP项目,每个人每天至少往版本控制中push大约10次新代码,而这个项目你又要保证在3个主流的浏览器中功能一致,样式相同,而这个项目又必须跨平台,可以在mac,window,linux上都可以运行,而且还要保证PHP54~56都可以运行。这个时候,持续集成系统的优势就会显示其真正的威力了。

总之,在一个专业项目中,持续集成服务所提供的自动构建和专业报告,可以把项目开发的专业水准再次提高到一个新的层次当中。

我用过的持续集成是Jenkins。

文章到此算完结了。其实开发中,还有很多优秀的工具,但无法和这些主要的开发工具相比,就不在这里说了。

一般软件公司硬件方面涉及的都不深,就是SUN,HP,IBM的一些服务器,不过也不用开发人员去关心,主要还是系统应用的平台。

好的软件很少应用在Windows系统中,要了解Linux,Solaris系统。其他的也可以了解,不过一般用的不多,这两个系统很象,都是Unix内核,记一些命令平时没事就练练,学一下在这些系统中安装tomcat、Oracle的流程,没事自己整个虚拟机练练。

开发环境,小应用程序C方向的 VC居多,java方向大部分都是用Eclipse,大的程序服务级别的C方向的就比较痛苦,服务没有用VC开发的,都是纯C语言的,要在记事本中开发喽吼吼(我是这么做的)然后用gcc编译,安装。

web方向MyEclipse+Tocat居多,web容器也有使用Weblogic和Jrun的。

一款好的项目管理工具,不仅能把控项目进度,还能促进团队协作的效率。当我们使用项目管理工具时,应该注意的点有哪些?

1、如何选择适合项目管理工具

好的项目管理工具应该是这样的:

对管理者,可以随时掌控项目进度:查项目整体进度;每个成员的任务情况;查看项目任务清单;查看项目文档等。

对项目成员,可查看自己的TODO;负责哪些任务;参与哪些项目等。

对项目团队,可查看项目的进度;遇到问题时,可通过追溯发现根源;可查看任务的流转情况等。

2、清晰的任务清单

清晰的任务清单帮助团队成员掌握自己工作,保证大家理解一致。项目经理可以使用项目管理工具进度猫来制定项目计划,在进度猫甘特图中,对项目进行分解。

设置子任务,子任务相当于对任务再进行分解,子任务令工作逻辑更清晰。

任务分配,项目分解为具体的任务,将任务分配给下项目成员,明确每个员工的责任。+

里程碑,确定里程碑进度表对完成项目目标非常重要。

依赖关系,每个人完成手上的任务后,下个任务才能开始,确保了每个任务有始有终,有清晰的轨迹,方便了项目的整体监管。

3、预警机制

预警原则就是对项目进度进行把控和提醒相关人员。

在进度猫中,我们可以在项目列表查看,项目时间后,绿色为项目剩余时间,红色为项目逾期时间。同时在项目详情中也可以查看每个任务的剩余及完成时间。

4、随时监控项目进度

项目管理者可以随时通过工具了解项目的进行情况,发现问题及时指出。

甘特图可以清晰展示每个项目成员任务的完成情况,管理者可以使用进度猫甘特图来制作计划,任务列表查看每任务的完成情况,通过甘特图来把控每项活动的进度,保证项目的完成。甘特图让项目经理轻松掌握在项目中所发生的一切。

要实现企业管理的项目化,需要一套符合项目化管理思想的管理工具,领度企业执行与沟通平台 核心机制就是实现企业管理的项目化,既可以管理有生命周期项目、也可以管理常规事务、还可以将产品或客户建立为项目、甚至可对具体的员工进行项目化管理。

项目化管理软件需要符合以下特性:

简化项目管理流程,轻量级的项目管理

减少对项目经理的依赖,项目成员参与项目管理。项目管理按“项目→任务→事件”的方式,“自上而下”地进行工作的部署,人员调动和资源分配。项目执行中所有涉及的信息将按照“事件→任务→项目”的方式,“自下而上”地进行汇总,数据化和图表展示。

单一项目管理的全面性

在做项目管理的时候,需要考虑到项目管理的方方面面如:项目资源的配置,阶段的划分,项目里程碑设定等。需要有完善的项目任务管理、团队管理、财务管理、合同管理、文档管理、时间管理、绩效管理。

具备项目沟通平台

只有沟通好了,才能谈得上项目管理。在领度软件的沟通平台中,采用活动流方式记录项目实施过程,驱动项目执行力。通过类微博化的活动流方式将项目执行的沟通过程记录,并且把信息同步关联到项目,关联到任务,关联到客户,关联到同事。这样沟通记录便存在于项目活动流、任务活动流、客户活动流、个人活动流中,便于事后追溯,一方便将知识精华记录下来形成企业的知识库,利于传承,另一方面消除信息孤岛,减少扯皮现象,责任分明,避免各部门间互相推诿。

多项目管理

在满足单一项目管理的全面性外,还需要胜任多项目管理,将各个项目数据提炼成动态的图形,提供给管理层有力的决策依据。比如在多项目管理中有如下数据图形:

1项目泳道图——展现全部项目的投入与收益情况;

2项目动态图——展现全部项目推进情况;

3项目时间评估——展现全部项目所投入人力成本;

4项目季度复审——展现全部项目的收款、付款及合同资金情况的工具;

5项目甘特图——提供计划甘特图和追踪甘特图,可掌握任务的计划和任务的执行,了解工作的进度。

任何一位Java开发者都有一套工具来应对挑战。一直以来,Java开发者使用软件来完成工作。许多工具对于Java开发者是非常有用的,但对于刚开始Java程序开发的人来说,选择合适的工具是困难的。下面北京IT培训介绍Java开发者必备的六款工具。

Notepad++:作用是编辑xml、脚本和记笔记的最棒的工具。它的优势在于,无论打开哪一个文档,关闭后都会有一个残留文档,如果意外删除重要文档,可以恢复。Notepad++是一款很有特色的编辑器,开源软件,免费使用。

XMLMarker:是xml编辑器,使用同步表、树及文本显示,展现出层次及XML数据表格性质。对Java开发者来说是相当有用处的。它能够协助Java开发者更好的完成工作。收集自动生成重复属性和标签名称,展现在列的任意选择的标签表格里。

SQLDeveloper:作用是针对数据库管理员的免费工具,能够使用它链接数据库和SQL语句。虽然功能没有Toadbut多,但对Java开发者足够用了。SQLDeveloper唯一的缺点就是使用时要有JDK。

Jad:用于反编译Java类。Jad能够用纯文本来命令和阅读代码。

Eclipse:是开放源代码、基于Java的可扩展开发平台。它仅仅是一个框架以及一组服务,利用插件组件构建开发环境。Eclipse优势是它附带了一个标准的插件集,包括Java程序开发工具。

Keytool:是OracleJDK的一部分。Keytool极少用于开发环境,若是正在开发企业级应用,Keytool将是最好的密钥以及证书管理工具。

现在常用的项目管理工具有:CORNERSTONE、JIRA、Teambition、ones、tapd、zentao

最推荐的一种:CORNERSTONE项目管理工具

推荐理由:

CORNERSTONE能够用来处理任何类型的项目协作的工具,应用于运行和维护涉及到你的业务和企业的最困难任务,即使是对最初级的用户都能有所帮助,可满足不同团队规模的需求。

1存储在云端,或者可以自己架设,基于 B/S 架构;

CORNERSTONE有网页版,并支持mac、windows、ios、Android多端同步,并支持私有部署功能。

2任务管理、任务可以设置优先级;

CORNERSTONE可以给每个任务设置“优先级”、“责任人”、“任务类型”、“开始/截止时间”等多种任务属性,并支持自定义配置任务属性。

3任务可以排序,可以分配给成员,完成的任务默认不显示;

任务支持排序:CORNERSTONE的任务支持7种视图显示,可以按照我的任务、未开始任务、已完成任务等多种属性排序。

任务分配到人:上面已经说过了,任务可以设置“责任人”,如果一个任务需要多个人参与,也可以添加参与人。

完成的任务默认不显示:CORNERSTONE的项目应用,可以在我的任务查看自己的所有当前的任务,任务完成后可在已完成任务查看自己已完成的任务。

4知识管理;

WIKI是一种在网络上开放且可供多人协同创作的超文本系统,WIKI站点可以有多人(甚至任何访问者)维护,每个人都可以发表自己的意见,或者对共同的主题进行扩展或者探讨。

CORNERSTONE的WIKI模块可以帮助成员同步记录项目信息,也可创建知识库和企业信息库,方便其他成员查看。

创建知识库/创建页面

创建知识库

点击“WIKI”进入WIKI页面;

点击"+"号创建知识库。

对访问权限进行设置

可创建富文本、Markdown、思维导图以及表格。

富文本

富文本格式是一种非常流行的文件结构,很多文字编辑器都支持它。一般的格式设置,比如字体和段落设置,页面设置等等信息都可以存在RTF格式中,它能在一定程度上实现word与wps文件之间的互访。

CORNERSTONE提供富文本格式,方便 *** 作人员进行直接将Word等格式的文本内容粘贴到富文本。

点击创建富文本,可以直接进行文本编辑,插入链接、格式修改等,右侧提供页面大纲,可以对内容大纲进行概览

可直接复制Word文本内容粘贴到富文本,支持大多数格式设置,方便编辑

Markdown

Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。 1、创建Markdown

创建Markdown,工具栏提供常用的编辑格式:字体加粗、引用、有序排列等,同时可插入链接或;

2、发布后文档会显示创建者、创建时间、修改时间等信息。

3、可生成PDF文件

思维导图

WIKI支持思维导图的创建,可用于关键目标任务分解、梳理结构、头脑风暴等。自定义颜色区分层级,简单 *** 作即可添加子目录,方便快捷。同时可一键生成任务/需求/测试用例/测试计划等,与项目相关联。

创建一个思维导图;

可通过放大或缩小查看全部框架或局部细节;

一键生成生成任务

点击右侧的“生成任务”进入任务创建页面;

任务创建过程与任务面板的任务创建过程一致,可对责任人、状态、优先级等进行初始设置。

任务生成成功

任务生成成功后标题会显示“已关联”

在思维导图生成的任务也会显示在任务列表里。

更新对象

修改后点击“更新对象”,思维导图会根据任务状态发生变更。

另外,WIKI针对思维导图还提供一键生产需求/缺陷/测试用例/测试计划等功能, *** 作流程与一键生成任务的流程相似。

最后,CORNERSTONE支持多语言版本,满足不同企业需求。

CORNERSTONE

全行业覆盖的一站式项目协作平台

以上就是关于前端工程师都有用哪些比较靠谱的小工具全部的内容,包括:前端工程师都有用哪些比较靠谱的小工具、Java程序员常用的开发工具有哪些、作为 IT 从业人员,你觉得有什么工具大大提高了你的工作效率等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/8834946.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-22
下一篇2023-04-22

发表评论

登录后才能评论

评论列表(0条)

    保存