Future Tech Blog
フューチャー開発者ブログ

Tagged: Go

Go の Open API 3.0 のジェネレータ oapi-codegen を試してみた

go-swagger は Swagger 2.0 にのみ対応しており、OpenAPI 3.0 系が使えない問題がありました。最新に追従していく上でも Open API 3.0 系に寄せていきたいと考えていたので、なにか使えるツールはないか探したところ、以下を見つけました。 https://github.com/deepmap/oapi-codegen 使えるかどうか実際に動かして試してみます。
Read more

go-swaggerを用いたWebアプリケーション開発Tips19選

業務でヘビーユーズしているgo-swaggerについての開発Tipsをまとめました。
Read more

春の入門祭り🌸 #8 人生を豊かにする文字列diff入門

文字列の新旧の違いを表現する時によくdiffをとるとか言いますよね。そこで実行されるのが差分アルゴリズムです。差分のアルゴリズムって結構知れば知るほど難しいやつです。「より良い差分」という基準が、状況によって変わるからです。ヒューリスティックなやつです。例えば、HTMLの説明の文章を書いていたとします。タイトルをテーブルに書き換えてみたとします。
Read more

春の入門祭り🌸 #7 作って学ぶGraphQL。gqlgenを用いて鉄道データ検索API開発入門

フューチャーではGraphQLの活用事例はまだ少なく、自分はまだお目にかかったことはないです。しかし、HeadlessCMS界隈を初めGraphQLのAPIを提供するサービスが増えてきました。今後もさらに需要が増えてきそうな予感がしたためGoとGraphQLを春の入門祭りのテーマにしました。学習する上でドキュメントを読み込むだけでは忘れがちです。手を動かしながらタイトルにある鉄道データ検索APIを開発していきましょう
Read more

春の入門祭り 🌸 #01 Goのテストに入門してみよう!

Go のテストに入門してみよう!という記事です。書いた背景ですが Go の標準ライブラリのコードリーディング会で testing パッケージにチャレンジしてみましたが、難しすぎてわからん。そもそも Go のテストって何ができるんだっけ?という話になり、基本的な内容をなるべく具体例をまじえながらまとめました。
Read more

あなたのGoアプリ/ライブラリのパッケージ構成もっとシンプルでよくない?

Goでプロジェクトのフォルダ構成どうしよう、とググると見つかるStandard Go Project Layout(https://github.com/golang-standards/project-layout)。とはいえ、これはかなりコード量を増やしてしまう恐れがありますので、導入する場合のデメリットも考えておく方が良いです。
Read more

Go Tips連載8: logパッケージでログ出力している場所の情報を出す

Go tipsということで、シンプルネタを投稿します。 検索窓に入れると「printデバッグでいつまで消耗しているの?」とか「printデバッグにさようなら」とかサジェストされつつも、根強く生き残っているのがprintデバッグです。むしろ、非同期だったり並列処理が増えてくると、同期的に動くデバッガーが逆に使いにくかったりもありますし、デバッガーを使うにしてもブレークポイントを仕掛ける場所のあたりをつけるためにprintデバッグの力を借りたりもあるし、いっそのことprintデバッグの方が進化しろ、と個人的には思っています。
Read more

新米エンジニアが1か月のトラブルシューティングで学んだこと

今回は、アルバイト業務でシステム開発するにあたり、ProxyやDNSなどのネットワーク周りで一か月強も溶かしてしまったので、その過程で学んだトラブルとの向き合い方についてまとめます。
Read more

Go Tips 連載7:【golangci-lint】lint issueを新たに作り出さないためのTips

今回はgolangci-lintを取り上げます。Goのコード品質のベースラインを上げる目的でgolngci-lintというlintアグリゲーターを利用されているかたも多いかと思います。コードベースがlint issueのないクリーンな状態に保たれていることが望ましいのですが、必ずしもそういった状態を維持できるとはかぎりません。
Read more

Go Tips連載6: Error wrappingされた各クラウドSDKの独自型エラーを扱う

フューチャー社内には「Go相談室」というチャットルームがあり、そこでGoに関連する疑問を投げたら、大体1日くらいで強い人が解決してくれるという神対応が行われています。そこでAWSやGCPの独自エラーをError warppingされた時にどうやってハンドリングすればよいの?と聞いた時にやり取りした内容をまとめました。
Read more