รูปแบบนักแสดงที่Erlang ใช้ดูเหมือนจะเป็นวิธีที่แตกต่างกันมากในการเขียนโปรแกรมพร้อมกัน คุณคิดอย่างไรเกี่ยวกับตัวแบบนักแสดง? มันจะเป็นทางออกยอดนิยมสำหรับการเกิดพร้อมกันหรือไม่?
รูปแบบนักแสดงที่Erlang ใช้ดูเหมือนจะเป็นวิธีที่แตกต่างกันมากในการเขียนโปรแกรมพร้อมกัน คุณคิดอย่างไรเกี่ยวกับตัวแบบนักแสดง? มันจะเป็นทางออกยอดนิยมสำหรับการเกิดพร้อมกันหรือไม่?
คำตอบ:
ฉันคิดว่าคุณรู้แนวคิด ฉันยังไม่รู้ดีมาก
คำตอบสั้น ๆ คือฉันเชื่อในความนิยมของรุ่นนี้กับการทำงานพร้อมกันในระยะสั้นและระยะกลาง ฉันรักแลมบ์ดาและการปิดอยู่เสมอและฉันเห็นนักแสดงที่ชอบการปิดที่จัดการเป็นพิเศษเพื่อเสริมสร้างพลังพร้อมกัน ดังนั้นโปรเซสเซอร์แบบมัลติคอร์ทำให้เรามีกระบวนทัศน์ใหม่ในการเขียนโปรแกรมการทำงานพร้อมกันเป็นสิ่งจำเป็นเพื่อให้ได้ประสิทธิภาพสูง นักแสดงรุ่นดูเหมือนเส้นทางที่สะดวกในการใช้ประโยชน์จากฮาร์ดแวร์ที่ทันสมัย
ไม่ช้าก็เร็ว (ฉันหวังว่าเร็ว ๆ นี้) เกือบทุกภาษากระแสหลักจะสนับสนุนแบบจำลองที่ดีกว่าสำหรับการทำงานพร้อมกัน โมเดล IMHO นักแสดงที่นำมาใช้อย่างดีใน Erlang ควรเป็นตัวเลือกที่ดีที่สุด
อุปสรรคหนึ่งที่นักแสดงนางแบบได้รับความนิยมก็คือความต้านทานน้อยกับ OOP ซึ่งเป็นกระบวนทัศน์ที่โดดเด่นในขณะนี้ แต่จะได้รับขั้นตอนแรกภาษาหลักกำลังใช้คุณสมบัติการทำงานบางอย่างซึ่งจะทำความสะอาดเส้นทางไปยังตัวแบบนักแสดง
ฉันอ่านมากเกี่ยวกับปัญหานี้ฉันคิดว่ามันสำคัญมากสำหรับนักพัฒนาโปรแกรมทุกคนในทักษะของเขา / เธอ
แก้ไขล่าช้า:
ตอนนี้ฉันเข้าใจกระบวนทัศน์ที่ดีขึ้น ดังนั้นฉันสามารถพูดได้ว่ามันจะดีกว่าสำหรับภาษาโปรแกรมอนุญาตให้จัดการกับปัญหาห้องสมุดหรือในที่สุดก็มีคุณสมบัติที่จะอำนวยความสะดวกในการนำรูปแบบ ผูกภาษาที่มีเพียงหนึ่งโมเดลไม่เห็นอุดมคติที่ดี
"ยอดนิยม" ไม่ใช่ตัวชี้วัดที่สำคัญอย่างยิ่ง "มีประโยชน์" หรือ "มีประสิทธิภาพ" คือ
รูปแบบของนักแสดงอยู่ที่ประมาณ 35 ปีแล้วอย่างน้อยก็ในแวดวงวิชาการและมันได้รับการรับรองจากภาษาในโลกแห่งความเป็นจริงมากขึ้นเรื่อย ๆ เมื่อเวลาผ่านไป (ตกลงเออร์แลงไม่ได้ใช้โมเดลของนักแสดง แต่นำกลับมาใช้ใหม่ในโมเดล Actor)
ดังนั้นเมื่อมันรอดชีวิตมาได้หลายสิบปีในวงการการศึกษาและมันกำลังก้าวเข้าสู่กระแสหลัก
สุจริตฉันคิดว่ามันเป็นวิธีที่ดีที่สุดในการทำพร้อมกัน หน่วยความจำที่ใช้ร่วมกันกับโมเดลล็อคทำให้ฉันกลัวฉันเห็นหลาย ๆ อย่างที่ผิดพลาดได้ นักแสดงที่ผ่านการส่งข้อความดูเหมือนจะเป็นวิธีที่สะอาดกว่ามากในการทำสิ่งต่าง ๆ
ดูที่ STM ซึ่งสามารถใช้ใน Clojure และ Haskell และอาจเป็นภาษาอื่น ๆ