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

動くコード図鑑

$ ls -1 /library | wc -l → 619

触って動く、検証済みの正解集。

公開記事から抽出した全コードブロックを 1 つずつページ化。 ▶ ボタンで 実行ログを再生し、 さも今動いてるかのように出力を流す。

この図鑑の使い方

言語で絞る

C# / SQL / TypeScript / PowerShell / Bash でフィルタ。

▶ で実行

事前収録の出力を 1 行ずつ再生。 ぱっと結果が見える。

記事と接続

各 snippet は出典記事へのリンク付き。 文脈ごと読める。

絞り込み

snippet 一覧

151
C#
    class Program
    {
        static void Main(string[] args)
        {

▶ 実行可

一時変数ありの場合

C#で変数の入れ替えをタプルでやってみた#b72acd62a946
C#
   class Program
    {
        static void Main(string[] args)
        {

▶ 実行可

一時変数ありの場合

C#で変数の入れ替えをタプルでやってみた#6f6208fdaa83
C#
    class Program
    {
        static void Main(string[] args)
        {

▶ 実行可

タプルでやってみた場合

C#で変数の入れ替えをタプルでやってみた#20be75b170a6
C#
    class Program
    {
        static void Main(string[] args)
        {
            var user = (1, "Taro", "Japan");
▶ 実行可

タプルを使ってみた。

C#で変数の入れ替えをタプルでやってみた#5f5e9fa3ebab
C#
    class Program
    {
        static void Main(string[] args)
        {
            var userList = new List<(int No,string Name,string address)>();
▶ 実行可

配列やリストを作ることもできる。

C#で変数の入れ替えをタプルでやってみた#eed089d96c0b
C#
    class Program
    {
        static void Main(string[] args)
        {
            var nums = (1,2);
▶ 実行可

引数にもできる。

C#で変数の入れ替えをタプルでやってみた#eb66ff26b2d7
C#
    class Program
    {
        static void Main(string[] args)
        {
            var nums = (10,3);
▶ 実行可

戻り値にも使える。

C#で変数の入れ替えをタプルでやってみた#c39cb6e992d5
C#
   class Program
    {
        static void Main(string[] args)
        {

▶ 実行可

タプルのネストも可能

C#で変数の入れ替えをタプルでやってみた#7c35180b3626
C#
namespace ConsoleApplication2
{
    class Program
    {

▶ 実行可

デリゲート型を宣言していくパターン

C#のデリゲートまとめ!型とFuncとActionと!#82fa2d1cc2a1
C#
namespace ConsoleApplication2
{
    class Program
    {

▶ 実行可

Func<>で同じことをやってみる。

C#のデリゲートまとめ!型とFuncとActionと!#48a78219b48c
C#
namespace ConsoleApplication2
{
    class Program
    {

▶ 実行可

Action<>で同じことをやってみる。

C#のデリゲートまとめ!型とFuncとActionと!#822e883e6ddf
C#
            var items = new int[]{1,2,3,5,8,9,7,10,66,78,99,100};

            var extractionItems = items.Where(item => item % 3 == 0);

            foreach (var item in extractionItems)
▶ 実行可

var items = new int[]{1,2,3,5,8,9,7,10,66,78,99,100};

C#でLinqの結果でNull回避したい場合の処理!#9f085fe201b0
C#
        static void Main(string[] args)
        {
            var items = new int[]{1,2,3,5,8,9,7,10,66,78,99,100};

            var extractionItems = items.Where(item => item % 10000 == 0);
▶ 実行可

static void Main(string[] args)

C#でLinqの結果でNull回避したい場合の処理!#9e298d8db799
C#
        static void Main(string[] args)
        {
            var items = new int[]{1,2,3,5,8,9,7,10,66,78,99,100};

            var extractionItems = items.Where(item => item % 10000 == 0);
▶ 実行可

static void Main(string[] args)

C#でLinqの結果でNull回避したい場合の処理!#0e707259adbd
C#
    class Program
    {
        static void Main(string[] args)
        {
            var items = new int[]{1,2,3,5,8,9,7,10,66,78,99,100};
▶ 実行可

C#でLinqを使って結果Nullを回避する。

C#でLinqの結果でNull回避したい場合の処理!#2920c9484983
C#
namespace CallBackNDelegate
{
    class Program
    {
        static void Main(string[] args)
▶ 実行可

C#でのコールバックとは何?

C#のコールバックとデリゲートの違いはなんなのか!#b27a099f25d2
C#
    class Program
    {
        static void Main(string[] args)
        {
            Say2(GetHello);
▶ 実行可

C#でのコールバックとは何?

C#のコールバックとデリゲートの違いはなんなのか!#9ce9d42aea40
C#
    public static class Delegate
    {
        public delegate string GetHelloDelegate(string str);    public delegate void SayHelloDelegate();

    public static void Say()
▶ 実行可

C#でのデリゲートとは?

C#のコールバックとデリゲートの違いはなんなのか!#bf1bdb003cf1
C#
// Action:戻り値なし
Action<int> log = n => Console.WriteLine($"value={n}");
log(42);

// Func:戻り値あり(最後の型引数が戻り値)
▶ 実行可

② Action / Func(標準ジェネリックデリゲート)

C# のコールバック・デリゲート・イベントの違いを業務SEが30分で腹落ちさせる#be40399f77a4
C#
// 1行ラムダ
Func<int, int> square = x => x * x;

//複数行ラムダ
Action<List<string>> print = list =>
▶ 実行可

③ラムダ式・匿名メソッド

C# のコールバック・デリゲート・イベントの違いを業務SEが30分で腹落ちさせる#c9dabbaae3dc
C#
//イベントを生やすクラス側
public class FileWatcher
{
    public event Action<string> FileChanged;   // ←デリゲート型+ eventキーワード

▶ 実行可

+= / -=の正体

C# のコールバック・デリゲート・イベントの違いを業務SEが30分で腹落ちさせる#b5d4dfa3116b
C#
//標準形
public event EventHandler<MyEventArgs> ItemSelected;

//発火
ItemSelected?.Invoke(this, new MyEventArgs(selectedId));
▶ 実行可

EventHandler系の慣習

C# のコールバック・デリゲート・イベントの違いを業務SEが30分で腹落ちさせる#3707bc4ea319
C#
        static void Main(string[] args)
        {
            var plane = new Plane();
            var car = plane as ICar;

▶ 実行可

Interfaceを継承しているかの判断

【C#】Interfaceを継承しているかを判断しついでにコンバートしてみる#410a80545d69
C#
        static void Main(string[] args)
        {
            IVehicle plane = new Plane();
            var car = plane as ICar;

▶ 実行可

InterfaceからInterfaceの継承チェックもできる。

【C#】Interfaceを継承しているかを判断しついでにコンバートしてみる#798be77e4d3a
C#
        static void Main(string[] args)
        {
            IVehicle subaru = new Subaru();
            var car = subaru as ICar;

▶ 実行可

InterfaceからInterfaceの継承チェックもできる。

【C#】Interfaceを継承しているかを判断しついでにコンバートしてみる#d2480278713e
C#
        static void Main(string[] args)
        {
            IVehicle subaru = new Subaru();

        if (subaru is ICar car)
▶ 実行可

Interfaceを継承していたらコンバートする

【C#】Interfaceを継承しているかを判断しついでにコンバートしてみる#2ec7ce5942d1
C#
        static void Main(string[] args)
        {
            IVehicle plane = new Plane();

        if (plane is ICar car)
▶ 実行可

Interfaceを継承していたらコンバートする

【C#】Interfaceを継承しているかを判断しついでにコンバートしてみる#1e6b84fd6356
C#
// ✅定石3: IEnumerable<T>と遅延評価
public IEnumerable<CustomerVm> GetActiveCustomers()
{
    return _db.Customers
        .Where(c => c.Status == "active")
▶ 実行可

定石3: IEnumerable<T> —遅延評価・LINQの基本型

C# のコレクション選び — 配列 / List / IEnumerable / IList の使い分け完全ガイド#492870f19ead
C#
// ✅定石3:メモリ・実行時間の実測比較
const string sql = "SELECT id, name, memo, amount, created_at FROM big_log";

// --- DataAdapter版---
GC.Collect(); GC.WaitForPendingFinalizers();
▶ 実行可

定石3:メモリ消費の実測比較— Stopwatch + GC.GetTotalMemory

C# DataReader vs DataAdapter — メモリ消費と性能の使い分け(業務SE 判断軸)#8e4ad96d6711
C#
//価格1000以上、かつ"在庫あり"のフラグが立ってる行を抽出
var filtered = dt.AsEnumerable()
    .Where(r => r.Field<int>("price")>= 1000
             && r.Field<bool>("in_stock"));

▶ 実行可

パターン1:フィルタ(Where)

C# DataTable を LINQ でフィルタ・GroupBy・分割する3パターン#4d40bef0f3f9