S SmartDocs

Ngôn ngữ lập trình

Hướng dẫn Python, C, C++, Java, JavaScript, TypeScript, Go, R và Haskell — từ cú pháp cơ bản đến kỹ thuật nâng cao.

Go EN Cập nhật 2026-04-18

Chapter 2 — Environment and Tooling

wget https://go.dev/dl/go1.22.0.linuxamd64.tar.gz sudo rm rf /usr/local/go sudo tar C /usr/local xzf go1.22.0.linuxamd64.tar.gz echo 'export PATH=$PATH:/usr/local/go/bin' ~/.profile

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 3 — Lexical Basics

Every Go file starts with a package declaration. Files in the same directory must declare the same package. A program is a collection of packages; the entry point is package main with func main.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 4 — Builtin Types

Operators: &&, , . Shortcircuit evaluation. There is no implicit conversion between bool and integers — if 1 { ... } is a compile error.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 5 — Control Flow

Go has only a handful of control structures and no parentheses around their conditions. The body braces are always required.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 6 — Functions and Methods

When consecutive parameters share a type, you can write the type once a, b int.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 7 — Interfaces

An interface is a set of method signatures. Any type that has all of those methods satisfies the interface — automatically, without declaring intent. This is called structural or implicit typing.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 8 — Pointers and Memory

A pointer holds the memory address of a value. The type of a pointer to T is T. The zero value of any pointer is nil.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 9 — Generics

Generics arrived in Go 1.18 March 2022. They let you write functions and types that work on a parametric set of types, with compiletime type checking.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 10 — Concurrency

"Don't communicate by sharing memory; share memory by communicating." — Rob Pike

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 11 — Testing

Go's standard library includes everything you need for testing: the testing package plus the go test command.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 12 — Modules and Dependencies

A module is a unit of versioning and distribution: a tree of Go packages identified by a module path, with explicit dependencies and a recorded build list. Modules replaced the older GOPATH workflow in Go 1.11+ and have

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 13 — Practical Go

A grab bag of the topics you need most often in real services: HTTP, JSON, logging, configuration, structured project layout, and a few productionready patterns.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 1 — Arrays and Slices

Array NT — fixed length, length is part of the type, value semantics. Rarely used directly. Slice T — {ptr, len, cap} view into a backing array. Reference semantics for the underlying data. Used everywhere.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 2 — Stack

A stack is a LIFO lastin, firstout container with two main operations:

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 3 — Queue Ring Buffer

A queue is a FIFO firstin, firstout container. The two main operations are:

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 4 — Sorting

Sorting is the canonical algorithms topic. Knowing several sorts and their tradeoffs is part of any working programmer's vocabulary. This chapter implements five classic algorithms in Go and explains when to use each.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 5 — Hash Tables

A hash table maps keys to values with expected O1 lookup, insert, and delete. The trick: a hash function turns a key into an integer, which is reduced modulo the bucket count into an index, and an entry is stored at that

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 6 — Binary Heap Priority Queue

A binary heap is an arraybased complete binary tree that satisfies the heap property:

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 7 — Balanced Binary Search Tree AVL

A binary search tree BST stores keys so that for every node N:

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Chapter 8 — Graphs

A graph is a set of vertices connected by edges. Edges may be:

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Design considerations & assumptions

This document satisfies the Checkout.com offline assessment request to capture key design considerations and assumptions.

Đọc bài viết →
Go EN Cập nhật 2026-04-18

Payment Gateway Challenge Go + Echo + PostgreSQL

Implementation of the Checkout.com offline paymentgateway assessmenthttps://github.com/ckorecruitment/offlinecodinginterviewpreparation, using Go, Echo, PostgreSQL, and the official Mountebank bank simulator from the ref

Đọc bài viết →
JavaScript EN Cập nhật 2026-02-03

🎉 JavaScript Full Curriculum COMPLETE

I've successfully created 8 complete modules with 80 detailed lessons and extensive code examples. This represents 100% of the entire curriculum and provides students with comprehensive JavaScript and fullstack developme

Đọc bài viết →
JavaScript EN Cập nhật 2026-02-03

🎯 JavaScript Full Curriculum Complete Package

I've created a comprehensive JavaScript curriculum package that includes:

Đọc bài viết →