go Archive

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…

สวัสดี Go 1.17

เพิ่งเห็นว่า Go 1.17 ตัวเต็ม ๆ ถูกปล่อยออกมาแล้วก็เลยทำการ update ดูจากนั้นทำการ run test ก็ผ่านทั้งหมดและสิ่งที่เห้นได้ชัดเจนคือ ขนาดของ binary file ที่ได้จากการ buildมีขนาดเล็กลงไปอีกแล้ว

Read More…

มาแล้วนะ สำหรับ Go 1.17 RC1

เพิ่งเห็นว่า go ได้ปล่อย Go 1.17 RC1 ออกมาแล้วซึ่งเราสามารถ download มาทดลองใช้งานได้เลยอยู่ในส่วนของ Unstable version นั่นเองมีอะไรเปลี่ยนแปลงบ้าง ไปอ่านกัน Draft :: Release Notes

Read More…

บันทึกการใช้งาน Local package ที่อยู่ต่าง module ใน Go

พอดีเจอปัญหาในการใช้งาน package ในระบบงานที่ใช้ภาษา Goโดยเป็น package มาจาก module อื่น ๆซึ่งแยกออกไปเป็นอีก project หนึ่งดังนั้นเพื่อให้ง่ายต่อการใช้งานจึงอยากจะทำแบบ Local package ไปเลย

Read More…

หนังสือน่าสนใจ 100 Go Mistakes

วันนี้เห็นหนังสือที่น่าสนใจคือ 100 Go Mistakes: How to Avoid Themทาง email โดยช่วงนี้ลด 40% อีกด้วยว่าด้วย 100 เรื่องที่มักจะใช้งานผิดพลาดในภาษา Goเพื่อช่วยให้ Go Developer ได้เรียนรู้เพื่อรู้และเข้าใจ รวมทั้งหลีกเลี่ยงความผิดพลาดที่อาจะเกิดขึ้นได้

Read More…

Go 1.17 Beta 1 ออกมาให้ทดลองแล้ว

วันนี้ Go 1.17 beta 1 ถูกปล่อยออกมาให้ลองทดลองแล้วซึ่งถ้ามี issue เกิดขึ้นมาสามารถแจ้งได้ที่ Open Issueเพื่อจะได้ปรับปรุงให้ดียิ่งขึ้น ก่อนที่จะปล่อย version อื่น ๆ ออกมา

Read More…

Go 1.17 ทำการ run test แบบไม่เรียงลำดับ

เพิ่งเห็นว่าใน Go 1.17 ที่กำลังจะปล่อยออกมานั้นเพิ่มความสามารถในการทดสอบ คือทำการ run test แบบไม่เรียงลำดับ test case เข้ามาช่วยให้เรามั่นใจว่า แต่ละ test case ทำงานเป็นอิสระต่อกันเนื่องจากถ้าแต่ละ test case ต้องทำงานตามลำดับอาจจะส่งผลให้การทดสอบมีปัญหาขึ้นมาได้เยอะเป็นอีกความสามารถที่มีประโยชน์มาก ๆ

Read More…