Go google language abandon java??? Android upper application or language ~ ~ go with Go About Language

2010-09-04  来源:本站原创  分类:Mobile  人气:205 

Summary

Go languages is Google's second 2009 release open-source programming language. Go language specifically for multi-processor system application programming optimized, the program can use the Go compile comparable C or C + + code speed, and more security, support for parallel process.

Go Language - Introduction

Go language is Google's launch of a new programming language, can in no loss of application performance to a lower code complexity. Google's chief software engineer Rob Pike (Rob Pike) said: The reason we developed Go, because over the past 10 years the frustrating difficulty of software development.

Go is the 2009 release of the second paragraph Google programming language .2009 in July, Google released a Simple language, which is used to develop a BASIC language Android applications.

Beijing on Jan. 10, 2010, Go Language won the TIOBE the Year Award 2009 announced. The award is granted to market share growth in 2009, most programming languages.

Google senior software engineer Rob? Parker (Rob Pike), said, "Go to my experience the unprecedented development efficiency." Parker said, and today, like C + + or C, Go is a system language. He explained Road, "to use it can be rapid development, while it is a real compiled language, we have reason now to open source, because we believe that it has been very useful and powerful."

In 2007, Google 20% of the Go project began as a research and development, that is, the staff out of their jobs outside the hours of 20% invested in the project. In addition to Parker, the project's members also other Google engineers.

Pike said the Go code compiled to run very close to the speed and the C language, and compile very fast, as in the use of an interactive language.

Existing programming languages were not specifically optimized for multicore processors. Parker said, Go is the Google engineer programming for such a language. It is not aimed at the design programmer, but learning to use it is not very difficult. Go to support object-oriented, and real packaging (closures) and reflection (reflection) and so on.

In the learning curve, similar to Parker that the Go with Java, for Java developers, should be able to easily learn to Go.

Go as a reason to release an open source project to enable the open source community have the opportunity to create a better tool to use Gai language, such as the Eclipse IDE plug-in. There is no support for Go to IDE.

In the current public release of Google all network applications are not using Go. But Google has the use of the language development of several internal projects.

Pike said, Go Will Google Chrome OS upcoming impact, now too early to say, but Go Native Client can indeed be used in conjunction. He said, "Go allows applications to run perfectly within the browser." For example, Go to a more efficient implementation of Wave, either in front or back.

Go also has two compilers, one is built based on the GCC Gccgo, another for 64-bit x86, respectively, and a set of 32-bit x86 computer compiler (6g and 8g). Google is developing its ARM chips and Android devices. Parker said, "Android phone problem is, we have been without a numeric coprocessor."

Go Language - Target

Go goal is to upgrade the existing library and other programming languages dependence (dependency) in the management of the software elements of the application will be invoked repeatedly. Because of parallel programming mode, so this language was designed to solve the multi-processor tasks.

Google began to develop about 2007 Go, and in 2008 into a set of full-time employees. Google originally designed as a system, the language of programming language, can be used in network servers, storage systems and databases. However, Google believes that the language is also expected to be used in other areas.

Go languages - Applications

Since Go is not yet ripe, so Google's various services for users or applications do not use that language. For this reason, Google only needs the assistance of outside programmers.

Parker: We need better libraries and tools, and open source communities in these areas of great help to us.

By creating a new programming language, Google will continue to expand in all aspects of computing, thus promoting the development of these areas. It is also developed Android operating system, Google, Chrome browser and Chrome OS's motivation.

Beijing on Jan. 10, 2010, Go Language won the TIOBE the Year Award 2009 announced. The award is granted to market share growth in 2009, most programming languages.

Go-Go team language

Thompson, 1983 Years Turing Award (Turing Award) and the 1998 National Technology Award (National Medal of Technology) winner. He and Dennis Ritchie is the original inventor of Unix. Thompson also invented the C language was derived from the B programming language.

Pike, who is a Bell Labs (Bell Labs) in the Unix team, and the Plan 9 operating system scheme. He worked with Thompson for many years and widely used to create a UTF-8 character encoding.

Robert Griesemer, who helped make Java's HotSpot compiler, and the Chrome browser's JavaScript engine V8.

There is also Plan 9 developers Russ Cox, and has improved the widely used open source compiler GCC's Ian Taylor.

Go-Go could be why the language?

Google on the Go high hopes. Designed to allow software to fully synchronize multiple multi-core processors, the advantages, and may resolve some of the Object Oriented Programming trouble. It has a modern programming language features, such as garbage collection, to help programmers deal with trivial but important question of memory management. Go the speed is very fast, almost C or C + + program just as fast, and can quickly create processes.

Go Go's website is built with, but Google has greater ambitions. The software is specifically designed for building server software (such as Google's Gmail). Go Google that can be applied to other areas, including the implementation of the software within the browser to replace the role of JavaScript.

Pike said: it is at least in the high level of intensity than JavaScript. Self-built Google Chrome browser, in part because of acceleration performance of JavaScript and HTML, and Google has integrated its own technology, such as the Native Client and Gears.

Pike said, Go to another network-related features, is the server and client devices, such as PC or mobile phone, you can share the work. Therefore, you can easily use the Go service for different client processing performance. Go also solve a major current challenge: multi-core processors. General computer program is usually order of execution, time to carry out a job, but more suitable for simultaneous multi-core processors handle a lot of work. Pike said: We believed they had enough support, can improve this problem.

Go team is seeking help. One important area is to improve the Go be able to use the runtime library. Such library can provide many tools and features to speed up the process of program design. The Go's library also includes a number of important design element, and supplies for dealing with garbage collection and other low-level chores resources.

Go team also needed the compiler assistance. Thompson worked 32-bit and 64-bit x86 processors, and ARM processor has written a number of compilers, Taylor also wrote a Go GCC compiler front-end.

Although Google has great ambitions on the Go, the company also understands that the plan can not completely replace the existing technology. Pike wrote: I do not think we can replace anything. We just create another role in this area.

Go-Go language language features

Simple fast and secure open-source support for generic programming interesting parallel, memory management, an array of safe, fast compiler

相关文章
  • Go google language abandon java??? Android upper application or language ~ ~ go with Go About Language 2010-09-04

    Summary Go languages is Google's second 2009 release open-source programming language. Go language specifically for multi-processor system application programming optimized, the program can use the Go compile comparable C or C + + code speed, and mor

  • Google to abandon the "Do not be evil"? Desire to monopolize Android 2010-02-13

    Android wind and water on time, has been rumored that Google will be recovered Android, make it a closed system. The market once again plunged into the dispute, which also verified the previous 51CTO on "Google Android: survival or demise of" di

  • Java Regular Expression Application Summary 2010-03-29

    Java Regular Expression Application Summary First, an overview of Regular expressions are Java handling strings, the text of the important tool. Java on the handling of regular expressions in the following two two classes: java.util.regex.Matcher pat

  • Android MapView application apiKey 2010-06-29

    1. First of all, you must first obtain the debug keystore location: Open the Eclipse ---> Windows ---> Preferences ---> Android ---> Build View the default debug keystore location, I was C: \ Documents and Settings \ MYNAME \. Android \ debug.

  • Android mobile application developers to share development experience - QR generator 2010-08-12

    Students blog to share the first Google Summer Competition - 2010 Android article Statements about: This event is organized by Google to require students in the school. I graduated this year, but continued on the study, and now appears to be in no on

  • 在android.app.Application中定义全局变量 2013-07-15

    在android.app.Application中定义全局变量 在Android应用中使用全局变量,除了public的静态变量,还有更优雅的方式是使用android.app.Application. 启动Application时,系统会创建一个PID,即进程ID,所有的Activity就会在此进程上运行.那么我们在Application创建的 时候初始化全局变量,同一个应用的所有Activity都可以取到这些全局变量的值. 例如,在Application中保存登录状态 AndroidMenife

  • 基于Google Trends的Java Web 开发框架选型比较(2013) 2013-08-06

    Java Web Developing Framework Comparison Based on Google Trends (基于Google Trends的Java Web 开发框架选型比较 2013版) 在基于java的webapp开发中,什么java框架最实用最受欢迎,特别是在国外? 前一阶段需要设计开发一个物联网监控平台,要用java,所以做了如下调研,与大家分享.我希望用数字支持观点,所以让我们用google trends做一个尽可能客观的调研,基于搜索引擎的search数据而不是

  • Google API for Java 2010-12-31

    Google API for Java 网站 : https://github.com/google/google-api-java-client Google API Client Library for Java 是由Google开发的一个Java客户端类库,用于访问其提供的各种基于HTTP的服务.具有灵活.高效.强大等特点.这是访问基于REST或JSON-RPC的Google API推荐类库. 授权协议: Apache 开发语言: Java 操作系统: 跨平台

  • 10款在Google labs诞生的Android应用程序 2014-02-26

    Android市场是很多应用程序的集散地,但在你所知道和喜爱的那些优秀的Android应用程序中,有一部分其实是来自Google labs,一个即将被关闭的试验基地. Google研究部门的高级副总裁Bill Coughran通过Google博客表示公司将关闭Google labs,因为Google打算集中资源开发重点项目. Google计划先结束所有实验,然后着重开发那些已成形的产品.这并不意味着Google停止了一切创新活动,Google员工依旧会花时间进行"宠物计划"(就是工程师

  • android WARNING: Application does not specify ... 2011-07-27

    android WARNING: Application does not specify an API level requirement! 创建项目时没有指定Min SDK Version: Android 1.6--4 Android 2.0--5 Android 2.2--8 Android 2.3--9 双击 AndroidManifest.xml 点击 User Sdk Min,Target,Max 都添 8. 模拟器跑 2.2

  • Google Maps API v2 android版本开发 国内手机不支持google play 2014-03-14

    Google Maps API v2 android版本开发 国内手机不支持google play Service相关问题解决--图文教程 移步:http://www.cnblogs.com/zdz8207/archive/2013/03/25/android-google-maps-api-v2.html https://code.google.com/apis/console/b/1/?noredirect&pli=1

  • Java Android 注解(Annotation) 及几个常用开源项目注解原理简析 2014-10-17

    不少开源库(ButterKnife.Retrofit.ActiveAndroid等等)都用到了注解的方式来简化代码提高开发效率. 本文简单介绍下 Annotation 示例.概念及作用.分类.自定义.解析,并对几个 Android 开源库 Annotation 原理进行简析. PDF 版: Java Annotation.pdf, PPT 版:Java Annotation.pptx, Keynote 版:Java Annotation.key 完整版原文见:Java Android 注解(An

  • Android TTS application (transfer) 2010-03-22

    1 Introduction The Text-To-Speech (TTS) library is allows developers to add speech to their applications. Developers give the TTS object a text string, and the TTS will take care of converting that string to text and speaking it to the user. The TTS

  • android robot: Application Manifest Introduction 2010-06-25

    Each Android application contains a manifest file - AndroidManifest. Xml, stored in the project root directory. The document defines the application's structure and metadata and their components. It contains the component (Activity, Service, Content

  • Android Mobile Application Interface Daquan 2010-10-11

    Display page: 1. Uri uri = Uri.parse ("http://www.google.com"); 2. Intent it = new Intent (Intent.ACTION_VIEW, uri); 3. StartActivity (it); Show map: 1. Uri uri = Uri.parse ("geo: 38.899533, -77.036476"); 2. Intent it = new Intent (Int

  • Java.Android. Decompile 2011-01-13

    I do not like plagiarism, is also very annoying cottage, but Java as open source boosters, has made open source become popular, look at other people good Java code that can quickly improve their ability, and the Java language is running under the jvm

  • Android Network Application Interface 2010-03-29

    Transfer from: http://hi.baidu.com/honey_lonely/blog/item/fa10b003e2b3638ce950cd1c.html 1. Summary This paper describes the development of Web applications on the Android platform, a number of commonly used interfaces. 2. Android platform can use sev

  • Python programming language and Java Performance Comparison 2010-09-15

    Taken from http://developer.51cto.com/art/201003/187962.htm Python programming language currently in use requires continuous learning. Here we have a detailed look at how to better carry out the relevant knowledge. Recently I've been watching a wxPyt

  • 性能优化之Java(Android)代码优化 2013-09-30

    本文主要介绍Java代码中性能优化方式及网络优化,包括缓存.异步.延迟.数据存储.算法.JNI.逻辑等优化方式. 1.降低执行时间 这部分包括:缓存.数据存储优化.算法优化.JNI.逻辑优化.需求优化几种优化方式. (1). 缓存 缓存主要包括对象缓存.IO缓存.网络缓存.DB缓存,对象缓存能减少内存的分配,IO缓存减少磁盘的读写次数,网络缓存减少网络传输,DB缓存较少Database的访问次数. 在内存.文件.数据库.网络的读写速度中,内存都是最优的,且速度数量级差别,所以尽量将需要频繁访问或

  • Java Regular Expression Application summary (change) 2010-03-29

    First, an overview of A regular expression is Java Dealing with strings, the text of the important tool. Java The processing of regular expressions in the following two two classes: java.util.regex.Matcher pattern class: used to indicate a compiled r