Category: OOP

The concept of object oriented programming for code reusable and easy to work with team.

List

การ Print Debug ใน Flutter

Dart แนะนำว่า เราไม่ควรใช้ฟังชั่น Print ใน flutter production code วิธีการที่ถูกต้องคือ ให้ใช้ debugPrint แทน และต้องตรวจสอบด้วย kDebugMode ด้วย Code ตัวอย่างเป็นแบบนี้ FilledButton( onPressed: () …
flutter flow

ตอนที่ 3: FlutterFlow เหมาะกับใคร

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

ตอนที่ 2: FlutterFlow ใช้ทำอะไรได้บ้าง

บทความตอนนี้เหมาะสำหรับคนที่กำลังถามตัวเองว่า FlutterFlow เอาไปใช้ทำงานจริงได้แค่ไหน เหมาะกับโปรเจกต์แบบใด และควรหรือไม่ควรใช้ในสถานการณ์ไหน ถ้าคุณกำลังจะทำแอป ทำ MVP หรือกำลังมองหาทางลัดในการพัฒนา บทนี้จะช่วยให้ตัดสินใจได้ชัดขึ้น FlutterFlow ใช้ทำแอปแบบไหนได้บ้าง FlutterFlow เหมาะกับแอปที่มีโครงสร้างค่อนข้างชัดเจน เน้นการแสดงผลข้อมูล การจัดการฟอร์ม และการเชื่อมต่อ backend ผ่าน Firebase …

FlutterFlow คืออะไร? แพลตฟอร์มสร้างแอป Flutter แบบไม่ต้องเขียนโค้ดทั้งหมด

FlutterFlow คืออะไร FlutterFlow คือเครื่องมือ Visual App Builder สำหรับสร้างแอปด้วย Flutter Framework โดยใช้แนวคิดแบบ Low-Code / No-Code ผู้ใช้สามารถออกแบบหน้าจอ วางโครงสร้างแอป เชื่อมต่อฐานข้อมูล และตั้งค่า logic ได้ผ่านหน้าเว็บ …

ตอนที่ 10: Layered, Clean และ Hexagonal Architecture – โครงสร้างที่พา DDD ไปใช้ได้จริง

บทนำ เมื่อคุณเข้าใจ Domain-Driven Design ครบทั้ง Entity, Aggregate, Domain Service, Application Service, Repository และ Domain Event แล้ว คำถามถัดไปที่เลี่ยงไม่ได้คือ: แล้วเราควรจัดโครงสร้างระบบ (Architecture) แบบไหน …

ตอนที่ 9: Domain Event – เมื่อระบบธุรกิจขับเคลื่อนด้วยเหตุการณ์

บทนำ ในระบบธุรกิจจริง หลายสิ่งไม่ได้เกิดขึ้นเพราะ “มีคนสั่ง” เสมอไป แต่เกิดขึ้นเพราะ เหตุการณ์บางอย่างได้เกิดขึ้นแล้ว เช่น: พนักงานผ่านทดลองงาน พนักงานลาออก เงินเดือนถูกปรับ แผนกถูกยุบ เหตุการณ์เหล่านี้คือหัวใจของแนวคิดที่เรียกว่า Domain Event ใน Domain-Driven Design (DDD) Domain …

ตอนที่ 8: Repository ใน Domain-Driven Design – ทำไมไม่ใช่แค่ CRUD

บทนำ เมื่อพูดถึงคำว่า Repository นักพัฒนาจำนวนมากมักจะนึกถึงไฟล์ที่มีแต่ create, read, update, delete แต่ใน Domain-Driven Design (DDD) นั้น Repository มีความหมายและบทบาทที่ลึกกว่านั้นมาก บทความตอนนี้จะอธิบายว่า Repository ใน DDD คืออะไร, …

ตอนที่ 7: Application Service / Use Case – ตัวกลางระหว่างโลกธุรกิจกับโลกเทคนิค

บทนำ หลังจากตอนที่ 6 เราได้รู้จัก Domain Service ซึ่งเป็นที่อยู่ของ business logic ที่ไม่ควรผูกกับ Entity ใดโดยตรง คำถามถัดมาที่มักจะตามมาคือ: แล้วโค้ดที่รับ request จาก UI, เรียก Domain Service, …

Domain Service – เมื่อ logic ไม่ควรอยู่ใน Entity

ตอนที่ 6 ของซีรีส์ Domain-Driven Design ฉบับระบบธุรกิจจริง Theme หลัก: ระบบบริหารพนักงาน (Staff / Employee Management System) ในตอนที่ 5 เราใช้ Aggregate เพื่อกำหนดขอบเขตและปกป้อง invariant …

Aggregate & Aggregate Root – กำแพงป้องกัน Domain ไม่ให้เละ

ตอนที่ 5 ของซีรีส์ Domain-Driven Design ฉบับระบบธุรกิจจริงTheme หลัก: ระบบบริหารพนักงาน (Staff / Employee Management System) หลังจากตอนที่ 4 เราแยก Entity และ Value Object …

Entity vs Value Object – อะไรควรมีตัวตนในระบบพนักงาน

ตอนที่ 4 ของซีรีส์ Domain-Driven Design ฉบับระบบธุรกิจจริง หลังจากตอนที่ 3 เราได้ภาษาเดียวกันระหว่างโค้ดกับธุรกิจแล้ว ตอนนี้ถึงเวลาลงมือ สร้าง Domain Model จริง ๆ คำถามแรกที่สำคัญมากคือ: สิ่งนี้ในระบบ ควรเป็น Entity หรือ …

จาก Imperative → Declarative → Domain Thinking

ตอนที่ 2 ของซีรีส์ Domain-Driven Design ฉบับระบบธุรกิจจริง Theme หลัก: ระบบบริหารพนักงาน (Staff / Employee Management System) ในตอนที่แล้ว เราคุยกันว่า DDD คือการเปลี่ยนมุมมองการออกแบบระบบ โดยให้ Domain …