谷歌编程工具(Google Go)  官方版

谷歌编程工具(Google Go) 官方版 1.3

软件大小:36.00MB
软件类型:国产软件
软件语言:简体中文
软件授权:免费软件
软件分类: 编程工具
支持系统:

  谷歌日前将自家的Go语言升级到了1.3正式版,新版本主要是更新了更精确的垃圾回收机制,解决了GC回收的问题。不过新版本开始也不再支持Windows2000,支持了Native  Client虚拟机架构。

  Google开放Go的代码,希望籍此帮助Go语言的发展。首席软件工程师Rob  Pike说:我们开发Go,是因为近10年左右开发程序之难让我们有点沮丧。Google两年前开始开发Go,1年前开始有一只团队专职于此。Go的定位是系统编程,比如web服务器、存储系统和数据库等,但也欢迎在其它方面的应用。"

  Go语言特点简介:1.引入轻量级线程——协程(coroutine),Go语言中叫goroutine。

  2.采用Erlang风格的并发模型,即消息是进程间唯一的通信方式(而非共享内存)。两个goroutine之间通信通过channel(通道)进行。

  3.对代码风格进行了强制统一,比如public变量必须以大写字母开头,private变量必须以小写字母开头,从而省略了这两个关键字。{}中{的书写不能另起一行等。

  4.defer关键字,不管程序是否异常,均在退出时执行的代码。避免了大量try、catch语句。

  5.函数允许返回多个值,且最后一个值问error类型,用于在错误的情况下返回详细信息。

  6.反对(不提供)函数和操作符的重载,不提供继承、虚函数、虚函数重载。但是提供组合,也达到继承的目的。

  7.没有构造函数和析构函数 ,提供接口,与其他语言最大的区别在于接口是非侵入性的。即实现类无需从接口派生

  8.支持匿名函数与闭包。

  为什么应该用Go?Go是为了帮助人们阅读、调试和维护大型软件系统而生的,所以目标是

  不再缓慢

  不再笨拙

  提高效率

  保持(甚至提升)扩展性

  但是在使用C++或者Java开发中却常常遇到各种问题:

  构建缓慢

  依赖性难以控制

  每个编程语言都使用不同的语言子集

  程序难以理解(文档等原因)

  重复工作

  更新成本高

  版本交叉

  自动化不方便(工具问题)

  跨语言构建

  而Go语言则是为了解决这些问题而设计的。

  另外,C语言的依赖一直是个大问题,包括依赖叠加、编译时引入依赖的情况都很难处理,同时你也没办法查清哪些依赖是可以删除的,那些不可以。在C++中,这一点变得更加明显:

  每个类里都有#include文件

  #include文件中有代码(而不仅仅是声明)

  #ifndef的残留

  所以一直无法在一台机器上构建大型Google二进制。(To build a large Google binary on a single  computer is impractical.)

  当然,工具确实很有帮助,于是做了如下改进:

  新的分布式构建系统

  不再需要Makefile(但仍然使用BUILD文件)

  多缓存

  多复杂度(大程序本身所具有的)

  即使在Google的分布式构建系统的的帮助下,大型构建工程依然会花费不少时间(以其中一个二进制文件为例,在2007年花了45分钟,现在是27分钟)。生活质量还是太低。

  更新日志:Go语言1.3正式版重点内容:

  不再支持Windows 2000;

  支持BSD和Solaris系统;

  支持Native Client虚拟机架构;

  内存模型更新;

  增强垃圾收集器;

  GO命令增加很多新参数;

  性能提升。

谷歌编程工具(Google Go) 官方版下载地址

Windows版下载

普通下载地址

百科推荐

下载排行

近期更新

谷歌编程工具(Google Go)  官方版

谷歌编程工具(Google Go) 官方版