Powerful Command-Line Applications in Go

Build Fast and Maintainable Tools

出版社 Pragmatic Bookshelf
発売日 2021/06/01
ページ数 250
ISBN-13 9781680506969
お届け日 通常 03月17日~03月24日

通常価格 ¥5,060

税込 配送料は購入手続き時に計算されます。


Whether you want to automate tasks, analyze data, parse logs, talk to network services, or address other systems requirements, writing your own command-line tool may be the fastest - and perhaps the most fun - way to do it. The Go programming language is a great choice for developing tools that are fast, reliable, and cross-platform. Create command-line tools that work with files, connect to services, and even manage external processes, all while using tests and benchmarks to ensure your programs are fast and correct.

When you want to develop cross platform command-line tools that are fast and reliable, use Go, a modern programming language that combines the reliability of compiled languages with the ease of use and flexibility of dynamic typed languages. Work through practical examples to develop elegant and efficient tools by applying Go’s rich standard library, its built in support for concurrency, and its expressive syntax. Use Go’s integrated testing capabilities to automatically test your tools, ensuring they work reliably even across code refactoring.

Develop CLI tools that interact with your users by using common input/output patterns, including environment variables and flags. Handle files to read or persist data, and manipulate paths consistently in cross-platform scenarios. Control processes and handle signals, and use a benchmark driven approach and Go’s concurrency primitives to create tools that perform well. Use powerful external libraries such as Cobra to create modern and flexible tools that handle subcommands, and develop tools that interact with databases, APIs, and network services. Finally, leverage what you learned by tackling additional challenges at the end of each chapter.

What You Need:

Go 1.8 or higher, an internet connection to download the example files and additional libraries, and a text editor to write your programs.


タスクの自動化、データの分析、ログの解析、ネットワークサービスとの対話、その他のシステム要件への対応など、独自のコマンドラインツールを書くことが最も速く、最も楽しい方法かもしれません。Go プログラミング言語は、高速で信頼性が高く、クロスプラットフォームのツールを開発するのに最適です。ファイルを操作したり、サービスに接続したり、外部プロセスを管理したりするコマンドラインツールを作成し、テストやベンチマークを使用してプログラムが高速で正しいことを確認します。

高速で信頼性の高いクロスプラットフォームのコマンドラインツールを開発したい場合は、コンパイル済み言語の信頼性と動的型付け言語の使いやすさと柔軟性を兼ね備えた最新のプログラミング言語である Go を使用します。Goの豊富な標準ライブラリ、同時実行のために組み込まれたサポート、表現力豊かな構文を適用して、エレガントで効率的なツールを開発するための実践的な例を紹介します。Goの統合されたテスト機能を使用してツールを自動的にテストし、コードのリファクタリングでも確実に動作するようにします。

環境変数やフラグなどの一般的な入力/出力パターンを使用して、ユーザと対話するCLIツールを開発します。ファイルを操作してデータを読み込んだり、データを永続化したり、クロスプラットフォームのシナリオで一貫してパスを操作したりすることができます。プロセスを制御し、シグナルを処理し、ベンチマーク駆動型のアプローチとGoの同時実行プリミティブを使用して、優れたパフォーマンスを発揮するツールを作成します。Cobra のような強力な外部ライブラリを使用して、サブコマンドを扱うモダンで柔軟なツールを作成し、データベース、API、ネットワークサービスと相互作用するツールを開発します。最後に、各章の最後にある追加の課題に取り組むことで、学んだことを活用してください。


1.8 以上、サンプルファイルと追加ライブラリをダウンロードするためのインターネット接続、プログラムを作成するためのテキストエディタが必要です。