go Archive

หนังสือแนะนำการเขียน code ด้วยภาษา Go ให้ปลอดภัยจาก OWASP

เพิ่งเห็นว่าทาง OWASP (Open Web Application Security Project) ได้ปล่อยหนังสือเกี่ยวกับ Web Application Secure Coding Practice ด้วยภาษา Go ออกมา โดยเนื้อหายังรวมไปถึงการพัฒนา web application ด้วย ดังนี้

Read More…

[Golang] ว่าง ๆ มาทำ Integration test ด้วย TestContainer กัน

หลังจากก่อนหน้านี้ เขียนอธิบายการทำ Integration test ด้วย TestContainer กับภาษา Javaตอนนี้ทางผู้พัฒนาได้เพิ่มสำหรับภาษา Go เข้ามาให้แล้ว ชื่อว่า TestContainer Goจะรอช้าทำไม ลองไปใช้งานกันหน่อย

Read More…

Golang :: ถ้าไม่ close body ของ response จะเกิดอะไรขึ้น ?

จากที่พูดคุยเรื่อง Memory leak สำหรับการใช้งาน package net/http ในภาษา Goซึ่งมี 2 เรื่องคือ ถ้าไม่ปิด body ของ request จะเกิดอะไรขึ้น ? ถ้าไม่ปิด body ของ response จะเกิดอะไรขึ้น

Read More…

สวัสดี Go module proxy

เห็นใน Go 1.13 beta 1 นั้นทำการกำหนดค่า default ของ GOPROXY ให้ จะวิ่งไปที่ https://proxy.golang.org และ direct (ออกไปยัง GitHub, bitbucket ตรง ๆ) ที่สำคัญ สามารถใส่ comma(,) ได้ด้วย นั่นคือกำหนด proxy ได้มากกว่า 1 นั่นเอง ดังนั้นเรามาลองทำความรู้จักและใช้งานกันหน่อย

Read More…

เรื่อง Project structure ของระบบที่พัฒนาด้วยภาษา Go

จาก course Practical Go นั้นหนึ่งในเรื่องที่น่าสนใจอีกแล้ว คือ Project structure นั่นเอง เนื่องจากเป็นเรื่องที่มีการพูดคุยใน community เยอะมาก ๆ ที่สำคัญมีหลากหลายแนวทางมาก ๆ อยู่ที่ว่าใครจะมองและวางออกมา มาดูว่า มีคำแนะนำอะไรดี ๆ กันบ้าง

Read More…

เก็บตกเรื่องการออกแบบ package สำหรับภาษา Go

จาก course Pratical Go ที่ไปเรียนมานั้น มีเรื่อง Package design หรือการออกแบบหรือวาง package ในระบบที่พัฒนาด้วยภาษา Go ว่ามีแนวคิดและอย่างไร ออกแบบอย่างไร รวมทั้งหน้าที่ความรับผิดชอบ มาดูกันว่ามีอะไรบ้าง

Read More…

สรุปเรื่องของ Principle 3 ข้อของภาษา Go

จาก course Practical Go นั้นในช่วงเริ่มต้น ทำการอธิบายเรื่องของ Principle guideline ของภาษา Go ซึ่งประกอบไปด้วย 3 เรื่องคือ Clarify Simplicity Productivity เรื่องนี้เคยเรียนและได้ยินจาก course Ultimate Go ที่เรียนเมื่อ 2 ปีก่อน ทั้ง 3 เรื่องนี้มีความสำคัญมาก ๆ เหมือนเป็นเข็มทิศนำทางของการพัฒนา software เลย มาดูในรายละเอียดกัน

Read More…

ว่าด้วยเรื่องการจัดการ Error ถ้ามันเยอะก็ลดสิ

จากการมาเรียน Workshop Practical Go ในงาน GopherCon 2019 ที่ประเทศสิงคโปร์ มีหลายเรื่องที่น่าสนใจ ประกอบไปด้วย Idiomatic code Package และ project structure API design Error handling Testing นิดหน่อย ส่วนเรื่อง concurrency นั้นไม่ได้สอนเพราะว่า เวลาหมดก่อน เรื่องที่ผมให้ความสนใจเรื่องแรกคือ Error handling เนื่องจากใน Go 2 นั้น มีการพูดถึงปัญหาและแนวทางการปรับปรุงเรื่องนี้ให้ดีและง่ายขึ้น

Read More…

สวัสดี Google Cloud Run

ทาง Google Cloud เพิ่งปล่อย Google Cloud Run ใน version beta ให้ใช้งานโดยให้เหล่านักพัฒนาสามารถ run serverless app ที่อยู่ใน Docker container ได้เลย ซึ่ง Google Cloud Run จัดการให้เองแบบอัตโนมัติ คือ เมื่อมี request เข้ามาจะทำการ start ให้เอง และเมื่อไม่มีการใช้งานจะทำการ stop ไปให้อีก ชีวิตน่าจะง่าย สะดวกมากขึ้น

Read More…

สรุปเรื่องที่น่าสนใจจาก VDO เรื่อง Absolute Unit (test)

เจอ VDO จากงาน London Gophers Meetup  ซึ่งมีหัวข้อน่าสนใจดังนี้ Warning data race exit status 66 Go three months in Absolute Unit (Test) Decoding binary network protocol สามารถดู VDO ของหัวข้อต่างได้ที่ Youtube แต่หัวข้อที่จะทำการสรุปคือ Absolute Unit (Test) พูดโดยคุณ Dave Cheney มีหลายเรื่องที่น่าสนใจมาเริ่มกัน

Read More…