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