Skip to content
Showing 1-50 of 143 items.
@renovate
Admin 21/03/2021 01:40
Microservice với Golang, NodeJS và gRPC (Phần 1)

Đặt vấn đề Hiện nay việc sử dụng cấu trúc microservice đã trở nên phổ biến hơn bao giờ hết, và những lợi ích mang lại thì không có gì phải bàn cãi. Mình đang tham gia vào một dự án như vậy và muốn chia sẻ cho các bạn. Bài viết này mình sẽ chia làm 2 phần, và đơn gian thôi là hiện thị mỗi hello world (bài viết được sử dụng tạm các example của grpc nhưng sẽ biến tấu để mình trình...

node golang gRPC
@renovate
Admin 21/03/2021 02:10
Microservice với Golang, NodeJS và gRPC (Phần 2)

Tiếp tục phần 1, phần này mình sẽ tạo một con node server để connect đến core server và cũng chỉ để hiển thị hello world Node Server Cũng tương tự như phần trước, phần này mình sẽ tạo một folder proto nhưng bên trong nó phức tạp hơn chút vì phải compile proto sang js. Tạo một file package.json ngang cấp với helloworld.proto package.json { "name": "node-server-proto", "version":...

Happy New Year node golang gRPC
@renovate
Admin 31/03/2021 00:50
Go Concurrency qua các ví dụ (Phần 1): Dining Philosophers

Bài toán Dining Philosophers (Bữa tối của các triết gia) là một trong những bài toán kinh điển thường dùng để mô tả các vấn đề trong việc xử lý concurrent, những vấn đề thường gặp trong quá trình cấp phát tài nguyên mà không dính deadlock (khóa chết) và đói tài nguyên (starvation). 1. Mô tả bài toán Bài toán được phát biểu như sau: Cho 5 vị triết gia ngồi quanh một bàn tròn, trước mặt họ là...

Happy New Year golang concurrency Operating System
@renovate
Admin 23/05/2021 15:10
Authenticate JWT với Golang (P2)

Tiếp nối phần 1, phần này mình sẽ trình bày tiếp các function như login và get/post thông tin user đang đăng nhập. I. Login Trong file routes/index.go bạn thêm đoạn này để mapping routes với AuthController nhé. ... authRoutes := routes.Group("api/auth") { authRoutes.POST("/login", authController.Login) } ... Sau khi đã thêm routes login thì bạn hãy thêm hàm xử lý vào authcontroller nhé func (c...

CRUD golang login
@renovate
Admin 21/06/2021 22:00
Tìm hiểu ngôn ngữ lập trình Golang. Tại sao bạn nên học Golang vào bây giờ?

Golang là gì? Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. Nguồn: trang chủ ngôn ngữ Go. Tạm dịch: Go là ngôn ngữ lập trình mã nguồn mở giúp xây dựng phần mềm dễ dành, tin cậy và hiệu quả. Go (tên gọi khác: Golang) còn được biết đến là một ngôn ngữ static typed, có thể hiểu rằng mọi thứ trong Go đều phải có kiểu dữ liệu, trái với các...

golang
@renovate
Admin 18/10/2021 10:20
Cách để so sánh chuỗi một cách hiệu quả trong go

Cách để so sánh chuỗi một cách hiệu quả trong go Đây là bài viết của bạn LilVNKid trên Hoovada - nền tảng hỏi và đáp chuyên nghiệp trên nhiều lĩnh vực khác nhau giúp giải đáp thắc mắc của mọi người. So sánh chuỗi có thể không phải là điều bạn nghĩ tới khi tối ưu phần mềm. Thông thường, việc tối ưu bao gồm những việc như tách vòng lặp xuyên suốt các goroutine, tìm ra một thuật toán...

golang
@renovate
Admin 07/11/2021 10:30
[Series Golang]1: Golang là gì? Tại sao nên dùng golang?

Lời mở đầu: Người xưa có câu: Biết mình biết ta, trăm trận trăm thắng. Đầu tiền mình cần phải xác định đối thủ - Golang là gì, nó như thế nào mà bàn dân thiên hạ dạo gần đây kháo nhau về nó. Xem đối thủ này có xứng tầm để các anh em dày công nghiên cứu hay không. Cùng bắt đầu nhé. 1. Golang là gì? Golang là ngôn ngữ biên dịch, do Google phát triển, nó được kì vọng sẽ là ngành...

golang Golang căn bản Đa luồng trong golang
@renovate
Admin 13/11/2021 10:10
[Series Golang]2: Vượt chướng ngại vật - Golang

Ở bài viết trước, mình chia sẽ về Golang là gì, tại sao nên dùng Golang. Nếu bạn chưa biết và chưa động lực để học về golang thì có thể đọc qua để lấy động lực nhé [Series Golang]1: Golang là gì? Tại sao nên dùng golang?. Bây giờ chúng ta sẽ cùng tìm hiểu sâu hơn về Golang nhé. 1. Setup Đầu tiên, chúng ta cần cài đặt môi trường để tập tành code. Bạn có thể cài đặt Golang theo hướng...

golang Golang căn bản Đa luồng trong golang Con trỏ trong golang Array golang
@renovate
Admin 20/11/2021 12:20
[Series Golang]3: Tăng tốc - Golang - Struct, Pointer, Receiver, Interface

Series Golang: [Series Golang]1: Golang là gì? Tại sao nên dùng golang? [Series Golang]2: Vượt chướng ngại vật - Golang [Series Golang]3: Tăng tốc - Golang - Struct, Pointer, Receiver, Interface <= Bạn đang ở đây [Series Golang]4: Golang - Concurrency, Goroutines, Channels Ở bài viết trước, mình chia sẽ về Golang là gì, tại sao nên dùng Golang. Nếu bạn chưa biết và chưa động lực để học về golang thì có thể đọc qua...

golang Golang căn bản Đa luồng trong golang Con trỏ trong golang Array golang
@renovate
Admin 21/11/2021 13:10
Truyền giá trị và truyền tham chiếu trong Go

Truyền giá trị (pass by value) và truyền tham chiếu (pass by reference) là điều quan trọng cần phải cẩn thận khi chúng ta làm việc với các ngôn ngữ lập trình hỗ trợ "pointer" như Java, C#, C/C++, Go,... Khi bạn tạo một method hay một function với tham số, kiểu dữ liệu của tham số có thể là kiểu dữ liệu bình thường hoặc pointer. Điều này sẽ tạo ra sự khác biệt với đối số được truyền vào...

golang Go
@renovate
Admin 29/11/2021 10:00
[Series Golang]4: Golang - Concurrency, Goroutines, Channels

Series Golang: [Series Golang]1: Golang là gì? Tại sao nên dùng golang? [Series Golang]2: Vượt chướng ngại vật - Golang [Series Golang]3: Tăng tốc - Golang - Struct, Pointer, Receiver, Interface [Series Golang]4: Golang - Concurrency, Goroutines, Channels <= Bạn đang ở đây Ở bài viết trước, mình chia sẽ về Golang là gì, tại sao nên dùng Golang. Nếu bạn chưa biết và chưa động lực để học về golang thì có thể đọc qua...

golang Golang căn bản Đa luồng trong golang Con trỏ trong golang Array golang
@renovate
Admin 20/01/2022 13:30
Tập tành SOLID với Golang: Single Responsibility Principle

Lời mở đầu: Ngày nay, có rất nhiều nguồn tài liệu giúp lập trình viên chúng ta học tập, rèn luyện cũng như triển khai các loại phần mềm khác nhau. Tuy nhiên, để có thể có những đoạn code đủ tốt, theo quan điểm cá nhân của tôi, việc học tập và rèn luyện những nguyên tắc là một việc rất quan trọng. SOLID là một trong những nguyên tắc đã giúp tôi cải thiện được level cũng như khả...

SOLID golang SRP