「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Nunu で Golang をマスターする: 完全ガイド

Nunu で Golang をマスターする: 完全ガイド

2024 年 8 月 26 日に公開
ブラウズ:231

Go としても知られる Golang は、Google によって開発された最新の競合プログラミング言語です。 Golang は、そのシンプルで簡潔な構文により、分散システム開発者や競合他社の間で人気の選択肢となっています。 Nunu は、アプリケーションを効率的に作成および管理できるコマンドライン ツールです。この記事では、Golang と Nunu を使い始める方法を探り、スケーラブルな同時アプリケーションを構築したい開発者向けの基本と実践方法を取り上げます。

Domine Golang com Nunu: Guia completo

なぜ Golang を選ぶのですか?

シンプルさと生産性

Golang はシンプルかつ生産性が高くなるように設計されています。明確で簡潔な構文により、開発者はクリーンで保守しやすいコードを作成できます。他のプログラミング言語とは異なり、Golang は多くの不必要な複雑さを排除し、プログラムのロジックに集中できるようにします。

卓越したパフォーマンス

Golang の人気の主な理由の 1 つは、その卓越したパフォーマンスです。コンパイル言語として、Golang は C などの低レベル言語に近い実行速度を提供しますが、最新の構文と高レベルの機能の利便性を備えています。

Golang のパフォーマンスについて詳しく読む

WSL2 Windows を使用して Windows 上で Linux ターミナルを使用する方法をご覧ください。

内蔵コンペティション

Golang は同時プログラミングに関して威力を発揮します。 Golang では、ゴルーチンとチャネルを使用すると、従来の逐次プログラミングと同じくらい簡単に同時実行コードを作成できます。これは、複数のタスクを同時に処理する必要がある分散システムやアプリケーションで特に役立ちます。

開発環境の構成

Linux への Golang のインストール

Linux で Golang を使い始めるには、次の手順に従ってください:

  1. Golang の公式 Web サイトからインストール パッケージをダウンロードします。
  2. ファイルを /usr/local ディレクトリに抽出します。
   sudo tar -C /usr/local -xzf go1.x.x.linux-amd64.tar.gz
  1. Go ディレクトリを PATH に追加します。
   echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc
   source ~/.bashrc
  1. インストールを確認します:
   go version

ヌヌの紹介

Nunu は、Golang 開発を簡素化する革新的なツールです。 Go アプリケーションの作成、テスト、デプロイのプロセスを高速化する一連の機能を提供します。

Nnunu をインストールするには、次のコマンドを実行します:

go install github.com/nunu-framework/nunu@latest

Nunu とその機能について詳しく見る

Nunu を使用して最初の Golang プロジェクトを作成する

新しいプロジェクトの開始

Nunu がインストールされていれば、新しい Golang プロジェクトの作成は簡単です:

  1. ターミナルを開きます。
  2. プロジェクトを作成するディレクトリに移動します。
  3. コマンドを実行します:
   nunu new meu-projeto-go
  1. Nunu が標準的なプロジェクト構造を作成します。

プロジェクトの構造

Nunu で作成された Golang プロジェクトの一般的な構造は次のとおりです:

meu-projeto-go/
├── cmd/
│   └── main.go
├── internal/
│   ├── config/
│   ├── handler/
│   ├── model/
│   └── service/
├── pkg/
├── go.mod
└── go.sum

この構造により、コードのクリーンなモジュール構成が促進され、プロジェクトのメンテナンスとスケーラビリティが容易になります。

Golang と Nunu を使用した開発

Golang でコードを書く

プロジェクトが作成されたので、Golang を使用して最初のコードを作成します。 main.go ファイルを開き、次のコードを追加します:

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprint(w, "Olá, mundo!")
    })

    http.ListenAndServe(":8080", nil)
}

このコードは、Go 構文の単純さと明確さを示しています。main 関数はプログラムのエントリ ポイントであり、fmt パッケージを使用して画面に出力します。
このコードは、「Hello world!」を出力する単純な HTTP サーバーを作成します。サーバーのルートにアクセスしたとき。

Nunu でコードを実行する

コードを実行するには、ターミナルで nunu run コマンドを使用します。これによりサーバーが起動し、http://localhost:8080.

でアクセスできるようになります。

Nunu リソースの使用

Nunu は開発を加速するためのツールをいくつか提供しています。たとえば、新しい HTTP ハンドラーを生成するには:

nunu generate handler user

このコマンドは、ユーザー関連の HTTP リクエストを処理するための基本構造を持つ新しいハンドラー ファイルを作成します。

テストとデバッグ

Go でテストを書く

Golang はテストをネイティブでサポートしています。ファイル main_test.go:
を作成します

package main

import "testing"

func TestHelloWorld(t *testing.T) {
    expected := "Hello, World!"
    if got := helloWorld(); got != expected {
        t.Errorf("helloWorld() = %q, want %q", got, expected)
    }
}

次のコマンドでテストを実行します:

go test

Delve を使用したデバッグ

高度なデバッグには、Go 用の強力なデバッガーである Delve を使用することをお勧めします。
でインストールします。

go install github.com/go-delve/delve/cmd/dlv@latest

Go with Delve でのデバッグの詳細

実装と最終的な考慮事項

実稼働用にコンパイルする

実稼働用に Go プログラムをコンパイルするには:

go build -o meu-app cmd/main.go

このコマンドは、実稼働用に最適化されたバイナリ実行可能ファイルを作成します。

パフォーマンスのヒント

  1. 同時タスクにはゴルーチンを使用します。
  2. Go のガベージ コレクターを活用しますが、その影響には注意してください。
  3. ベンチマークを使用してパフォーマンスのボトルネックを特定します。

Go 最適化のヒントをさらに詳しく見る

結論

Nunu を使用して Golang を始めると、効率的かつ強力な開発の可能性が広がります。 Go のシンプルさとパフォーマンスを Nunu の実用的なツールと組み合わせることで、あらゆる規模のプロジェクトに理想的なプログラミング環境が作成されます。

プログラミング学習の旅は継続的であることを忘れないでください。 Golang スキルを向上させるために、プロジェクトの探索、練習、構築を続けてください。

Golang と Linux 開発についての知識を深めてみませんか?高度なプログラミングと DevOps の実践に関する他の記事とチュートリアルをチェックしてください!

Golang と Nunu について詳しくは、次のリンクを参照してください:

Go公式ウェブサイト: https://golang.org/
Nunu GitHub リポジトリ: https://github.com/nunu/nunu

リリースステートメント この記事は次の場所に転載されています: https://dev.to/fernandomullerjr/domine-golang-com-nunu-guia-completo-1j81?1 侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3