Icon Close

Java Functional Programming

Java Functional Programming
Icon RatingIcon RatingIcon RatingIcon RatingIcon Rating
No Rating
ประเภทไฟล์
pdf
วันที่วางขาย
13 มิถุนายน 2568
ความยาว
437 หน้า
ราคาปก
440 บาท (ประหยัด 82%)
“เขียนโปรแกรมเชิงฟังก์ชันด้วย Java: แนวทางครบเครื่องสำหรับนักพัฒนา”
หนังสือเล่มนี้เป็นคู่มือเชิงวิชาการที่ออกแบบมาเพื่อแนะนำและเสริมสร้างความเข้าใจในแนวคิดและเทคนิคของการเขียนโปรแกรมเชิงฟังก์ชัน (Functional Programming) ด้วยภาษา Java ตั้งแต่พื้นฐานจนถึงเทคนิคขั้นสูง ครอบคลุมเนื้อหาสำคัญ เช่น ฟังก์ชันบริสุทธิ์ การใช้งาน Lambda Expression ฟังก์ชันอินเทอร์เฟส การอ้างอิงเมธอด รวมถึงการจัดการข้อผิดพลาดแบบ Functional และแนวคิดสำคัญอย่าง Lazy Evaluation และ Recursion นอกจากนี้ยังมีตัวอย่างและโจทย์ประกอบเพื่อช่วยให้นักพัฒนาสามารถนำไปประยุกต์ใช้จริงได้อย่างมีประสิทธิภาพ
หนังสือเล่มนี้เหมาะสำหรับนักศึกษาวิทยาการคอมพิวเตอร์ นักพัฒนาซอฟต์แวร์ที่ต้องการเปลี่ยนวิธีคิดสู่การเขียนโปรแกรมแบบ Functional รวมถึงผู้สนใจเทคโนโลยีการพัฒนาซอฟต์แวร์สมัยใหม่ที่ต้องการเข้าใจการเขียนโปรแกรมในเชิงฟังก์ชันอย่างลึกซึ้ง
________________________________________
สารบัญ
หน้า หัวข้อหลัก
1 บทที่ 1 แนะนำการเขียนโปรแกรมเชิงฟังก์ชัน
• ก้าวแรกสู่โลกของ Functional Programming (FP)
• จุดเริ่มต้นของแนวคิด Functional Programming
• จุดเริ่มต้นเชิงทฤษฎี (1930s)
• แนวคิดหลักของ FP ที่ถูกนำไปใช้ |
| 7 | บทที่ 2 พื้นฐานสำคัญของการเขียนโปรแกรมเชิงฟังก์ชัน
• Pure Function (ฟังก์ชันบริสุทธิ์)
• ความหมายของ First-Class Function
• ความหมายของ High-Order Function (ฟังก์ชันระดับสูง)
• การออกแบบ High-Order Function (ใน Java)
• Composite Function หรือ ฟังก์ชันเชิงประกอบ
• ความหมายของ Polymorphic Function
• การใช้ Lambda Expression ใน Java
• Curry Function คืออะไร?
• Partial Function คืออะไร?
• Closure คืออะไร? |
| 56 | บทที่ 3 ฟังก์ชันอินเทอร์เฟส
• Functional Interfaces ใน java.util.function
• Predicate คืออะไร?
• Consumer คืออะไร?
• Supplier ใน Java คืออะไร?
• UnaryOperator คืออะไร?
• BinaryOperator ใน Java คืออะไร?
• วิธีเชื่อมโยง BiFunction กับ andThen() และ แนวทางการใช้ compose()
• BiPredicate คืออะไร?
• การใช้งานร่วมกับ and(), or(), negate() |
| 102 | บทที่ 4 การอ้างอิงเมธอด
• Method References คืออะไร?
• การอ้างอิงเมธอดของอ็อบเจกต์ (Instance Method Reference)
• Method References ร่วมกับฟังก์ชัน
• การอ้างอิงเมธอดของคลาส (Static Method Reference)
• การอ้างอิงเมธอดของอ็อบเจกต์ที่กำหนดในคลาส (Bound Instance Method Reference)
• การอ้างอิงเมธอดของคอนสตรัคเตอร์ (Constructor Reference) |
| 140 | บทที่ 5 สตรีมเอพีไอ
• Stream API คือ อะไร?
• ขั้นตอนการใช้งาน Stream API
• ขั้นพื้นฐานของ Java Stream API
• Stream API: ขั้นกลาง
• Stream API ขั้นสูง (Advanced) |
| 183 | บทที่ 6 ออปชันนอล
• Optional คืออะไร?
• การสร้าง Optional ใน Java
• การตรวจสอบว่า Optional มีค่าหรือไม่
• การดึงค่าจาก Optional
• การใช้งาน Optional ร่วมกับฟังก์ชันอื่น
• การใช้ Optional ในการจัดการกับค่าที่เป็น null ในเชิงลึก
• การใช้ Optional ร่วมกับการคำนวณเชิงฟังก์ชันและการตรวจสอบ |
| 235 | บทที่ 7 การควบคุมการไหลของโปรแกรม
• พื้นฐานการควบคุมการไหลของโปรแกรมในการเขียนโปรแกรมเชิงฟังก์ชัน
• การใช้ Optional แทน if...else...
• การใช้ map() และ filter() แทนการใช้ if...else...
• การใช้ Map สามารถแทนที่ switch
• การใช้ Stream API และ forEach() แทนที่ Loop
• การใช้ฟังก์ชันขั้นสูงเช่น map(), filter(), และ reduce() ใน Stream API ของ Java ช่วยให้การควบคุมการไหลของข้อมูล (Data Flow Control)
• การรวมฟังก์ชัน map(), filter(), และ reduce()
• Concept ของ Optional |
| 289 | บทที่ 8 การจัดการข้อผิดพลาด
• ความรู้เบื้องต้นของการจัดการข้อผิดพลาด (errors and exceptions)
• การใช้ try-catch ใน Functional Style ใน Java
• การใช้ Optional ใน Java ช่วยในการจัดการกับค่าที่เป็น null
• การใช้ Optional โดยไม่ต้องใช้ try-catch หรือ if...else แบบดั้งเดิม
• การใช้ map() กับการจัดการข้อผิดพลาด
• การใช้ flatMap() กับการจัดการข้อผิดพลาด
• การใช้ Either ในการแทนที่ข้อผิดพลาด
• การใช้ Either กับ Stream หรือฟังก์ชันที่มีหลายผลลัพธ์
• การใช้ Monads จัดการข้อผิดพลาด |
| 360 | บทที่ 9 การทำงานแบบเลซี่เนส
• ความรู้พื้นฐานเกี่ยวกับ Laziness
• Supplier คืออะไร?
• ตัวอย่างการใช้งาน Laziness
• เรียนรู้แนวคิด Lazy Evaluation และการประยุกต์ใช้ในการเขียนโปรแกรมเชิงฟังก์ชันด้วย Java |
| 400 | บทที่ 10 การใช้งาน Recursion, Corecursion, และ Memoization
• ความรู้เบื้องต้นของการศึกษา Recursion, Corecursion, และ Memoization
• ขั้นพื้นฐานของ Recursion, Corecursion, และ Memoization
• ขั้นกลางของ Recursion, Corecursion, และ Memoization
• ขั้นสูงของ Recursion, Corecursion, และ Memoization |
ประเภทไฟล์
pdf
วันที่วางขาย
13 มิถุนายน 2568
ความยาว
437 หน้า
ราคาปก
440 บาท (ประหยัด 82%)
เขียนรีวิวและให้เรตติ้ง
หนังสือเล่มนี้ไม่เปิดให้ Comment