Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Ruby

เมื่อใดควรใช้ Rails Deep Dive

คุณเคยพบหัวข้อ Rails ที่ไม่เข้าท่าสำหรับคุณหรือไม่

เช่น คุณคิดว่าคุณรู้แล้ว ดังนั้นคุณจึงเขียนโค้ดและมีสิ่งที่แตกต่างไปจากเดิมอย่างสิ้นเชิง?

หรือคุณ รู้ คุณไม่เข้าใจ แต่คุณรู้ดีพอที่จะผ่านพ้นไปได้ ยกเว้นว่าคุณใช้เวลามากในการต่อสู้คดีที่เฉียบแหลมจนคุณอาจเป็นผู้เชี่ยวชาญในเรื่องนี้ได้เมื่อทำเสร็จ

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

ตอนที่ฉันเรียนรู้การพัฒนาเว็บครั้งแรก เซสชั่นคือ That Thing:ฉันคิดว่าฉันรู้จักพวกเขาบ้าง แต่ฉันไม่รู้ และความเข้าใจผิดเกี่ยวกับเซสชันของฉันทำให้เกิดข้อบกพร่องมากมายจนฉันถูกวิพากษ์วิจารณ์อย่างมากสำหรับปัญหาที่ฉันสร้างขึ้น

ในไม่ช้า ฉันก็รู้ว่าฉันต้องใช้เวลาในการ จริงๆ ทำความเข้าใจว่าเซสชันทำงานอย่างไร เพื่อทำให้กระจ่างขึ้น เพื่อไม่ให้น่ากลัวหรือแปลก และในที่สุด เพื่อให้สามารถเดาได้ว่าพวกเขาประพฤติตัวอย่างไร – และถูกต้อง

“เซสชัน” ไม่ใช่หัวข้อเดียวที่ฉันเจาะลึกลงไป การสร้างแบบจำลองข้อมูล การแคช การเขียนโปรแกรมเมตา ล้วนแต่ทำให้เกิดความสับสน ซึ่งง่ายต่อการเข้าถึงประเภท งาน. แต่คุณจะพบกับปัญหาการดีบักอย่างหนักชั่วนิรันดร์หากคุณไม่เข้าใจมัน

ใน ฝึกหัดราง , ฉันเขียนเกี่ยวกับ การเรียนรู้รูปตัว T :เมื่อคุณมีความรู้พื้นฐานที่ดี แต่พยายามผลักดันหัวข้อเฉพาะให้มากขึ้นตามที่คุณต้องการ แรงผลักดันเหล่านี้เป็นข้อมูลเชิงลึก และจะช่วยคุณแก้ปัญหาใหญ่ตลอดเส้นทางการเขียนโปรแกรมของคุณ

คุณควรทำการดำน้ำลึกเมื่อใด

แล้วคุณจะรู้ได้อย่างไรว่าเมื่อถึงเวลาต้องลงลึก

อันดับแรก ในการดำน้ำลึก คุณต้องรู้ว่าคุณกำลังดำดิ่งสู่อะไร

การลงลึกจะมีประโยชน์มากที่สุดเมื่อคุณจัดการกับหัวข้อเดียว สิ่งที่คุณอธิบายเป็นคำหรือวลีสั้นๆ ได้ ประสิทธิภาพการสืบค้น SQL . เซสชัน . การแคช HTTP . เจาะจงเกินไป และคุณพลาดการโต้ตอบที่ทำให้หัวข้อซับซ้อนมาก กว้างเกินไป และคุณกำลังเจาะลึกใน "การเขียนโปรแกรม" ซึ่งฉันคิดว่าคุณเป็นแบบนั้น แต่นั่นเป็นการดำน้ำลึกที่คุณจะใช้เวลาทั้งอาชีพไป

ต่อไป คุณควรลงลึกในหนึ่งในสองสถานการณ์ต่อไปนี้:

  1. คุณ คิด คุณรู้ว่ากำลังทำอะไรอยู่ แต่มีบางอย่างที่ไม่คาดคิดเกิดขึ้น คุณ รู้อยู่แก่ใจ ที่กดปุ่มสีเขียวจะเปิดไฟโถงทางเดิน แต่ดันไปห้องก็พังแทน

  2. คุณ รู้ คุณไม่เข้าใจบางสิ่งจริงๆ และก็ไม่เป็นไร… แต่ตอนนี้ คุณกำลังแก้ไขจุดบกพร่อง และทุกสิ่งที่คุณพยายามทำให้เกิดปัญหามากกว่าที่คุณกำลังแก้ไข สร้างข้อบกพร่องใหม่ๆ ให้เร็วที่สุดเท่าที่คุณจะแก้ไขจุดบกพร่องเก่า

สถานการณ์เหล่านี้มีบางอย่างที่เหมือนกัน:คุณเพิ่งเริ่มสังเกตว่าคุณกำลังไปผิดทาง และถึงแม้คุณ หวัง คุณจะหันหลังกลับ คุณเริ่มตระหนักว่าคุณจะเสียเวลามากมายในการดิ้นรน

ทั้งสองวิธีนี้จะช่วยให้คุณรู้สึกได้ตั้งแต่ต้นว่าวิธีที่คุณทำอยู่ไม่ได้ผล

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

แต่ตอนนี้คุณได้ตัดสินใจว่าคุณต้องการดำน้ำลึกแล้ว คุณจะทำอย่างไร?