คำถามติดแท็ก paradigms

รูปแบบพื้นฐานของการเขียนโปรแกรมคอมพิวเตอร์

2
ภาษาที่ใช้งานได้ไม่อนุญาตให้มีผลข้างเคียงหรือไม่
ตามวิกิพีเดียภาษาโปรแกรมที่ใช้งานได้ซึ่งเป็น Declarative จะไม่อนุญาตให้มีผลข้างเคียง การเขียนโปรแกรมโดยทั่วไปเพื่อพยายามลดหรือกำจัดผลข้างเคียง นอกจากนี้ตามผลของวิกิพีเดียผลข้างเคียงเกี่ยวข้องกับการเปลี่ยนแปลงสถานะ ดังนั้นภาษาโปรแกรมเชิงฟังก์ชั่นในแง่นั้นพวกเขากำจัดผลข้างเคียงจริง ๆ เนื่องจากไม่มีการบันทึกสถานะ แต่นอกจากนี้ผลข้างเคียงยังมีคำจำกัดความอื่น ผลข้างเคียง มีปฏิสัมพันธ์ที่สังเกตได้กับฟังก์ชั่นการโทรหรือโลกภายนอกนอกเหนือจากการคืนค่า ตัวอย่างเช่นฟังก์ชันเฉพาะอาจแก้ไขตัวแปรโกลบอลหรือตัวแปรสแตติกแก้ไขหนึ่งในอาร์กิวเมนต์ของมันยกข้อยกเว้นเขียนข้อมูลไปยังจอแสดงผลหรือไฟล์อ่านข้อมูลหรือเรียกฟังก์ชั่นผลกระทบด้านอื่น ๆ ในแง่นั้นภาษาการเขียนโปรแกรมฟังก์ชั่นจริงอนุญาตให้มีผลข้างเคียงเนื่องจากมีตัวอย่างมากมายของฟังก์ชั่นที่มีผลต่อโลกภายนอกของพวกเขาเรียกฟังก์ชั่นอื่น ๆ ยกข้อยกเว้นการเขียนไฟล์ ฯลฯ ดังนั้นในที่สุดภาษาการเขียนโปรแกรมฟังก์ชั่นอนุญาตให้มีผลข้างเคียงหรือไม่? หรือฉันไม่เข้าใจสิ่งที่มีคุณสมบัติเป็น "ผลข้างเคียง" ดังนั้นภาษาเชิงซ้อนจึงอนุญาตให้พวกเขาและไม่เป็นการสำแดง จากที่กล่าวมาข้างต้นและสิ่งที่ฉันได้รับไม่มีภาษาใดที่จะกำจัดผลข้างเคียงดังนั้นฉันจึงขาดอะไรบางอย่างเกี่ยวกับผลข้างเคียงหรือนิยามของ Wikipedia นั้นไม่ถูกต้อง

3
การเขียนโปรแกรมการทำงานคืออะไรคำตอบให้กับค่าคงที่ประเภทตาม?
ฉันรู้ว่าแนวคิดของค่าคงที่มีอยู่ในกระบวนทัศน์การเขียนโปรแกรมหลายรายการ ตัวอย่างเช่นค่าคงที่ลูปมีความเกี่ยวข้องใน OO การเขียนโปรแกรมเชิงฟังก์ชันและโพรซีเดอร์ อย่างไรก็ตามชนิดหนึ่งที่มีประโยชน์มากที่พบใน OOP คือค่าคงที่ของข้อมูลประเภทใดประเภทหนึ่ง นี่คือสิ่งที่ฉันเรียกว่า "ค่าคงที่ประเภทตาม" ในชื่อ ตัวอย่างเช่นFractionประเภทอาจมีnumeratorและdenominatorด้วยค่าคงที่ gcd ของพวกเขาเสมอ 1 (เช่นเศษส่วนอยู่ในรูปแบบลดลง) ฉันสามารถรับประกันได้เพียงแค่มีการห่อหุ้มบางประเภทไม่ให้ข้อมูลถูกตั้งค่าอย่างอิสระ ในทางกลับกันฉันไม่ต้องตรวจสอบว่ามันลดลงหรือไม่ดังนั้นฉันจึงสามารถลดความซับซ้อนของอัลกอริทึมเช่นการตรวจสอบความเท่าเทียมกันได้ ในทางตรงกันข้ามถ้าฉันเพียงแค่ประกาศFractionประเภทโดยไม่ให้การรับประกันนี้ผ่านการห่อหุ้มฉันไม่สามารถเขียนฟังก์ชันใด ๆ ในประเภทนี้ได้อย่างปลอดภัยซึ่งคิดว่าเศษส่วนจะลดลงเพราะในอนาคตคนอื่นอาจเข้ามาและเพิ่มวิธี จากการได้รับเศษส่วนที่ไม่ลดลง โดยทั่วไปการขาดค่าคงที่ประเภทนี้อาจนำไปสู่: อัลกอริทึมที่ซับซ้อนมากขึ้นเนื่องจากต้องมีการตรวจสอบ / รับประกันล่วงหน้าในหลาย ๆ สถานที่ การละเมิด DRY เนื่องจากเงื่อนไขล่วงหน้าซ้ำ ๆ เหล่านี้แสดงถึงความรู้พื้นฐานที่เหมือนกัน (ที่ค่าคงที่ควรเป็นจริง) มีการบังคับใช้เงื่อนไขล่วงหน้าผ่านความล้มเหลวรันไทม์มากกว่าการรวบรวมเวลารับประกัน ดังนั้นคำถามของฉันคือสิ่งที่การเขียนโปรแกรมการทำงานตอบสนองค่าคงที่ประเภทนี้ มีวิธีการทำงานที่เป็นไปตามสำนึกของการบรรลุสิ่งเดียวกันมากขึ้นหรือน้อยลง? หรือมีลักษณะบางอย่างของการเขียนโปรแกรมฟังก์ชั่นซึ่งทำให้ประโยชน์ที่เกี่ยวข้องน้อยลง?

6
คุณสามารถเรียนรู้การเขียนโปรแกรมใช้งานได้ใน C หรือไม่? [ปิด]
ปิด คำถามนี้ต้องการรายละเอียดหรือความคมชัด ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ เพิ่มรายละเอียดและชี้แจงปัญหาโดยแก้ไขโพสต์นี้ ปิดให้บริการใน4 ปีที่แล้ว จากการอภิปรายความคิดเห็นที่นี่ฉันสงสัยว่าคุณสามารถเรียนรู้การเขียนโปรแกรมฟังก์ชั่นใน C?
9 c  paradigms 

2
กระบวนทัศน์เหมาะสำหรับการเขียนโปรแกรม UI
นี่เป็นคำถามที่เจาะจงมากขึ้น (หรือจริง ๆ แล้วสองข้อ แต่เกี่ยวข้องกัน) มาจากความคิดเห็นของเทคโนโลยี OOPที่บางคนกล่าวว่า OOP ไม่ใช่กระบวนทัศน์ที่เหมาะสมสำหรับการเขียนโปรแกรม GUI การอ่านความคิดเห็นที่นั่นและที่นี่ฉันยังคงรู้สึกว่ามีสิ่งที่ต้องเรียนรู้: กระบวนทัศน์การเขียนโปรแกรมใดที่ถือว่าเหมาะสมและทำไมพวกเขาถึงดีกว่าคนอื่น ๆ (อาจมีตัวอย่างเพื่ออธิบาย) ฉันลบตัวอย่าง tk ออกจากชื่อและคำถาม

5
คุณสามารถพัฒนาทักษะการเขียนโปรแกรมโดยเรียนรู้กระบวนทัศน์ภาษาอื่น ๆ ได้หรือไม่?
ถ้าเป็นเช่นนั้นคุณช่วยบอกฉันได้หรือไม่ว่าการเรียนรู้กระบวนทัศน์ใหม่เปลี่ยนวิธีการของคุณในการแก้ปัญหาการเขียนโปรแกรมแม้ว่าปัญหาจะอยู่ในกระบวนทัศน์ / ภาษา / เทคโนโลยีอื่นหรือไม่? ฉันจะซาบซึ้งจริง ๆ ถ้าคุณสามารถบอกฉันในลักษณะที่เฉพาะเจาะจงวิธี X (เช่น: JAVA / C # / C ++) ทักษะการเขียนโปรแกรมของคุณดีขึ้นโดยการเรียนรู้ Y (เช่น: Scheme / Prolog / Lisp) นอกจากนี้กรอบความคิดใดที่คุณแนะนำช่วยให้มากที่สุดในการเป็นโปรแกรมเมอร์ที่ดี? ประสบการณ์ของฉันมีโครงสร้างเท่านั้น - OOP, ความจำเป็น - ขั้นตอนและในขอบเขตของเทมเพลตการเขียนโปรแกรม แต่ฉันไม่ได้เรียนรู้ภาษาอื่น ขอบคุณ!

4
กระบวนทัศน์ใดที่จะใช้สำหรับการเขียนเอ็นจิ้นหมากรุก
หากคุณกำลังจะเขียนเอ็นจิ้นเกมหมากรุกคุณจะใช้กระบวนทัศน์การเขียนโปรแกรมแบบใด (OOP ขั้นตอน ฯลฯ ) และทำไมคุณถึงเลือกใช้ โดยโปรแกรมหมากรุกฉันหมายถึงส่วนของโปรแกรมที่ประเมินบอร์ดปัจจุบันและตัดสินใจการเคลื่อนที่ครั้งต่อไปของคอมพิวเตอร์ ฉันถามเพราะฉันคิดว่าการเขียนเอ็นจิ้นหมากรุกเป็นเรื่องสนุก จากนั้นก็เกิดขึ้นกับฉันที่ฉันสามารถใช้เป็นโครงการสำหรับการเรียนรู้การเขียนโปรแกรมการทำงาน จากนั้นมันเกิดขึ้นกับฉันว่าปัญหาบางอย่างไม่เหมาะกับกระบวนทัศน์การทำงาน จากนั้นก็เกิดขึ้นกับฉันว่านี่อาจเป็นการสนทนาที่ดี
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.