ขออภัยฉันไม่ทราบบทความหรือหนังสือที่ครอบคลุมรายละเอียดเกี่ยวกับการใช้งานที่แตกต่างกันสำหรับโครงสร้างเหล่านั้นทั้งหมด แต่ฉันสามารถให้ลิงก์บางส่วนไปยังแหล่งข้อมูลแต่ละรายการได้
รูปแบบที่พบบ่อยคือการสร้างหม้อแปลง monadแทน monads ธรรมดา (ดูลิงก์ในย่อหน้าถัดไป) โดยพื้นฐานแล้วหมายความว่าคุณสร้างบางสิ่งที่ต้องใช้ร่วมกับ monads อื่น ๆ ส่งผลให้มีความซับซ้อนมากขึ้นที่สามารถจัดการกับคุณสมบัติของทั้งสองอย่างได้
ในโลกแห่งความเป็นจริง Haskellมีบางบทเกี่ยวกับ monads ในบทที่ 14 Monadsผู้เขียนอธิบายถึงพื้นฐานและการใช้งานทั่วไปบางอย่าง (อาจจะเป็นรายการสถานะ) บทที่ 15 การเขียนโปรแกรมด้วย monadsให้คำอธิบายเพิ่มเติมเกี่ยวกับวิธีการใช้อย่างมีประสิทธิภาพ (ครอบคลุมถึงผู้อ่าน monad ด้วย) บทต่อไปนี้จะอธิบายถึงวิธีการใช้พาร์เซกแต่การค้นหาบทความที่ครอบคลุมวิธีการใช้งานจริงอาจน่าสนใจกว่า: ควรเป็นตัวอย่างที่ดีมากในการใช้ monads ในการแยกวิเคราะห์ Fianlly บทที่ 18 หม้อแปลงโมนาดแนะนำวิธีการทำงานของหม้อแปลง monad จากนั้นแสดงวิธีการสร้างทีละขั้นตอน ข้อพิจารณาในส่วนสุดท้ายของบทก็น่าสนใจเช่นกัน
ผมอ่านครั้งหนึ่งเคยเป็นคำถามที่น่าสนใจจริงๆมากเกี่ยวกับการใช้ความคิดสร้างสรรค์ของ monads ลิงก์ที่เสนอนั้นน่าอ่านเกี่ยวกับหัวข้อนี้ ด้วยจิตวิญญาณนั้นฉันจึงพยายามถามลูกศรแบบเดียวกัน: ฉันได้รับคำตอบน้อยกว่าคำตอบใน monads แต่ก็น่าสนใจอยู่ดี
ด้วยความเคารพต่อรูปแบบ OOP โดยแก๊งสี่มีชุดที่ดีของ 3 บทความโดย IBM เกี่ยวกับหัวข้อในซีรีส์ของพวกเขาความคิดการทำงาน ภาษาที่ใช้งานได้เป้าหมายคือ Scala พวกเขาดำเนินการโดยอธิบายรูปแบบการออกแบบตามปกติใน OOP และแสดงวิธีที่พวกเขาจับคู่กับ Scala
- ความคิดการทำงาน: รูปแบบการออกแบบฟังก์ชั่นตอนที่ 1 ที่นี่ครอบคลุมโรงงานวิธีการแม่แบบกลยุทธ์ฟลายเวท บรรทัดล่างคือการมีฟังก์ชันเป็นค่าชั้นหนึ่งทุกอย่างจะง่ายกว่ามาก
- ความคิดการทำงาน: รูปแบบการออกแบบฟังก์ชั่น 2 นี้เป็นเรื่องเกี่ยวกับ Java และแรง มันเป็นไปตามรูปแบบอะแดปเตอร์
- ความคิดการทำงาน: รูปแบบการออกแบบฟังก์ชั่นส่วนที่ 3 ที่นี่พวกเขาพูดถึงรูปแบบล่าม อีกครั้งภาษาของเป้าหมายนั้นไม่ชัดเจน
บทความที่เกี่ยวข้องมากที่สุดเขียนคำถามของคุณเป็นเรื่องแรก แต่อีกสองเรื่องอาจเป็นเรื่องที่น่าสนใจในการอ่าน