Submit Search
Upload
オススメの標準・準標準パッケージ20選
•
9 likes
•
14,248 views
Takuya Ueda
Follow
Go言語LT大会で発表した資料です。 https://go-beginners.connpass.com/event/55768/
Read less
Read more
Technology
Report
Share
Report
Share
1 of 26
Download now
Download to read offline
Recommended
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Recruit Lifestyle Co., Ltd.
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
日本マイクロソフト株式会社
OAuth 2.0のResource Serverの作り方
OAuth 2.0のResource Serverの作り方
Hitachi, Ltd. OSS Solution Center.
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
Recommended
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Recruit Lifestyle Co., Ltd.
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
日本マイクロソフト株式会社
OAuth 2.0のResource Serverの作り方
OAuth 2.0のResource Serverの作り方
Hitachi, Ltd. OSS Solution Center.
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
Hitachi, Ltd. OSS Solution Center.
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
NTT DATA Technology & Innovation
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較
Yoshiyasu SAEKI
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
Akihiko Horiuchi
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話
Hitachi, Ltd. OSS Solution Center.
Node-REDからREST APIに接続
Node-REDからREST APIに接続
Hitachi, Ltd. OSS Solution Center.
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
Docker Tokyo
Docker Tokyo
cyberblack28 Ichikawa
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
Tetsutaro Watanabe
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
REST API のコツ
REST API のコツ
pospome
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
例外設計における大罪
例外設計における大罪
Takuto Wada
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
初心者がGoでcliツール作ってみて学んだこと
初心者がGoでcliツール作ってみて学んだこと
Shota Inoue
わりとディープ?同値分割↔境界値分析
わりとディープ?同値分割↔境界値分析
scarletplover
More Related Content
What's hot
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
Hitachi, Ltd. OSS Solution Center.
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
NTT DATA Technology & Innovation
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較
Yoshiyasu SAEKI
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
Akihiko Horiuchi
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
Kohei Tokunaga
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話
Hitachi, Ltd. OSS Solution Center.
Node-REDからREST APIに接続
Node-REDからREST APIに接続
Hitachi, Ltd. OSS Solution Center.
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Yahoo!デベロッパーネットワーク
Docker Tokyo
Docker Tokyo
cyberblack28 Ichikawa
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
Kumazaki Hiroki
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
Tetsutaro Watanabe
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
REST API のコツ
REST API のコツ
pospome
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
例外設計における大罪
例外設計における大罪
Takuto Wada
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
NTT DATA Technology & Innovation
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Masahito Zembutsu
What's hot
(20)
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
Kubernetesでの性能解析 ~なんとなく遅いからの脱却~(Kubernetes Meetup Tokyo #33 発表資料)
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
KafkaとAWS Kinesisの比較
KafkaとAWS Kinesisの比較
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
Dockerからcontainerdへの移行
Dockerからcontainerdへの移行
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
NGINXをBFF (Backend for Frontend)として利用した話
NGINXをBFF (Backend for Frontend)として利用した話
Node-REDからREST APIに接続
Node-REDからREST APIに接続
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
At least onceってぶっちゃけ問題の先送りだったよね #kafkajp
Docker Tokyo
Docker Tokyo
本当は恐ろしい分散システムの話
本当は恐ろしい分散システムの話
初心者向けMongoDBのキホン!
初心者向けMongoDBのキホン!
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
REST API のコツ
REST API のコツ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
例外設計における大罪
例外設計における大罪
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
コンテナの作り方「Dockerは裏方で何をしているのか?」
コンテナの作り方「Dockerは裏方で何をしているのか?」
Viewers also liked
初心者がGoでcliツール作ってみて学んだこと
初心者がGoでcliツール作ってみて学んだこと
Shota Inoue
わりとディープ?同値分割↔境界値分析
わりとディープ?同値分割↔境界値分析
scarletplover
Don't Use Reflect - Go 1.7 release party 2016
Don't Use Reflect - Go 1.7 release party 2016
lestrrat
条件式評価器の実装による管理ツールの抽象化
条件式評価器の実装による管理ツールの抽象化
Takuya Ueda
Javaトラブルに備えよう #jjug_ccc #ccc_h2
Javaトラブルに備えよう #jjug_ccc #ccc_h2
Norito Agetsuma
HTTP2 RFC 発行記念祝賀会
HTTP2 RFC 発行記念祝賀会
Jxck Jxck
粗探しをしてGoのコントリビューターになる方法
粗探しをしてGoのコントリビューターになる方法
Takuya Ueda
Go1.8 for Google App Engine
Go1.8 for Google App Engine
Takuya Ueda
Mobile Apps by Pure Go with Reverse Binding
Mobile Apps by Pure Go with Reverse Binding
Takuya Ueda
Go静的解析ハンズオン
Go静的解析ハンズオン
Takuya Ueda
GoによるiOSアプリの開発
GoによるiOSアプリの開発
Takuya Ueda
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
Takuya Ueda
うしちゃん WebRTC Chat on SkyWayの開発コードw
うしちゃん WebRTC Chat on SkyWayの開発コードw
Kensaku Komatsu
Static Analysis in Go
Static Analysis in Go
Takuya Ueda
goパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現する
Takuya Ueda
Cloud Functionsの紹介
Cloud Functionsの紹介
Takuya Ueda
Namespace API を用いたマルチテナント型 Web アプリの実践
Namespace API を用いたマルチテナント型 Web アプリの実践
Takuya Ueda
Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用
Takuya Ueda
Cloud functionsの紹介
Cloud functionsの紹介
Takuya Ueda
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
Takuya Ueda
Viewers also liked
(20)
初心者がGoでcliツール作ってみて学んだこと
初心者がGoでcliツール作ってみて学んだこと
わりとディープ?同値分割↔境界値分析
わりとディープ?同値分割↔境界値分析
Don't Use Reflect - Go 1.7 release party 2016
Don't Use Reflect - Go 1.7 release party 2016
条件式評価器の実装による管理ツールの抽象化
条件式評価器の実装による管理ツールの抽象化
Javaトラブルに備えよう #jjug_ccc #ccc_h2
Javaトラブルに備えよう #jjug_ccc #ccc_h2
HTTP2 RFC 発行記念祝賀会
HTTP2 RFC 発行記念祝賀会
粗探しをしてGoのコントリビューターになる方法
粗探しをしてGoのコントリビューターになる方法
Go1.8 for Google App Engine
Go1.8 for Google App Engine
Mobile Apps by Pure Go with Reverse Binding
Mobile Apps by Pure Go with Reverse Binding
Go静的解析ハンズオン
Go静的解析ハンズオン
GoによるiOSアプリの開発
GoによるiOSアプリの開発
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
うしちゃん WebRTC Chat on SkyWayの開発コードw
うしちゃん WebRTC Chat on SkyWayの開発コードw
Static Analysis in Go
Static Analysis in Go
goパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現する
Cloud Functionsの紹介
Cloud Functionsの紹介
Namespace API を用いたマルチテナント型 Web アプリの実践
Namespace API を用いたマルチテナント型 Web アプリの実践
Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用
Cloud functionsの紹介
Cloud functionsの紹介
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
Similar to オススメの標準・準標準パッケージ20選
Goでかんたんソースコードの静的解析
Goでかんたんソースコードの静的解析
Takuya Ueda
GoでEPC作って本番運用している話
GoでEPC作って本番運用している話
雄也 日下部
Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発
Takuya Ueda
Go mobileでモバイルアプリを作ろう
Go mobileでモバイルアプリを作ろう
Takuya Ueda
Groovy Grails eXchage 2014 報告
Groovy Grails eXchage 2014 報告
Tsuyoshi Yamamoto
Goでwebアプリを開発してみよう
Goでwebアプリを開発してみよう
Takuya Ueda
実践Go ツールの作成から配布まで
実践Go ツールの作成から配布まで
Yusuke Miyake
Easy scripting in Go
Easy scripting in Go
naoty_bot
Build insider offline session チームでのgit
Build insider offline session チームでのgit
Tadahiro Ishisaka
Google Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめ
Takuya Ueda
Goだけでモバイルアプリを作ろう
Goだけでモバイルアプリを作ろう
Takuya Ueda
Gopenflow demo v1
Gopenflow demo v1
Hiroaki Kawai
Go言語ってどんな言語? 導入実績や気になるトレンド
Go言語ってどんな言語? 導入実績や気になるトレンド
Atsushi Yasuda
エディタの壁を越えるGoの開発ツールの文化と作成法
エディタの壁を越えるGoの開発ツールの文化と作成法
Takuya Ueda
分散バージョン管理システムって何なん 20101218
分散バージョン管理システムって何なん 20101218
Takashi Okamoto
Go一緒にいかが?
Go一緒にいかが?
Ryuji Iwata
Go入門
Go入門
Takuya Ueda
Python for Data Analysis第1回勉強会(+git入門)
Python for Data Analysis第1回勉強会(+git入門)
Makoto Kawano
Gitの紹介
Gitの紹介
Shoot Morii
Gopher Fest 2017参加レポート
Gopher Fest 2017参加レポート
Takuya Ueda
Similar to オススメの標準・準標準パッケージ20選
(20)
Goでかんたんソースコードの静的解析
Goでかんたんソースコードの静的解析
GoでEPC作って本番運用している話
GoでEPC作って本番運用している話
Go MobileでAndroidアプリ開発
Go MobileでAndroidアプリ開発
Go mobileでモバイルアプリを作ろう
Go mobileでモバイルアプリを作ろう
Groovy Grails eXchage 2014 報告
Groovy Grails eXchage 2014 報告
Goでwebアプリを開発してみよう
Goでwebアプリを開発してみよう
実践Go ツールの作成から配布まで
実践Go ツールの作成から配布まで
Easy scripting in Go
Easy scripting in Go
Build insider offline session チームでのgit
Build insider offline session チームでのgit
Google Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめ
Goだけでモバイルアプリを作ろう
Goだけでモバイルアプリを作ろう
Gopenflow demo v1
Gopenflow demo v1
Go言語ってどんな言語? 導入実績や気になるトレンド
Go言語ってどんな言語? 導入実績や気になるトレンド
エディタの壁を越えるGoの開発ツールの文化と作成法
エディタの壁を越えるGoの開発ツールの文化と作成法
分散バージョン管理システムって何なん 20101218
分散バージョン管理システムって何なん 20101218
Go一緒にいかが?
Go一緒にいかが?
Go入門
Go入門
Python for Data Analysis第1回勉強会(+git入門)
Python for Data Analysis第1回勉強会(+git入門)
Gitの紹介
Gitの紹介
Gopher Fest 2017参加レポート
Gopher Fest 2017参加レポート
More from Takuya Ueda
Goにおけるバージョン管理の必要性 − vgoについて −
Goにおけるバージョン管理の必要性 − vgoについて −
Takuya Ueda
WebAssembly with Go
WebAssembly with Go
Takuya Ueda
GAE/Goとsyncパッケージ
GAE/Goとsyncパッケージ
Takuya Ueda
静的解析を使った開発ツールの開発
静的解析を使った開発ツールの開発
Takuya Ueda
そうだ、Goを始めよう
そうだ、Goを始めよう
Takuya Ueda
マスター・オブ・goパッケージ
マスター・オブ・goパッケージ
Takuya Ueda
メルカリ カウルのマスタデータの更新
メルカリ カウルのマスタデータの更新
Takuya Ueda
Go Friday 傑作選
Go Friday 傑作選
Takuya Ueda
エキスパートGo
エキスパートGo
Takuya Ueda
GAE/GoでWebアプリ開発入門
GAE/GoでWebアプリ開発入門
Takuya Ueda
GAE/GoでLINE Messaging API を使う
GAE/GoでLINE Messaging API を使う
Takuya Ueda
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
Takuya Ueda
More from Takuya Ueda
(12)
Goにおけるバージョン管理の必要性 − vgoについて −
Goにおけるバージョン管理の必要性 − vgoについて −
WebAssembly with Go
WebAssembly with Go
GAE/Goとsyncパッケージ
GAE/Goとsyncパッケージ
静的解析を使った開発ツールの開発
静的解析を使った開発ツールの開発
そうだ、Goを始めよう
そうだ、Goを始めよう
マスター・オブ・goパッケージ
マスター・オブ・goパッケージ
メルカリ カウルのマスタデータの更新
メルカリ カウルのマスタデータの更新
Go Friday 傑作選
Go Friday 傑作選
エキスパートGo
エキスパートGo
GAE/GoでWebアプリ開発入門
GAE/GoでWebアプリ開発入門
GAE/GoでLINE Messaging API を使う
GAE/GoでLINE Messaging API を使う
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
Recently uploaded
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
Hiroshi Tomioka
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
Recently uploaded
(9)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版) 2024年4月作成
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
オススメの標準・準標準パッケージ20選
1.
オススメの 標準・準標準 パッケージ20選 2017/06/05(月) Go言語LT大会 The Go gopher
was designed by Renee French. The gopher stickers was made by Takuya Ueda. Licensed under the Creative Commons 3.0 Attributions license.
2.
自己紹介 メルカリ/ソウゾウ 上田拓也 twitter: @tenntenn ■ コミュニティ活動 Google
Cloud Platform User Group (GCPUG) Tokyo Goビギナーズ golang.tokyo Go Conference ■ 業務 GAE/Goでメルカリカウルを作ってます GoやGCPコミュニティを盛り上げる仕事 Gopherを描く仕事(LINEスタンプ) 2
3.
Goの標準パッケージ ■ さまざまな機能が提供されている ● HTTPサーバ/クライアント ●
文字列処理 ● 暗号化 ● 画像処理 3 $ go version go version go1.8.3 darwin/amd64 $ go list std | grep -v vendor | wc -l 161 ■ かなりの数のパッケージがある
4.
Goの準標準パッケージ ■ golang.org/xで提供されるパッケージ ● https://godoc.org/-/subrepo ●
サーバ類 ● 文字列処理 ● 画像処理 4 ■ かなりの数のパッケージがある ● 450パッケージ以上はある
5.
1.fmt パッケージ ■ 書式付きプリント機能を提供する ●
%T,%q,%vあたりが便利 ○ https://play.golang.org/p/MLNmJu40l9 ● %[1]dとかでN番目の値が出せる ○ https://play.golang.org/p/n2hwezLMS8 ● fmt.Stringerが便利 ○ https://play.golang.org/p/QLzowzeU15 5
6.
2.io パッケージ ■ IO関係の基本的な型が定義されている ●
io.Readerとio.Writerが強力 ○ インタフェースの良い例 ● io.TeeReaderとかもあり便利 ○ https://play.golang.org/p/mHmstVuvfG 6
7.
3.io/ioutil パッケージ ■ IO関係の便利関数がある ●
ioutilという名前が与えてくれる勇気 ○ utilって名前はよくない ○ 文脈が伴えばOK ● NopCloserが便利 ○ https://play.golang.org/p/EkAbmCZqcH ● ReadAllはあんまり使わない ○ ストリームのままやろう 7
8.
4.strings パッケージ ■ 文字列に関する処理を提供 ●
置換とか連結とか ○ https://play.golang.org/p/rMsm_u_TEH ● strings.Readerが便利 ○ 文字列をio.Readerに変換してくれる ● strings.Fieldsが便利 ○ ホワイトスペースでいい感じに区切ってくれる ○ https://play.golang.org/p/BtEqaBQWIR ○ strings.FieldsFuncもある 8
9.
5.bytes パッケージ ■ stringsパッケージの[]byte版 ●
stringsにあるものはだいたいある ● bytes.Readerが便利 ○ []byteをio.Readerに変換できる ● bytes.Bufferが便利 ○ io.Readerとio.Writerを実装している ○ ゼロ値で使える ○ https://play.golang.org/p/w2BtSCUg1w 9
10.
6.bufio パッケージ ■ バッファリングされたIO機能を提供 ●
bufio.Scannerが便利 ○ https://play.golang.org/p/34k4uJBIm3 ○ 1行ずつ読み込むのに重宝する ● bufio.SplitFuncでカスタマイズ ○ https://play.golang.org/p/OXtPVl4kae 10
11.
7.encoding/binary パッケージ ■ バイナリエンコードの処理を提供する ●
構造体とバイト列をマッピングできる ○ https://play.golang.org/p/o48Yv7hk-h ● Go1.9でmath/bitsが入る ○ ビット演算系の便利関数 ○ http://tip.golang.org/pkg/math/bits/ 11
12.
8.x/text パッケージ ■ テキスト処理などを提供する ●
日本語の文字コードに対応 ○ https://golang.org/x/text/encoding/japanese ○ EUCJP, ISO2022JP, ShiftJIS に対応 ● 多言語化の機能を提供 ○ https://godoc.org/golang.org/x/text/language ○ https://godoc.org/golang.org/x/text/currency ● tranform.Transformerが便利 ○ ストリームのまま変換できる ○ https://godoc.org/github.com/tenntenn/text/transf orm 12
13.
9.flag パッケージ ■ コマンドライン引数に関する機能を提供 ●
オプションパースが便利 ● flag.Argsでオプション以外の引数が取れる ● ポインタを使ったいい例 ○ https://golang.org/pkg/flag/ 13
14.
10.path/filepath パッケージ ■ ファイルパスに関係する処理を提供する ●
¥や/を意識しないでいい ○ https://play.golang.org/p/MtybjFBVza ○ Windowsでもちゃんと動く ● OS関係ない場合はpathを使う ● filepath.Walkが便利 ○ 再帰的にディレクトリを読んでいく ○ 1階層だけならioutil.ReadDirが便利 14
15.
11.text/template パッケージ ■ テンプレート機能を提供 ●
html/templateはHTML特化版 ● コマンドライン引数に使うと便利 ○ https://dave.cheney.net/2014/09/14/go-list-your-s wiss-army-knife ● コードジェネレーションにも便利 ○ go testでも使われている ○ https://github.com/golang/go/blob/master/src/cmd /go/internal/test/test.go#L1500 15
16.
12.testing パッケージ ■ テスティングライブラリ ●
go testでユニットテストが実行できる ● Go1.7からサブテストが可能 ○ https://blog.golang.org/subtests ● テストを並列で実行可能 ○ t.Paralellを使う ● race detectorが使える ○ Goルーチン間で同じ変数にアクセスしてないか ● カバレッジがとれる ○ -coverをつけて実行 16
17.
13.net/http パッケージ ■ HTTPサーバ/クライアントを提供する ●
http.Handlerを実装すればよい ● インタフェース実装の良い例 ○ http.HandlerFuncは関数に実装させている ○ インタフェースの実装パターン ● 重量なWebフレームワークは必要ない ○ ルーティングくらい ○ 学習しやすい ● テストしやすい 17
18.
14.net/http/httptest パッケージ ■ HTTPサーバのテストで使える機能を提供 ●
http.ResponseWriterがインタフェース である利点を活かしている ○ https://golang.org/pkg/net/http/httptest/#Respons eRecorder ● ハンドラのテストが用意 ● httpdocも便利 ○ https://github.com/mercari/go-httpdoc 18
19.
15.sync パッケージ ■ ロックなどの機能を提供 ●
sync.WaitGroupが便利 ○ https://golang.org/pkg/sync/#example_WaitGroup ○ 複数のGoルーチンの処理を待つことができる ● sync.Onceが便利 ○ https://golang.org/pkg/sync/#example_Once ○ 1回だけ実行したい場合に使える 19
20.
16.context パッケージ ■ コンテキスト機能を提供する ●
複数のGoルーチンをまたいだキャンセル機 能などに使える ○ Go1.7のcontextパッケージ ● context.Contextが強力 ○ インタフェースなので拡張しやすい ● errgroupパッケージも便利 ○ https://godoc.org/golang.org/x/sync/errgroup 20
21.
17.image パッケージ ■画像処理を提供するパッケージ ● image.Imageがインタフェース ○
実装すればなんでも画像となる ● pngやjpeg、gifなどに対応している ● 基本的な機能は提供されている 21
22.
18.x/image パッケージ ■画像処理を提供するパッケージ ● 標準パッケージではたりない機能を提供 ●
いろんな形式に対応している ○ https://godoc.org/golang.org/x/image ● x/image/drawが便利 ○ 描画に関する機能を提供している ○ https://godoc.org/golang.org/x/image/draw ● フォントに関する機能も提供している ○ https://godoc.org/golang.org/x/image/font 22
23.
19.reflect パッケージ ■ リフレクションの機能を提供する ●
https://www.slideshare.net/takuyaueda96 7/2016-go#101 ● structタグにアクセスする唯一の方法 ● 使い所を間違えなければかなり便利 ● 遅いので乱用はいけない ● ちゃんとチェックしてパニックを起こさないよう にする 23
24.
20.go パッケージ ■ 静的解析の機能を提供する ●
goパッケージで簡単に静的解析して世界を 広げよう ● 抽象構文木が取得できる ● 式単位でもパースできる ● 型チェックもできる ● 自作開発ツールも作れる ● 物によっては製品に使える 24
25.
まとめ ■ Goはたくさんのパッケージを提供している ● https://www.slideshare.net/takuyaueda96 7/2016-go#101 ●
色々使ってみると楽しい ● 実装自体も勉強になる ● goやreflectパッケージも食わず嫌いは良 くない 25
26.
Thank you! twitter: @tenntenn Qiita:
tenntenn connpass: tenntenn 26
Download now