博客> 药剂编程:要更好地应用程序开发的事实
药剂编程:要更好地应用程序开发的事实
2019-03-21 06:32 评论:0 阅读:210 Bessalitskykh
Elixir Programming

我们知道很多Web开发语言已经被开发人员成功使用了很长时间。 其中最受欢迎的是Python,PHP和Ruby。 然而,近年来带来了一种正在深入讨论的新技术 - Elixir编程语言。

自Elixir编程开始受到关注以来,其他后端语言的效率和优势一直受到质疑。 那就是Elixir真的那么好吗?

我们将尝试在本文中回答这个问题。 让我们更多地了解Elixir语言是什么,它为开发人员提供了什么,以及它可以用于哪些项目。

原文: Elixir Programming: Facts to Know for Better App Development

Elixir是一种功能性编程语言,最初出现于2012年。它的创建者JoséValim在Erlang虚拟机之上构建了一个名为BEAM的虚拟机。 他选择这个基础是有充分理由的。 Erlang是一种并发且高效的编码语言,因此他希望他的新编程语言也是如此。

有一群人称为Elixir Core团队,负责维护源代码。 该团队由六名成员组成:JoséValim,Eric Meadows-Jönsson,James Fish,Aleksei Magusev,MichałMuskała和Andrea Leopardi。 这个事实对Elixir编程很有利,因为在对所有成员之间的变化有共同理解之前,团队永远不会改变代码库。

Erlang:Elixir背后的技术

 Enter your image description here:

为了更好地理解Elixir,有必要花一些时间来研究Erlang。

Erlang也是一种通用的函数式编程语言,由Ericson创建,用于开发电话应用程序。这种使用目的不言而喻。为了确保所述应用程序的连续功能,平台应该是稳定的,并发的,容错的,并且应该在移动中支持软件更新(热代码升级)。自1986年(Erlang首次出现)以来,这种功能性语言一直在应对这一任务,展示了其久经考验的性质和可靠性。

您可能会问为什么开发人员不选择Erlang进行后端编程。与其他Web编程语言相比,它的语法非常不寻常,其框架,工具和包更复杂。

在任何情况下,都有Elixir,它属于Erlang VM语言,由Ruby开发人员创建。这意味着Elixir编程提供了两种编码语言的优点:它的语法类似于Ruby,它可以访问成熟的Erlang系统的所有功能。 Elixir和Erlang也有不同的包管理系统和其他系统工具。

什么是凤凰城框架及其与Elixir的关系?

另一个需要澄清的术语是Phoenix--一个用Elixir编写的Web开发框架,用于Elixir编程。

与Elixir一样,Phoenix框架也可以在Erlang VM(BEAM)上运行。 这意味着Phoenix也可以获得Erlang的所有好处。

凤凰城的主要特点是:

  • 简单
  • 可维护性
  • 速度
  • 生产率
  • 可扩展性

Phoenix Web框架经常与Ruby on Rails进行比较,并且没有充分的理由。 这些流行的Web开发框架现在似乎是竞争对手,因为许多开发人员试图比较它们并决定哪一个最好。

Elixir语言的优点和缺点

与所有其他技术一样,Elixir编程语言也有其优缺点。 让我们分析它们,以了解在为项目选择Elixir编程时可能会遇到的问题。

Elixir的好处

利用Elixir编程语言及其Phoenix框架,对项目和开发过程具有许多优势:

速度 可靠性 并发 生产率 容错 可扩展性 干净的语法

速度 Elixir和Phoenix很快。例如,对Elixir性能的测试显示出比Ruby更好的结果,Phoenix响应时间以微秒为单位。令人印象深刻,不是吗?当我们谈论用户体验时,速度非常重要。很高兴看到应用程序对所有操作做出反应并快速响应。此外,良好的性能有助于节省能源和金钱。

可靠性 这是Erlang的强大之一,也可用于Elixir。 Erlang被称为经过实战验证的编程语言,因此没有理由怀疑Elixir编程的可靠性。

并发 在软件开发中,并发意味着能够同时运行多个进程但使它们彼此独立。 Elixir和Erlang的特点是高并发性。

生产率 Elixir编程的发展速度很快。由于Elixir的语法,在不牺牲开发人员生产力的情况下编写干净且易于理解的代码很容易。

容错 Elixir对两种主要类型的编程错误具有容错能力: 应用程序外发生的问题(例如网络问题) 内部问题(例如错误数据,逻辑错误)

Elixir / Phoenix应用程序有许多同时工作的节点。在第一种情况下,一个节点中的错误不会影响其余节点。系统将通知他们有关问题,他们将相应地重新安排他们的工作。

由于Elixir编程语言的编译性质,如果Elixir代码中存在错误,则无法启动使用其帮助构建的应用程序。为了处理第二类问题并确保应用程序正常工作,Erlang VM隔离出现错误的模块并单独重新启动它们。此过程可防止整个系统停机。

可扩展性 Elixir编程是拥有许多用户的应用程序或积极发展其受众的应用程序的完美选择。 Elixir可以轻松处理大量流量,而无需额外服务器的额外成本。

干净的语法 查看Elixir代码片段,任何开发人员都会告诉您它看起来不错。这是因为Elixir的语法清晰;它使代码易于编写和阅读。这里唯一的一点是Elixir是一种函数式编程语言。函数式编程是一种与面向对象语言所使用的完全不同的编程范式。如果他们从面向对象的语言切换到Elixir编程,这可能需要开发人员一段时间来习惯。

Elixir的缺点

Elixir的缺点是:

较少数的Elixir编程工作和缺少Elixir开发人员 由于Elixir编程尚未普及,就业市场仍在这个领域发展。一方面,对Elixir开发商的需求不是很高,另一方面,Elixir开发商的招聘数量甚至更低。当然,有可能找到一个好的专业人士,但这需要更多的时间和精力。

较小的生态系统和社区 由于Elixir语言相对较新,其社区以及Elixir开发人员可用的库和工具数量仍然少于其他流行编程语言。 Elixir需要更多时间才能赶上它们,而且肯定会。

Elixir是一种年轻的编程语言 Elixir编程语言不久前出现了,并且有许多开发人员观察到这一点。他们中的一些人仍然不确定Elixir编程的未来是什么以及它是否是正确的,最可靠的方式。

哪些项目可以利用Elixir开发?

Elixir函数式编程可用于各种项目。 Elixir在这方面的主要优点是它不适用于任何特定的利基市场。这种编码语言及其Phoenix框架可用于为任何行业构建应用程序。

您可以聘请Elixir开发人员来创建具有任何功能和复杂程度的应用程序,但有些情况下,Elixir编程在战略和财务方面都是最合理的选择。更具体地说,它非常适合需要具有以下特征的项目:

并发 低延迟 很多交通 可扩展性 分布式系统(例如区块链项目) 嵌入式系统(例如物联网项目) 实时应用程序(即时消息,聊天,视频聊天,财务应用程序等)

是时候尝试Elixir了

随着Elixir编程语言和Phoenix框架越来越受欢迎,并且尝试这些技术的开发人员的反馈仍然是积极的,我们别无选择,只能进一步研究它们。

Elixir编程的好处令人印象深刻,它的位置足够强大,可以清楚地表明它不会从雷达中消失。

收藏
0
sina weixin mail 回到顶部