ดูเหมือนว่าจะเป็นไปได้ แต่จะไม่เป็นโปรแกรมที่ใช้งานได้จริง มันอาจส่งผลให้การเขียนโปรแกรมที่จำเป็น
ไม่มีการถามว่าทำไมเขาถึงหมายถึงโดยการเขียนโปรแกรมการทำงานที่เป็นไปได้ดังกล่าวโดยเฮย์เล็ม นี่มันคือ:
มันขึ้นอยู่กับสิ่งที่คุณหมายถึงโดย "การเขียนโปรแกรมการทำงาน" และ "เป็นไปได้"
ฟังก์ชั่นการเขียนโปรแกรมไม่สามารถมีคำจำกัดความหรือความหมายที่แตกต่างกันแม้ว่ามันอาจมีคำอธิบายมากมาย
เช่นเดียวกับ OOP เราสามารถถาม "คุณหมายถึงอะไรโดย OOP"
แน่นอนว่าจะมีคำอธิบายมากมาย แต่มันจะเกี่ยวข้องกับหนึ่งวัตถุประสงค์วัตถุประสงค์ของ OOP
เช่นเดียวกับการเขียนโปรแกรมการทำงาน
เมื่อเราพูดถึงฟังก์ชั่นหมายถึงโปรแกรมประกอบด้วยฟังก์ชั่น
บทบาทของฟังก์ชันคือส่งคืนอาร์กิวเมนต์ / พารามิเตอร์ที่ประเมิน (อาร์กิวเมนต์คือตัวแปรคือนิพจน์ที่มาเมื่อเรียกใช้ฟังก์ชันในขณะที่พารามิเตอร์เป็นตัวแปรที่เป็นส่วนหนึ่งของการประกาศฟังก์ชัน)
นอกจากนี้ฟังก์ชั่นจะส่งกลับผลลัพธ์เดิมเสมอเมื่อมีการโต้แย้งกัน ด้วยวิธีนี้จะง่ายกว่าในการหลีกเลี่ยงข้อบกพร่องหรือแก้ไขข้อบกพร่องในอนาคต โดยการเขียนโปรแกรมการทำงานเราสามารถหลีกเลี่ยงผลข้างเคียงเช่นการแก้ไขตัวแปรทั่วโลก
ตัวอย่างใน JavaScript:
function increment(lis){
return lis.map(
function (x){
return x+2;
}
);
}
var myList = [4, 7, 2, 3];
console.log(increment(myList));
console.log(myList);
การเพิ่มฟังก์ชันจะเพิ่ม 1 ค่าให้กับองค์ประกอบภายในวัตถุและส่งคืนผลลัพธ์ ค่าของ myList ไม่เปลี่ยนแปลง แต่เมื่อเราเรียกใช้ฟังก์ชันที่เราเห็นมูลค่าเพิ่มให้กับองค์ประกอบของวัตถุนั้น
ตามการตอบสนองของฉันต่อการเขียนโปรแกรมฟังก์ชั่นเป็นไปได้ใน Java? ฉันเชื่อว่าเป็นไปไม่ได้ที่จะมีการเขียนโปรแกรมใช้งานได้จริงใน java เพราะจาวาได้รับการออกแบบให้เป็น OOP ซึ่งจะขยายการเขียนโปรแกรมที่จำเป็นและปรับปรุงเพื่อการบำรุงรักษา เมื่อสถานะของวัตถุตัวแปร ฯลฯ เปลี่ยนแปลงไปแล้วนั่นคือการเขียนโปรแกรมที่จำเป็น