แนะนำ Erlang และ VM
สำรวจเครื่องเสมือน Erlang (BEAM) ไวยากรณ์พื้นฐาน ชนิดข้อมูล และแนวคิดการเขียนโปรแกรมเชิงฟังก์ชันที่จำเป็นต่อการพัฒนา Erlang
แนะนำ Erlang และ VM เป็นบทเรียน Erlang OTP: Distributed & Fault-Tolerant Systems Programming ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Erlang OTP: Distributed & Fault-Tolerant Systems Programming และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Erlang OTP: Distributed & Fault-Tolerant Systems Programming มีบทเรียนทั้งหมด 4 บทเรียน
บางส่วนของบทเรียนนี้ยังไม่ได้รับการแปล และแสดงเป็นภาษาอังกฤษ
Meet Erlang: Built for Reliability
Erlang, built by Ericsson for systems that must never go down, is a functional language for fault-tolerant, concurrent, distributed apps.
The Power of BEAM
Erlang runs on the BEAM virtual machine, which manages millions of lightweight processes — the foundation of its concurrency and fault tolerance.
Your First Erlang Code
Time for Hello World. Erlang code lives in modules (.erl files) that declare a name and export functions by name and arity.
-module(hello_world).
-export([start/0]).
start() ->
io:format("Hello, Erlang!~n").The Erlang Shell: Your Playground
The Erlang shell (start it with erl) lets you type expressions and see results instantly. Remember to end each with a dot.
Variables: Single Assignment
Erlang variables start uppercase and use single assignment: once bound, a value cannot change in scope. That immutability prevents whole bug classes.
-module(variables).
-export([show/0]).
show() ->
X = 10,
Y = X * 2,
io:format("X is: ~w~n", [X]),
io:format("Y is: ~w~n", [Y]).Basic Types: Atoms & More
Core types: atoms (lowercase named constants like ok), numbers (integers and floats), and booleans, which are just the atoms true and false.
-module(basic_types).
-export([display/0]).
display() ->
Status = ok,
Count = 42,
Pi = 3.14159,
IsActive = true,
io:format("Status: ~w~n", [Status]),
io:format("Count: ~w~n", [Count]),
io:format("Pi: ~w~n", [Pi]),
io:format("Is Active: ~w~n", [IsActive]).Tuples: Fixed Collections
A tuple groups a fixed set of elements in curly braces, like {ok, Value}. It is immutable — build a new one to "change" it.
-module(tuples).
-export([show/0]).
show() ->
Person = {person, "Alice", 30, female},
Coordinate = {x, 10, y, 20},
io:format("Person: ~w~n", [Person]),
io:format("Coordinate: ~w~n", [Coordinate]).Lists: Flexible Sequences
A list in square brackets holds any number of ordered elements. You process it recursively as a Head (first item) and Tail (the rest).
-module(lists_example).
-export([show/0]).
show() ->
Numbers = [1, 2, 3, 4, 5],
Colors = [red, green, blue],
MixedList = [atom_name, 123, {tuple, 1}],
io:format("Numbers: ~w~n", [Numbers]),
io:format("Colors: ~w~n", [Colors]),
io:format("Mixed: ~w~n", [MixedList]).Thinking Functionally
Erlang is functional: data is immutable, functions avoid side effects, and functions are first-class values you pass around freely.
Quick Check: Erlang Basics
Let's test your understanding of basic Erlang concepts.
Which of the following statements about Erlang's core features are TRUE?
Recap: Erlang Basics
Recap: Erlang targets fault-tolerant concurrency on the BEAM, with modules, single-assignment variables, and core types like atoms, tuples, and lists.
เรียนรู้ Erlang ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 12
- บทเรียน
- 48
คำถามที่พบบ่อย
บทเรียน “แนะนำ Erlang และ VM” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “แนะนำ Erlang และ VM” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Erlang OTP: Distributed & Fault-Tolerant Systems Programming ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Erlang OTP: Distributed & Fault-Tolerant Systems Programming มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “แนะนำ Erlang และ VM”
สำรวจเครื่องเสมือน Erlang (BEAM) ไวยากรณ์พื้นฐาน ชนิดข้อมูล และแนวคิดการเขียนโปรแกรมเชิงฟังก์ชันที่จำเป็นต่อการพัฒนา Erlang คุณปฏิบัติ Erlang OTP: Distributed & Fault-Tolerant Systems Programming ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Erlang OTP: Distributed & Fault-Tolerant Systems Programming หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Erlang OTP: Distributed & Fault-Tolerant Systems Programming บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “แนะนำ Erlang และ VM” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Erlang OTP: Distributed & Fault-Tolerant Systems Programming นี้ได้ไหม
ได้ บทเรียน Erlang OTP: Distributed & Fault-Tolerant Systems Programming ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- แนะนำ Erlang และ VM
- โพรเซสและการรับส่งข้อความใน Erlang
- รูปแบบพื้นฐานของการทำงานพร้อมกัน
- การจับคู่รูปแบบและเงื่อนไขกำกับ