การใช้ REPL
Scala แบบโต้ตอบ
การใช้ REPL เป็นบทเรียน Scala for Backend Engineering & Functional Programming ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Scala for Backend Engineering & Functional Programming และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Scala for Backend Engineering & Functional Programming มีบทเรียนทั้งหมด 4 บทเรียน
REPL คืออะไร
REPL ย่อมาจาก วงจรอ่าน-ประเมินผล-แสดงผล เป็นเชลล์แบบโต้ตอบที่ให้คุณพิมพ์นิพจน์ Scala และเห็นผลลัพธ์ได้ทันที
คุณเริ่มใช้งานได้โดยเรียกใช้ scala (หรือ scala-cli repl) ในเทอร์มินัล วิธีนี้เป็นวิธีที่รวดเร็วที่สุดในการทดลองใช้ภาษาโดยไม่ต้องเขียนโปรแกรมทั้งโปรแกรม
นิพจน์แรกของคุณ
พิมพ์นิพจน์ใดก็ได้แล้วกด Enter จากนั้น REPL จะประเมินนิพจน์และแสดงผลลัพธ์ ชนิดข้อมูล และชื่อที่สร้างขึ้น
ตัวอย่างเช่น เมื่อพิมพ์ 1 + 1 จะแสดงผลลัพธ์ประมาณ val res0: Int = 2
object Main {
def main(args: Array[String]): Unit = {
println(1 + 1)
}
}ตัวแปร res
ผลลัพธ์ทุกค่าที่คุณคำนวณจะถูกบันทึกลงในตัวแปรชื่อ resN โดยอัตโนมัติ (res0, res1, ...)
คุณสามารถนำชื่อเหล่านี้กลับมาใช้ในนิพจน์ถัดไปได้ ทำให้ REPL ให้ความรู้สึกเหมือนเครื่องคิดเลขที่คำนวณต่อเนื่อง
object Main {
def main(args: Array[String]): Unit = {
val res0 = 2 + 3
val res1 = res0 * 10
println(res1)
}
}ข้อมูลชนิดข้อมูล
หนึ่งในคุณลักษณะที่มีประโยชน์ที่สุดคือ REPL จะแจ้ง ชนิดข้อมูล ของผลลัพธ์ทุกค่าให้คุณทราบ
การพิมพ์ "hello" จะแสดง val res0: String = hello ซึ่งช่วยให้คุณเรียนรู้ว่า Scala อนุมานชนิดข้อมูลใดให้กับนิพจน์ต่าง ๆ
object Main {
def main(args: Array[String]): Unit = {
val greeting = "hello"
println(greeting)
}
}การกำหนดค่า
คุณสามารถกำหนดค่าให้มีชื่อภายใน REPL ได้โดยใช้ val ค่าดังกล่าวจะคงอยู่ตลอดช่วงเวลาที่เหลือของเซสชัน
เมื่อกำหนดแล้ว คุณสามารถอ้างอิงค่าเหล่านั้นได้ในบรรทัดถัดไปทุกบรรทัด
object Main {
def main(args: Array[String]): Unit = {
val pi = 3.14159
val radius = 2.0
println(pi * radius * radius)
}
}การกำหนดฟังก์ชัน
คุณไม่ได้จำกัดอยู่แค่การเขียนโค้ดบรรทัดเดียว คุณสามารถกำหนดฟังก์ชันโดยตรงใน REPL และเรียกใช้ได้ทันที
วิธีนี้ช่วยให้คุณสร้างฟังก์ชันช่วยเหลือขนาดเล็กและทดสอบได้ทันที
object Main {
def square(x: Int): Int = x * x
def main(args: Array[String]): Unit = {
println(square(5))
}
}อินพุตหลายบรรทัด
หากคุณพิมพ์สิ่งที่ยังไม่สมบูรณ์ เช่น วงเล็บปีกกาเปิด REPL จะแสดงพรอมต์สำหรับเขียนต่อและรอส่วนที่เหลือ
คุณจึงสามารถวางหรือพิมพ์การกำหนดค่าหลายบรรทัดได้ตามธรรมชาติ โดย REPL จะไม่พยายามประเมินผลเร็วเกินไป
object Main {
def main(args: Array[String]): Unit = {
val total =
1 +
2 +
3
println(total)
}
}การนำเข้าใน REPL
คุณสามารถใช้ import อะไรก็ได้ภายใน REPL เช่นเดียวกับในไฟล์ วิธีนี้มีประโยชน์เมื่อต้องการนำเข้าฟังก์ชันช่วยเหลือจากไลบรารีมาตรฐาน
ตัวอย่างเช่น import scala.math.* จะทำให้คุณใช้ sqrt, abs และอื่น ๆ ได้
import scala.math.sqrt
object Main {
def main(args: Array[String]): Unit = {
println(sqrt(16.0))
}
}คำสั่ง REPL ที่มีประโยชน์
REPL มีคำสั่งพิเศษที่ขึ้นต้นด้วยโคลอน:
:helpแสดงรายการคำสั่งทั้งหมด:resetล้างเซสชันของคุณ:quitออกจาก REPL:type exprแสดงชนิดข้อมูลของนิพจน์โดยไม่เรียกใช้
เหตุใดจึงควรใช้ REPL
REPL เหมาะอย่างยิ่งสำหรับ:
- ทดลองใช้ส่วนเชื่อมต่อโปรแกรมที่ไม่คุ้นเคยอย่างรวดเร็ว
- ตรวจสอบว่านิพจน์ให้ผลลัพธ์เป็นชนิดข้อมูลใด
- สร้างต้นแบบตรรกะก่อนเพิ่มลงในโครงการ
- เรียนรู้ภาษาแบบโต้ตอบ
รวมทุกอย่างเข้าด้วยกัน
ภายในเซสชันเดียว คุณสามารถกำหนดค่า เขียนฟังก์ชัน นำเข้าไลบรารี และเชื่อมผลลัพธ์เข้าด้วยกันได้ REPL จะรักษาทั้งหมดนี้ให้อยู่ในขอบเขตการใช้งาน
ต่อไปนี้คือตัวอย่างเล็ก ๆ ที่คุณสามารถสร้างขึ้นทีละบรรทัด
object Main {
def celsiusToF(c: Double): Double = c * 9 / 5 + 32
def main(args: Array[String]): Unit = {
val temps = List(0.0, 25.0, 100.0)
println(temps.map(celsiusToF))
}
}ตรวจสอบอย่างรวดเร็ว
ทดสอบความเข้าใจเกี่ยวกับ Scala REPL ของคุณ
สรุปทบทวน
คุณได้เรียนรู้ว่า REPL คือวงจรอ่าน-ประเมินผล-แสดงผลแบบโต้ตอบสำหรับ Scala
- จะแสดงค่า ชนิดข้อมูล และชื่อ
resNที่สร้างขึ้นโดยอัตโนมัติสำหรับผลลัพธ์แต่ละรายการ - คุณสามารถกำหนด
valและฟังก์ชันที่คงอยู่ในเซสชันได้ - คุณสามารถใช้
importเพื่อนำเข้าไลบรารีและใช้อินพุตหลายบรรทัดได้ - คำสั่งอย่าง
:type,:resetและ:quitใช้ควบคุมเซสชัน
คำถามที่พบบ่อย
บทเรียน “การใช้ REPL” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “การใช้ REPL” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Scala for Backend Engineering & Functional Programming ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Scala for Backend Engineering & Functional Programming มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “การใช้ REPL”
Scala แบบโต้ตอบ คุณปฏิบัติ Scala for Backend Engineering & Functional Programming ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Scala for Backend Engineering & Functional Programming หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Scala for Backend Engineering & Functional Programming บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “การใช้ REPL” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Scala for Backend Engineering & Functional Programming นี้ได้ไหม
ได้ บทเรียน Scala for Backend Engineering & Functional Programming ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ