作为一个每天的接触计算机的程序员,肯定也会接触形形色色的软件,不过今天在此介绍的三款软件,则是我每天都要用到的,而且我认为它们非常好用,极大的提高了我的开发效率。

1、Chrome

  Google的大名可谓是无人不知无人不晓,它的出色绝不仅限于他们提供的搜索服务,早已融入人们的生活的Android系统也是他们的杰作,此外世界上最大的视频网站Youtube、屹立多年的Gmail服务等等也为人们的生活提供了极大的方便。今天要介绍的则是他们另一款令人惊艳的作品 - Chrome。

  随着互联网时代的到来,Web应用也融入人们生活的每个部分,此时,选择一款绝佳的浏览器就显得尤为重要了。出色的浏览器有很多,比如Mozilla的Firfox、Apple的Safari,日渐低沉的Opera,以及Microsoft想要借之一雪IE前耻的Edge,而我则偏爱Chrome,接下来从以下几点进行简单比较。

1、速度

  不论出于任何原因选择一款浏览器,运行流畅必然是最重要的因素之一。这点Chrome则表现的很好,我的电脑上同时安装了Chrome和Firefox,在8G内存+SSD的配置下,打开Firefox仍有延迟,而Chrome基本秒开,实际上,在配置稍差的机器上,打开Firefox可能需要5秒以上的时间,这对于一些像我一样急性子的人来说,还是很痛苦的。另一方面,在网页渲染方面,两款浏览器都很出色,差异性不大,这点可以打开比较复杂的网页感受一下,比如淘宝首页,做如此多的图片下,两款浏览器都能出色表现。而对于IE浏览器来说,来看一副漫画:

2、兼容性

  兼容性要分很多方面,对于操作系统这个大平台来说,Firefox和Chrome都是跨平台的,在Linux、OS X、Windows,以及移动端上都能使用。而Safari虽然在Windows也能用,但是已经很久不更新了。而Firefox在Windows XP下仍能正常使用,这恐怕也是其启动速度稍慢的原因之一吧。

  对于开发者来说,更重要的则是它们对于网页的兼容性,需要一提的是Edge,它们已经支持了ES7标准,而Chrome在52版本之后也支持了这个版本。而在浏览一些传统网页的时候,这几款浏览器都能满足需求,不得不说的还是IE浏览器,使用低版本的IE则和我们看到的简直不是同一个Web世界。另一方面,Webkit内核的浏览器确实已经越来约受欢迎了,Opera也是放弃了原来Presto而转投Webkit的怀抱,事实上,大多数的国内浏览器内核,也是基于Webkit的。

3、开发者工具

  Firefox下的调试工具Firebug在开发者圈子里大名鼎鼎,其易用性毋庸置疑,作为鼻祖级的浏览器调试工具,让调试Js代码变得简单,而其他浏览器下的调试工具也不断完善,Chrome下的调试工具也提供了一些更好用的特性。

  浏览器插件也是浏览器的重要特性之一,Chrome背后有各种各样强大的浏览器插件,之前我看到了一个厉害的插件,甚至能在浏览器上运行安卓程序!丰富的插件也是我选择Chrome的重要原因之一。

  等等?好像没怎么评价Safari?它是苹果的亲儿子,面向的是使用苹果系统的用户,我没用过几次。而Edge确实很出色,但是它是运行在Windows 10平台上的,而且由于个人习惯以及心底对IE的阴影,我没有选择它。

2、Intellij IDEA

  对于一些有编辑器情节的程序员来说,总是对IDE也莫名的抵触,认为VIM、Emcas等单纯的文本编辑器才王道。谁也无法否认这些王牌编辑器的地位,但是与其把编辑器改造的和IDE一样,为什么不直接使用一款IDE呢?

  Intellij IDEA是Jetbrains开发的一款集成开发环境,通常是用来写Java代码的,不过安装插件之后,它也能用来写其它类型的代码。事实上,Jetbrains公司出色的IDE有还多,比如PhpStorm、WebStorm、PyCharm等,是针对不同语言的版本,使用起来,大同小异。不得不说的是,Android Studio的出世,是更多的Android程序员不用再使用Eclipse写代码了,它也是基于Intellij IDEA的。

1、优点

  我们可能经常会遇到这样的问题,由于开发前没能对程序完全的把握,导致程序中要修改一些代码,比如简单地修改一个变量的名字,我们可能很尴尬的发现这个名字在很多文件中出现了,传统情况下要逐个修改吗?那太痛苦了!这一切在Intellij IDEA中是自动完成的!

  我也是VIM众多的粉丝之一,实际上,在远程操作服务器上的文件时,VIM是我的唯一选择。但是在本地写一些并非单个文件能解决问题的代码时,我就要使用IDE了,而且,Intellij IDEA的自动补全功能也很完善,极大的提高了开发效率,而且对于像我这样记不住方法名的菜鸟程序员来说,这简直就是一个福音。

  实际上,Intellij IDEA的还有更多的高级用法,我也只是用到了其中极少的一部分,这个过程慢慢探索吧,当你发现一块“新大陆”的时候,你会惊叹:“天啊!我以前竟然不知道这个功能,那样写代码也太痛苦了!”。

2、缺点

  最主要的问题就是配置要求过高。由于大量的高级功能,Intellij IDEA对机器配置要求很高,配置稍差的电脑很难使用这个IDE,实际上,很多的Android程序员还在使用Eclipse就是因为:“我打不开那个Android Studio啊!”。

  另外Intellij IDEA还有一些已知的bug,毕竟它是如此复杂的一个软件,好在没有影响大局,用它来写代码还是很舒服的!

  值得一提的是,Intellij IDEA的旗舰版本是付费的,我们可以免费使用30天。而社区版本是免费的,不过功能上受到了一些限制。

3、Cygwin

  每次电脑出问题导致重装系统之后,我必装的软件之一就是Cygwin。它是用来干什么的呢?简单来说,它提供了能在Windows下完成一些Linux的操作。如果你是一个Linux的狂热爱好者,必然对Windows有着一些偏见,但是由于太多Windows才能使用的软件,或者是家里人不会使用Linux等原因,导致你不能放弃Windows,这时候该怎么办呢?Cygwin就是你的最佳选择!

  Cygwin只是提供了类似于Linux的环境,实际使用上还是有一些差异的。不过已经能满足我基本的需求了,Cygwin提供了大量Linux下的程序,使得他们可以在Windows正常运行?这次不用使用难看的Putty来访问远程的LInux主机了!也可以方便的敲几下键盘就把代码push到github了!

  很多程序员对命令行操作情有独钟,Windows下提供了一个“命令提示符"的应用程序,就是常说的cmd,又丑又难用,而powershell的出现貌似并没有彻底解开这个尴尬的局面,以至于Windows 10系统中内置了一个Ubuntu子系统,这是一个很激动人心的事情,你甚至可以使用apt命令来安装软件了,但是由于Windows 10系统某些神奇的bug,我没有使用它,既然Cygwin能满足我的基本需求,而且它也足够好用,那就是它了!

  对于懒得安装双系统、或者是不愿意在两个系统中频繁切换的人群来说,Cygwin也真是救星!最后秀一张Cygwin的截图吧。

浅谈三款常用软件 - Chrome、Intellij IDEA、Cygwin的更多相关文章

  1. 减少可执行程序size的三个常用软件

    减少可执行程序size的三个常用软件 linux下面,直接用strip 这个命令 #:strip xxx 可以去掉编译调试信息和各种符号表,能够大大减小可执行程序size windows下面这种exe ...

  2. Python 浅谈编程规范和软件开发目录规范的重要性

    最近参加了一个比赛,然后看到队友编程的代码,我觉得真的是觉得注释和命名规范的重要性了,因为几乎每个字符都要咨询他,用老师的话来说,这就是命名不规范的后续反应.所以此时的我意识到写一篇关于注释程序的重要 ...

  3. 【图像编辑】三款图像编辑软件Photoshop、AffinityPhoto、Gimp非专业简单横向对比

    人的感知分为:视觉.听觉.嗅觉.味觉.触觉.视觉即是对光的强弱.颜色.鲜艳程度的感知.视觉在纸质上通过图像来表达,在计算机数字领域则通过图像(位图)和图形(矢量图)来表达,本文提及的三款软件均为图像( ...

  4. python浅谈编程规范和软件开发目录规范的重要性

    前言 我们这些初学者,目前要做的就是遵守代码规范,这是最基本的,而且每个团队的规范可能还不一样,以后工作了,尽可能和团队保持一致,目前初学者就按照官方的要求即可 新人进入一个企业,不会接触到核心的架构 ...

  5. Servlet 浅谈(三)

    关于Session 关于http协议后面会有一系列文章专门介绍.这里就大概了解一下:首先需要知道一点:HTTP是无状态的. 什么是无状态呢? 客户与服务器建立连接.发出请求.得到响应.关闭连接.整个流 ...

  6. 浅谈UML中常用的几种图——用例图

    1.UML简介 统一建模语言(Unified Modeling Language,UML)又称标准建模语言,是始于1997年的一个OMG标准,它是一个支持模型化和软件系统开发的图形化语言,为软件开发的 ...

  7. salesforce lightning零基础学习(十) Aura Js 浅谈三: $A、Action、Util篇

    前两篇分别介绍了Component类以及Event类,此篇将会说一下 $A , Action以及 Util.  一. Action Action类通常用于和apex后台交互,设置参数,调用后台以及对结 ...

  8. 技术总监和CTO的区别 浅谈CTO的作用----软件公司如何开源节流(一)[转]

    我一直在思考软件公司如何开源节流.当然,老板也在思考开源节流.当然,老板思考的开源节流在公司运营层面上,而我作为CTO,我考虑的则是在产品运营角度上来思考这个问题.否则,一个软件公司,它的生存与发展就 ...

  9. 13.Object-C--浅谈Foundation框架常用的结构体

    ------- android培训.iOS培训.期待与您交流! ---------- 昨天学习了Foundation框架中常用的结构体,下面我简单的总结一下,如果错误麻烦请留言指正,谢谢! Found ...

随机推荐

  1. Qt每次运行都是重新编译问题

    按理说,Qt使用了makefile技术只会编译刚修改的源文件,但有时会遇到一运行项目就会重新编译的问题,严重浪费了时间. 问题就出在你的系统时间上,系统时间的不准确会影响makefile机制的判断过程 ...

  2. 跟我一起写Makefile(四)

    书写命令———— 每条规则中的命令和操作系统Shell的命令行是一致的.make会一按顺序一条一条的执行命令,每条命令的开头必须以[Tab]键开头,除非,命令是紧跟在依赖规则后面的分号后的.在命令行之 ...

  3. jQuery中deferred的对象使用

    什么是deferred对象 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作.其中,既有异步的操作(比如ajax读取服务器数据),也有同步的操作(比如遍历一个大型数组),它们都不是 ...

  4. selenium.common.exceptions.ElementNotVisibleException: Message: element not visible处理方法:selenium针对下拉菜单事件的处理

    使用Selenium爬虫时,可能会遇到一些下拉菜单,动态加载,如果直接使用find_element_by_函数会报错,显示selenium.common.exceptions.ElementNotVi ...

  5. Flex用HTTPService调用servlet返回中文乱码解决

    servlet中使用URLEncoder.encode对输出内容进行编码 Flex中使用decodeURIComponent进行解码

  6. 【BZOJ】2049: [Sdoi2008]Cave 洞穴勘测 LCT

    [题意]给定n个点和m个操作,每次操作:1.连接2个点.2.断开2个点.3.查询2个点是否连通.m<=2*10^5. [算法]Link-Cut Tree [题解]LCT模板题,Link,Cut, ...

  7. 20155117王震宇 实验三 敏捷开发与XP实践 实验报告

    实验内容 XP基础 XP核心实践 相关工具 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程 2.完成实验.撰写实验报告,实 ...

  8. GCD HDU - 1695 莫比乌斯反演入门

    题目链接:https://cn.vjudge.net/problem/HDU-1695#author=541607120101 感觉讲的很好的一个博客:https://www.cnblogs.com/ ...

  9. VueJS 集成 medium editor 自定义编辑器按钮

    详见我的新博客: 守望之吻

  10. Sqlmap与burpsuite动态更新某些参数

    有如下注入点: http://localhost/id=1&order_nu=1 情况说明: id为注入点,  每一次注入时, order_nu不能跟上次的一样(假说这个order_nu为一个 ...