Heim  >  Artikel  >  Backend-Entwicklung  >  Welche sind die am häufigsten verwendeten integrierten Pakete in der Go-Sprache?

Welche sind die am häufigsten verwendeten integrierten Pakete in der Go-Sprache?

青灯夜游
青灯夜游Original
2023-01-11 10:09:011711Durchsuche

Häufig verwendete integrierte Pakete: 1. fmt, die formatierte Standardeingaben und -ausgaben realisieren können; 9. kodierung /json; 11. net/http; 13. os/exec;

Welche sind die am häufigsten verwendeten integrierten Pakete in der Go-Sprache?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, GO Version 1.18, Dell G3-Computer.

Die Standardbibliothek der Go-Sprache deckt verschiedene Aspekte wie Netzwerk, System, Verschlüsselung, Kodierung, Grafik usw. ab. Sie können das HTTP-Paket der Standardbibliothek direkt zum Senden und Empfangen des HTTP-Protokolls verwenden Hochleistungs-Betriebssystem-Kommunikationsmodell (Linux epoll, Windows IOCP); alle Verschlüsselungen und Codierungen werden integriert und müssen nicht von Drittentwicklern bezogen werden.

Der Go-Sprachcompiler ist ebenfalls Teil der Standardbibliothek. Er scannt den Quellcode durch das Lexikon und verwendet den Syntaxbaum, um die logischen Zweige des Quellcodes usw. zu erhalten. Auch die Peripherietools der Go-Sprache basieren auf diesen Standardbibliotheken. Fast die meisten Anforderungen können mit der Standardbibliothek erfüllt werden.

Die meisten integrierten Pakete von Golang werden bei der Installation von Go automatisch im System installiert. Wir können diese Pakete im $GOROOT/src/pkg-Verzeichnis anzeigen.

Häufig verwendete integrierte Pakete in der Go-Sprache

1) fmt

fmt-Paket implementiert formatierte Standardeingabe und -ausgabe, die printf und scanf in der C-Sprache ähneln. Unter diesen sind fmt.Printf() und fmt.Println() die von Entwicklern am häufigsten verwendeten Funktionen.

Formatierungsphrasen werden aus der C-Sprache abgeleitet. Einige Phrasen (%-Sequenzen) werden wie folgt verwendet:

  • %v: der Standardformatwert. Beim Drucken einer Struktur fügt das Pluszeichen (%+v) den Feldnamen hinzu;

  • %#v: Wertausdruck im Go-Stil

  • %T: Wertausdruck im Go-Stil mit Typ.

2) io

Dieses Paket stellt die ursprüngliche E/A-Betriebsschnittstelle bereit. Seine Hauptaufgabe besteht darin, primitive E/A wie das Betriebssystempaket zu kapseln und einige andere verwandte Funktionen hinzuzufügen, um abstrakte Funktionen für die Verwendung auf öffentlichen Schnittstellen bereitzustellen.

3) bufio

Das bufio-Paket bietet eine Datenpufferungsfunktion durch Kapselung des io-Pakets, wodurch der durch das Lesen und Schreiben großer Datenblöcke verursachte Overhead bis zu einem gewissen Grad reduziert werden kann.

In jeder Komponente von bufio wird ein Puffer verwaltet, und Datenlese- und -schreibvorgänge werden direkt über den Pufferbereich ausgeführt. Wenn ein Lese- oder Schreibvorgang initiiert wird, wird zunächst versucht, Daten aus dem Puffer abzurufen. Nur wenn sich keine Daten im Puffer befinden, werden die Daten von der Datenquelle abgerufen und der Puffer aktualisiert.

4) sort

sort-Paket bietet Funktionen zum Sortieren von Slices und benutzerdefinierten Sammlungen.

5) strconv

Das strconv-Paket bietet Funktionen zum Konvertieren von Zeichenfolgen in Basisdatentypen oder von Basisdatentypen in Zeichenfolgen.

6) os

os-Paket bietet eine plattformunabhängige Betriebssystem-Funktionsschnittstelle, die im Unix-Stil gestaltet ist, aber die Fehlerbehandlung erfolgt im Go-Stil. Wenn das Betriebssystem-Paket verwendet wird, wird stattdessen der Fehlertyp zurückgegeben der Fehlernummer.

7) sync

sync-Paket implementiert Multi-Thread-Sperrmechanismus und andere gegenseitige Ausschlussmechanismen für die Synchronisierung.

8) Das Paket flag

flag bietet die Funktion der Regeldefinition von Befehlszeilenparametern und der Analyse eingehender Parameter. Die meisten Befehlszeilenprogramme erfordern dieses Paket.

9) Kodierung/JSON

JSON wird derzeit häufig als Kommunikationsformat in Netzwerkprogrammen verwendet. Das Paket „encoding/json“ bietet grundlegende Unterstützung für JSON, z. B. die Serialisierung von einem Objekt in eine JSON-Zeichenfolge oder die Deserialisierung eines bestimmten Objekts aus einer JSON-Zeichenfolge.

10) html/template

implementiert hauptsächlich einige Funktionen zum Generieren von HTML-Vorlagen in der Webentwicklung.

11) net/http

net/http-Paket bietet HTTP-bezogene Dienste, hauptsächlich einschließlich http-Anfragen, -Antworten und URL-Analyse sowie grundlegende http-Clients und erweiterte http-Dienste.

Mit dem net/http-Paket können Sie mit nur wenigen Codezeilen einen Crawler oder einen Webserver implementieren, was in herkömmlichen Sprachen unvorstellbar ist.

12) Reflect

Das Reflect-Paket implementiert die Laufzeitreflexion und ermöglicht es Programmen, Objekte über abstrakte Typen zu manipulieren. Es wird normalerweise verwendet, um den Wert der statischen Typschnittstelle {} zu verarbeiten und seine dynamischen Typinformationen über Typeof zu analysieren, wobei normalerweise ein Objekt mit dem Schnittstellentyp Type zurückgegeben wird.

13) os/exec

Das os/exec-Paket stellt entsprechende Implementierungen zum Ausführen benutzerdefinierter Linux-Befehle bereit.

14) Strings

Das Strings-Paket ist hauptsächlich eine Sammlung von Funktionen zur Verarbeitung von Strings, einschließlich Zusammenführen, Suchen, Teilen, Vergleichen, Suffixprüfung, Indizierung, Fallverarbeitung usw.

Die Funktionsschnittstellenfunktionen des Strings-Pakets und des Bytes-Pakets sind grundsätzlich gleich.

15) Bytes

Das

bytes-Paket bietet eine Reihe von Funktionen zum Lesen und Schreiben von Byte-Slices. Es gibt viele Funktionen für die Byte-Slicing-Verarbeitung, die in grundlegende Verarbeitungsfunktionen, Vergleichsfunktionen, Suffix-Prüffunktionen, Indexfunktionen, Teilungsfunktionen, Fallverarbeitungsfunktionen und Sub-Slicing-Verarbeitungsfunktionen unterteilt sind.

16) Das log

log-Paket wird hauptsächlich zur Ausgabe von Protokollen im Programm verwendet.

Das Protokollpaket bietet drei Arten von Protokollausgabeschnittstellen: Drucken, Fatal und Panic.

Print ist eine normale Ausgabe;

  • Fatal ist die Ausführung von os.Exit(1) nach der Ausführung von Print;

  • Panic bedeutet, die Methode panic() nach der Ausführung von Print aufzurufen.

17)time

time-Paket wird hauptsächlich für zeitbezogene Vorgänge verwendet, wie z. B. Formatieren der Zeit, Konvertieren von Zeit in Zeitstempel, Konvertieren von Zeitstempel in Zeitzeichenfolge usw.

18)regexp

Kapselung regulärer Ausdrücke.

【Verwandte Empfehlungen: Go-Video-Tutorial, Programmierunterricht

Das obige ist der detaillierte Inhalt vonWelche sind die am häufigsten verwendeten integrierten Pakete in der Go-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn