Kodokon kodokon.com

ให้อธิบายแนวคิดหรือโค้ดชิ้นหนึ่ง

ใช้ระดับคำอธิบาย การเปรียบเทียบ และการพูดใหม่ เพื่อเข้าใจแนวคิดหรือโค้ดชิ้นหนึ่งอย่างลึกซึ้ง

7 นาที · 3 คำถาม

เปิดบทเรียนนี้ใน Kodokon

พลังพิเศษที่ถูกใช้น้อยที่สุดของ AI คือ มันสามารถอธิบายเรื่องเดียวกันได้ มากเท่าที่จำเป็น โดยไม่มีวันหมดความอดทน ตำราเรียนมีระดับเดียว ครูที่เป็นมนุษย์มีสองหรือสามระดับก่อนจะเหนื่อย แต่ AI สามารถอธิบายโคลเชอร์ (closure) ให้คุณฟังเหมือนอธิบายให้เด็กสิบขวบ แล้วเหมือนอธิบายให้มือใหม่ที่มีแรงจูงใจ แล้วเหมือนอธิบายให้นักพัฒนามือเก๋า และการเปรียบเทียบสามเวอร์ชันนี้เองที่ทำให้เกิดความกระจ่าง

PROMPT
ช่วยอธิบายแนวคิดของ "closure" ใน JavaScript ให้ฉันฟังในสามระดับต่อเนื่องกัน:

1. ระดับเด็ก: ราวกับอธิบายให้เด็กสิบขวบฟัง ด้วยการเปรียบเทียบจากชีวิตประจำวัน ไม่มีศัพท์เทคนิคเลย
2. ระดับมือใหม่: ราวกับอธิบายให้คนที่รู้จักตัวแปรและฟังก์ชัน ด้วยตัวอย่างโค้ดสั้น ๆ (ไม่เกิน 5 บรรทัด)
3. ระดับมืออาชีพ: นิยามที่เคร่งครัด สิ่งที่เกิดขึ้นในหน่วยความจำ และกรณีการใช้งานจริงที่ closure เป็นสิ่งขาดไม่ได้

แยกทั้งสามระดับให้ชัดเจน จบด้วยการถามฉันหนึ่งคำถามเพื่อตรวจสอบว่าฉันเข้าใจระดับ 2 แล้ว
คำอธิบายสามชั้น: การเปรียบเทียบให้สัญชาตญาณ ส่วนระดับมืออาชีพให้ความแม่นยำ

ใช้แต่ละระดับตามสิ่งที่มันมอบให้ ระดับเด็กให้ สัญชาตญาณ ภาพในใจที่คุณจะจดจำไปหลายปี ระดับมือใหม่ให้ สะพาน ระหว่างภาพกับโค้ด ระดับมืออาชีพให้ ความแม่นยำ คำศัพท์ที่แม่นยำที่คุณจะอ่านเจอในเอกสารประกอบและได้ยินในการสัมภาษณ์งาน ถ้าระดับมืออาชีพยังคลุมเครือ นั่นคือสัญญาณว่าให้กลับไปทำระดับที่ต่ำกว่าใหม่ ไม่ใช่อ่านมันวนซ้ำ ๆ

เทคนิคเดียวกันใช้กับ โค้ดที่มีอยู่แล้ว ไม่ว่าจะเป็นของเพื่อนร่วมงาน ของบทเรียนสอน หรือของไลบรารี ปฏิกิริยาที่ผิดคือ ขอ "เขียนโค้ดนี้ใหม่ให้ง่ายขึ้น" ซึ่งเป็นการแทนที่ความไม่เข้าใจของคุณด้วยโค้ดอื่นที่คุณก็จะไม่เข้าใจดีขึ้น ปฏิกิริยาที่ถูกคือ ขอคำอธิบายที่มีโครงสร้าง โดยไม่มีการเขียนใหม่ใด ๆ

PROMPT
นี่คือโค้ดที่ฉันพยายามจะ UNDERSTAND (เข้าใจ ไม่ใช่แก้ไข):

[วางโค้ดตรงนี้]

คำสั่ง:
1. อย่าเขียนโค้ดนี้ใหม่ อย่าเสนอการปรับปรุงใด ๆ
2. อธิบายก่อนในหนึ่งประโยคว่าโค้ดนี้ทำอะไรโดยรวม
3. จากนั้นอธิบายทีละบล็อก ตามลำดับการทำงานจริง
4. ชี้บรรทัดที่ยากที่สุด 2 หรือ 3 บรรทัดสำหรับผู้เรียนระดับกลาง และอธิบายรายละเอียดด้วยการเปรียบเทียบ
5. จบด้วยคำถามที่ทดสอบว่าฉันเข้าใจกลไกหลักจริงหรือไม่
เข้าใจโค้ดโดยไม่ต้องให้เขียนใหม่: ลำดับการทำงานสำคัญเหนือสิ่งอื่นใด

สุดท้าย อย่ายอมทนกับคำอธิบายที่ไม่เข้าหัว "อธิบายด้วยวิธีอื่น" "ยกตัวอย่างเปรียบเทียบอันอื่น" "ใช้ตัวอย่างจากการทำอาหาร" การขอให้พูดใหม่ตามต้องการนั้นฟรีและไม่จำกัด ผู้เรียนมืออาชีพไม่อ่านคำอธิบายคลุมเครืออันเดิมซ้ำสิบรอบ แต่เรียกร้องอันใหม่

ทดสอบความรู้

ตรวจสอบว่าคุณจำประเด็นสำคัญของบทเรียนนี้ได้ครบถ้วน

  1. ระดับคำอธิบายแบบ "เด็ก" มีประโยชน์อะไรสำหรับผู้ใหญ่ที่กำลังเรียนเขียนโปรแกรม?
    • ไม่มีประโยชน์เลย มันเสียเวลาสำหรับผู้ใหญ่
    • สร้างสัญชาตญาณและภาพในใจของแนวคิด
    • แทนที่เอกสารประกอบอย่างเป็นทางการ
    • เตรียมตัวสำหรับการสัมภาษณ์งาน
  2. ทำไมจึงควรเลี่ยงการขอ "เขียนโค้ดนี้ใหม่ให้ง่ายขึ้น" เมื่อคุณกำลังพยายามเข้าใจมัน?
    • เพราะ AI เขียนใหม่พร้อมบั๊กเสมอ
    • เพราะคุณแทนที่โค้ดที่ไม่เข้าใจชิ้นหนึ่งด้วยอีกชิ้นหนึ่ง โดยไม่ได้เรียนรู้อะไรเลย
    • เพราะมันช้ากว่าการอธิบาย
  3. "การพูดใหม่แบบย้อนกลับ" ประกอบด้วยอะไร?
    • ขอให้ AI พูดคำอธิบายซ้ำแบบย้อนกลับ
    • อธิบายแนวคิดด้วยคำพูดของคุณเอง แล้วขอให้ AI แก้เฉพาะข้อผิดพลาด
    • แปลคำอธิบายเป็นอีกภาษาหนึ่ง
    • ขอการเปรียบเทียบสามอันที่ต่างกันของแนวคิดเดียวกัน