いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

2022-07-01から1ヶ月間の記事一覧

Goメモ-229 (マップはスレッドセーフではない)

概要 サンプル Taskfile.yml Mutexでクリティカルセクションを作っているサンプル 参考情報 概要 少し前に以下のメモをアップしました。 devlights.hatenablog.com 上記ではスライスでしたが、マップも同様です。 こちらはスライスとは違って、ちょっとでも…

Goメモ-228 (効率的に文字列を結合する)(Go Collective)

概要 サンプル main.go Taskfile.yml bench_test.go 参考情報 概要 Stackoverflowには Go Collective というのがあります。 stackoverflow.com The official Q&A channel for Google's Go Programming Language. と書いてある通り、公式のQ&Aとなっていて、…

Goメモ-227 (URLクエリからパラメータを取得)(Go Collective)

概要 サンプル main.go Taskfile.yml 参考情報 概要 Stackoverflowには Go Collective というのがあります。 stackoverflow.com The official Q&A channel for Google's Go Programming Language. と書いてある通り、公式のQ&Aとなっていて、いい質問と回答…

Goメモ-226 (http.ListenAndServeで起動したサーバをシャットダウンする)

概要 サンプル main.go Taskfile.yml 参考情報 概要 よく忘れるので、以下にメモメモ。。。 そのまま http.ListenAndServe で起動すると当然駄目なので、http.Server を作って起動します。 サンプル main.go package main import ( "context" "log" "net/htt…

マイクロソフトがソフトウェアの部品表(SBOM)を自動生成するツールを公開 (sbom-tool)

概要 概要 Publickeyさんの方で以下の記事が上がっていたので、忘れないうちにメモメモ。。。 今後、使うことになるかもしれないので。 www.publickey1.jp devblogs.microsoft.com ツールは以下で公開されています。 github.com SBOM と SPDXって何?って場…

Goメモ-225 (ジェネリックなビットフラグ処理)

概要 サンプル 参考情報 概要 以前にビットフラグについて、以下のような記事をアップしました。 devlights.hatenablog.com Go 1.18 からジェネリックが導入されたので、このような処理が汎用的に書けるようになりました。 てことで、ちょっとしたサンプルで…

Goメモ-224 (スライスはスレッドセーフではない)

概要 サンプル Taskfile.yml データ競合が発生する版 データ競合が発生しないようにする(1) データ競合が発生しないようにする(2) データ競合が発生しないようにする(3) 参考情報 概要 Goは、非同期処理が比較的簡単に書けるので、ちょちょいと書い…

Goメモ-223 (bufio.Scanner で カスタムな bufio.SplitFunc を利用するやり方)

概要 サンプル 参考情報 概要 使うことはほぼ無いかもしれませんが、知ってるとちょっと便利かもしれません。 bufio.Scanner さん に対して、独自のデリミタでSplitしてほしい場合、bufio.SplitFunc を作って渡します。 このやり方がちょっと難しかったので…

Goメモ-222 (Goが対応している GOOS/GOARCH の組み合わせを出力)

概要 サンプル Taskfile.yml 参考情報 概要 よく忘れるので、忘れないうちにメモメモ。。 Goでクロスコンパイルするときに、GOOSとGOARCHを設定する必要がありますが、それの一覧を出力するやり方。 Goの標準コマンドで出力できます。 $ go tool dist list …

Pythonメモ-121 (mypy の 使い方ガイド, The Comprehensive Guide to mypy)

概要 参考資料 概要 久しぶりに python をコマンドラインでガチャガチャやっていると、mypyとかtype hintとかについて忘れていること多いのでガイドみたいなのないかなーって探したら以下を発見。忘れないうちにメモメモ。。。 sadh.life 基本からしっかりと…

gitpod-io/template-flutter を使って gitpod で flutter の環境を作る

概要 apt-get でコケる 調整後の .gitpod.yml と .gitpod.Dockerfile .gitpod.yml .gitpod.Dockerfile 起動したイメージ サンプルリポジトリ 概要 バッチリ動く環境が作れたので、忘れないうちにメモメモ。。。 以前、gitpod で flutter の環境を作るって以…

git difftool で1ファイルずつじゃなくてまとめて差分を確認する (-d, --dir-diff)

git

概要 -d (--dir-diff) オプションを指定 参考情報 概要 知らなかったので、忘れないうちにメモメモ。。。 以前の記事で以下のように WinMerge とか Beyond Compare を設定するやり方は記載していました。 (今はVSCodeとかがデフォルトで設定されるので、その…

Javaでディレクトリを再帰的に削除するやり方 (Path, Directory, recursive delete)

概要 サンプル 参考情報 概要 いつも使いたいときに忘れているので、ここにメモメモ。。。 commons-ioのFileUtils使えって言われればそうなのですが、自力でやらないといけないときもあります。 C#とかだと、Directory.Delete(path, true) ってやるとバサー…

Goメモ-221 (構造体のタグ情報(Struct Tag)を取得)

概要 サンプル 参考情報 概要 Go には構造体のフィールドにタグをつけることができます。一種のメタ情報ですね。 jsonやxmlやyamlを処理する際によくお世話になる `json:"id"` とかのやつです。 基本的に利用するライブラリが定義しているタグを指定して使う…

gocloc (Goで作られた cloc クローン)

概要 サンプル 参考情報 概要 Goで作られた cloc クローン。使いやすいですねー。作者さんに感謝です。 github.com サンプル 試しに、自分のリポジトリ でやってみたら、以下のように出力されました。 gitpod /workspace/try-golang (master) $ go run githu…

vim 9.0 がリリース

vim

概要 参考情報 概要 いつのまにか、vim 9.0 がリリースされていた。 vimスクリプトに大きな改善が入って、速度がとても上がったみたいですね。 まだ、使えてないですが、後から調べられるよう情報メモメモ。。。 Vim 9.0 : vim online Vim: version9.txt vim…

vim 直近の検索パターンを使って置換処理

vim

概要 参考情報 概要 よく忘れるのでここにメモメモ。。。 先日の以下の記事と同じテクニックになるのですが devlights.hatenablog.com 一旦検索した後に、同じ検索パターンで置換したい場合が結構あったります。 以下のようにすると、直近の検索パターンを使…

iOS Safari で window.innerWidthとinnerHeight が微妙にずれる (縦横の向きを切り替えたとき)

web

概要 参考情報 概要 忘れないうちにメモメモ。。。 現在、使っているのは iOS 15.5 です。 Web画面作っていて、端末の向きを縦横変更した際に何故か window.innerWidth と window.innerHeight が微妙にずれた値になる・・・という現象が発生していました。 S…

Goメモ-220 (標準ライブラリのpluginパッケージで簡易プラグイン処理)

概要 サンプル lib/pkg/strs/upper.go lib/lib.go main.go Taskfile.yml ビルドしてみる 参考情報 概要 知っていると少し便利かもしれないTipsです。 Goには標準ライブラリで plugin というパッケージが用意されていて、シンプルにプラグイン処理が出来ます…

vimで同じパターンを使って前方検索と後方検索を切り替え

vim

概要 参考情報 概要 よく忘れるのでここにメモメモ。。。 たまーに使いたくなるレベルの機能なのですが、しっているとちょっと便利かもしれません。 vimの検索では n で検索モードに対しての前方、 N で検索モードに対しての後方に検索箇所にジャンプしてく…