動くコード図鑑技術記事現場の渡り方キャリア論すべての記事About

みんなの現場、全部ここに。

図鑑・記事・現場メモ・キャリア論。タブで部屋を切り替えて読める。

C# のボックス化・ボックス化解除とは何か、大量処理で効いてくる理由
技術記事boxingC#

C# のボックス化・ボックス化解除とは何か、大量処理で効いてくる理由

C# ボックス化 とは何かを、値型と参照型のメモリの動きから解説。ArrayList や object 引数が大量ループで遅くなる正体(無意識のボックス化と GC 圧)と、List・ジェネリックで避ける書き換え3つを、コピペで動くコードで整理します。

4ヶ月前12 min
もっと読む
SQL Server の JOIN 完全ガイド — INNER / LEFT / RIGHT / FULL / CROSS を業務SEが件数で腹落ちさせる
技術記事INNER JOINJOIN

SQL Server の JOIN 完全ガイド — INNER / LEFT / RIGHT / FULL / CROSS を業務SEが件数で腹落ちさせる

SQL Server JOIN 種類(INNER / LEFT / RIGHT / FULL / CROSS)の違いを、同じデータで結果件数がどう変わるかで腹落ちさせる完全ガイド。LEFT JOIN したのに WHERE で右列を条件にして実質 INNER になる罠、結合キーの NULL が一致しない罠も実例で解説しま

4ヶ月前10 min
もっと読む
C# のジェネリクス経験者が TypeScript のジェネリクスで詰まる5つの違い(制約・型推論・共変性)
技術記事C#TypeScript

C# のジェネリクス経験者が TypeScript のジェネリクスで詰まる5つの違い(制約・型推論・共変性)

C# のジェネリクス (List / where T : / out T) の感覚で TypeScript を書くと詰まる5つの違いを、C# 出身の業務SE向けに整理。コレクション型の対応、extends 制約が構造的型付けで緩いこと、new() 制約や共変性が別物なこと、型引数が推論で消えることを実コードで。

4ヶ月前11 min
もっと読む
C# の yield return で大量データを遅延評価で返す(メモリを食わないイテレータ)
技術記事C#IEnumerable

C# の yield return で大量データを遅延評価で返す(メモリを食わないイテレータ)

C# の yield return の使い方を、大量データを List に全部詰めずに1件ずつ遅延評価で返す仕組みから解説。遅延評価ゆえに DB 接続を開いたまま回すと閉じるタイミングがずれる落とし穴、ToList() での使い分けまで、コピペで動くコード付きです。

4ヶ月前8 min
もっと読む
SQL Server の MERGE で UPSERT する時に業務SEがハマる3つの罠(同時実行・HOLDLOCK・削除誤爆)
技術記事HOLDLOCKMERGE

SQL Server の MERGE で UPSERT する時に業務SEがハマる3つの罠(同時実行・HOLDLOCK・削除誤爆)

SQL Server の MERGE で UPSERT する時に業務SEが踏む3つの罠 — 同時実行での一意キー違反(HOLDLOCK 不足)、WHEN NOT MATCHED BY SOURCE の削除誤爆、source の重複キーで出る Msg 8672 を、Docker 実機で再現しながら回避策まで。

4ヶ月前12 min
もっと読む
SQL Server の TRY_CONVERT / TRY_CAST で変換失敗を NULL にしてバッチを止めない
技術記事SQL ServerTRY_CAST

SQL Server の TRY_CONVERT / TRY_CAST で変換失敗を NULL にしてバッチを止めない

SQL Server の TRY_CONVERT / TRY_CAST で、変換できない値を例外ではなく NULL にしてバッチを止めない方法を実テーブルで解説。CAST は失敗でステートメント全体が落ちる違い、2012以降の制約、NULL の後続処理など業務SEが踏む落とし穴を5つ。

4ヶ月前13 min
もっと読む
SQL Server の窓関数 LAG / LEAD / 累計 (SUM OVER) を業務帳票で使う3パターン
技術記事LAGSQL Server

SQL Server の窓関数 LAG / LEAD / 累計 (SUM OVER) を業務帳票で使う3パターン

SQL Server の窓関数を業務帳票で使う3パターンを、OVER 句の考え方から積み上げて解説。LAG で前月比、SUM() OVER で累計、LEAD で翌月比較。カーソルや自己結合で書いていた前月比・累計を窓関数一本で。ROWS BETWEEN を省くと累計がずれる落とし穴も。

4ヶ月前12 min
もっと読む
C# の IDisposable を正しく実装する(Dispose パターンと using / ファイナライザ)
技術記事C#Dispose

C# の IDisposable を正しく実装する(Dispose パターンと using / ファイナライザ)

C# の IDisposable を実装する Dispose パターンを、単純版・Dispose(bool) 版・using との関係で整理。マネージドだけなら単純版で足りる落としどころと、ファイナライザ / GC.SuppressFinalize でハマる点を業務SE視点でコード付き解説。

4ヶ月前18 min
もっと読む
PowerShell で退職者の AD アカウントを棚卸しして自動 disable する(情シス1人運用)
技術記事Active DirectoryDisable-ADAccount

PowerShell で退職者の AD アカウントを棚卸しして自動 disable する(情シス1人運用)

PowerShell で Active Directory の退職者・休眠アカウントを棚卸しして無効化する手順を、情シス1人運用の業務SE向けに。lastLogonTimestamp の複製遅延で現役社員を誤って止める事故を避ける、CSV 洗い出し→確認→猶予→Disable の3段安全設計をコピペで動くスクリプト付き

4ヶ月前15 min
もっと読む
PowerShell の Import-Csv / Export-Csv で業務SEが踏む5つの罠 — 文字コード・区切り・型・改行・BOM
技術記事Export-CsvImport-Csv

PowerShell の Import-Csv / Export-Csv で業務SEが踏む5つの罠 — 文字コード・区切り・型・改行・BOM

PowerShell CSV 読み込みで業務SEが踏む5つの罠を実体験ベースで。Import-Csv / Export-Csv の文字コード(Shift_JIS / UTF-8 BOM)、#TYPE 行、全カラム文字列化、区切り文字を、対処目安つきでコピペできる形にまとめました。PowerShell 5.1 と 7 の

4ヶ月前10 min
もっと読む
C# の delegate / Action / Func を TypeScript の関数型に翻訳する(型推論の違いで詰まらない)
技術記事C#delegate

C# の delegate / Action / Func を TypeScript の関数型に翻訳する(型推論の違いで詰まらない)

C# の delegate / Action / Func を TypeScript の関数型 ((x: T) => U) に翻訳する対応表を、C# 出身の業務SE向けに。TypeScript の関数型は Func とほぼ同じに見えて、引数の型推論・void 戻りの扱い・ジェネリック関数で C# と挙動が違う。詰まる箇

4ヶ月前13 min
もっと読む
WinForms の入力チェックを ErrorProvider でスマートに — Validating と e.Cancel の落とし穴
技術記事C#ErrorProvider

WinForms の入力チェックを ErrorProvider でスマートに — Validating と e.Cancel の落とし穴

WinForms の入力チェックを ErrorProvider と Validating イベントでスマートにする方法を解説。入力欄の横に赤アイコンとツールチップでエラーを出す実装から、e.Cancel=true でフォーカスが抜けられなくなる「閉じるボタンも押せない」詰み、ValidateChildren での一括検

4ヶ月前14 min
もっと読む