As a heavyweight in the field of Vibe Coding, Anthropic, the parent company of Claude large models, has become popular all over the world since the launch of Claude Code. However, because it is mixed with some political purposes, users in China cannot use it directly. In addition, the official command line program form of Claude Code is relatively complicated, which to a certain extent restricts many domestic developers from understanding it. Even so, this does not prevent it from becoming a top player in the Vibe Coding circuit. Therefore, through the idea of eliminating complexity and simplifying, this article hopes to help developers quickly get started with Claude Code, and have the opportunity to use its auxiliary programming in depth in daily development, and jointly find new programming models in the future under the wave of the AI era.
This method essentially calls the Claude large model directly through the API, and you choose a customized (or open source) user interface, similar to the OpenAI API. Since this method does not actually use the powerful command line tool capabilities of Claude Code, it is more suitable for early trial use of Anthropic products.
Foreword I recently finished watching the TV series version of "The Three-Body Problem" directed by Yang, and I gained an astonishing new understanding of the impact of human actions on the world. Although it is a science fiction drama, its revelation of human nature is very profound. A long time ago, I came across a question and answer on Zhihu. The title was probably "If someone blows up all the storage servers of Alipay, will everyone lose all their money in Alipay?" ", I am ashamed to say that from that article, the author first fully understood "how to use various means to physically destroy service clusters", and then understood "how financial system designers carefully design a security system to protect data." And when I accidentally accessed root-servers while checking a piece of information, I thought of the problem in the title. With this question in mind, I decided to go back... 1. Understand DNS. Before answering this question, in the spirit of inquiring, we first need to understand the working principle of DNS and the management mechanism of the root domain name. 1.1 What is DNS? Well-known TCP/ IP protocol. The network layer defines IP (Internet Protocol) to transmit data from one device to another. Based on this idea, the concept of IP address was designed to number the device. For the IPv4 protocol, the IP address has a total of 32 bits and is divided into four segments (for example, 192.168.100.1), each segment is 8 bits. About the classification of IP addresses, IP addressing and other details, this article will not go into details. IP is for computer equipment and is not easy for humans to recognize and remember. So humans invented the domain name (Domain…
Before we formally talk about ECDHE, we need to talk about the RSA algorithm that is closely related to it. ECDHE was born on the premise of optimizing some features of RSA.
1.1 Asymmetric encryption
RSA algorithm is often used in asymmetric encryption. Asymmetric encryption generates a pair of keys. Common usage scenarios are:
Public key encryption, private key decryption. This purpose is to Ensure data transmission security, because the content encrypted by the public key cannot be decrypted by others. Only the person holding the private key can decrypt the actual content;
Private key encryption, public key decryption. This purpose is to Ensure data authenticity, because the private key cannot be leaked. If the public key can normally decrypt the content encrypted by the private key, it can be proved that the message was sent by the person holding the identity of the private key.
If you want to understand the RSA algorithm, you first need to start with several elementary number theory concepts.
The so-called Route Management is to manage how to jump between pages. It is usually also called navigation management. Route Management in Flutter is similar to native development. Whether it is Android or iOS, navigation management will maintain a routing stack. The route push operation corresponds to opening a new page, and the route pop operation corresponds to the page closing operation. Route Management mainly refers to how to manage the routing stack.
2. MaterialPageRoute
2.1 Basic definition
MaterialPageRoute is a component provided by the Material component library. It can implement routing switching animations consistent with the platform page switching animation style for different platforms:
For Android, when a new page is opened, the new page will slide from the bottom of the screen to the top of the screen; when the page is closed, the current page will slide from the top of the screen to the bottom of the screen and then disappear, while the previous page will be displayed on the screen.
For iOS, when a page is opened, the new page will slide from the right edge of the screen to the left side of the screen until the new page is fully displayed on the screen, while the previous page will slide from the current screen to the left side of the screen and disappear; when the page is closed, just the opposite, the current page will slide out from the right side of the screen, and the previous page will slide in from the left side of the screen.
builder is a callback function of WidgetBuilder type. Its function is to build the specific content of the routing page, and the return value is a widget. We usually implement this callback to return an instance of the new route.
settings Contains the configuration information of the route, such as the route name and whether it is the initial route (home page).
maintainState By default, when a new route is pushed into the stack, the original route will still be saved in memory. If you want to release all the resources occupied by the route when it is no longer used, you can set maintainState to false.
fullscreenDialog Indicates whether the new routing page is a full-screen modal dialog box. In iOS, if fullscreenDialog is true, the new page will slide in from the bottom of the screen (instead of horizontally).