คำนำ
อาจไม่ชัดเจนในทันที แต่ภาษาการเขียนโปรแกรม Rust โดยพื้นฐานแล้วเป็นเรื่องของการ เสริมศักยภาพ ไม่สำคัญว่าตอนนี้คุณจะเขียนโค้ดประเภทใด Rust จะช่วยให้คุณไปได้ไกลขึ้น และสามารถเขียนโปรแกรมได้อย่างมั่นใจ ในขอบเขตที่หลากหลายมากกว่าที่คุณเคยทำมาก่อน
ตัวอย่างเช่น งาน “ระดับระบบ” ที่จัดการกับรายละเอียดระดับต่ำ ของการจัดการหน่วยความจำ การแทนค่าข้อมูล และการทำงานพร้อมกัน โดยทั่วไปแล้วการเขียนโปรแกรมด้านนี้ถูกมองว่าเป็นเรื่องลึกลับ เข้าถึงได้เพียงคนเฉพาะกลุ่มเท่านั้น ซึ้งต้องใช้เวลาหลายปีในการเรียนรู้เพื่อหลีกเลี่ยงข้อผิดพลาดที่ยุ่งยาก และแม้แต่ผู้เชี่ยวชาญเองก็ยังคงต้องระมัดระวังการเขียนโค้ด เพื่อไม่ให้โค้ดของพวกเขามีช่องโหว่ ขัดข้อง หรือเสียหาย
Rust ทำลายกำแพงเหล่านี้ลงโดยกำจัดข้อผิดพลาดเก่า ๆ และจัดเตรียมเครื่องมือที่เป็นมิตรและสวยงาม เพื่อช่วยเหลือคุณไปตลอดทาง โปรแกรมเมอร์ที่ต้องการ “ก้าวลง” ไปสู่การควมคุมระดับต่ำก็สามารถทำได้ด้วย Rust โดยไม่ต้องรับความเสี่ยงด้านการทำงานขัดข้อง หรือช่องโหว่ด้านความปลอดภัย และไม่ต้องเรียนรู้รายละเอียดปลีกย่อยของ toolchain ที่ไม่แน่นอน มากไปกว่านั้น Rust ได้รับการออกแบบเพื่อนำทางไปสู่โค้ดที่เชื่อถือได้ ซึ่งมีประสิทธิภาพในแง่ความเร็ว และการใช้หน่วยความจำ
โปรแกรมเมอร์ที่ทำงานกับโค้ดระดับต่ำอยู่แล้ว สามารถใช้ Rust เพื่อยกระดับความทะเยอทะยานของตนเอง ตัวอย่างเช่น การทำงานแบบขนาน (parallelism) ใน Rust ค่อนข้างมีความเสี่ยงต่ำ คอมไพเลอร์จะตรวจพบข้อผิดพลาดแบบคลาสสิกให้กับคุณ จากนั้นคุณสามารถเพิ่มประสิทธิภาพให้โค้ดของคุณด้วยความมั่นใจ ว่าคุณจะไม่ทำให้เกิดข้อขัดข้อง หรือช่องโหว่โดยไม่ตั้งใจ
แต่ Rust ไม่ได้จำกัดอยู่แค่การเขียนโปรแกรมระดับต่ำเท่านั้น Rust มีศักยภาพมากพอที่จะสร้าง แอปพลิเคชั่น CLI, เว็บเซิร์ฟเวอร์ และโค้ดประเภทอื่นอีกมากมายที่เขียนได้ค่อนข้างน่าพอใจ คุณจะพบตัวอย่างง่าย ๆ ของทั้งสองอย่างในหนังสือเล่มนี้ การทำงานกับ Rust ช่วยให้คุณเรียนรู้ทักษะที่สามารถถ่ายโอนจากขอบเขตหนึ่ง ไปยังอีกขอบเขตหนึ่ง คุณสามารถเรียนภาษา Rust โดย การเขียนเว็บแอปพลิเคชั่น จากนั้นนำทักษะเดียวกันนี้ไปใช้กับ Raspberry Pi
หนังสือเล่มนี้รวบรวมศักยภาพของ Rust ไว้อย่างครบถ้วน เพื่อเพิ่มศักยภาพให้กับผู้ใช้ หนังสือเล่มนี้มีเนื้อหาที่เป็นมิตร และเข้าถึงได้ โดยมีจุดประสงค์เพื่อช่วยให้คุณยกระดับไม่เพียงแต่ความรู้เกี่ยวกับ Rust แต่ยังรวมถึงความสามารถและความมั่นใจในฐานะโปรแกรมเมอร์โดยทั่วไป เตรียมตัวให้พร้อมที่จะดำดิ่งและเรียนรู้ - และยินดีต้องรับสู่ชุมชน Rust
— Nicholas Matsakis and Aaron Turon