ぷらすのブログ

Category 開発

Gradle にしっかり入門する

1 章 はじめに

こんにちは、@p1assです。

最近、Gradle を使ったプロジェクトを 1 から構築することがありました。 以前から Gradle を使ったことはあったのですが、ほとんど雰囲気で触っていたため、いざ諸々をセットアップしようとすると戸惑ってしまうことが多々ありました。そのため、改めて Gradle について学んだほうが良かろうということになりました。

この記事では、改めて Gradle を学んだ際に自分のためにまとめたドキュメントを再編集して公開します。

続きを読む

二項演算子のASTを参考にした動的なフィルターのデータ構造

この記事はDeNA 21 新卒 ×22 新卒内定者 Advent Calendar 2021の 1 日目の記事です。

こんにちは、@p1assです。

いよいよDeNA 21 新卒 ×22 新卒内定者 Advent Calendar 2021が始まります 🙌
今年は新卒と内定者によるこの Advent Calendar と DeNA のエンジニアが担当するDeNA Advent Calendar 2021の 2 種類があるので、どちらもぜひチェックしてください! (執筆時点では新卒 Advent Calendar はまだ埋めてないですがこれから埋まっていくはず...!)

続きを読む

ドキュメントの運用を考えてみたが正解が分からない

ドキュメント運用について考える機会があったので、そのとき考えてたことをダンプしてみる。 実際に運用しているわけではないので机上の空論だが、文字に起こしてみることで何か得られないかと思いやってみる。

続きを読む

他言語を書いているエンジニアがJavaをざっくりキャッチアップする

こんにちは、@p1ass です。

この記事は、他のプログラミング言語は書いているが Java はそんなに書いていない/忘れた私が Java をキャッチアップするために得た知識をまとめたものです。 ある程度他の言語を書いている人であれば文法周りは困らないと思うので、エコシステム周りを重点的に書いています。

続きを読む

今までにGoでよく聞かれた質問とその参考リンク

こんにちは、@p1assです。

最近研修で Go を書いていて、その際にいくつか質問をされるのですが、聞いてみると前にも答えたような質問が多かったので、これを機にブログに参考リンクをまとめようと思います。 質問された際にすぐ答えられない質問も数多くあり、調べたり教えてもらったりすることで様々なことを再発見できました。

この記事では、質問に対する回答をできるだけ公式に近い文章を引用する形で書き記します。私個人の考えは別の段落になるようにして、事実と意見を区別するように心がけています。

なにか誤りを見つけた際は GitHub で PR を投げていただけると助かります。

続きを読む

CaddyでgRPCのリクエストをリバースプロキシする

こんにちは @p1ass です。

Caddy はデフォルトで HTTPS・HTTP/2 に対応している OSS の Web サーバです。 デフォルトで HTTP/2 に対応しているということは gRPC のリクエストもリバースプロキシできるのでは?と思い調べていたのですが、日本語でまとまってる記事がなかったのでここにメモしておきます。

続きを読む

Caddyfileを分割する方法

こんにちは @p1ass です。

Caddyfile は Caddy の設定ファイルですが、どんどん設定が増えていくと可読性が下がってしまいます。

Nginx の /site-enabled のように Caddyfile を分割して読み込めないかなと思って調べたところ、分割できることが分かったのでやり方をメモしておきます。

続きを読む

複数のRSSや任意の情報をまとめて1つのRSSやJSONを生成するライブラリを作成した

こんにちは @p1ass です。

皆さん RSS 使ってますか?RSS を使えば簡単にブログの更新を受け取れたりして便利ですよね。

でも、流れてくる情報多くて辛かったり、RSS に対応していないサイトの情報を受け取りたかったりすることがたまにありませんか?

そんな悩みを解決するための Go のライブラリを 1 年前に作ったのですが、ブログに書く機会を逃していたので、今更ですが紹介記事を書きます。

発表スライドはこちらです。

続きを読む

Goのよくあるミスを発見する静的解析ツールを作った話

こんにちは @p1ass です。 Go のよくある間違いとして、ループのイテレーター変数の参照をループの中で使ってしまうという間違いがあります。 イテレーター変数のアドレスは 1 イテレーションごとに変わらないので、その参照をそのまま配列に append すると配列の結果が全て同じ値になるといったことが発生してしまいます。この問題はよくある間違いとして Go の wiki にも取り上げています。しかし、現状では公式でこの間違いを検出する静的解析ツールは用意されていません。

そこで、僕はメルカリのインターンで、イテレーター変数の参照をループ内で使っている箇所を検出する静的解析ツールを作成したのでそれを紹介したいと思います。

続きを読む

はてなブログからHugoに移行にして1年が経った

こんにちは、@p1assです。

ブログをはてなブログから移行して一年経ったので、色々感想や分かったことを書いていこうと思います。

続きを読む
2