การนำรหัส
รับโปรแกรมแก้ไขที่ดีกว่า VIM
ฉันใช้โคโมโดแก้ไข
ฉันรู้สึกว่าฉันต้องทุ่มเทให้กับความทรงจำมากมาย
ดี. การคิดเป็นสิ่งที่ดี ฉันพบว่า "การเรียนรู้" นำไปสู่ "ความจำ" ในที่สุด
"grep" อย่างต่อเนื่องและอ่านรหัสเพื่อระบุอินเตอร์เฟส
นี่เป็นเรื่องปกติ หากคุณจำไม่ได้ว่ามันซับซ้อนเกินไปใช่มั้ย ใช้เวลาในการลดความซับซ้อน
เรียบง่ายยากที่จะสร้าง แต่เมื่อคุณมีปัญหาในการจดจำมันเป็นอาการของการออกแบบที่ไม่ดี
ฉันใช้ grep มันใช้งานได้สำหรับฉัน โคโมโดของฉันมีการค้นหาที่ดีมากมาย ดังนั้น Notepad ++
การระบุอินเทอร์เฟซของวัตถุที่ฉันใช้
Doc Strings และhelp()
ฟังก์ชั่นการทำงาน ฉันใช้พวกเขา ประจำวัน
การสร้างใหม่อย่างมีประสิทธิภาพ ... มันขึ้นอยู่กับคุณภาพของการทดสอบหน่วยของฉันอย่างมาก
นั่นไม่ใช่ข่าว นั่นเป็นเรื่องจริงเสมอแม้กระทั่งในภาษาแบบคงที่
ในภาษาคงที่เรามักขี้เกียจสมมติว่าตราบใดที่มันรวบรวมมันก็มีแนวโน้มที่จะทำงานได้จริง นี่เป็นความเท็จอย่างชัดแจ้ง แต่เราขี้เกียจ
ฉันแน่ใจว่ามีวิธีแก้ไขปัญหาสำหรับปัญหาเหล่านี้
สิ่งเหล่านี้ไม่ใช่ "ปัญหา" และไม่ต้องการ "การแก้ไขปัญหา"
ภาษาแบบไดนามิกนั้นเกี่ยวกับการไม่รู้ประเภทของวัตถุที่คุณจัดการ เมื่อคุณได้รับพารามิเตอร์คุณจะถือว่ามันกำหนดวิธี "quack ()" และ "feathers ()" แต่คุณไม่ทราบว่ามีเอกสารอยู่ที่ไหน (อันที่จริงแล้วเอกสารเหล่านั้นจะมีเอกสารหลายรายการในการนำไปใช้หลายครั้ง
"ไม่ทราบประเภทของวัตถุ" จริงๆ. เมื่อฉันออกแบบไคลเอนต์ของวัตถุฉันรู้ว่าฉันออกแบบประเภทใด
เมื่อฉันกำหนดบริการที่ใช้โดยไคลเอนต์หลายประเภทประเภท "แน่นอน" ไม่เกี่ยวข้องเมื่อฉันได้กำหนดอินเทอร์เฟซที่จำเป็นของ quack()
feathers()
และ
ในที่สุดฉันมี Read-Execute-Print-Loop และเครื่องมืออื่น ๆ เพื่อกำหนดประเภท "แน่นอน" ในกรณีที่หายากเมื่อฉันมีปัญหาเล็กน้อย นั่นคือสิ่งที่ฉันใช้จริงทุกวัน
>>> x = some_mystery_factory( some, args )
>>> type(x)
>>> dir(x)
ดูเหมือนจะไม่ยากเกินไปอย่างน้อยก็ใน Python ที่จะผ่อนคลายประเภทของวัตถุ ต้องใช้ภาษาแบบไดนามิกที่มี REPL ซึ่งทำให้ง่ายต่อการดูว่าเกิดอะไรขึ้น
คุณไม่ทราบคำสั่งพารามิเตอร์ที่คาดหวังเช่นกัน ดูเหมือนว่า IDE จะช่วยได้ยาก
นั่นไม่สมเหตุสมผลเลย help()
โรงงาน
และ IDE ของฉันมักจะค้นหาคำจำกัดความ ไม่เสมอไป - การสร้างแบบไดนามิกที่ซับซ้อนบางอย่างสามารถปกปิดคลาสพื้นฐานได้อย่างง่ายดาย ในกรณีนี้ฉันต้องคิดถึงคลาสของวัตถุเพื่อค้นหานิยามของเมธอด แน่นอนฉันกำลังเขียนโค้ดดังนั้นจึงมีความลึกลับ (หรือไม่) เล็กน้อยที่นั่น