เราจะเข้าใจ code ของ project ที่มีความซับซ้อนได้อย่างไร ?
ในสมัยที่ผมเขียน code แรกๆ ผมเข้าใจว่าผมสามารถเข้าใจการทำงานของ program ทุกอย่างผ่านการอ่าน code เพียงอย่างเดียว ผมมีหนังสือหลายเล่มที่อยากแนะนำให้ programmer ลองอ่านดูนะครับ
กลับมาเข้าเรื่องของเราดีกว่า สิ่งที่ผมอยากให้ผู้อ่านลองนำไปใช้ดูนะครับ
- ทำความเข้าใจ program นั้นเสียก่อน ผ่านการใช้งาน program นั้น
- ทำความเข้าใจปัญหาหลัก ที่ program นั้นถูกสร้างขึ้นเพื่อแก้ไขปัญหานั้น โดยพยายามทำความเข้าใจในรูปแบบของคำพูดคนทั่วไป ที่ไม่ใช่ coding
- ทำความเข้าใจ config file, Makefile ของ project ว่ามีโครงสร้างอย่างไร
- ศึกษา directory structure ของ project เราจะได้เห็นความสัมพันธ์ของแต่ละ module
- อย่าหวังที่จะเข้าใจ program โดยใช้แต่ debugger เพียงอย่างเดียว การที่ใช้ debugger มากเกินไป จะทำให้เราใช้ความคิดวิเคราะห์น้อยลง
- แทรก code ของเราเข้าไปใน project code เพื่อทดสอบความเข้าใจของเรา
- ใช้โหมดความคิดแบบนักสืบ และการอ่าน code ของเราจะสนุกสนานมากขึ้น
Get in Touch with us
Related Posts
- Build Your Own Cybersecurity Lab with GNS3 + Wazuh + Docker: Train, Detect, and Defend in One Platform
- How to Simulate and Train with Network Devices Using GNS3
- What Is an LMS? And Why You Should Pay Attention to Frappe LMS
- Agentic AI in Factories: Smarter, Faster, and More Autonomous Operations
- Smarter, Safer EV Fleets: Geo-Fencing and Real-Time Tracking for Electric Motorcycles
- How to Implement Google Single Sign-On (SSO) in FastAPI
- Build Your Own Taxi Booking App with Simplico: Scalable, Secure & Ready to Launch
- Building a Scalable EV Charging Backend — For Operators, Developers, and Innovators
- How to Handle Complex Pricing for Made-to-Order Products in Odoo
- How to Build a Made-to-Order Product System That Boosts Sales & Customer Satisfaction
- Transform Your Operations with Autonomous Agentic AI
- Streamline Fiber Tester Management with a Lightweight EXFO Admin Panel
- Enhancing Naval Mission Readiness with EMI Simulation: Cost-Effective Risk Reduction Using MEEP and Python
- Strengthen Your Cybersecurity Posture with Wazuh: A Scalable, Cost-Effective SIEM Solution
- OCPP Central System + Mobile App — Customer Proposal
- How TAK Systems Are Transforming Border Security
- ChatGPT-4o vs GPT-4.1 vs GPT-4.5: Which Model Is Best for You?
- Can Clients Decrypt Server Data Without the Private Key? (Spoiler: No—and Here’s Why)
- Managing JWT Authentication Across Multiple Frameworks
- Building a Lightweight EXFO Tester Admin Panel with FastAPI and Alpine.js