Golang’s backend frameworks offer high performance, scalability, and simplicity for web development.
A guide to Rust traits, covering definition, implementation, inheritance, composition, and polymorphism.
Go's AST enables source code analysis, transformation, and tooling development.
Guide to generating random numbers in Go using `math/rand` and seeding techniques.
Golang JSON tags customize struct field encoding, supporting options like `omitempty`, `-`, and `string`.
Go generics enhance flexibility, reusability, and type safety in function design.
Go’s concurrent GC efficiently manages memory using mark-and-sweep with minimal pause times.
Go replaces classes with structs, methods, and interfaces to simplify software design.
Go maps efficiently store key-value pairs but require initialization and have unpredictable iteration order.
Closures in Go enable flexible, encapsulated, and dynamic function behaviors.
Check for element existence in Go using iteration or maps for efficiency.
Go replaces traditional inheritance with struct composition and interfaces for flexibility.
The `omitempty` tag removes empty fields in Go's JSON encoding, affecting struct handling.
The `goto` statement in Go enables jumps but should be used sparingly for readability.
Goose simplifies and automates database migrations in Go projects.
Global variables in Go offer convenience but require careful use to avoid issues.
Methods to copy Go slices using `copy` and `append`, with considerations for shallow and deep copies.
Go’s `time.Parse` requires a reference time format for accurate string-to-time conversion.
Writing files in Go requires choosing the right method (`os`, `bufio`), managing resources, and handling errors.
Learn how to replace substrings in Go using `strings.Replace` and `strings.NewReplacer`.
Mockery enhances Go testing by automating mock generation, integrating with Testify, and supporting CI/CD.
Goa streamlines API development with a design-first approach and automated code generation.
Go provides multiple file reading methods, with `bufio` offering the best performance for large files.
Go uses `iota` to create enums, enhancing readability and switch-case logic.
Golang lacks `do...while`, but `for` loops can achieve similar behavior.
Learn how to use `go clean` to manage Go’s build artifacts and caches efficiently.
Go's `Timer` and `Ticker` efficiently manage delayed and periodic tasks.
Exclude Golang directories by removing `.go` files, using build constraints, or IDE settings.
Use build constraints and `go.mod` to exclude files and directories from `go get` in Go.
Explains Rust’s Copy and Clone traits, their differences, implementation, and best practices.
SQLAlchemy is the most popular Object Relational Mapping (ORM) in the Python ecosystem. It has an elegant design and is divided into two parts: the underlying Core and the upper-level traditional ORM. In most ORMs in Python and even in other languages, a good hierarchical design has not been implemented. For example, in Django's ORM, the database connection and the ORM itself are completely mixed together.
An HTTP Server, as understood from its name, is a server that supports the HTTP protocol. While a Web Server, in addition to supporting the HTTP protocol, may also support other network protocols. This article will focus on introducing several common ways to write a Web Server using the official package of Golang.
Best practices for organizing Rust projects, from basic crate structures to complex workspaces.
A practical introduction to Rust’s Ordering for atomic operations and reliable concurrency.
This language itself has many remarkable features, such as a more robust type system, more pure functional programming support, powerful language features, and a compiler written in a native language with extremely high performance. Of course, it also has corresponding disadvantages. This article will focus on introducing ReScript's powerful features, its surrounding ecosystem, and its integration with React, which is most closely related to our daily use.
In the world of Golang, timers have a wide range of application scenarios. However, the question of exactly how precise they are has always been a concern for developers. This article will delve deep into the management of the timer heap in Go and the mechanism for obtaining time at runtime, thus revealing to what extent we can rely on the accuracy of timers.
Techniques to enhance Rust's multithreading performance by refining Arc and lock usage.
Hugo is a static website page generation tool written in Golang, and its efficiency is much higher than that of Jekyll written in Ruby. You can directly download the binary package from Github, and after decompression, add it to the PATH environment variable to use it.
In the field of software development, testing the performance of Golang locks is a practical task. Recently, a friend raised a question: when performing thread-safe read and write operations on a slice, should one choose a read-write lock (rwlock) or a mutex lock (mutex), and which lock has better performance? This question has triggered an in-depth discussion.
A comparison of message push strategies to help you choose the right solution for your needs.
Compilation optimization refers to the use of various technical means during the compilation process to improve the execution efficiency and resource utilization efficiency of the generated code. The Go language compiler will automatically perform some basic optimizations. However, through reasonable code design and compilation parameter settings, the program performance can be further improved.
Learn how to optimize Rust compilation for minimal size, maximum speed, or a balance of both.
A practical guide to choosing between Rust macros and functions for clean, efficient, and maintainable code.
With its efficiency (in terms of size) and professionalism (professional types), Protobuf should have a higher coverage in the future data transmission field.
In the Go language, there are two keywords that often appear in pairs — panic and recover. These two keywords are closely related to defer. They are both built-in functions in the Go language and provide complementary functions.
Optimize resource loading with fetchpriority to improve web performance and user experience. Engineering
`errgroup` is an official extended library that adds error handling capabilities on the basis of `sync.WaitGroup`, providing functions such as synchronization, error propagation, and context cancellation. Its `WithContext` method can add a cancellation function, `SetLimit` can limit the number of concurrency, and `TryGo` can try to start a task. The source code is ingeniously designed and worthy of reference.
In Python, a decorator is essentially a Python function. It has unique capabilities that allow it to add additional functionality to other functions without modifying their original code. The return value of a decorator is also a function object. In simple terms, it is a function specifically designed to return another function.
A technical breakdown of Fast Refresh, React’s modern approach to hot reloading and component updates.
Mentioned that when the native HTTP server in Go handles client connections, it spawns a goroutine for each connection, which is a rather brute - force approach. To gain a deeper understanding, let's take a look at the Go source code.