北大青鸟java培训:关于GraalVM的特点?

Python018

北大青鸟java培训:关于GraalVM的特点?,第1张

对于程序员来,一般都会掌握许多编程工具来提高自己的工作效率的,但是如果有一款编程工具能够适用所有编程语言的话,我觉得应该就是GraalVM了,今天北京北大青鸟http://www.kmbdqn.cn/就一起来了解一下GraalVM的特点。

1.高性能JavaGraalVM中的Graal得名于Graal编译器

Graal是一种“万能”编译器,也就是,虽然它是单一的实现,却可以用于很多用途。

例如,我们可以使用Graal进行预编译(ahead-of-time)和即时编译(just-in-time),也可用于编译多种编程语言。

2.占用内存小、启动速度快的JavaJava对于长时间运行的进程来是相当强大的,但短时间运行的进程可能会因较长的启动时间和较高的内存占用而饱受其苦。

3.组合JavaScript、Java、Ruby和R语言除了Java,GraalVM还包含了JavaScript、Ruby、R语言和Python的实现。

它们都是使用一个叫作Truffle的语言实现框架开发的,Truffle让实现简单且高性能的语言解释器成为可能。

在使用Truffle开发语言解释器时,会自动使用Graal作为JIT编译器。

因此,Graal不仅是Java的JIT编译器和预编译器,也可以是JavaScript、Ruby、R语言和Python的JIT编译器。

4.在JVM上运行本地语言GraalVM也支持C语言,GraalVM可以像运行JavaScript和Ruby之类的语言一样运行C代码。

实际上,GraalVM通过运行LLVM位码的方式来支持C语言,而不是直接运行C代码。

也就是,我们可以将现有工具与C语言一起使用,还可以使用其他可输出LLVM的语言,例如C++、Fortran和未来可能出现的其他语言。

为了简化演示,我使用了由StephenMcCamant维护的gzip的单文件版本。

为简单起见,它只是将gzip源代码和autoconf配置连成一个单独的文件。

我还需要修改一些东西才能让它在macOS上运行起来,但不能在GraalVM上运行。

5.适用于所有编程语言的工具如果你使用Java编程,可能已经习惯了使用那些高质量的工具,比如IDE、调试器和分析器,但并非所有的编程语言都有这么好用的工具。

不过如果你是在GraalVM中使用某种语言,就可以获得这样的工具。

6.扩展基于JVM的应用程序除了可用作独立语言实现和用于多语言编程,这些语言和工具也可以嵌入到Java应用程序中。

新的org.graalvm.polyglotAPI可用于加载和运行其他语言的代码。

几大主流;

python:人工智能,机器学习方向,爬虫方向。

java:企业级开发,面向后端,分布式系统开发,微服务。Android开发。

c和c++:系统级开发,高性能程序开发。

c++:游戏服务端开发。

swift/oc:ios开发

r语言:统计分析

JavaScript:前端开发,后端开发node

php:动态网站开发

关联:都是开发语言,精通了一百个其他的,学起来也就快了,度很多是相通的。

C是C++的子集,问C是C++的基础;java和C++学起来类似。

C#的历史最短。答最年轻,只能运行版于dotnet环境。

建议

从“拖拽”编程开始

“拖拽编程”是一种基本的技术,可以让你通过拖拽块或其他视觉线索来创建代码,而不是手动编写基于文本的代码。

Learn computer science. Change the world.,一个提供在线编程课程网站,其创始人Hadi Partovi说:“这让你在不用细致研究字符布置的情况下就能够很容易的理解编程基础。一旦你学到了使用拖拽的基本概念,你将会马上想学习如何利用它做实际的事情。”

有很多程序可以帮助你通过拖拽编程开始,包括MIT Scratch、Code.org的Code Studio, 以及Google Blocky。

Python作为入门的语言

根据Partovi所言,Python对于初学者而言是一种简单的语言。因为很少强调语法,Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。

JavaScript是非常有用的语言之一

JavaScript并不像Python那样简单,但它可以运行于每个平台:Mac、Windows、iOS和Android等等。每个单独的Web浏览器,甚至是像smartwatch这样新的设备都在某些功能上使用JavaScript。

JavaScript之后,试试Ruby和Ruby on Rails

Ruby on Rails 是一个可以使你开发、部署、维护web应用程序变得简单的框架。虽然Ruby和Ruby on Rails有相似的名字,实际上是很有区别的。Ruby是一种脚本语言,就像Python,但是Ruby on Rails是一个Web应用程序框架。换句话说,Ruby是语言,而Ruby on Rails是一个工具,可以容易使用Ruby语言构建网站。

什么让Ruby和Ruby on Rails如此的有吸引力呢?Ruby on Rails使用的实时映射技术和元编程技术,免去了开发者在开发过程中编写大量样板文件代码的烦恼。在少数需要使用样板文件代码的时候,开发者可以通过Ruby on Rails内建的生成器脚本实时创建,而不再是通过手工编写。Ruby on Rails的这个特点可以使开发者更专注于系统的逻辑结构,而不必为一些琐碎的细节所烦扰。

熟悉HTML

虽然HTML跟Python、Ruby比起来不算是编程语言,但是你仍需要它来建立一个网站。HTML是一种超文本标记语言。形象点说,HTML只是比普通文本高一级的描述形式,它只是让文字、图片等更具有描述性。

结论

C适于快而小的程序,但不支持面向对象的编程;C++完全支持面向对象,但是非常复杂;Visual Basic与Delphi易学,但不可移植且有专利权;Java有很多简洁的功能,但是慢,等等。

当无从下手的时候可以试试以上的步骤,在学习的过程中调整适合自己的方法,让“开头”不再那么难。不过无论如何,努力和坚持是最重要的。

整理不易!!!