DANH MỤC TÀI LIỆU
Giới thiệu ngôn ngữ lập trình Go (Golang)
Gi i thi u ngôn ng l p trình Go (Golang) ữ ậ
Golang là m t ngôn ng khá m i ữ ớ
Ngôn ng l p trình Go, cũng th ng đ c g i là Golang, là m t ngôn ng ữ ậ ườ ượ
l p trình đ c phát tri n b i m t nhóm chuyên gia t i Google. C th ngôn ượ ụ ể
ng Golang đ c hình thành vào tháng 9 năm 2007 b iượ Robert
Griesemer, Rob PikeKen Thompson. Sau đó Golang L n đ u tiên ầ ầ
đ c gi i thi u vào tháng 11 năm 2009 và phiên b n đ u tiên c a nó đ c ượ ả ầ ượ
phát hành vào tháng 12 năm 2012. Trang web chính th c ngôn
ng Golang là http://golang.org/. Ngôn ng Golang có m t hình thái và ngộ ữ
nghĩa l p trình riêng giúp nó đ m b o hi u su t làm vi c mà v n mang l i ả ả ệ
nh ng đi u thú v khi vi t mã ế code. Golang cũng cung c p m t b th ộ ộ ư
vi n chu n khá toàn di n. Th vi n chu n cung c p t t c các gói l p ệ ẩ ư ệ ẩ
trình viên c t lõi c n đ xây d ng các ch ng trình, ph n m m hay c ng ươ ả ứ
d ng web ng d ng qu n tr m ng. ị ạ Golang cũng là m t ngôn ng l p ữ ậ
trình đ ng b , đ c biên d ch có cú pháp khá c b n ch y u thu c v h ư ơ ả ủ ế ề ọ
ngôn ng C.
Ngôn ng l p trìnhữ ậ Golang th c ch t là m t d án mã ngu n m đ c ở ượ
phát hành d a trên ch ng ch ứ ỉ BSD nh m m c đích nâng cao hi u su t làm ệ ấ
vi c dành cho các l p trình viên. Golang có cú pháp khá ng n g n, s ch s ắ ọ
và hi u qu . Go đ c biên d ch nhanh chóng sang mã máy nh ng v n có ệ ả ượ ư ẫ
s ti n l i trong vi c qu n lý b nh cũng nh ho t đ ngự ệ ư run-time. Có
th nói Golang là m t ngôn ng l p trình đ c biên d ch tĩnh r t nhanh, ữ ậ ượ
c m th y gi ng nh m t ngôn ng k ch b n đ c biên d ch đ ng. ư ị ả ượ ị ộ
Đ c đi m c a ngôn ng Golangặ ể ủ
Golang là ngôn ng biên d ch, và gi ng nh nhi u ngôn ng l p trình khác, ư ữ ậ
nó s d ng khá nhi u dòng l nh.ử ụ Go đ ng th i là tên c a ngôn ng l p ữ ậ
trình và tên c a b công c đ c s d ng đ y d ng và t ng tác v i ụ ượ ử ụ ươ
các ch ng trình đ c vi t b iươ ượ ế Go - Golang.
Khác v i Python hay Javscript, ta c n khai báo ki u d li u cho các giá ữ ệ
tr bi n (variables)ế trong Golang (static-typed). Trình biên d ch bi t thông ị ế
tin ki u d li u tr c giúp đ m b o r ng ch ng trình đang làm vi c v i ữ ệ ướ ươ
các giá tr m t cách an toàn. Đi u này giúp gi m thi u các l i và l i b nhị ộ ỗ ộ
ti m n, đ ng th i cung c p cho trình biên d ch c h i t o ra nhi u mã ơ ộ
th c hi n h n. Đ ng th i ơ Golang cũng cung c p struct cho phép b n t o ạ ạ
các ki u c a riêng mình b ng cách k t h p m t ho c nhi u lo i, bao g m ế ợ
c các ki u đ c xây d ng s n và do ng i dùng đ nh nghĩa. ể ượ ườ Structs
cách duy nh t đ t o các ki u d li u do ng i dùng đ nh t nghĩa ể ạ ườ
trong Golang. Khi t o các ki u d li u c a riêng v i struct, Chúng ta c n
l u ý r ngư Golang không cung c p h tr cho th a k trong h th ng ki u ỗ ợ ế
d li u c a nó, nh ng nó u tiên thành ph n c a các ki u cho phép b n ữ ệ ư ư
t o các ki u d li u l n h n b ng cách k t h p các ki u nh h n. Tri t ể ữ ớ ơ ằ ế ơ ế
thi t k c aế ế Golang là t o ra các thành ph n l n h n b ng cách k t h p ầ ớ ơ ế ợ
các thành ph n nh mô-đun hóa. N u b n là m t l p trình viên th c ế ộ ậ
d ng, b n s đánh giá cao tri t lý thi t k c a ế ế ế Golang b i vi c k th a ế ừ
ki u d li u đôi khi đ a ra nh ng thách th c th c t liên quan đ n kh ữ ệ ư ế ế
năng b o trì.
Trong th p k qua, ph n c ng máy tính đã phát tri n m nh m giúp gia ầ ứ
tăng s lõi cũng nh nâng cao đ t phá s c m nh c a ư CPU. Ngày nay, chúng
ta s d ng nhi u n n t ng đám mây đ xây d ng và ch y các ng d ng, vìử ụ
v y các máy ch trên đám mây có nhi u s c m nh và quy n l c h n. M c ề ự ơ
dù v y, chúng ta v n ch a th t n d ng đ c toàn b s c m nh c a chúng ư ể ượ ứ ạ
d a trên h u h t các ngôn ng và công c l p trình hi n có. ế ụ ậ
Ngôn ng l p trìnhữ ậ Golang ra đ i cung c p kh năng th c thi các ch c ấ ả
năng đ c l p v i nhau. Các c ch đ ng th i c a nó giúp d dàng vi t các ơ ế ồ ế
ch ng trình t n d ng t i các "lõi" trênươ ậ ụ CPU cũng nh s c m nh t m ng ư ứ
máy tính. Trong h th ng ki u m i c a nó cho phép xây d ng ch ng trình ớ ủ ươ
linh ho t và mô đun hóa. M t function đ c t o đ c qu n lý nh ượ ạ ượ ư
m t goroutine (m t lu ng th c thi - thread - đ c qu n lý b i Go-ộ ồ ượ
runtime), nó đ c coi là m t đ n v công vi c đ c l p, đ c lên l ch và ượ ơ ộ ậ ượ
sau đó đ c th c thi trên m t b x lý logic có s n. Cácượ ộ ử Goroutine đ c ượ
t o ra b ng cách g i câu l nh Go theo sau b i hàm ho c ph ng th c mà ặ ươ
b n mu n ch y nh m t ho t đ ng t đi u hành. B l p l ch th i gian ư ạ ộ ự ề ậ ị
ch y Go là m t ph n m m ph c t p qu n lý t t c các ứ ạ ấ ả goroutine đ c ượ
t o và c n th i gian x lý. Trình l p l ch bi u n m trên đ u c a h đi u ậ ị ệ ề
hành, ràng bu c các lu ng c a h đi u hành t i các b x lý logic mà khi ộ ử
đ n l t, nó s ti n hành vi c th c thi cácế ượ ẽ ế goroutine. B l p l ch ki m ộ ậ
soát t t c m i th liên quan đ n cácấ ả ế goroutine đang ch y trên đó b vi x ộ ử
logic t i b t kỳ th i đi m nào.ạ ấ
Các lĩnh v c ng d ng Golangự ứ
V i đ c đi m c a mình,ớ ặ Golang có th ng d ng trong nhi u lĩnh v c, ể ứ
nh trong phát tri nư Web Backend, phát tri n ng d ngể ứ mobile (v i vai trò
server), trong các h th ng microservice hay ERP (Enterprise - Resource -
Planning).
Đ i v i phát triênố ớ Web server, Golang mang l i nhi u l i ích so ề ợ
v i Python hay Java nh :ư
Golang th t s đ n gi n và d ti p c n v i c các l p trình viên hay ự ơ ế
tester
S d ng các thu t toán biên d ch nâng cao, v i Golang, chúng ta s
không c n cài đ t các dependencies t server b i Go đã liên k t ế
t t c các mô-đun cũng nh cácấ ả ư dependenciesthành m t file nh phân.
Golang s d ng cácử ụ goroutine riêng bi t giúp ti t ki m b nh ế ộ ớ
nâng cao hi u năng cho ng d ng. ứ ụ
Có th nói, Golang đang phát tri n r t nhanh, t c đ ngày m t tăng cao, ể ấ
ti p c n d dàng, các ph ng th c b o m t đ c c i thi n m nh m giúp ế ươ ậ ượ
nó ngày càng tr nên chi m u th h n. ế ư ế ơ
thông tin tài liệu
Ngôn ngữ lập trình Go, cũng thường được gọi là Golang, là một ngôn ngữ lập trình được phát triển bởi một nhóm chuyên gia tại Google
Mở rộng để xem thêm
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×