Go言語プログラミングエッセンス(エンジニア選書) [単行本]
    • Go言語プログラミングエッセンス(エンジニア選書) [単行本]

    • ¥3,520212ポイント(6%還元)
    • 在庫あり2024年5月25日土曜日までヨドバシエクストリームサービス便(無料)がお届け
100000009003678587

Go言語プログラミングエッセンス(エンジニア選書) [単行本]

mattn(著)
価格:¥3,520(税込)
ポイント:212ポイント(6%還元)(¥212相当)
フォーマット:
お届け日:在庫あり今すぐのご注文で、2024年5月25日土曜日までヨドバシエクストリームサービス便(無料)がお届けします。届け先変更]詳しくはこちら
出版社:技術評論社
販売開始日: 2023/03/09
お取り扱い: のお取り扱い商品です。
ご確認事項:返品不可

カテゴリランキング

店舗受け取りが可能です
マルチメディアAkibaマルチメディア梅田マルチメディア博多にて24時間営業時間外でもお受け取りいただけるようになりました

Go言語プログラミングエッセンス(エンジニア選書) の 商品概要

  • 要旨(「BOOK」データベースより)

    あなたのGoのコードを「一段階」レベルアップするテクニック集。
  • 目次

    第1章 プログラミング言語Goとは
    1.1 Goの簡単な歴史
    1.2 Goの立ち位置
    1.3 Goが利用される場面
     標準でUTF-8をサポート
     マルチプラットフォーム
     並行処理の扱いやすさ
     ストリーム指向
     シングルバイナリ
    1.4 教育用途としてのGo
    1.5 なぜGoが使われるのか
     コンパイルの速さ
     レビューのしやすさ
     周辺ツールの充実
     パッケージ公開の簡単さ
     libc非依存
     共同開発でのスキル差
    1.6 まとめ

    第2章 開発環境の準備3
    2.1 Goコンパイラのインストール
     [COLUMN]GOROOT? GOPATH?
    2.2 開発環境のセットアップ
     Visual Studio Code
     Vim
     Goland
    2.3 まとめ

    第3章 基本的な文法
    3.1 プロジェクトフォルダ
    3.2 Go言語の特徴
    3.3 静的な型
    3.4 基本的な構文
     変数宣言
     const(定数宣言)
     iota(列挙)
     命名規則
     関数呼び出し
     条件分岐
     ループ
     配列とスライス
     文字列
     map
     type(型宣言)
     struct(構造体)
     メソッド
     ポインタ
     interface{}またはany
     コンストラクタ
     インターフェース
     defer
    3.5 goroutine(ゴルーチン)
     channel(チャネル)
     制御構文(select)
    3.6 Goモジュールとは
     go.modの配置
     replace
     go install
    3.7 プロジェクトレイアウト
    3.8 lint文化
     go vet
     revive
     golangci-lint
    3.9 go fmt
    3.10 まとめ
     [COLUMN]おまじない

    第4章 基本テクニックとベストプラクティス
    4.1 ビルトイン関数
     printとprintln
     panicとrecover
     [COLUMN]Explicit is better than implicit, Simple is better than complex
     init関数
    4.2 パッケージ
     fmtパッケージ
     logパッケージ
     encoding/jsonパッケージ
     netパッケージ
     timeパッケージ
     pathパッケージとpath/filepathパッケージ
     osパッケージ
     ioパッケージ
     contextパッケージ
    4.3 build constraints
     ファイル名による指定
     +build(またはgo:build)コメントによる指定
     [COLUMN]マルチプラットフォーム向けアプリケーションの開発テクニック
    4.4 cgo
     pkg-configを使って複雑なコンパイルオプションに対処
    4.5 go:embed
    4.6 Functional Options Pattern
    4.7 Builder Pattern
    4.8 internalパッケージ
    4.9 Embedded struct
    4.10 go run
    4.11 まとめ

    第5章 Webアプリケーションの開発に必要な要素
    5.1 net/http
     基本の使い方
     ルーティング
     [COLUMN]Method Value
     ファイルのサーブ
    5.2 html/template
     struct
     range/end
     if/else/end
     with/else/end
     template.HTML
     FuncMap
     template.Parse
     define/template
    5.3 net/smtp
    5.4 まとめ

    第6章 速いプログラムのためのテクニック
    6.1 並行と並列
    6.2 goroutine
    6.3 channel
    6.4 非同期パターン
     ジェネレータ
     合流処理
     先着処理
     タイムアウト処理
     停止処理
     スロットリング(throttling)
    6.5 まとめ

    第7章 テストにおけるテクニック
    7.1 テストの考え方
    7.2 Goのテストの基本
     Table Driven Tests
     t.Skip/t.Skipf
     setup/teardown
     t.Short
     t.Parallel
     テストデータ
     カバレッジ
    7.3 便利なテクニック
     テンポラリディレクトリ
     環境変数
    7.4 Fuzzingテスト
    7.5 まとめ

    第8章 ベンチマークにおけるテクニック
    8.1 「推測するな、計測せよ」
    8.2 ベンチマークの基本
    8.3 ベンチマークの比較
     改善の前と後の比較
     異なる実装の比較
    8.4 プロファイリング
    8.5 まとめ

    第9章 GoによるCLIアプリケーション開発
    9.1 システムのコンセプト
    9.2 データベース登録プログラム
     [COLUMN]プログラムを作る手順
     ZIPファイルのURL一覧を得る
     ZIPファイルを展開する
     データベースに登録する
    9.3 データベース照会プログラム
    9.4 テストの実装
    9.5 CLI開発に役立つライブラリ
    9.6 フラグライブラリ
     flagパッケージ
     urfave/cli
     alecthomas/kingpin
     spf13/cobra
    9.7 端末制御ライブラリ
     olekukonko/tablewriter
     mattn/go-runewidth
     jroimartin/gocui
    9.8 まとめ

    第10章 GoによるWebアプリケーション開発
    10.1 システムのコンセプト
    10.2 TODOアプリケーション
     Webサーバ
     リクエストハンドラ
     テンプレート処理
     静的ファイルのサーブ
    10.3 リマインダメール送信
    10.4 Goにおけるフレームワーク
     Gin
     Echo
     Micro
     Beego
     フレームワークの選定について
    10.5 まとめ

    第11章 GitHubでの開発における勘所
    11.1 ライブラリの仕様
    11.2 プロジェクトの作成
    11.3 パッケージ名
    11.4 実装
    11.5 バージョニング
     [COLUMN]GitHubのワンポイントTips
    11.6 テスト
    11.7 ドキュメント
     go docの使い方
     godocの使い方
     https://pkg.go.dev/で閲覧する
    11.8 ディレクトリ構造
    11.9 自動テスト
    11.10 自動リリース
    11.11 まとめ

    第12章 データベースの扱い方
    12.1 database/sql
     サードパーティドライバ
     Query/QueryRow
     Exec
     Prepare
     Begin/Commit/Rollback
    12.2 ent/ent
     OpenAPI連携
     entgen
    12.3 ORMベンチマーク
    12.4 まとめ

    第13章 Goとクラウドサービス
    13.1 Goがなぜ使われるのか
    13.2 Google Cloud
    13.3 AWS Lambda
    13.4 Oracle Cloud
     [COLUMN]バイナリサイズを小さくする
    13.5 まとめ
  • 内容紹介

    Go言語ユーザーとして、「もう一段レベルアップしたい」「開発に使いたい」と思っている方に向けた、Go言語の解説本です。関数やパッケージの使い方、並行処理、テストといった基本的なトピックにおいて、「こう書くと綺麗になる」「こう書くとパフォーマンスが上がる」といったエッセンスを紹介します。後半ではCLIアプリ/Webアプリの開発手順や、現場で使われている便利なパッケージなど、著者が業務やOSSの開発で培った技術をふんだんに紹介します。
  • 著者について

    mattn (マッツン)
    mattn(まっつん)

    さまざまなOSSにコントリビュートを行うITエンジニア。月刊誌「Software Design」にて連載記事「Vimの細道」のほか、Vim、Go言語に関する記事を多数執筆。共著に『みんなのGo』。Google Developers Expert(Go)。
    Twitter:@mattn_jp

Go言語プログラミングエッセンス(エンジニア選書) の商品スペック

商品仕様
出版社名:技術評論社
著者名:mattn(著)
発行年月日:2023/03/22
ISBN-10:4297134195
ISBN-13:9784297134198
判型:B5
対象:専門
発行形態:単行本
内容:電子通信
言語:日本語
ページ数:315ページ
縦:23cm
横:18cm
他の技術評論社の書籍を探す

    技術評論社 Go言語プログラミングエッセンス(エンジニア選書) [単行本] に関するレビューとQ&A

    商品に関するご意見やご感想、購入者への質問をお待ちしています!