clean-architecture Archive

คำถาม :: Developer ทำการแบ่ง package ของระบบกันอย่างไร ?

จากบทความเรื่อง Package by feature, not layer อธิบายถึงการแบ่ง package ต่าง ๆ ในระบบงาน ซึ่งเป็นสิ่งที่สำคัญมาก ๆ เป็นงานที่ทีมพัฒนาต้องช่วยกัน เป็นงานที่ทีมพัฒนาต้องตัดสินใจร่วมกัน ว่าต้องการให้โครงสร้างของระบบเป็นอย่างไร ? แน่นอนว่า ส่งผลต่อการพัฒนาระบบอย่างแน่นอน

Read More…

เมื่อ MVC ย่อมาจาก Massive ViewController

เมื่อวานนั่งดู Code การพัฒนา iOS ด้วยภาษา Swift โจทย์เดียวกันจาก developer 4 คน แต่โครงสร้างของ code ที่ออกมานั้นเหมือนกัน นั่นคือเป็น MVC(Model View Controller) ในรูปแบบของ Apple ซึ่งส่วนใหญ่จะนำไปสู่ MVC ที่ย่อมาจาก Massive ViewController มากกว่านะ !! และนั่นคือความหายนะที่กำลังมาเยือนนักพัฒนาโดยทั้งรู้และไม่รู้ตัว

Read More…

เมื่อนักพัฒนาไม่สามารถควบคุมความซับซ้อนของ code ได้ !!

จากบทความเรื่อง Why it happens to your code again and again? อธิบายการพัฒนาระบบ web application ด้วย RoR (Ruby on Rails) ซึ่งเป็น framework หลักของการพัฒนาระบบด้วยภาษา Ruby โดยในช่วงแรกของการพัฒนาระบบนั้นจะราบรื่นและรวดเร็ว ไม่ว่าจะเป็นการเพิ่ม gem หรือ library ต่าง ๆ เข้าไป ทุกอย่างมันแจ่มมาก ๆ แต่เมื่อเวลาผ่านไปเรากลับพบว่า

Read More…

Android :: จะทดสอบการเชื่อมต่อ Network อย่างไรดี ?

คำถามที่น่าสนใจคือ ถ้าต้องการทำทดสอบส่วนการติดต่อผ่าน Network เช่นเรียกใช้งาน RESTful API, WebService เป็นต้น ไม่ว่าจะใช้ library ใด ๆ ก็ตาม เช่น HttpURLConnection และ Retrofit เป็นต้น เราจะเขียนชุดการทดสอบอย่างไรดี ? เนื่องจากมีหลายวิธีเหลือเกิน ดังนั้นจึงขอสรุปง่าย ๆ คือ มีการทดสอบ 2 แบบคือ ทำการทดสอบผ่าน Emulator/device ทำการทดสอบโดยไม่ใช้ Emulator/device

Read More…

ว่าด้วยเรื่อง Clean Swift Architecture

วันนี้ได้อ่านบทความต่าง ๆ จาก Clean Swift จึงทำการสรุป และ แปลไว้อ่านกันนิดหน่อย ซึ่งน่าจะมีประโยชน์สำหรับนักพัฒนาอย่างมาก มาเริ่มด้วยเรื่อง Clean Swift คืออะไร ? เป้าหมายหลักของ Clean Swift Architecture คือ แก้ไขปัญหา Massive View Controller ผลที่ตามมาคือ เมื่อลูกค้าถามว่า ต้องใช้เวลาเท่าไรในการแก้ไข Bug ? ต้องใช้เวลาเท่าไรในการเพิ่ม feature ใหม่เข้าไป

Read More…