ภาษา Ruby
นี่เป็นบทเรียนภาษา Ruby ในบทเรียนนี้ คุณจะได้เรียนรู้เกี่ยวกับการเขียนโปรแกรมในภาษา Ruby เราจะพูดถึงประวัติ โครงสร้างของภาษา ตัวแปร ตัวดำเนินการ เมธอด การเขียนโปรแกรมเชิงวัตถุ และทำความเข้าใจเกี่ยวกับออบเจ็คในภาษา Ruby เนื้อหาในบทเรียนจะเป็นการเขียนโปรแกรมแบบ Console application ซึ่งเป็นการรับค่าและแสดงผลผ่านทางข้อความเท่านั้น การสอนในรูปแบบนี้จะเน้นเพื่อให้คุณเข้าใจพื้นฐานของภาษาเป็นหลัก และหลังจากที่คุณเข้าใจมันดีแล้ว คุณจะสามารถนำไปต่อยอดกับการเขียนโปรแกรมแบบ GUI หรือแม้แต่เว็บแอพพลิเคชันได้อย่างไม่ยาก
Ruby คือภาษาเขียนโปรแกรมแบบไดนามิกส์และสามารถปรับแต่งโครงสร้างของมันเองได้ในขณะที่โปรแกรมทำงาน นอกจากนี้ มันยังเป็นภาษาสำหรับเขียนโปรแกรมเชิงวัตถุมาตั้งแต่กำเนิด (Object-oriented) และเป็นภาษาสำหรับการเขียนโปรแกรมเพื่อวัตถุประสงค์ทั่วไป มันถูกออกแบบและพัฒนาขึ้นในช่วงกลางของ 1990s โดย Yukihiro Matsumoto ในประเทศญี่ปุ่น
ตามที่ Matsumoto ได้บอกไว้ว่าภาษา Ruby นั้นได้รับอิทธิพลมาจากภาษา Perl, Smalltalk, Eiffel, Ada และ Lisp มันเป็นภาษาที่สนับสนุนการเขียนโปรแกรมหลายรูปแบบ ซึ่งประกอบไปด้วยการเขียนโปรแกรมแบบฟังก์ชัน (Functional) การเขียนโปรแกรมเชิงวัตถุและเป็น Imperative นอกจากนี้ ภาษา Ruby ยังมีประเภทข้อมูลเป็นแบบไดนามิกส์และมีระบบการจัดการหน่วยความจำแบบอัตโนมัติ
สำหรับภาษา Ruby ในปัจจุบันนั้นมี Stable release อยู่ที่เวอร์ชัน 2.5 ดังนั้นในบทเรียนนี้ คุณจะได้เรียนเวอร์ชันนี้ซึ่งเป็นเวอร์ชันล่าสุดของภาษา และยังเป็นเวอร์ชันที่ได้รับการสนับสนุนในปัจจุบันและมีคุณสมบัติต่างๆ มากมายซึ่งประกอบไปด้วย การเขียนโปรแกรมเชิงวัตถุ การสืบทอดคลาส Mixins, Iterators, Closures, Exception handling และ Garbage collection
หลังจากเสร็จสิ้นบทเรียนนี้แล้ว คุณจะรู้จักและเข้าใจพื้นฐานของภาษา Ruby และสามารถเขียนโปรแกรมของคุณเองได้ ซึ่งการเข้าใจในพื้นฐานนั้นเป็นสิ่งที่สำคัญที่จะทำให้คุณสามารถนำไปต่อยอดสำหรับการเขียนโปรแกรมในระดับที่สูงขึ้น
เนื้อหาในบทเรียน
- แนะนำภาษา Ruby
- การติดตั้งภาษา Ruby
- โครงสร้างของภาษา Ruby
- ออบเจ็ค ในภาษา Ruby
- ตัวแปรในภาษา Ruby
- ตัวแปรและขอบเขตของตัวแปร
- ประเภทข้อมูล
- การรับค่าและการแสดงผล
- ตัวดำเนินการ
- คำสั่งควบคุมเงื่อนไข
- คำสั่งวนซ้ำ
- เมธอด
- String
- String methods
- อาเรย์
- Array methods
- Hash
- Input/output with files
- คลาสและออบเจ็ค
- การสืบทอดคลาส
- Encapsulation
- Class (II)
- Modules
- Exceptions
- Threads