java erlang
您可能没有注意到,但是距离我上次发布博客已经过去了几个星期。 这是由于我的Soleus骨折了,而且我的腿是石膏模型。 不能动弹,我认为调查完全不同的东西是个好主意–要么看那一天,要么看白天的电视,尽管Kojak和Magnum PI的重播很诱人,但对Erlang的调查却排在首位。
这里要记住的是,这不是一个
Erlang教程 ,这里的想法是检查Erlang和Java之间的一些相似之处,以尝试提供学习Erlang的起点。 如果我犯了任何啸叫错误,那么希望有更多Erlang经验的人会告诉我。
入门时,他们首先告诉您有关Erlang的信息,这是一种功能语言。 但是,在您陷入困境之前,它是一种结构良好的功能语言,以为您正在处理对象。
那是什么意思 在Java中,代码存储在表示类的文件中,类是执行单一职责的一组数据和方法。 您可以实例化一个类并通过变量访问其方法,也可以通过其类名访问其静态方法。
在Erlang中,代码存储在称为模块的文件中,每个模块都是执行一项职责的一组功能。 您无法实例化模块,并且实例变量和类变量不存在。 您只能使用方法参数变量。 您可以通过其模块名称来访问方法,就像访问Java静态方法一样。 与Java类一样,Erlang模块具有私有和公共功能。
作为Java开发人员,我很高兴发现有一个
eclipse的Erlang插件 。 这是因为学习一种语言而不是一种语言和一套全新的开发工具会更快。 几个月前,我与几位Erlang顾问进行了交谈,他们说他们更喜欢使用emacs,而我确实想知道为什么要等到我发现eclipse插件才算不错。 仍然足以开始使用,并且它具有潜力。
Java开发人员应该有其他相似之处:Erlang模块源文件被编译为.beam
文件,然后在Erlang虚拟机上运行; 还有eunit ,它是Erlang的等效于JUnit ,还有一个log4erl ,顾名思义,是Erlang的Log4J版本。 使用edoc (Erlang的Javadoc版本)和标准项目布局可以自动生成文档,这与Maven布局非常相似,如下所示: