5 ข้อ ที่เข้าใจผิดในการเขียน code

1. ต้องเป็นคนความจำดี
อันนี้ไม่จริงเลย จริงอยู่ความจำเป็นสิ่งสำคัญ แต่ความเข้าใจสำคัญกว่า และจากที่เขียน code เลี้ยงชีพมาหลายปี หลายๆ ครั้งก็ copy code มาจากตัวอย่าง แล้วเอามาแก้ไข แต่ผมไม่ได้หมายถึงว่า copy แนวคิดของ code ตัวอย่างนะ เราต้องทำการออกแบบ program ของเราเสียก่อน ว่ามันจะทำอย่างไร ด้วยวิธีการอย่างไร
2. ต้องเป็นคนเก่งเลขมากๆหรือฉลาดมากๆ
คือเลขจะใช้ต่อเมื่อเราต้องการ แก้ปัญหาที่ต้องใช้สูตรคณิตศาสตร์ หรือปัญหาที่เกี่ยวกับวิทยาศาสตร์ที่มีสูตรเช่น ฟิสิกซ์ เคมี เป็นต้น แต่โดยส่วนมากแล้ว program ที่เราเขียนมักจะใช้การออกแบบขั้นตอนการทำงานเสียมากกว่า และจะคำนึงถึงหน้าตา ( Graphic User Interface ) ของ program ที่ใช้งานง่าย เราไม่จำเป็นต้องฉลาดแต่แรก แต่เราสามารถเรียนรู้ได้ จากการสังเกต และประสบการณ์ ในทุกๆ วันที่เราลงมือเขียน code
3. ต้องมี computer แรงๆและแพงๆ
ข้อนี้ไม่จำเป็นเลย แต่ขอให้เลือก computer ที่มีหน้าจอชัดเจน รักษาสายตา ส่วนเรื่องความแรงคิดว่า แค่อยู่ในระดับค่อนข้างดี ที่มีขายอยู่ในตลาด ไม่จำเป็นต้องมีการ์ดจอแรงๆ ( ยกเว้นว่าเราจะเขียนเกี่ยวกับ graphic หนักๆ ) ส่วนเรื่อง RAM ถ้ามีเยอะๆก็จะดี เพราะช่วยให้ run program ได้เร็ว จะได้ไม่ขาดช่วง ทำให้เราเสียจังหวะ แต่ที่สำคัญควรทดลองเล่นก่อนที่จะซื้อ หรืออ่าน review จากหลายๆ ที่
4. ไม่จำเป็นต้องรู้หลายภาษาหรือยึดติดว่าภาษานั้นๆจะดีที่สุด
ไม่มีภาษาไหนที่ดีที่สุด ขึ้นอยู่กับว่ามันเหมาะสมกับงานของเราหรือไม่ และความถนัดของเราด้วย แต่ข้อดีที่ได้จากการเขียน code ได้หลายภาษาคือ เราจะได้เรียนรู้แนวคิดที่แตกต่างๆ กันไปในแต่ละภาษา ซึ่งจะมีรายละเอียดเล็กๆ น้อย ที่ช่วยให้เป็นเครื่องมือทางความคิดของเราเพิ่มขึ้น
5. ประสิทธิภาพของภาษามีผลอย่างมากต่อความเร็วของ program
จริงอยู่ถ้าเรานำ program ที่มีการทำงานเหมือนกัน แต่เขียนด้วยภาษาที่แตกต่างกันไป แล้วนำมาวัดเวลาในการทำงานของ program มันจะไม่เท่ากัน แต่มันจะแตกต่างกันในระดับ milli sec ซึ่งน้อยมาก ส่วนมากประสิทธิภาพของ program ที่ดี จะมาจาก กระบวนการแก้ปัญหา ( algorithm ) ที่แตกต่างกัน การออกแบบโครงสร้างข้อมูล ( data structure ) ที่เหมาะสม และการเรียกใช้ หรือ จัดเก็บข้อมูล ( data retrieval / store )
Related Posts
- Djangoでの耐障害性ソフトウェア設計
- การออกแบบซอฟต์แวร์ที่ทนต่อความล้มเหลวด้วย Django
- Designing Fault-Tolerant Software with Django
- アウトプットの力:優れたプログラマーになるための方法
- พลังของการลงมือทำ: วิธีพัฒนาตัวเองให้เป็นโปรแกรมเมอร์ที่เก่งขึ้น
- The Power of Output: How to Become a Better Programmer
- 提高 Django 性能:开发者和企业主的缓存指南
- Django のパフォーマンス向上: 開発者とビジネスオーナーのためのキャッシュガイド
- ปรับปรุงประสิทธิภาพของ Django: คู่มือแคชสำหรับนักพัฒนาและเจ้าของธุรกิจ
- Boost Your Django Performance: A Guide to Caching for Developers and Business Owners
Articles
- DjangoでBasicとPremium機能を分けるベストな戦略とは?
- เลือกกลยุทธ์ที่ใช่ สำหรับการแยกระดับผู้ใช้งาน Basic กับ Premium บน Django
- Choosing the Right Strategy for Basic vs Premium Features in Django
- オーダーメイド家具ビジネスをデジタル化しよう — あなたのブランド専用ECプラットフォーム
- เปลี่ยนธุรกิจเฟอร์นิเจอร์ของคุณให้ทันสมัย ด้วยแพลตฟอร์มอีคอมเมิร์ซสำหรับงานเฟอร์นิเจอร์สั่งทำ
- Transform Your Custom Furniture Business with a Modern eCommerce Platform
- simpliPOSのご紹介:ERPNextを基盤にしたスマートPOSシステム
- แนะนำ simpliPOS: ระบบ POS อัจฉริยะบน ERPNext
- Introducing simpliPOS: The Smart POS Built on ERPNext
- スマート農業をもっと簡単に:農業資材を効率的に管理・計画するアプリ
- 🧑🌾 การทำฟาร์มอย่างชาญฉลาด: เครื่องมือช่วยวางแผนและติดตามการใช้ปัจจัยการผลิตในฟาร์มอย่างง่ายดาย
- 🌾 Smart Farming Made Simple: A Tool to Help Farmers Track and Plan Inputs Efficiently
- MEEPで電磁波をシミュレーション:はじめてのFDTD入門
- จำลองคลื่นแม่เหล็กไฟฟ้าด้วย MEEP: บทนำสู่การจำลองทางฟิสิกส์
- Simulate Electromagnetic Waves with MEEP: A Hands-On Introduction
- 🧠 LangChain はどのように動作するのか?
- LangChain ทำงานอย่างไร? เจาะลึกเบื้องหลังสมองของ AI แชทบอทอัจฉริยะ
- 🧠 How LangChain Works: A Deep Dive into the AI Framework Behind Smart Chatbots
- 🤖 為什麼中國中小企業現在就該使用 AI 聊天機器人?
- Why It's Time for Small Businesses to Start Using Chatbots – Globally
Our Products
Related Posts
- Djangoでの耐障害性ソフトウェア設計
- การออกแบบซอฟต์แวร์ที่ทนต่อความล้มเหลวด้วย Django
- Designing Fault-Tolerant Software with Django
- アウトプットの力:優れたプログラマーになるための方法
- พลังของการลงมือทำ: วิธีพัฒนาตัวเองให้เป็นโปรแกรมเมอร์ที่เก่งขึ้น
- The Power of Output: How to Become a Better Programmer
- 提高 Django 性能:开发者和企业主的缓存指南
- Django のパフォーマンス向上: 開発者とビジネスオーナーのためのキャッシュガイド
- ปรับปรุงประสิทธิภาพของ Django: คู่มือแคชสำหรับนักพัฒนาและเจ้าของธุรกิจ
- Boost Your Django Performance: A Guide to Caching for Developers and Business Owners
Articles
- DjangoでBasicとPremium機能を分けるベストな戦略とは?
- เลือกกลยุทธ์ที่ใช่ สำหรับการแยกระดับผู้ใช้งาน Basic กับ Premium บน Django
- Choosing the Right Strategy for Basic vs Premium Features in Django
- オーダーメイド家具ビジネスをデジタル化しよう — あなたのブランド専用ECプラットフォーム
- เปลี่ยนธุรกิจเฟอร์นิเจอร์ของคุณให้ทันสมัย ด้วยแพลตฟอร์มอีคอมเมิร์ซสำหรับงานเฟอร์นิเจอร์สั่งทำ
- Transform Your Custom Furniture Business with a Modern eCommerce Platform
- simpliPOSのご紹介:ERPNextを基盤にしたスマートPOSシステム
- แนะนำ simpliPOS: ระบบ POS อัจฉริยะบน ERPNext
- Introducing simpliPOS: The Smart POS Built on ERPNext
- スマート農業をもっと簡単に:農業資材を効率的に管理・計画するアプリ
- 🧑🌾 การทำฟาร์มอย่างชาญฉลาด: เครื่องมือช่วยวางแผนและติดตามการใช้ปัจจัยการผลิตในฟาร์มอย่างง่ายดาย
- 🌾 Smart Farming Made Simple: A Tool to Help Farmers Track and Plan Inputs Efficiently
- MEEPで電磁波をシミュレーション:はじめてのFDTD入門
- จำลองคลื่นแม่เหล็กไฟฟ้าด้วย MEEP: บทนำสู่การจำลองทางฟิสิกส์
- Simulate Electromagnetic Waves with MEEP: A Hands-On Introduction
- 🧠 LangChain はどのように動作するのか?
- LangChain ทำงานอย่างไร? เจาะลึกเบื้องหลังสมองของ AI แชทบอทอัจฉริยะ
- 🧠 How LangChain Works: A Deep Dive into the AI Framework Behind Smart Chatbots
- 🤖 為什麼中國中小企業現在就該使用 AI 聊天機器人?
- Why It's Time for Small Businesses to Start Using Chatbots – Globally