golang Archive

สรุปเรื่องการใช้ภาษา Go ที่ Bit.ly

จาก Golang weekly นั้น มี link บทความการนำภาษามาใช้งานในระบบของ Bit.lyWhy we write everything in Go ?จึงทำการสรุปไว้นิดหน่อย

Read More…

เจอการเขียน Dockerfile แปลก ๆ สำหรับภาษา Go

วันนี้ทำการ review project ที่พัฒนาด้วยภาษา Goมีสิ่งที่น่าสนใจคือ การเขียน Dockerfileซึ่งมีหลายรูปแบบเลย แถมแปลก ๆ ด้วยจึงนำมาสรุปไว้นิดหน่อย

Read More…

การใช้งาน Go workspace ใน Go 1.18

ใน Go 1.18 นั้นมี feature workspace ที่ช่วยให้เราสามารถ reference module ต่าง ๆ บน local ได้ง่ายโดยจะทำการเพิ่ม $go work เข้ามาให้ใช้งานจากนั้นก็เพิ่ม module ต่าง ๆ เข้ามาได้เลย

Read More…

Go 1.18 ตัวเต็มออกมาแล้ววว

ในวันที่ 15 มีนาคมที่ผ่านมา Go 1.18 ตัวเต็มถูกปล่อยออกมาแล้วโดยจะมีทั้ง feature ใหม่ ๆ และการปรับปรุงเรื่อง performanceรวมทั้งการเปลี่ยนแปลงของภาษาที่เกิดขึ้นแต่แน่นอนว่า ยังคง compatibility กับ version ก่อนหน้าเช่นเดิม

Read More…

Go :: tutorial การใช้งาน Generic และ Fuzzing มาแล้ว

ใน web go.dev นั้นได้ปล่อย tutorial ของ Generic และ Fuzzing ออกมาแล้วเพื่อช่วยให้เราเข้าใจว่า จะเขียน code และ ใช้งานอย่างไรโดยทั้งสองเรื่องนี้มาใน Go 1.18 ตัวเต็มดังนั้น Go developer ไม่น่าพลาดที่จะเรียนรู้

Read More…

สวัสดี Fuzzing test ใน Go 1.18

ใน Go 1.18 นั้น จะมีความสามารถใหม่ ๆ ที่น่าสนใจเพิ่มเข้ามา เช่น Type parameters (Generic) Workspace Fuzzing test โดยสิ่งที่จะอธิบายใน blog นี้คือ Fuzzing testเพิ่มเข้ามาใน testing library นั่นเอง แน่นอนว่ายังเป็น beta version อยู่

Read More…

Tip :: ทำการใส่ข้อมูลใน binary file สำหรับ Go

คำถามต้องการกำหนด version ต่าง ๆ ของ binary fileที่ build มาจากภาษา Go จะทำได้ไหม ? คำตอบคือ ทำได้แล้วทำอย่างไร

Read More…

มาลองใช้งาน Go Workspace ใน G0 1.18 กัน

ใน Go 1.18 นั้นกำลังพัฒนากันอยู่มี feature ที่น่าสนใจคือ Go Workspace สำหรับ Multi-module developmentซึ่งปกติแล้วก็ทำได้ผ่านไฟล์ go.mod ดังที่เคยเขียนไว้แต่ปัญหาที่ตามมาคือถ้าเราต้องการ develop บน local โดยใช้ multi module บนเครื่องแต่เมื่อ production ก็ไปใช้ของจริงดังนั้นจึงมีแนวคิดด้วยการสร้างไฟล์ go.work ขึ้นมาเพื่อให้ง่ายต่อการพัฒนาแบบ multi-module บน local ได้ง่าย

Read More…

แจ้ง deprecation ของ go get ใน Go 1.17

ใน Go 1.17 นั้นการใช้งานคำสั่ง go get นั้นจะถูกแจ้ง deprecated แล้ว เนื่องจากคำสั่งนี้จะทำงาน 2 เรื่อง ซึ่งอาจจะทำให้เกิดความสับสนได้ คือทำการ update dependency ตามไฟล์ go.modและอีกอย่างคือการติดตั้ง dependency ใน project เองดังนั้นเพื่อลดความสับสนจึงได้เอาความสามารถอย่างหลังออกไป

Read More…

[Go] มาดูสิ่งที่น่าสนใจใน Echo framework

จากการพัฒนาระบบงานหนึ่งอยู่เพิ่งสังเกตเห็นว่า Echo framework 4.6.0 ออกมาแล้วซึ่งเป็น web framework สำหรับการพัฒนา web/api ด้วยภาษา Goโดยใน version นี้ได้เพิ่มความสามารถใหม่มาคือ Request Logger middlewareช่วยทำให้การจัดการ log รวมทั้งการใช้งาน log library อื่น ๆ ได้ง่ายขึ้นมาดูตัวอย่างการใช้งานกันนิดหน่อย

Read More…