Elm 简介

Elm 是一种编译为 JavaScript 的函数式语言。它帮助你创建网站和 Web 应用程序。它非常注重简洁和优质工具。

本指南将

  • 教授你在 Elm 中进行编程的基础知识。
  • 向你展示如何使用Elm 架构创建交互式应用程序。
  • 强调适用于任何语言编程的一般原理和模式。

我希望在本指南结束时,你不仅能够使用 Elm 创建出色的 Web 应用程序,而且还能理解让 Elm 使用起来很不错的核心概念和模式。

如果你还在犹豫,我完全可以保证,如果你体验一下 Elm,并使用它创建一个实际项目,你最终将写出更好的 JavaScript 代码。这些概念很容易传递!

一个快速示例

这是一个允许你对数字进行增减的小程序

import Browser
import Html exposing (Html, button, div, text)
import Html.Events exposing (onClick)

main =
  Browser.sandbox { init = 0, update = update, view = view }

type Msg = Increment | Decrement

update msg model =
  case msg of
    Increment ->
      model + 1

    Decrement ->
      model - 1

view model =
  div []
    [ button [ onClick Decrement ] [ text "-" ]
    , div [] [ text (String.fromInt model) ]
    , button [ onClick Increment ] [ text "+" ]
    ]

请在在线编辑器中试用 此处

该代码乍一看肯定很陌生,因此我们很快就会了解此示例是如何工作的!

为什么会有函数式语言

你可以从函数式风格编程中获得一些好处,但有一些东西你只能从函数式语言(如 Elm)中获得

  • 实际上没有运行时错误。
  • 友好的错误消息。
  • 可靠的重构。
  • 对所有 Elm 包自动执行语义版本控制。

没有任何 JS 库组合可以为你提供所有这些保证。它们来自该语言的设计本身!并且,由于提供这些保证,Elm 程序员经常表示他们从未在编程时如此有信心。有信心快速添加新特性。有信心重构数千行代码。但不必担心错漏重要内容!

我非常注重让 Elm 易于学习和使用,因此我只要求你体验一下 Elm,看看你的想法。希望你能有惊喜收获!

个与 "" 匹配的结果

    没有匹配 "" 的结果