ช่วงนี้ลองศึกษาภาษาโปรแกรมใหม่ ๆ เล่นดูบ้าง หนึ่งในนั้นคือ ภาษา Elm ซึ่งมีความสามารถที่น่าสนใจ เช่น JavaScript Interop No runtime exception (อันนี้น่าสนใจมาก ๆ) Great performance Enforced somatic versioning ดังนั้นลองมาเรียนรู้ภาษา Elm ด้วยแนวทาง TDD กันหน่อยดีกว่า
Read More…
หลังจากที่แบ่งปันความรู้เกี่ยวกับ Test-Driven Development (TDD) สำหรับ Android app ตั้งแต่การเขียน Unit test หรือ Local unit test ที่ไม่ต้องการ Device หรือ Emulator จนถึง Instrumentation test, UI test และ Stress test ที่ต้องใช้ Device หรือ Emulator ในแต่ละ feature ในแต่ละ flow สำหรับผู้เริ่มต้นนั้นไม่ง่ายซะทีเดียว แต่ถ้ามีความพยายามก็ง่ายขึ้นเยอะ ดังนั้นจึงทำการสรุปเส้นทางการเรียนรู้ไว้นิดหน่อย เพื่อให้ง่ายต่อการศึกษามากยิ่งขึ้น เรื่องพื้นฐานมันสำคัญมาก ๆ นะครับ มาเริ่มกันเลย
Read More…
หลังจากที่เขียนภาษา R มาสักพัก สิ่งที่น่าสนใจ และ ตั้งคำถามไว้คือ ถ้าอยากเขียน Unit test ในภาษา R มันมี xUnit framework อะไรให้ใช้หรือไม่ ? เมื่อไปค้นหาก็เจอเยอะเลย เช่น RUnit ทำการ update ล่าสุดในปี 2015 svUnit ทำการ update ล่าสุดในปี 2014 testthat ทำการ update ล่าสุดในปี 2016 ดูจากการ update แล้วมาลองใช้งาน testthat กันหน่อยดีกว่า
Read More…
ในการศึกษาภาษาใหม่ ๆ ด้วยแนวทาง Test-Driven Development (TDD) เป็นสิ่งที่ผมเชื่อว่าเป็นแนวทางที่ทำให้เข้าใจภาษาต่าง ๆ ได้รวดเร็วขึ้น ดังนั้นมาลองศึกษาภาษา TypeScript กันหน่อย ซึ่งถูกสร้างขึ้นมาจากบริษัท Microsoft และเป็น opensource ในการใช้งานจะต้อง compile มาเป็นภาษา JavaScript ก่อนเสมอ ดูแล้วขั้นตอนเยอะเลยนะ ดังนั้นมาเริ่มต้นศึกษาด้วย Hello World กันหน่อย
Read More…
เช้านี้นั่งอ่านบทความเก่า ๆ ที่เก็บเอาไว้คือ 5 Common Misconceptions About TDD & Unit Tests อธิบายเกี่ยวกับความเข้าใจผิดเกี่ยวกับ TDD และ Unit Test จึงทำการแปลและสรุปเนื้อหาบางส่วนไว้นิดหน่อย
Read More…
จากบทความเรื่อง Last Line Effect ทำการศึกษาผลกระทบที่มักเกิดกับการ Copy-and-Paste code ซึ่งแน่นอนว่า developer ส่วนใหญ่ชอบใช้งาน แถมใช้งานกันบ่อย ๆ อีกด้วย และบ่อยครั้งพบว่าการกระทำแบบนี้ก่อให้เกิดความผิดพลาดขึ้นมา หนึ่งในข้อผิดพลาดนั้นก็คือ code ใน block หรือบรรทัดท้าย ๆ นั่นเอง มาดูผลการศึกษากัน
Read More…
จากหนังสือ TDD by Example ทำการอธิบายวิธีการแก้ไขปัญหา เพื่อย้ายจากสถานะ RED ไปยัง GREEN ตาม life cycle ของ TDD ไว้ 3 วิธีการคือ Obvious implementation Fake it until you make it Triangulation ซึ่งการจะเลือกใช้วิธีการใดนั้น มันขึ้นอยู่กับความรู้ความเข้าใจต่อปัญหาของ developer มันขึ้นอยู่กับแนวทางในการแก้ไขปัญหาของ developer มันขึ้นอยู่กับความสามารถของ developer จึงทำการสรุปพร้อมตัวอย่างไว้นิดหน่อย เพื่อทำให้เราสามารถเดินไปข้างหน้าได้อย่างสม่ำเสมอ จนสามารถแก้ไขปัญหาต่าง ๆ ได้ มาเริ่มกันเลย
Read More…
วันนี้มาแนะนำการพัฒนาระบบงานด้วยแนวคิด TDD (Test-Driven Development) จึงทำการสรุปข้อดีและข้อเสียของแนวคิดนี้ไว้นิดหน่อย เพื่อทำให้เข้าใจกันมากขึ้น
Read More…
วันนี้ช่วงพักกลางวันจากงาน Conference JCSSE2016 ได้นั่งลองเขียน code ตามแนวคิด TDD (Test Driven Development) เพื่อทบทวนความเข้าใจในเรื่อง Small step (Increamental step) นั่นคือการสร้างระบบให้โตขึ้นอย่างต่อเนื่อง และ เสถียร ด้วยการเขียนชุดการทดสอบนั่นเอง โดยได้ฝึกตามบทความเรื่อง The Right Tests in The Wrong Order สิ่งที่ได้เจอกับตัวเองคือ ถึงแม้ว่าชุดการทดสอบจะถูกต้องและสมเหตุสมผล แต่ถ้าลำดับของการทดสอบมันผิด ก็ส่งผลต่อประโยชน์ที่จะได้รับจาก TDD เช่นกัน
Read More…
วันนี้ไปแบ่งปันเรื่อง Secure Test-Driven Development ในงาน IT Connect :: MiSS Day จัดที่มหาวิทยาลัยเกษตรศาสตร์ ซึ่งสามารถสรุปเนื้อหาหลัก ๆ ได้ดังนี้
Read More…