Author Archive

ชอบ dart command ใน Dart 2.10 มาก ๆ

เมื่อ Dart 2.10 ออกมา อ่านว่า สองจุดสิบ สิ่งหนึ่งที่เปลี่ยนแปลงและชอบมาก ๆ คือ dart command นั่นเอง โดยเป้าหมายเพื่อให้ใช้ dart command เดียวจบเลย ทำให้ไม่ต้องไปใช้เครื่องมือหรือ command อื่น ๆ เช่น dartfmt, dartanalyzer เป็นต้น แน่นอนว่า เป็นแนวทางเดียวกับ flutter

Read More…

คุณสมบัติของระบบ CI/CD ที่ดี

จากการแนะนำเรื่องของ Continuous Integration และ Continuos Delivery นั้น มีการพูดคุยถึงคุณสมบัติที่ดีของระบบเหล่านี้ ว่าควรจะมีอะไรบ้าง เพื่อให้เราไม่หลงทางในการนำมาใช้งาน

Read More…

สรุปแนวปฏิบัติในการออกแบบ Microservices ด้วย IDEALS

จากบทความเรื่อง Principles for Microservice Design: Think IDEALS, Rather than SOLID ทำการอธิบายแนวทางการออกแบบตามแนวคิด Microservices ได้อย่างน่าสนใจ โดยทำการหยิบเอาแนวคิดจาก SOLID  สำหรับการออกแบบระบบที่พัฒนาด้วย Object-Oriented Programmingมาประยุกต์ใช้กับ Microservies

Read More…

VS Code :: ใช้งาน Open API หรือ Swagger Editor ได้แล้ว

สำหรับใครที่ต้องออกแบบและจัดการ Open API หรือ Swagger แล้ว ใน VS Code นั้นมี extension ชื่อว่า OpenAPI (Swagger) Editor ให้ใช้งาน แน่นอนว่า ทำให้การทำงานง่ายและสะดวกขึ้น

Read More…

บันทึกการสร้าง GitHub Actions สำหรับ Android app

มีโอกาสไปแนะนำการพัฒนาและทดสอบ Android app มา หนึ่งในสิ่งที่แนะนำและแบ่งปันไปคือ การสร้าง workflow สำหรับ Android app บน GitHub Actionsโดย workflow ประกอบไปด้วย ทำการ run Lint ทำการทดสอบ Unit test ทำการทดสอบ Android test หรือ instrumentation test ทำการสร้าวไฟล์ APK นำไฟล์ APK ไปขึ้นไว้ที่ Firebase App Distribution และขึ้น Google Play Store ต่อไป

Read More…

VS Code :: แสดง data structure ด้วย Debug Visualizer

วันนี้เห็นเพื่อน ๆ  share เรื่อง Visualize Data Structures in VSCode เป็นการแสดงรูปของ data structure จาก code ของเราใน VS Code ซึ่งน่าจะมีประโยชน์สำหรับ debug การทำงานของ code ได้ง่ายขึ้น รวมไปถึงข้อมูลในรูปแบบ JSON ด้วย

Read More…

ตอบคำถามเรื่อง การใช้งาน RabbitMQ

จากการสอนใน course Microservices workshop ที่ Skooldio ไปนั้น มีการแนะนำในเรื่องของการนำ messaging และ Event-based architecture มาใช้งาน และได้มีคำถามเกี่ยวกับการนำ RabbitMQ มาใช้งาน ว่าจะออกแบบตามที่ต้องการอย่างไรบ้าง

Read More…

[Golang] การจัดการ Timezone กับ Docker container ที่สร้างจาก Scratch image

ใน Golang 1.15 นั้นทำการเพิ่ม timezone database เข้ามา ซึ่งอยู่ใน package time/tzdata ผลที่ตามมาคือ ไม่ต้องกังวลกับการจัดการ Timezone database อีกต่อไป เพียงแค่ทำการกำหนดว่า ระบบของเราอยู่ใน Timezone ไหนเท่านั้นเอง ทำให้เราทำงานกับพวกเวลาได้อย่างถูกต้องแล้วมาลองดูการใช้งานง่าย ๆ กัน

Read More…

สวัสดี Go 1.15

หนึ่งสิ่งที่ทำการปรับปรุงใน Golang 1.15 นั่นก็คือ Linkerส่งผลให้ขนาดของ binary ที่สร้างออกมานั้นมีขนาดลดลงอย่างมาก โดยเปรียบเทียบกับ version 1.14 แล้ว ขนาดจะลดไป 5-10% กันเลยทั้ง library ที่ถูกประกาศ แต่ไม่ถูกใช้งาน หรืออาจจะใช้งานในขณะ runtime เท่านั้น ยิ่ง binary มีขนาดเล็กลงมาก ก็ย่อมส่งผลประโยชน์ต่อการพัฒนาและ deploy มากด้วยเช่นกัน

Read More…

Java 15 มีอะไรที่น่าสนใจ

ในเดือนกันยายนนี้ Java 15 จะถูกปล่อยออกมาให้ใช้งาน สิ่งที่นักพัฒนา Java ควรรู้ไว้บ้างคือ ความสามารถต่าง ๆ ที่จะเพิ่มเข้ามาใน Java 15 ว่าช่วยอำนวยความสะดวกและแก้ไขปัญหาต่าง ๆ อย่างไรบ้าง

Read More…