タグ

Goに関するhinashikiのブックマーク (8)

  • Go言語のCLI作成ツールであるcobra のシェル補完の生成があまりにも簡単 - じゃあ、おうちで学べる

    概要 Goでコマンドラインツールを作成する場合の選択肢としてspf13/cobraがあると思いますが、遂にv1.2.0 がリリースされました👏👏👏。大きな機能追加として completion が追加され、大枠の使い方とシェル補完の生成についてこのブログではやっていくメモ書きになってます。それ以上に言及しようと思ったのですが完全に体力不足でーす。 やっていく install CLIがあるので利用するさまざまな日語での入門記事がcobra には存在するので詳しくはその辺を参照してください。ちなみに、公式ドキュメントが最高で公式ドキュメントに誤りがあればコントリビューションのチャンス。 $ go get -u github.com/spf13/cobra って思ったら雑な備忘録を自分も書いてましたが一切の参考にならん syu-m-5151.hatenablog.com init コマンド

    Go言語のCLI作成ツールであるcobra のシェル補完の生成があまりにも簡単 - じゃあ、おうちで学べる
  • Let's EncryptがはまったGolangの落とし穴 - ぼちぼち日記

    0. 短いまとめ 300万以上の証明書の失効を迫られたLet's Encryptのインシデントは「Golangでよくある間違い」と書かれているようなバグが原因でした。 1. はじめに、 Let's Encryptは、無料でサーバ証明書を自動化して発行するサービスを行う非営利団体として2014年に設立されました。 2015年にサービス開始されると証明書の発行数はぐんぐん伸び、先月末のプレスリリースでは累計10億枚のサーバ証明書を発行したことがアナウンスされました「Let's Encrypt Has Issued a Billion Certificates」。CTLogの調査から、2020年2月末の時点では有効な全証明書の38.4%がLet's Encryptの証明書であるとみられています「Certificate Validity Dates」。 無料の証明書を提供してもらえるのは非常に嬉し

    Let's EncryptがはまったGolangの落とし穴 - ぼちぼち日記
  • GitHub - mithrandie/csvq: SQL-like query language for csv

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

    GitHub - mithrandie/csvq: SQL-like query language for csv
  • Scraping Framework for Golang

    Colly provides a clean interface to write any kind of crawler/scraper/spider With Colly you can easily extract structured data from websites, which can be used for a wide range of applications, like data mining, data processing or archiving. Features Clean API Fast (>1k request/sec on a single core) Manages request delays and maximum concurrency per domain Automatic cookie and session handling Syn

    Scraping Framework for Golang
  • Go での非同期処理 その1

    Go での非同期処理がいまいちわかっていなかったので、調べてみた。 Go の並列処理の基は、「メモリをシェアして、コミュニケーションをとるのではなく、コミュニケーションをとって、メモリをシェアする」と言うコンセプトらしい。一瞬なんのことかわからないが、試してみよう。 1. 非同期処理を、複数は知らせて、全部終わったら、何らかの処理をする。 C# や TypeScript だと、 async/await が便利すぎていい感じだが、Go には go routine と、 channel が存在する。かなりかっこいい感じで並列処理がかける。 REST-API からデータを取ってきたかったり、IO関係の処理だと、並列処理を行いたいだろう。次のは、2つの web サーバーから並列処理で、データを取得して、両方が読み終わったら、内容を表示するサンプルだ。 package main import (

    Go での非同期処理 その1
    hinashiki
    hinashiki 2018/10/26
  • GoによるWebアプリ開発のキホン

    1. The document discusses RESTful APIs and gRPC, comparing their characteristics and use cases. 2. RESTful APIs typically use HTTP and JSON to access resources via URLs while gRPC uses protocol buffers and HTTP/2 for efficient streaming and RPC. 3. gRPC is better suited for microservices and mobile apps due to its ability to handle streaming and performance, while REST is more widely used due to i

    GoによるWebアプリ開発のキホン
    hinashiki
    hinashiki 2018/10/07
  • なぜGo言語 (golang) はよい言語なのか・Goでプログラムを書くべき理由 | yunabe.jp

    結論としてはGo言語には以下のようないくつかの長所があり、現実路線で非常にバランスがとれた言語だと思います。 これらの長所のために失われたメリットも当然いくつもありますが、一定程度以上の規模のプロジェクトで利用する言語の選択肢としては現存するプログラミング言語の中では一番か二番目によいのではないかと思います。 コンパイルが速い (vs. C++) GCとメモリ安全性 (vs. C++) 妥当で現実的なレベルの型安全性 (vs. Python/Ruby) 実行時パフォーマンスが良さ (vs. Python/Ruby) 現実問題、ある程度の規模と期間のプロジェクトになると型検証があるとリファクタリングなどがだいぶ楽になるのでありがたい。 型があるので自然と実行時パフォーマンスも良い 標準ライブラリが整備されている (vs. C++) むしろ標準ライブラリにjsonのparserすら存在しないC

  • Goコードの書き方 - The Go Programming Language

    package main import "fmt" func main() { fmt.Println("Hello, 世界") } イントロダクション このドキュメントでは簡単なGoパッケージの開発の説明、 goツール 、Goパッケージとコマンドの標準的なフェッチ・ビルド・インストールの方法を紹介しています。 go ツールの利用に際しては、コードを特定の方法で構成する必要があります。このドキュメントを注意深く読みましょう。最も簡単にGoをインストールし、使い始める方法を説明しています。 同様の説明を スクリーンキャスト で見ることができます。 コードの構成 ワークスペース go ツールは、公開レポジトリでメンテナンスされているオープンソースコードを扱うことを想定して設計されています。実際にコードを公開する必要はありませんが、公開する場合もしない場合も同じ方法で環境の設定を行うことができま

    hinashiki
    hinashiki 2017/08/04
  • 1