@lifehacker

スポンサーリンク
JavaScript

JavaScript Tips | 配列ユーティリティ:表データ生成

テーマの整理:「表データ生成」とは何かここで扱う「表データ生成」は、配列から「表として扱いやすい形」を作るためのユーティリティです。 業務だと、次のような場面でよく出てきます。画面に一覧テーブルを表示...
JavaScript

JavaScript Tips | 配列ユーティリティ:Excel 行変換

テーマの整理:「Excel 行変換」とは何かここで扱うのは、「JavaScript の配列(オブジェクト配列)を、Excel の“行”として扱いやすい形に変換するユーティリティ」です。 業務だと、次の...
JavaScript

JavaScript Tips | 配列ユーティリティ:JSON 変換

テーマの整理:「配列ユーティリティ × JSON 変換」とは何かここで扱うのは、「JavaScript の配列を JSON 文字列に変換する」「JSON 文字列から配列に戻す」ための、業務でそのまま使...
JavaScript

JavaScript Tips | 配列ユーティリティ:CSV 変換

テーマの整理:「配列ユーティリティ × CSV 変換」とは何かここで扱うのは、「JavaScript の配列(オブジェクト配列)を、業務でそのまま使える CSV 文字列に変換するユーティリティ」です。...
JavaScript

JavaScript Tips | 配列ユーティリティ:ログ出力

テーマの整理:「配列ユーティリティ × ログ出力」とは何かここで話したいのは、「配列を扱う処理の動きや結果を、きちんとログに残すための小さなユーティリティ」です。 業務コードでは、配列まわりでバグが起...
JavaScript

JavaScript Tips | 配列ユーティリティ:差分検出

テーマの整理:「差分検出」とは何か「差分検出」は、“前の配列”と“今の配列”を比べて、「何が増えたか」「何が消えたか」「何が変わったか」をはっきりさせるためのテクニックです。 業務だと、次のような場面...
JavaScript

JavaScript Tips | 配列ユーティリティ:配列変更監視

テーマの整理:「配列変更監視」とは何か「配列変更監視」は、配列の中身が変わった瞬間を検知して、何かの処理(再計算・再描画・ログなど)を自動で走らせるための仕組みです。 業務だと、例えば次のような場面で...
JavaScript

JavaScript Tips | 配列ユーティリティ:メモ化配列

テーマの整理:「メモ化配列」とは何か「メモ化配列」は、配列を入力にする処理の結果を“覚えておいて”、同じ入力に対しては再計算せずに結果を返す仕組みです。 さっきの「配列キャッシュ」とほぼ同じ考え方です...
JavaScript

JavaScript Tips | 配列ユーティリティ:配列キャッシュ

テーマの整理:「配列キャッシュ」とは何か「配列キャッシュ」は、一度計算した「配列に対する結果」を覚えておいて、同じ入力に対しては再計算せずに使い回すための仕組みです。 業務だと、こんな場面で欲しくなり...
JavaScript

JavaScript Tips | 配列ユーティリティ:件数制御実行

テーマの整理:「件数制御実行」とは何か「件数制御実行」は、配列の要素に対する非同期処理を「一度に何件まで動かすか」をきちんと制御しながら実行するユーティリティです。 イメージとしては「同時実行数を制限...
JavaScript

JavaScript Tips | 配列ユーティリティ:並列処理

テーマの整理:「並列処理」とは何かここでいう「並列処理」は、配列の要素に対する非同期処理を「同時に複数まとめて動かす」ことです。 順次処理(1 件ずつ)に比べて速く終わりやすい一方で、負荷やレート制限...
Java

Java Tips | I/O・ネットワーク:CSV書き込み

業務で「CSV書き込みユーティリティ」が必要になる理由CSVは、外部ベンダーへのデータ提供、他システムへの連携、ユーザーへのエクスポート、バックアップなど、業務システムの「出口」としてめちゃくちゃよく...
Java

Java Tips | I/O・ネットワーク:CSV読み込み

業務で「CSV読み込みユーティリティ」が必要になる理由CSVは、業務システムで一番よく使われるデータ形式のひとつです。 顧客一覧、売上データ、設定情報、外部ベンダーとの連携ファイル——どれもだいたい ...
Java

Java Tips | I/O・ネットワーク:BOM除去

BOM(Byte Order Mark)とは何か、なぜ業務で「除去」が必要になるのかBOM(Byte Order Mark)は、テキストファイルの先頭に付く 「このファイルは UTF-8 だよ」 とい...
Java

Java Tips | I/O・ネットワーク:文字コード変換

業務で「文字コード変換ユーティリティ」が必要になる場面業務システムでは、UTF-8 だけで世界が完結してくれれば楽ですが、現実はそうはいきません。 古い社内システムが Shift_JIS、外部ベンダー...
Java

Java Tips | I/O・ネットワーク:再帰zip

「再帰zip」ユーティリティが業務で活きる場面再帰zipという言葉が少し硬く聞こえるかもしれませんが、やっていることはシンプルです。 「あるディレクトリを指定したら、その配下のサブディレクトリも含めて...
Java

Java Tips | I/O・ネットワーク:tar対応

業務で「tar対応」ユーティリティが必要になる場面ZIP は Windows 文化、tar は Unix/Linux 文化——そんなイメージがあります。 業務システムでも、サーバーが Linux だっ...
Java

Java Tips | I/O・ネットワーク:zip解凍

なぜ「zip解凍ユーティリティ」が業務で重要になるのかZIP は「複数ファイルをまとめる箱」です。レポート一式、バックアップ、ユーザーへの一括ダウンロードなど、業務システムでは ZIP を受け取って中...
Java

Java Tips | I/O・ネットワーク:zip圧縮

なぜ「zip圧縮ユーティリティ」が業務で強い武器になるのかgzip が「1ファイル専用の圧縮袋」だとしたら、ZIP は「複数ファイルをまとめる箱」です。 業務システムでは、レポート一式、エクスポート結...
Java

Java Tips | I/O・ネットワーク:gzip解凍

なぜ「gzip解凍ユーティリティ」が業務で必須になるのか業務システムでは、ログ、CSV、JSON、バックアップファイルなどを gzip で圧縮して保存・転送することがよくあります。 その結果、「読むと...
Java

Java Tips | I/O・ネットワーク:gzip圧縮

gzip圧縮ユーティリティは何のために必要なのか業務システムでは、ログ、CSV、JSON、バックアップファイルなど「サイズが大きくなりがちなデータ」を扱う場面が多くあります。 そのまま保存するとディス...
Java

Java Tips | I/O・ネットワーク:ストリームコピー

ストリームコピーって何をするユーティリティなのか「ストリームコピー」は、InputStream から OutputStream へバイト列をそのまま流す処理です。 ざっくり言うと「どこかから読んだデー...
Java

Java Tips | I/O・ネットワーク:バイト読み込み

なぜ「バイト読み込み」ユーティリティが業務で必要になるのかテキストファイルだけなら「行単位」「文字列単位」の読み込みで十分ですが、業務システムではそれだけでは足りません。 PDF、画像、ZIP、Exc...
Java

Java Tips | I/O・ネットワーク:行単位読み込み

なぜ「行単位読み込み」ユーティリティが業務で効いてくるのか業務システムで扱うファイルは、CSV、ログ、設定ファイルなど「1行=1レコード」「1行=1メッセージ」という形がとても多いです。 このとき、フ...
Java

Java Tips | I/O・ネットワーク:ファイル書き込み

業務で使える「ファイル書き込みユーティリティ」とは何か業務システムでは、ログ出力、CSVエクスポート、レポート生成、一時ファイルの保存など、「ファイルに書く」場面が必ず出てきます。 そのたびに Fil...
Java

Java Tips | I/O・ネットワーク:ファイル読み込み

業務で使える「ファイル読み込みユーティリティ」とは何か業務システムでは、設定ファイル、CSV、ログ、インポート用データなど、「ファイルを読む」場面が必ず出てきます。 毎回その場で FileInputS...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel見積書作成

Excel見積書作成は「テンプレートに自動で値を流し込み、見積書作成をゼロ秒にする」ための最強スキルあなたのように業務効率化を本気で考える人にとって、 Excel見積書作成の自動化は“ミス防止 × 時...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel請求書作成

Excel請求書作成は「テンプレートに自動で値を流し込み、請求書作成をゼロ秒にする」ための最強スキルExcel請求書作成の自動化は“ミス防止 × 時間削減 × 品質向上”を同時に達成できる最重要領域 ...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel在庫集計

Excel在庫集計は「入庫・出庫・在庫残を自動計算し、在庫管理のミスをゼロにする」ための最強スキルあなたのように業務効率化を本気で考える人にとって、 在庫集計の自動化は“現場の混乱をなくし、正確な在庫...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel勤怠集計

Excel勤怠集計は「出勤・退勤・休憩・残業などの勤怠データを自動で計算し、給与計算に使える形へ整形する」ための最強スキルあなたのように業務効率化を本気で考える人にとって、 勤怠集計の自動化は“ミス防...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel売上集計

Excel売上集計は「バラバラな売上データを一瞬でまとめて、分析・レポートに使える形にする」ための最強スキルあなたがやりたいことは、まさに「現場の数字を意思決定に使える形に変える」ことです。 その入口...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excelテンプレ自動入力

Excelテンプレ自動入力は「決まったフォーマットにデータを自動で流し込み、帳票作成をゼロ秒にする」ための最強スキル業務効率化を本気で考える人にとって、 Excelテンプレート自動入力は“Python...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excelデータ整形

Excelデータ整形は「バラバラなExcelを自動で綺麗に整え、分析・レポート作成できる状態に変換する」ための最強スキル業務効率化を本気で考える人にとって、 Excelデータ整形の自動化は“Pytho...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel差分比較

Excel差分比較は「2つのExcelの違いを自動で検出し、変更点だけを抽出して確認作業をゼロにする」ための最強スキル業務効率化を本気で考える人にとって、 Excel差分比較の自動化は“ミス防止 × ...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excelエラーチェック

Excelエラーチェックは「Excelの入力ミス・欠損・異常値を自動で検出し、正しいデータだけを業務に流す」ための最強スキル業務効率化を本気で考える人にとって、 Excelエラーチェックの自動化は“品...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excelデータ検証

Excelデータ検証は「入力ミスを自動で防ぎ、正しいデータだけをExcelに入れられるようにする」ための最強スキル業務効率化を本気で考える人にとって、 Excelデータ検証(Data Validati...
PHP

PHP Tips | 文字列処理:入力補助 - 文字種判定(英字/数字/記号)

何をしたいユーティリティなのか「文字種判定(英字/数字/記号)」は、 ある文字列の中に「英字」「数字」「記号」がどれくらい含まれているか、 あるいは「この文字列は英字だけか?数字だけか?記号を含んでい...
PHP

PHP Tips | 文字列処理:入力補助 - 指定文字出現回数カウント

何をしたいユーティリティなのか「指定文字出現回数カウント」は、 ある文字列の中に「特定の文字(または短い文字列)が何回出てくるか」を数えるためのユーティリティです。例えば、カンマが何個あるか改行が何回...
PHP

PHP Tips | 文字列処理:入力補助 - 改行数カウント

何をしたいユーティリティなのか「改行数カウント」は、 ある文字列の中に「改行が何回含まれているか」を数えるためのユーティリティです。問い合わせフォームの本文、コメント欄、メモ入力など、 ユーザーが自由...
PHP

PHP Tips | 文字列処理:入力補助 - 絵文字除去

何をしたいユーティリティなのか「絵文字除去」は、その名の通り、 ユーザーが入力したテキストから「絵文字だけ」を取り除くためのユーティリティです。スマホからの入力だと、文章の中に自然に絵文字が混ざります...
PHP

PHP Tips | 文字列処理:入力補助 - 数値文字列判定

何をしたいユーティリティなのか「数値文字列判定」は、 「この文字列、ちゃんと“数値として扱っていいやつ”か?」をチェックするためのユーティリティです。フォーム入力、クエリパラメータ、JSON の値など...
PHP

PHP Tips | 文字列処理:入力補助 - JSON → 配列(型安全)

何をしたいユーティリティなのか「JSON → 配列(型安全)」は、 文字列として渡されてきた JSON を「PHP の配列」に変換するときに、ちゃんと JSON として正しいかチェックする期待している...
PHP

PHP Tips | 文字列処理:入力補助 - 配列 → JSON(pretty)

何をしたいユーティリティなのか「配列 → JSON(pretty)」は、 PHP の配列や連想配列を「人間が読みやすい JSON 文字列」に変換するユーティリティです。普通の json_encode ...
PHP

PHP Tips | 文字列処理:入力補助 - 配列 → カンマ区切り文字列

何をしたいユーティリティなのか「配列 → カンマ区切り文字列」は、その名の通り、['apple', 'orange', 'banana']['apple', 'orange', 'banana']PH...
PHP

PHP Tips | 文字列処理:入力補助 - カンマ区切り文字列 → 配列

何をしたいユーティリティなのか「カンマ区切り文字列 → 配列」は、 例えばこんな入力を、"apple,orange,banana"こういう配列に変換するユーティリティです。CSV 風の入力、ID の一...
PHP

PHP Tips | 文字列処理:入力補助 - 空白区切り文字列 → 配列

何をしたいユーティリティなのか「空白区切り文字列 → 配列」は、 例えばこんな入力を、"apple orange banana"こういう配列に変換するユーティリティです。タグ入力、検索キーワード、権限...
C#

C# Tips | ログ・例外・診断:.NETバージョン取得

はじめに:.NETバージョン取得は「どんなエンジンで走っているか」を知るためのもの同じ C# コードでも、 どの .NET ランタイムバージョン で動いているかによって、 使える API や挙動、パフ...
C#

C# Tips | ログ・例外・診断:OS情報取得

はじめに:OS情報取得は「どんな土台の上で動いているか」を知るためのもの業務システムで地味に効いてくるのが、「OS の違い」です。 同じ C# コードでも、Windows Server のバージョンが...
C#

C# Tips | ログ・例外・診断:環境情報取得

はじめに:環境情報取得は「どこで・どんな設定で動いているか」を数字と言葉で残すこと業務システムで一番困るのは、 「開発環境では再現しないのに、本番だけでバグが出る」 「同じコードなのに、サーバーによっ...
C#

C# Tips | ログ・例外・診断:CPU使用率取得

はじめに:CPU使用率取得は「どれだけ“頭フル回転”しているか」を数字で知るための道具「サーバーが重い」「このバッチ、CPU食い過ぎじゃない?」 こういう会話、業務システムだとよく出てきますよね。でも...
C#

C# Tips | ログ・例外・診断:スレッド数取得

スレッド数取得は「アプリがどれだけ“並行処理のリソース”を使っているか」を数字で知る技術業務システムでは、 「なんか CPU が高い」「サーバーが重い」「スレッドプールが枯渇しているかも」 といった問...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:プロレベル運用 - Day30 アウトプット

Day30 前半のゴール「“頭の中の理解”を、“他人に渡せるアウトプット”に変える」Day30 は、いよいよアウトプットの日です。 やることは3つ、「設計書」「ER図」「パフォーマンス改善レポート」。...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:プロレベル運用 - Day29 総合課題

Day29 前半のゴール「バラバラに学んだ機能を、“1つのミニ業務システム”としてつなげる」Day29 は総合課題です。 テーマは「顧客管理」「注文処理」「分析クエリ」「JSONデータ処理」を全部まと...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:プロレベル運用 - Day28 レプリケーション

Day28 前半のゴール「“DBは1台だけ”という前提を捨てて、“コピーして読ませる”をイメージする」今日のテーマはレプリケーションです。 一言でいうと「あるDBサーバのデータを、別のDBサーバにリア...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:プロレベル運用 - Day27 拡張機能

Day27 前半のゴール「“PostgreSQLはただのRDB”から“機能を足せるプラットフォーム”だと気づく」今日のテーマは「拡張機能(extension)」、そして代表例としての PostGIS(...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:プロレベル運用 - Day26 権限管理

Day26 前半のゴール「“何でもできるユーザー”をやめて、“役割ごとに守る”感覚を持つ」Day26 は「権限管理」です。ここまで性能や自動処理を見てきたけれど、本番運用で一番怖いのは「やってはいけな...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:プロレベル運用 - Day25 トリガー

Day25 前半のゴール「“INSERTしたら勝手に何かしてくれる”を安全にイメージできるようになる」今日のテーマはトリガーです。一言でいうと「テーブルに対する操作(INSERT / UPDATE /...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:プロレベル運用 - Day24 ストアド関数

Day24 前半のゴール「“SQLだけのDB”から“ロジックを持つDB”をイメージできるようになる」Day24 は、いよいよ「ストアド関数」と「PL/pgSQL」です。ここまで、SQLを書いてデータを...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:設計とパフォーマンス - Day23 バックアップ

Day23 前半のゴール「“壊れたら終わり”を“壊れても戻せる”に変える感覚を持つ」Day23 はバックアップです。ここまで設計・パフォーマンス・トランザクション・ロック…とやってきましたが、どれだけ...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:設計とパフォーマンス - Day22 パーティショニング

Day22 前半のゴール「“1テーブルで全部持つ”から“賢く分ける”発想に切り替える」Day22 のテーマは「パーティショニング」、つまりテーブル分割です。ここまでずっと「テーブル設計」をやってきまし...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:設計とパフォーマンス - Day21 正規化と設計

Day21 前半のゴール「“教科書の正規化”から“現場の設計”に橋をかける」Day21 はいよいよ「実務レベルの設計」です。これまで、正規化・インデックス・トランザクション・MVCC・ロック…と、部品...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:設計とパフォーマンス - Day20 ロック制御

Day20 前半のゴール「“デッドロック=お見合い状態”を具体的なイメージで理解する」ロック制御の中でも、現場で一番イヤなやつが「デッドロック」です。エラーとしては一瞬で終わるのに、原因を特定するのが...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:設計とパフォーマンス - Day19 トランザクション

Day19 前半のゴール「“同時に更新しても壊れない”仕組みをイメージで理解する」ここからはトランザクション編です。Day19 のテーマは PostgreSQL の心臓部、「MVCC(Multi Ve...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:設計とパフォーマンス - Day18 パフォーマンスチューニング

Day18 前半のゴール「“なんとなく遅い”をやめて、“どこが遅いか”と言えるようになる」パフォーマンスチューニング編の入口です。Day18 のテーマは「ボトルネック特定」――つまり、「どこが遅いのか...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:設計とパフォーマンス - Day17 インデックス応用

Day17 前半のゴール「“B-tree 以外のインデックスが必要になる場面”をイメージできるようにする」ここからはインデックス応用編です。Day17 のテーマは、PostgreSQL の強みでもある...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:設計とパフォーマンス - Day16 実行計画

Day16 前半のゴール「“SQLがどう動いているか”を目で見て理解する感覚を持つ」ここからは「設計とパフォーマンス」のフェーズです。Day16 のテーマは、PostgreSQL の実行計画を見るため...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:高度SQL - Day15 中間課題

Day15 前半のゴール「“分析用SQLを設計する頭の使い方”をつかむ」ここまでで、CTE・ウィンドウ関数・JSON・配列・全文検索と、かなり武器が増えました。Day15 はその中間課題として、「売上...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:高度SQL - Day14 全文検索

Day14 前半のゴール「“LIKE検索じゃ足りない世界”をイメージできるようにする」今日は PostgreSQL の「全文検索(FULL TEXT SEARCH)」です。これは、WHERE titl...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:高度SQL - Day13 配列型

Day13 前半のゴール「“SQLの中でも配列を持てる”感覚を手に入れる」今日は、PostgreSQLのもうひとつの武器「配列型(ARRAY)」です。JSONと似ているところもありますが、「型がはっき...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:高度SQL - Day12 JSON操作②

Day12 前半のゴール「“JSONの世界”をSQLのテーブルっぽく扱う感覚を持つ」Day11 では「JSONをカラムに入れる」「中身を取り出す」「中身で検索する」ところまで来ました。Day12 はそ...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:高度SQL - Day11 JSON操作①

Day11 前半のゴール「“JSONをそのままカラムに入れて、SQLで触れる”感覚を持つ」今日からは、PostgreSQLの大きな武器のひとつ、JSONです。SQLiteやMySQLでもJSONは扱え...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:高度SQL - Day10 ウィンドウ関数②

Day10 前半のゴール「“行ごとにグラフの線を描く”イメージを持つ」Day10 はウィンドウ関数の第2弾、「累積」と「移動平均」です。どちらも「時間の流れに沿って、値がどう変化していくか」を見るとき...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:高度SQL - Day9 ウィンドウ関数①

Day9 前半のゴール「“集計しながら行ごとに順位を付ける”感覚をつかむ」今日はウィンドウ関数の入り口、ROW_NUMBER と RANK です。MySQLやSQLiteでも最近は使えますが、Post...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:高度SQL - Day8 CTE(WITH句)

Day8 前半のゴール「長いSQLを“分割して名前を付ける”感覚を身につける」今日は高度SQLの入り口、CTE(Common Table Expression)、つまり WITH 句です。Postgr...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:差分理解 - Day7 復習課題

Day7 前半のゴール「“そのままコピペ”ではなく、“差分を意識して移植する”感覚を持つ」Day7 は、ここまで学んだ差分理解の「復習課題」です。テーマはシンプルで、MySQLで作ったDBをPostg...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:差分理解 - Day6 インデックス基礎

Day6 前半のゴール「“インデックス=本の索引”を超えて、“中で何が起きているか”をざっくり掴む」今日は PostgreSQL のインデックス、その中でも標準の B-tree インデックスと、そのざ...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:差分理解 - Day5 制約

Day5 前半のゴール「“DBが仕様を守ってくれる”感覚を、PostgreSQL流でつかむ」今日は「制約」の話です。SQLite ではかなりゆるく、MySQL でも設定次第で挙動が変わるところですが、...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:差分理解 - Day4 シーケンス

Day4 前半のゴール「PostgreSQLの“連番の正体”=シーケンスをイメージできるようになる」今日は、主キーでほぼ必ず出てくる「連番」の話です。MySQL の AUTO_INCREMENT に慣...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:差分理解 - Day3 データ型の理解

Day3 前半のゴール「“なんとなく文字列・なんとなく日付”から卒業する」今日は PostgreSQL の代表的なデータ型のうち、文字列(TEXT / VARCHAR)、真偽値(BOOLEAN)、日時...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:差分理解 - Day2 MySQLとの違い

Day2 前半のゴール「“PostgreSQLはちょっと真面目なやつ”という感覚をつかむ」今日は、SQLite と MySQLを触ってきたあなたに向けて、「PostgreSQLって、どこが違うの?」を...
30日で身につけるPostgreSQL

PostgreSQL | SQLite+MySQL経験者向け、30日で習得するPostgreSQL:差分理解 - Day1 環境構築

Day1 前半のゴール「SQLite/MySQL経験を“そのまま活かして”PostgreSQLに触り始める」今日のテーマは PostgreSQL の最初の一歩です。すでに SQLite と MySQL...
Java

Java | 1 日 120 分 × 7 日アプリ学習 中級編:オブジェクト指向(OOP) - 継承アプリ

1日目のゴール継承アプリ1日目のテーマは「共通部分をまとめる」=継承の入口を“安全に”体験すること です。今日は、「継承って便利そうだけど、どこが嬉しくて、どこが危険なのか」を、まず“共通部分をまとめ...
Java

Java | 1 日 120 分 × 7 日アプリ学習 中級編:オブジェクト指向(OOP) - カプセル化アプリ

1日目のゴール中級編「カプセル化アプリ」1日目のテーマは「直接触らせない」=カプセル化の感覚を体でつかむこと です。キーワードはprivate と getter / setter。でも、ただ「書き方を...
JavaScript

JavaScript Tips | 配列ユーティリティ:順次処理

テーマの整理:「順次処理」とは何かここでいう「順次処理」は、配列の要素を「必ず 1 件ずつ、順番に」処理していくパターンのことです。特に「処理が非同期(async)」なときに、順番をきちんと守りたい場...
JavaScript

JavaScript Tips | 配列ユーティリティ:Promise 配列制御

テーマの整理:「Promise 配列制御」とは何か「Promise 配列制御」というのは、ざっくり言うと「複数の非同期処理(Promise)を、配列としてまとめて扱い、どう待つか・どう制御するかを決め...
JavaScript

JavaScript Tips | 配列ユーティリティ:非同期 reduce

そもそも reduce と「非同期 reduce」の違いArray.prototype.reduce は、配列を 1 つの値に“畳み込む”ための関数です。合計を出したり、オブジェクトに集計したり、「最...
JavaScript

JavaScript Tips | 配列ユーティリティ:非同期 filter

何をしたいユーティリティか:「非同期 filter」「非同期 filter」は、配列の各要素に対して「async な条件チェック」を行い、条件を満たした要素だけを残すユーティリティです。普通の Arr...
JavaScript

JavaScript Tips | 配列ユーティリティ:非同期 map

何をしたいユーティリティか:「非同期 map」「非同期 map」は、配列の各要素に対して「async な処理」をして、その結果を配列として集めるユーティリティです。普通の map は同期処理専用ですが...
JavaScript

JavaScript Tips | 配列ユーティリティ:map + filter 合成

何をしたいユーティリティか:「map + filter 合成」「map + filter 合成」は、「変換(map)」と「絞り込み(filter)」を、きれいに組み合わせて使うためのパターンやユーティ...
JavaScript

JavaScript Tips | 配列ユーティリティ:reduce ヘルパー

そもそも reduce って何をする関数かArray.prototype.reduce は、「配列を 1 つの値に“畳み込む”ための関数」です。合計を出したり、オブジェクトに集計したり、別の配列に変形...
JavaScript

JavaScript Tips | 配列ユーティリティ:フィルタ合成

何をしたいユーティリティか:「フィルタ合成」「フィルタ合成」は、複数の条件(フィルタ)を組み合わせて、1つのフィルタ関数として扱えるようにするテクニックです。もう少しくだいて言うと、「小さな条件関数を...
JavaScript

JavaScript Tips | 配列ユーティリティ:AND 条件検索

何をしたいユーティリティか:「AND 条件検索」「AND 条件検索」は、配列の中から「複数の条件をすべて満たす要素」だけを探す処理です。論理式でいう「A かつ B かつ C」の“AND(かつ)”です。...
JavaScript

JavaScript Tips | 配列ユーティリティ:OR 条件検索

何をしたいユーティリティか:「OR 条件検索」「OR 条件検索」は、配列の中から「いくつかの条件のうち、どれか1つでも満たしていればOK」という要素を探す処理です。論理式でいう「A または B または...
JavaScript

JavaScript Tips | 配列ユーティリティ:複数条件検索

何をしたいユーティリティか:「複数条件検索」「複数条件検索」は、「この配列の中から、いくつかの条件をすべて満たす要素だけを探したい」ときに使うユーティリティです。例えば、次のような“複数条件”が典型で...
JavaScript

JavaScript Tips | 配列ユーティリティ:インデックス検索

何をしたいユーティリティか:「インデックス検索」「インデックス検索」は、配列の中から「条件に合う要素がどこにあるか」を調べて、その位置(インデックス)を返す処理です。「この値は何番目にある?」「id ...
JavaScript

JavaScript Tips | 配列ユーティリティ:要素置換

何をしたいユーティリティか:「要素置換」「要素置換」は、配列の中の特定の要素を“別の値に差し替える”処理です。「インデックス 2 の要素を新しい値にしたい」「id が一致する要素だけ更新したい」など、...
JavaScript

JavaScript Tips | 配列ユーティリティ:要素削除

何をしたいユーティリティか:「要素削除」「要素削除」は、配列から特定の要素を取り除く処理です。「このインデックスの要素を消したい」「この値を全部消したい」「条件に合うものだけ消したい」など、業務でめち...
JavaScript

JavaScript Tips | 配列ユーティリティ:要素挿入

何をしたいユーティリティか:「要素挿入」「要素挿入」は、配列の好きな位置に新しい要素を差し込む処理です。 の「2 と 4 の間に 3 を入れたい」みたいなやつですね。業務だと、例えばこういう場面でよく...
JavaScript

JavaScript Tips | 配列ユーティリティ:シャローコピー

何をしたいユーティリティか:「シャローコピー」ここでの「シャローコピー」は、配列そのものだけをコピーして、“中身(要素)への参照はそのまま共有する”コピーのことです。一言でいうと、「配列の箱だけ新しく...
JavaScript

JavaScript Tips | 配列ユーティリティ:ディープコピー

ディープコピーとは何か(まずここを正しく理解する)ディープコピーは、配列やオブジェクトの“中身まで含めて完全に別物を作るコピー”のことです。浅いコピー(shallow copy)と違い、ネストされた配...
JavaScript

JavaScript Tips | 配列ユーティリティ:配列コピー

何をしたいユーティリティか:「配列コピー」「配列コピー」は、元の配列を壊さずに、同じ中身を持つ“別の配列”を作る処理です。業務ではほぼ必ずと言っていいほど使います。なぜなら、元の配列を直接いじると「い...
JavaScript

JavaScript Tips | 配列ユーティリティ:部分一致判定

何をしたいユーティリティか:「部分一致判定」「部分一致判定」は、「完全に同じかどうか」ではなく、「一部が条件を満たしているかどうか」を判定する処理です。ここでは主に、配列に対して次のような問いを投げる...
JavaScript

JavaScript Tips | 配列ユーティリティ:完全一致判定

何をしたいユーティリティか:「完全一致判定」ここでの「完全一致判定」は、「この2つの値(配列やオブジェクトを含む)が“中身まで含めてまったく同じか”を判定する処理です。単なる === ではなく、配列の...
JavaScript

JavaScript Tips | 配列ユーティリティ:配列比較

何をしたいユーティリティか:「配列比較」「配列比較」は、「この2つの配列は同じか?」を判定する処理です。ここでいう「同じか?」は、基本的に次の3つを満たすことを意味します。要素数(長さ)が同じ各インデ...
JavaScript

JavaScript Tips | 配列ユーティリティ:安定ソート

そもそも「安定ソート」とは何かまず言葉から整理します。安定ソート(stable sort)とは、「同じキー(同じ値)同士の元々の順番を壊さないソート」のことです。もう少し具体的に言うと、並び替えの基準...
JavaScript

JavaScript Tips | 配列ユーティリティ:順序反転

何をしたいユーティリティか:「順序反転」「順序反転」は、配列の要素の並びを逆向きにする処理です。 を にする、というイメージですね。業務だと、例えばこういう場面で使います。ログを「新しい順」に並べ替え...
JavaScript

JavaScript Tips | 配列ユーティリティ:Map 変換

何をしたいユーティリティか:「Map 変換」ここでの「Map 変換」は、配列から Map(キーと値のペアのコレクション)を作るユーティリティのことです。「id からユーザーを一発で引きたい」「コードか...
JavaScript

JavaScript Tips | 配列ユーティリティ:Set 変換

何をしたいユーティリティか:「Set 変換」ここでの「Set 変換」は、配列を Set に変換するユーティリティのことです。一言でいうと「重複をなくしたい」「含まれているかを高速に調べたい」ときに使う...
JavaScript

JavaScript Tips | 配列ユーティリティ:マップ生成

何をしたいユーティリティか:「マップ生成」ここでの「マップ生成」は、配列から「キー → 値」の対応表(オブジェクトや Map)を作る処理のことです。「id からユーザーを引けるようにしたい」「コードか...
JavaScript

JavaScript Tips | 配列ユーティリティ:条件変換

何をしたいユーティリティか:「条件変換」「条件変換」は、配列の中の「条件に合う要素だけ」を変換し、それ以外はそのまま残す処理です。英語で言うと mapIf、mapWhen、conditionalMap...
JavaScript

JavaScript Tips | 配列ユーティリティ:条件抽出

何をしたいユーティリティか:「条件抽出」「条件抽出」は、配列の中から「ある条件に当てはまる要素だけ」を取り出す処理です。JavaScript 標準の Array.prototype.filter を、...
JavaScript

JavaScript Tips | 配列ユーティリティ:条件削除

何をしたいユーティリティか:「条件削除」「条件削除」は、配列の中から「ある条件に当てはまる要素だけ」を取り除く処理です。英語だとイメージ的には「removeIf」「reject」「filter-out...
JavaScript

JavaScript Tips | 配列ユーティリティ:undefined 削除

何をしたいユーティリティか:「undefined 削除」ここでの「undefined 削除」は、配列の中から undefined を取り除いて、扱いやすい配列に整える処理です。「null 削除」と似て...
JavaScript

JavaScript Tips | 配列ユーティリティ:null 削除

何をしたいユーティリティか:「null 削除」ここでの「null 削除」は、配列の中から null(と必要なら undefined)を取り除いて、扱いやすい配列に整える処理です。さっきの「空要素削除」...
JavaScript

JavaScript Tips | 配列ユーティリティ:空要素削除

何をしたいユーティリティか:「空要素削除」ここでの「空要素削除」は、配列の中から「いらない空っぽの値」を取り除いて、きれいな配列にする処理です。英語だと compact や clean などと呼ばれま...
JavaScript

JavaScript Tips | 配列ユーティリティ:末尾取得

何をしたいユーティリティか:「末尾取得」ここでの「末尾取得」は、配列の「一番最後の要素」や「末尾から数件」を取り出す処理のことです。英語だと last や takeRight などと呼ばれます。業務で...
JavaScript

JavaScript Tips | 配列ユーティリティ:先頭取得

何をしたいユーティリティか:「先頭取得」ここでの「先頭取得」は、配列の「一番最初の要素」や「先頭から数件」を取り出す処理のことです。英語だと head や first、take などと呼ばれます。業務...
JavaScript

JavaScript Tips | 配列ユーティリティ:件数制限

何をしたいユーティリティか:「件数制限」ここでの「件数制限」は、配列の要素数を「最大 N 件まで」に制御する処理のことです。イメージとしては「取りすぎない」「持ちすぎない」ためのブレーキです。業務では...
JavaScript

JavaScript Tips | 配列ユーティリティ:採番

何をしたいユーティリティか:「採番」ここでの「採番」は、配列の要素に「業務で使う番号(連番・管理番号)」を振る処理のことです。さっきやった「インデックス付与」とよく似ていますが、目的が少し違います。イ...
JavaScript

JavaScript Tips | 配列ユーティリティ:インデックス付与

何をしたいユーティリティか:「インデックス付与」「インデックス付与」は、配列の各要素に「何番目か」という情報をくっつける処理です。JavaScript の配列はもともと 0, 1, 2…というインデッ...
JavaScript

JavaScript Tips | 配列ユーティリティ:ネスト化

何をしたいユーティリティか:「配列のネスト化」ここでの「ネスト化」は、平らな配列を「階層構造(入れ子)」に組み立て直す処理のことです。フラット化の逆方向だと思ってください。例えば、次のようなことをした...
JavaScript

JavaScript Tips | 配列ユーティリティ:フラット化

何をしたいユーティリティか:「配列のフラット化」ここでの「フラット化」は、ネスト(入れ子)になっている配列を、浅い配列に“平らにする”処理のことです。英語だと flatten、flat と呼ばれます。...
JavaScript

JavaScript Tips | 配列ユーティリティ:結合

何をしたいユーティリティか:「配列の結合」ここでの「結合」は、複数の配列を 1 つの配列にまとめる処理のことです。英語だと「merge」「concat」と呼ばれます。例えば、こんな場面で使います。月ご...
Java

Java | 1 日 120 分 × 7 日アプリ学習 中級編:オブジェクト指向(OOP) - クラス責務分離アプリ

1日目のゴール中級編の1日目は「オブジェクト指向の本質=1クラス1役割」を“体で理解する”こと。今日のテーマは 責務(Responsibility)・分離(Separation)・保守性(Mainta...
Java

Java | 1 日 90 分 × 7 日アプリ学習 初級編:ファイル保存アプリ

1日目のゴール1日目のテーマは「ファイルに“文字”を書いて、“あとから読み返せる”感覚をつかむこと」 です。今日はまだ「完璧な設計」は目指しません。まずはこう思えたら勝ちです。「メモをファイルに保存し...
Java

Java | 1 日 90 分 × 7 日アプリ学習 初級編:例外処理アプリ

1日目のゴール1日目のテーマは「例外ってそもそも何?」「try / catch って何をしているの?」を、感覚でつかむこと です。今日は、こんな流れで進めます。例外とは何かなぜ try / catch...
C#

C# Tips | ログ・例外・診断:GC情報取得

はじめに:GC情報取得は「.NET がどれくらい“片付け仕事”をしているか」を数字で見ることC# の世界では、メモリの解放はガベージコレクタ(GC)が自動でやってくれます。これはとても便利ですが、その...
C#

C# Tips | ログ・例外・診断:メモリ使用量取得

はじめに:メモリ使用量取得は「どれくらい“盛っている”かを数字で知るためのもの」パフォーマンスの話をしていると、必ず出てくるのが「メモリ食いすぎてない?」という心配です。でも、感覚だけで「重そう」と言...
C#

C# Tips | ログ・例外・診断:パフォーマンス計測

はじめに:パフォーマンス計測は「コードの速さを“感覚”ではなく“数字”で語るための道具」業務システムを書いていると、必ずこういう会話が出てきます。「この処理、なんか遅くない?」「どれくらい遅いんだっけ...
C#

C# Tips | ログ・例外・診断:トレース出力

はじめに:トレース出力は「本番も視野に入れた“軽量ログ”」「デバッグ出力」は開発中にとても便利ですが、多くはデバッグビルド専用で、本番では消えてしまいます。一方、業務システムでは「本番環境でも、ある程...
C#

C# Tips | ログ・例外・診断:デバッグ出力

はじめに:デバッグ出力は「本番にはいらないけど、開発中はめちゃくちゃ役に立つメモ」コードを書いているとき、「ここまで処理が来ているか確認したい」「この変数の中身を一瞬だけ見たい」という場面が必ず出てき...
C#

C# Tips | ログ・例外・診断:タイムアウト制御

はじめに:タイムアウト制御は「いつまでも待たない」ための安全装置業務システムで一番イヤなのは、「固まっているのか、まだ処理中なのか分からない状態」です。外部 API、DB、ファイルアクセス、重い計算処...
C#

C# Tips | ログ・例外・診断:指数バックオフ

はじめに:指数バックオフは「だんだん距離を取りながら、もう一度だけ試す」リトライ戦略外部 API、クラウドサービス、DB、メッセージキューなどにアクセスするとき、一時的なエラー(ネットワークの瞬断、サ...
C#

C# Tips | ログ・例外・診断:リトライ処理

はじめに:リトライ処理は「一度コケても、あきらめずにもう一歩踏み込む」仕組み業務システムでは、外部サービスや DB、ファイルアクセスなど「環境に左右される処理」がたくさんあります。ネットワークが一瞬不...
C#

C# Tips | ログ・例外・診断:エラーコード管理

はじめに:エラーコード管理は「エラーに“番号付きの名前”を与えること」業務システムで本気で運用を考え始めると、「エラーが起きました」だけでは足りなくなります。どの画面でどの種類のエラーがどれくらいの頻...
C#

C# Tips | ログ・例外・診断:非同期例外処理

はじめに:非同期例外処理は「時間差で起きる失敗を、ちゃんと捕まえる技術」async/await を使い始めると、最初に戸惑うのが「例外がどこに飛んでいくのか分からない」という感覚です。同期コードなら、...
Python

Python | DevOps・運用:Docker network

Docker networkって何?一言でいうと「コンテナ同士をつなぐ“専用LAN”」Docker network は、コンテナ同士をつなぐための「仮想ネットワーク」です。同じネットワークに属するコン...
Python

Python | DevOps・運用:Docker volume

Docker volumeって何?一言でいうと「コンテナが消えても残る“外付けハードディスク”」Docker volume は、コンテナの外側にある「永続ストレージ」です。コンテナの中のファイルは、コ...
Python

Python | DevOps・運用:docker-compose

docker-composeって何?一言でいうと「複数コンテナを“1つのアプリ”としてまとめて起動・停止するリモコン」Docker は「1コンテナ=1プロセス」をきれいに動かすのが得意です。でも、現実...
Python

Python | DevOps・運用:Dockerfile ベストプラクティス

まずゴールを決めよう:「本番でそのまま動かせる、軽くて、安全で、再現性の高いイメージ」Dockerfile のベストプラクティスは、一言でいうと「どこでビルドしても、同じように動く、無駄が少なくて、安...
Python

Python | DevOps・運用:CD 自動デプロイ

CD 自動デプロイって何?一言でいうと「テストに通ったコードを、人の手を介さず“同じ手順で”本番に届ける仕組み」CI が「自動テスト」だとしたら、CD(Continuous Delivery / De...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - セッション

セッションを一言でいうとセッションは「同じユーザーからの一連のリクエストを“ひとまとまり”として扱うためのサーバー側の仕組み」です。HTTP は本来「1 回 1 回がバラバラで、前後のつながりを覚えな...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - Cookie

Cookie を一言でいうとCookie は「ブラウザの中に一時的にメモしておける“名札・メモ用紙”」です。HTTP は本来「1 回 1 回のリクエストがバラバラで、前後のつながりを覚えていない」仕組...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - User-Agent

User-Agent を一言でいうとUser-Agent は「このリクエストを送っている“クライアントの正体”をサーバーに伝えるヘッダー」です。ブラウザなのか、スマホアプリなのか、Java のプログラ...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - Accept

Accept を一言でいうとAccept ヘッダーは「サーバーさん、レスポンスは“この種類のデータ”で返してくれると嬉しいです、という希望を伝えるヘッダー」です。クライアント(ブラウザやアプリ)が「J...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - Content-Type

Content-Type を一言でいうとContent-Type は「このボディの中身は“何の種類のデータ”かを相手に教えるためのヘッダー」です。中身が JSON なのか、HTML なのか、画像なのか...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - ボディの役割

ボディを一言でいうとHTTP のボディは「実際にやり取りしたい“中身そのもの”が入る場所」です。ヘッダーが「説明書」だとしたら、ボディは「商品そのもの」。ユーザー情報の JSON、HTML のページ、...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - ヘッダーの役割

ヘッダーを一言でいうとHTTP のヘッダーは「リクエストやレスポンスにくっついてくる“メタ情報(付加情報)”」です。本体(ボディ)が「中身」だとしたら、ヘッダーは「この中身は何なのか」「どう扱ってほし...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - パスパラメータ

パスパラメータを一言でいうとパスパラメータは「URL の一部として書かれる“ID などの変わる部分”」です。/users/1 の 1/products/123/reviews の 123みたいに、「ど...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - クエリパラメータ

クエリパラメータを一言でいうとクエリパラメータは「同じ URL の“条件やオプション”を指定するための追加情報」です。/users という「ユーザー一覧」というリソースに対して、「有効なユーザーだけ欲...
Java

Java | Web 基礎・HTTP・REST:HTTP 詳細 - URL 構造

URL を一言でいうとURL は「インターネット上の“場所”を指し示す住所」です。ブラウザやプログラムは、この URL を手がかりに「どのサーバーの」「どのサービスの」「どのデータを」取りに行けばいい...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):Excelオブジェクト基礎 - Find

Find は「表の中から“条件に合うセル”を一発で探しに行くためのメソッド」まずイメージから。Find は「この範囲の中から“〇〇”という値(文字)を持つセルを探してきて」と頼むためのメソッドです。手...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):Excelオブジェクト基礎 - Delete

Delete は「セル・行・列を“詰めて”消す動き」まずイメージから。さっき学んだ Insert が「押し広げてスペースを作る」なら、Delete は「その場所を消して、周りを詰める」動きです。手作業...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):Excelオブジェクト基礎 - Insert

Insert は「セル・行・列を“押し広げて”新しいスペースを作る動き」まずイメージから。Insert は「今あるセルや行・列をズラして、新しいセル/行/列の“空きスペース”を差し込む」動きです。手作...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):Excelオブジェクト基礎 - Sort

Sort は「表の行を“並べ替える”ための仕組みをコードで操作するもの」まずイメージから。Sort は、表の行を「昇順」「降順」などのルールで並べ替えるための機能です。普段、リボンの「並べ替え」ボタン...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):Excelオブジェクト基礎 - AutoFilter

AutoFilter は「表に“絞り込み”をかけるための仕組みをコードで操作するもの」まずイメージから。AutoFilter は、シート上の“表”に対して「この条件に合う行だけ表示して」と絞り込みをか...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - tdタグ

td 要素は「表の“中身のマス”を表すセル」<td> は「このマスには“実際のデータ”が入っています」ということを表すタグです。table の中で、tr(行)の中に並ぶ「ふつうのセル」が td です。...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - thタグ

th 要素は「このセルは“見出し側”ですよ」と宣言するタグ<th> は「このセルは、ただのデータじゃなくて“見出し・ラベル”です」とブラウザや機械に伝えるためのタグです。table の中で使われ、「列...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - trタグ

tr 要素は「表の“1行分”をまとめるための行コンテナ」<tr> は「table の中で、横一列のセルをひとかたまりにする“行の箱”」です。table が「表全体の箱」だとしたら、tr は「その中の ...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - tableタグ

table 要素は「行と列で“表形式のデータ”を並べるための箱」<table> は、「行(よこ)と列(たて)で整理されたデータ」を表にするためのタグ です。時間割料金表成績表比較表みたいな、「表で見る...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - ddタグ

dd 要素は「ラベルに対する“中身・説明側”を表すタグ」<dd> は「これは“ラベルの中身・説明・値”ですよ」と示すためのタグです。単体では使わず、必ず <dl> の中で「ラベル(dt)」「その中身(...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - dtタグ

dt 要素は「ラベル側(項目名・用語)」を表すタグ<dt> は「これは“名前・ラベル・用語”の側ですよ」と示すためのタグです。単体では使わず、必ず <dl> の中で「ラベル(dt)」「その中身(dd)...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - dlタグ

dl 要素は「用語とその説明(ペアの一覧)」の箱<dl> は「用語(ラベル)と、その説明(値)」のペアを並べるための箱だと思ってください。“d” は definition(定義)、dl は defin...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - liタグ

li 要素は「リストの“1項目”を表すパーツ」まずイメージから。li 要素は、「ul や ol の中に並ぶ“1つ1つの項目”」 を表すためのタグです。ul(順不同リスト)=「箱」ol(番号付きリスト)...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - olタグ

ol 要素は「順番に意味がある“番号付きリスト”の箱」<ol> は「1 → 2 → 3 の順番に意味がある項目の並び」を表すためのタグです。“o” は ordered(順序付き)の略で、「順番が大事な...
JavaScript

JavaScript | HTML / CSS 連携:リスト・表組み - ulタグ

ul 要素は「順番を気にしない“箇条書きの箱”」まずイメージからいきます。<ul> は「順番はどうでもいいけど、いくつかの項目を並べて見せたい」ときに使う“箇条書きの箱”です。買い物リストサイトのナビ...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:クレンジング結果ログ出力

ゴールのイメージをそろえる今回のテーマは「Power Query で クレンジング結果を“ログとして見える化”する実務テンプレ」です。やりたいことは、ざっくり言うとこうです。「何件エラーがあったのか」...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:エラー行を別テーブル分離

ゴールのイメージをそろえる今回のテーマは「Power Query で “エラー行だけをきれいに別テーブルに分離する” 実務テンプレです。ここまでやってきた必須項目未入力チェック数値範囲チェック桁数チェ...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:マスタ未存在データ検出

ゴールのイメージをそろえる今回のテーマは「Power Query で “マスタに存在しないコードを持つ明細行だけをきれいに炙り出す” 実務テンプレ」です。やりたいことはこうです。売上明細の顧客コードが...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:数値範囲チェック

ゴールのイメージをそろえる今回のテーマは「Power Query で “ありえない数値”を数値範囲で機械的にチェックする実務テンプレ」です。やりたいことは、ざっくり言うとこうです。「数量は 1〜999...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:必須項目未入力チェック

ゴールのイメージをそろえる今回のテーマは「Power Query で “必須項目が未入力の行”を機械的にチェックする実務テンプレ」です。やりたいことはシンプルです。「顧客コードが必須なのに空欄の行がな...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:桁数チェック

ゴールのイメージをそろえる今回のテーマは「Power Query で “桁数がおかしい値”を機械的にチェックする実務テンプレ」です。やりたいことは、ざっくり言うとこうです。「顧客コードは必ず 10 桁...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:主キー重複検出

ゴールのイメージをそろえる今回のテーマは「Power Query で “主キーが重複している行だけをきれいに炙り出す” 実務テンプレ」です。ここでいう「主キー」は、「この列(または列の組み合わせ)は、...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:重複行削除(全列)

ゴールのイメージをそろえる今回のテーマは「Power Query で テーブル全体を見て“完全に同じ行”を重複として削除する実務テンプレ」です。ここでいう「重複行削除(全列)」は、「1行まるごと、すべ...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:複数条件で行抽出

ゴールのイメージをそろえる今回のテーマは「Power Query で 複数条件を組み合わせて、欲しい行だけをきれいに抽出する実務テンプレ」です。“複数条件”というのは、たとえばこんなイメージです。「売...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:特定文字列を含む行削除

ゴールのイメージをそろえる今回のテーマは「Power Query で “特定の文字列を含む行だけをきれいに削除する” 実務テンプレ」です。やりたいことはシンプルです。「備考に『テスト』と入っている行は...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - 改行タグ(br)

br 要素は「ここで“行だけ”を折りたいときの改行スイッチ」<br> は「ここで行を折って、すぐ次の行から続けて書いて」とブラウザに指示するためのタグです。ポイントは、「段落を分ける」のではなく「同じ...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - 補足タグ(em)

em 要素は「言い方・ニュアンスを強めるためのタグ」<em> は「ここ、ちょっと“気持ち強め”で読んでほしい」という“ニュアンスの強調”を表すタグです。ブラウザのデフォルト表示だと斜体になりますが、目...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - 強調タグ(strong)

strong 要素は「見た目の太字」ではなく「意味として重要な部分」まずここをしっかり押さえたいです。<strong> は、「ここは文章の中で特に重要だよ」という“意味としての強調”を表すタグです。ブ...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - figcaptionタグ

figcaption 要素は「図のタイトル・説明を書くためのラベル」<figcaption> は、「この図は何なのか?」を説明するための“キャプション専用タグ” です。単体では使わず、必ず <figu...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - figureタグ

figure 要素は「画像やコードなど“ひとかたまりの図”の箱」まずイメージからいきます。<figure> は、「画像・図・コード・表など、“ひとつの図として意味を持つかたまり”を包む箱」です。単なる...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - alt属性

alt 属性は「画像が見えない人のための“言葉の代わり”」まず一番大事な本質からいきます。alt 属性は、「この画像は何なのか?」を“言葉で説明するための場所” です。画像がちゃんと表示されているとき...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - imgタグ

img タグは「ページに画像を埋め込むためのタグ」<img> タグは、「この場所に、この画像ファイルを表示して」とブラウザに伝えるためのタグです。テキストが <p> や <h1> なら、画像は <im...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - target属性

target 属性は「リンクを“どの窓で開くか”を決めるスイッチ」<a> タグの target 属性は、「このリンクをクリックしたとき、どこで開くか」 を指定するためのものです。行き先そのものを決める...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - href属性

href 属性は「このリンクの行き先はここです」という住所ラベルまず一番大事なところから。href 属性は、「このリンク(a タグ)は、どこへ飛ぶのか?」という“行き先”を指定するための属性です。hr...
JavaScript

JavaScript | HTML / CSS 連携:テキスト・リンク・画像 - aタグ

a タグは「ページとページをつなぐ“リンクのタグ”」まず一番大事なことから。<a> タグは「ここをクリックすると、どこかへ移動します」という“リンク”を作るタグです。「a」は anchor(アンカー=...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - コメントの書き方

HTML のコメントは「未来の自分と他人へのメモ」まず前提から。HTML のコメントは、<!-- ここがコメント -->という形で書きます。ブラウザには表示されませんが、ソースコードを開くと見える「メ...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - span要素

span 要素は「意味のついていない“文字レベルの小さな箱”」まずイメージから。<div> が「ブロック全体をまとめる大きめの箱」だとしたら、<span> は 「文章の一部分だけを囲う、小さな箱」 で...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - div要素

div 要素は「意味のついていない“箱”」=レイアウト用のコンテナまず一番大事なことから。<div> は「特別な意味を持たない、ただの“箱(コンテナ)”」 です。「段落」でもない「見出し」でもない「ボ...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - 段落タグ(p)

p タグは「文章のひとかたまり」を表すタグまず一番大事なポイントからいきます。<p> は「文章のひとかたまり(段落)」を表すタグ です。「一文ごと」ではなく、「意味がひとまとまりになっている文章のかた...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - 見出しタグ(h1〜h6)

見出しタグは「文章の見出し」と「ページのアウトライン」を作るもの見出しタグ(<h1>〜<h6>)は、文字を大きくするためのタグではなく、「ここがタイトルです」「ここがその中の小見出しです」と、文章の構...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - body要素

body 要素は「ユーザーが実際に触る“本体”」HTML 全体を家にたとえると、<!DOCTYPE html> は「これは家ですよ」の宣言、<html> は家全体の外枠、<head> は電気・住所・設...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - head要素

head 要素は「ページの設定・プロフィールを書く場所」まずイメージからいきます。<head> は、「画面に直接は見えないけれど、ページにとって超重要な情報」を書く場所です。タイトル文字コードスマホ向...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - DOCTYPE宣言

DOCTYPE 宣言は「これはどのルールの HTML ですよ」という最初のひと言HTML ファイルの一行目に書くこれ:<!DOCTYPE html>これが DOCTYPE 宣言 です。役割を一言でいう...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - HTML文書の基本構造

HTML 文書の基本構造は「家の骨組み」みたいなものまずイメージからいきます。HTML ファイルは、ただタグを並べればいいわけではなく、「決まった骨組み(ひな形)」 を持っています。その骨組みがあるか...
JavaScript

JavaScript | HTML / CSS 連携:HTML基礎 - HTMLの役割

HTML の役割は「中身の意味を伝えること」まず一番大事なことから。HTML の役割は「見た目を決めること」ではなく「中身の意味(構造)を伝えること」 です。人間にとっては「画面にどう見えるか」ですが...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - 安全なメソッド

「安全なメソッド」を一言でいうとHTTP でいう「安全なメソッド」は、「サーバー側の状態を変えないメソッド」 のことです。何回呼んでも、DB の中身が変わらない。新しいデータも増えないし、削除もされな...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - 冪等性

冪等性を一言でいうと冪等性(べきとうせい)は、「同じ操作を何回繰り返しても、最終的な結果が変わらない性質」のことです。1 回やっても、10 回やっても、「状態」が同じなら冪等。回数によって結果が変わる...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - PATCH

PATCH を一言でいうとPATCH は「このリソースの“一部だけ”を変えてほしいときに使うメソッド」です。PUT が「丸ごと上書きして」なら、PATCH は「ここだけ直して(パッチを当てて)」という...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - DELETE の役割

DELETE を一言でいうとDELETE は「この URL が指しているものを“消して”」とサーバーに頼むためのメソッドです。ユーザー削除商品削除お気に入り解除など、「そのリソース自体をなくす・無効に...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - PUT の役割

PUT を一言でいうとPUT は「この場所のデータを“丸ごとこの内容で上書きして”というメソッド」です。POST が「新しく作って」だとしたら、PUT は「ここにあるものを、このデータで置き換えて」で...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - POST の役割

POST を一言でいうとPOST は「サーバーにデータを送りつけて、“何かしらの処理をしてもらう”ためのメソッド」です。特に重要なのは、新しいデータ(リソース)を作成するサーバー側の状態を変えるという...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - GET の役割

GET を一言でいうとGET は「サーバーのデータを“読むだけ”のメソッド」です。「この URL の内容を見せて」「このデータを教えて」というときに使います。サーバー側の状態を変えない(書き換えない)...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - HTTP メソッド一覧

HTTP メソッドを一言でいうとHTTP メソッドは「この URL に対して、サーバーに何をしてほしいのか」を表す“動詞”です。同じ /users という URL でも、GET なら「取得したい」、P...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - リクエスト / レスポンス

リクエスト / レスポンスを一言でいうとHTTP の世界は、ものすごく乱暴に言うと「お願い」と「返事」だけでできています。ブラウザやアプリがサーバーに送る「お願い」がリクエスト、サーバーがそれに対して...
Java

Java | Web 基礎・HTTP・REST:HTTP 基礎 - HTTP プロトコル概要

HTTP プロトコルを一言でいうとHTTP は「ブラウザ(クライアント)と Web サーバーが会話するための“決まりごと(プロトコル)”」です。ブラウザが「このページください」「このデータください」と...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - API 利用のベストプラクティス

API 利用のベストプラクティスは「安全・高速・壊れない」を同時に満たす設計API を使うときに初心者がつまずきやすいのは、「動くコード」と「正しいコード」の違い です。API は動くだけなら簡単です...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - 権限管理設計

「権限管理設計」は“技術”じゃなくて“信頼”の設計位置情報、カメラ、マイク、通知、センサー、ストレージ…。Web API の多くは「権限(permission)」をユーザーに確認してから使います。ここ...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - HTTPS の重要性

HTTPS は「盗み見・改ざん・なりすまし」をまとめて防ぐ“前提条件”まず一番大事なことから。今どきの Web 開発で「HTTP でいい場面」はほぼゼロ です。ログインがあるから HTTPSクレジット...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - CSP(Content Security Policy)

CSP は「このページで何をしていいか」をブラウザに教えるルールブックCSP(Content Security Policy)は、「このページでは、こういうリソースだけ読み込んでいい/こういうスクリプ...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - CSRF 対策

CSRF は「ユーザーになりすまして勝手に操作させる攻撃」まずイメージからいきます。CSRF(Cross-Site Request Forgery)は、「ログイン中のユーザーになりすまして、別サイトか...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - XSS 対策

XSS は「ユーザーの入力が“そのままスクリプトになる”事故」まず、XSS(クロスサイトスクリプティング)のイメージからいきます。XSS は、ざっくり言うと「ユーザーが入力した文字列が、そのまま HT...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - 非同期パフォーマンス

「非同期パフォーマンス」は“待ち時間をどう見せるか”の技術JavaScript のパフォーマンスって聞くと、「処理をどれだけ速くするか」をイメージしがちですが、非同期の世界ではもう一つ大事な視点があり...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - メモリ監視

「メモリ監視」は“どれだけ詰め込んでいて、どれだけ片付いていないか”を見ることパフォーマンスは「速さ」だけじゃなくて、「どれだけメモリを使っているか」も重要です。メモリを使いすぎると、ブラウザが重くな...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - 計測(time / mark)

「計測」は“なんとなく遅い”を数字に変えるための技術パフォーマンスの話で一番大事なのは、「速い/遅い」を 感覚ではなく数字で話せるようになること です。そのために使うのが、console.time /...
JavaScript

JavaScript | Web API:パフォーマンス・セキュリティ - Performance API

Performance API は「なんとなく速い/遅い」を数字にするための道具「このページ、なんか重いな…」「この処理、体感遅いけど、どれくらい遅いんだろう?」Performance API は、こ...
Python

Python | DevOps・運用:CI 自動テスト

CI 自動テストって何?一言でいうと「人がサボっても、機械が毎回テストしてくれる仕組み」CI 自動テストは、コードを GitHub に push したり Pull Request を作ったタイミングで...
Python

Python | DevOps・運用:Issue 管理

Issue 管理って何?一言でいうと「やるべきこと・困っていることを“見える化”して、迷子をなくす仕組み」Issue 管理は、「タスク・バグ・改善点・相談ごと」をすべて Issue として記録し、整理...
Python

Python | DevOps・運用:コードレビュー運用

コードレビュー運用って何?一言でいうと「一人の頭の中のコードを、チームの知恵に変える仕組み」コードレビュー運用は、「Pull Request をどうレビューするか」を、チームとしてのルールや習慣に落と...
Python

Python | DevOps・運用:Pull Request

Pull Requestって何?一言でいうと「この変更、main に入れていいか一緒に確認してもらうための“申請書”」Pull Request(PR)は、「自分がブランチで作った変更を、main(や他...
Python

Python | DevOps・運用:GitHub Flow

GitHub Flowって何?一言でいうと「小さく枝を切って、小さくレビューして、小さく本番に出すためのルール」GitHub Flow は、「GitHub を使って開発するときの、シンプルなブランチ運...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - ジェネリクス設計の判断基準

ゴール:「ここはジェネリクスにする/しない」を自分で決められるようになることジェネリクスを“書ける”ようになった次のステップは、「どこで使うべきか」「どこでは使うべきでないか」を判断できることです。こ...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - 実務でよくある失敗例

ゴール:「“ありがちな事故パターン”を先に知っておいて、自分のジェネリクスを危険運転にしない」ジェネリクスは強力だけど、そのぶん「やらかしポイント」も多いです。しかも、やらかした瞬間はコンパイルが通る...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - 可読性の高いジェネリクス

ゴール:「型が強いのに“怖くないコード”としてジェネリクスを書けるようになる」ジェネリクスって、慣れてない人から見ると「T とか U とかよく分からん記号が飛び交ってて怖いコード」に見えがちです。でも...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - 過剰ジェネリクスの回避

ゴール:「ジェネリクスは“カッコいい飾り”じゃなくて、“必要なときだけ出す道具”だと理解するジェネリクスに慣れてくると、ほぼ確実に一度は通る道があります。それが 「何でもかんでも <T> を付けたくな...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - ジェネリクスの再利用設計

ゴール:「そのジェネリクス“だけ”で終わらせず、プロジェクト全体で使い回せる形に育てる感覚を持つここまでで、ジェネリクスそのものの書き方はかなり分かってきていると思います。ここから一歩進めて大事になる...
JavaScript

JavaScript | Web API:位置情報・センサー - プライバシー配慮

センサーとプライバシーは「技術」じゃなくて「人の生活」に触れている話位置情報・カメラ・マイク・DeviceMotion・DeviceOrientation…。これらは全部、「あなたがどこにいて、何をし...
JavaScript

JavaScript | Web API:位置情報・センサー - センサー利用の注意点

センサー利用の「注意点」は“技術”と“人間”の両方を見ること位置情報・DeviceOrientation・DeviceMotion・カメラ・マイク…。どれも「現実世界のあなた」を Web に持ち込むた...
JavaScript

JavaScript | Web API:位置情報・センサー - バッテリー API(廃止傾向)

バッテリー API は「端末の電池残量をブラウザから覗く仕組み」だったまずイメージからいきます。バッテリー API(Battery Status API)は、ブラウザから「この端末のバッテリー残量や充...
JavaScript

JavaScript | Web API:位置情報・センサー - DeviceMotion

DeviceMotion は「端末がどれくらい“揺れているか・加速しているか”」を教えてくれるセンサーまずイメージからいきます。DeviceMotion は、スマホやタブレットの「動き」そのものを数値...
JavaScript

JavaScript | Web API:位置情報・センサー - DeviceOrientation

DeviceOrientation は「端末がどっち向いているか」を教えてくれるセンサーまずイメージからいきます。DeviceOrientation は、スマホやタブレットの「向き」を教えてくれる仕組...
JavaScript

JavaScript | Web API:位置情報・センサー - 権限管理

「権限管理」は“ユーザーの OK がないと触れない領域をどう扱うか”の話位置情報・カメラ・マイク・通知・センサー系は、どれも「ユーザーのプライバシーや安全」に直結します。だからブラウザは、こういう機能...
JavaScript

JavaScript | Web API:位置情報・センサー - 精度と誤差

「精度と誤差」は“どれくらい当たっていて、どれくらいズレているか”の話位置情報を扱うときに絶対に避けて通れないのが「精度(accuracy)」と「誤差(error)」 です。地図アプリを開いたら、自分...
JavaScript

JavaScript | Web API:位置情報・センサー - watchPosition

watchPosition は「動いたらそのたびに現在地を教えてもらう」仕組み前回の getCurrentPosition は「今どこ?」を一回だけ聞く API でした。watchPosition は...
JavaScript

JavaScript | Web API:位置情報・センサー - 現在地取得

「現在地取得」は“ブラウザに今いる場所を一回だけ教えてもらう”こと「現在地取得」と聞いたら、まずイメージしてほしいのはこれです。ブラウザに「今どこにいる?」と一度だけ質問して、緯度・経度などの位置情報...
JavaScript

JavaScript | Web API:位置情報・センサー - Geolocation API

Geolocation API は「ブラウザに“今どこにいるか”を教えてもらう窓口」まずイメージからいきます。Geolocation API は、ブラウザに対して「このユーザーが今どこにいるか教えて」...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel→PDF変換

Excel→PDF変換は「Excel帳票を自動でPDF化し、提出・共有・保管を一瞬で完了させる」ための最強スキル業務効率化を本気で考える人にとって、Excel→PDF変換の自動化は“Pythonで最も...
30日で身につけるPython

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel→CSV変換

Excel→CSV変換は「Excelをシステム連携しやすいCSV形式に自動変換し、業務フローを高速化する」ための最強スキル業務効率化を本気で考える人にとって、Excel→CSV変換の自動化は“Pyth...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - CSV→Excel変換

CSV→Excel変換は「大量のCSVを一瞬でExcel化し、整形・加工・レポート作成の土台を自動で作る」ための最強スキル業務効率化を本気で考える人にとって、CSV→Excel変換の自動化は“Pyth...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel分割

Excel分割は「大きなExcelを条件ごとに自動で切り分け、管理しやすい小さなファイルに変換する」ための最強スキル業務効率化を本気で考える人にとって、Excel分割(スプリット処理)は“Python...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - 複数Excel統合

複数Excel統合は「大量のファイルを一瞬でまとめ、分析可能な1つのデータに変換する」ための最強スキル業務効率化を本気で考える人にとって、複数Excelファイルの統合は“Pythonで最も効果が高い自...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - ExcelKPIレポート

Excel KPIレポートは「経営判断に必要な指標を自動生成し、意思決定を高速化する」ための最強スキルKPIレポートの自動化は“最も価値の高いExcel業務自動化” です。KPIレポートは、単なる集計...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel経営レポート

Excel経営レポートは「経営判断に必要なKPI・分析・グラフを自動生成し、意思決定を高速化する」ための最強スキル経営レポートの自動化は“最も価値の高いExcel業務自動化” です。経営レポートは、単...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel週次レポート

Excel週次レポートは「毎週の集計・分析・グラフ作成を自動化し、作業時間をゼロにする」ための最強スキル週次レポートの自動化は“最も費用対効果が高いExcel業務自動化” です。毎週のルーティン作業は...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel日次レポート

Excel日次レポートは「毎日の集計・分析・グラフ作成を自動化し、作業時間をゼロにする」ための最強スキル日次レポートは“自動化の恩恵が最も大きいExcel業務”のひとつ です。毎日繰り返す作業こそ、P...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel月次レポート

Excel月次レポートは「毎月の集計・分析・グラフ作成を完全自動化し、作業時間をゼロにする」ための最強スキル月次レポートは Python × Excel 自動化の“最も効果が大きい領域” です。毎月の...
Java

Java | 1 日 90 分 × 7 日アプリ学習 初級編:ミニToDoアプリ(CUI)

1日目のゴール1日目のテーマは「ミニToDoアプリを“ちゃんとクラス設計して、List で管理し、入力で動かす”感覚をつかむこと」 です。いきなり完璧なアプリを作るのではなく、クラスをどう分けるかタス...
Java

Java | 1 日 90 分 × 7 日アプリ学習 初級編:Map を使うアプリ

1日目のゴール1日目のテーマは「Map=“キーと値のペアを覚えておくノート”という感覚をつかむこと」 です。今日はまだ、HashMap の細かいメソッドを全部覚える日ではありません。まずは頭の中に、「...
Java

Java | 1 日 90 分 × 7 日アプリ学習 初級編:List を使うアプリ

1日目のゴール1日目のテーマは「配列は“長さが固定”、ArrayList は“長さが変えられる”」という感覚をつかむこと です。今日はまだ、メソッド名を全部暗記する日ではありません。頭の中にまず、「配...
Java

Java | 1 日 90 分 × 7 日アプリ学習 初級編:コンストラクタ入門アプリ

1日目のゴール1日目のテーマは「コンストラクタって何?」「初期化って何してるの?」を“ふわっと”から“ハッキリ”に変えること です。今日はまだ「書き方を全部覚える日」じゃなくて、コンストラクタ=そのク...
C#

C# | アルゴリズムと再帰関数 (recursive function)

前半:C#で「アルゴリズム」と「再帰関数」の土台をつくるC#は型がはっきりしていて、メソッド呼び出しの流れも追いやすいので、再帰を学ぶにはかなり良い言語だと思う。ここでは、プログラミング初心者でも「再...
Python

Python | アルゴリズムと再帰関数 (recursive function)

前半:Pythonで「アルゴリズム」と「再帰関数」の土台をつくるPythonは文法がシンプルで、エラーも読みやすいので、アルゴリズムや再帰を学ぶにはかなり向いている言語だと思う。ここではまず、「アルゴ...
Java

Java | アルゴリズムと再帰関数 (recursive function)

前半:Javaで理解する「アルゴリズム」と「再帰関数」の基礎Javaは静的型付けで、関数(メソッド)の動きが明確に見えるため、再帰の学習にとても向いている言語だ。ここでは、プログラミング初心者でも「再...
JavaScript

JavaScript | アルゴリズムと再帰関数 (recursive function)

前半:アルゴリズムと再帰関数の「土台」を固めるJavaScriptでアルゴリズムや再帰を学ぶのは、かなり良い選択です。ブラウザでもNode.jsでもすぐ試せるし、エラーもその場で見えるので「手を動かし...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day30:総復習 練習問題

Day30 総復習の練習問題Day30 は「30 日間の学習で身につけた力を、自分の手で確認する日」です。ここでは、総復習の 5 つの柱に沿って、条件分岐・配列・DOM 操作・イベント処理・小規模 W...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day30:総復習

Day30 前半のゴールここまで 29 日間かけて作ってきた TODO アプリは、「小さな Web アプリ」としてちゃんと成立しています。Day30 は総復習。前半では、次のポイントを一つずつ確認して...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day29:TODOアプリ⑤ 練習問題

Day29:TODOアプリ⑤の練習問題Day29 のテーマは コード整理と関数分割。ここでは、前半・後半で学んだ内容をしっかり定着させるために、「実際に手を動かして理解できる」練習問題と丁寧な解答・解...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day29:TODOアプリ⑤

Day29 前半のゴールDay29 のテーマは コード整理と関数分割。ここまでで TODO アプリはかなり機能が増えましたが、そのぶんコードが長くなり、「どこで何をしているのか」が少しずつ見えにくくな...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day28:TODOアプリ④ 練習問題

Day28:TODOアプリ④の練習問題Day28 のテーマは 完了機能(チェックボックスでタスクの状態を切り替える)。ここでは、前半・後半で学んだ内容をしっかり定着させるために、段階的な練習問題と丁寧...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day28:TODOアプリ④

Day28 前半のゴールここまでで、TODOアプリは「追加・削除・保存・復元」までできるようになりました。Day28 のテーマは 完了機能。前半でやるのは、ざっくり言うとこの2つです。タスクに「完了し...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day27:TODOアプリ③ 練習問題

Day27:TODOアプリ③の練習問題Day27 のテーマは localStorage を使ったタスク保存と復元。ここでは、初心者でも確実に理解できるように、段階的な練習問題と丁寧な解答・解説をまとめ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day27:TODOアプリ③

Day27 前半のゴールここまでで、TODOアプリは「追加」と「削除」ができるようになりました。Day27 のテーマは localStorage 保存。前半ではまず、ページをリロードしてもタスクが消え...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day26:TODOアプリ② 練習問題

Day26:TODOアプリ②の練習問題Day26 のテーマは タスク削除機能の実装。ここでは、前半・後半で学んだ内容をしっかり定着させるために、段階的な練習問題と丁寧な解答・解説をまとめます。削除ボタ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day26:TODOアプリ②

Day26 前半のゴールDay25 で「タスクを追加できる TODO アプリ」ができました。Day26 のテーマは タスク削除の実装。前半ではまず、「どのタスクを消すか」をどう特定するか削除ボタンをど...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day25:TODOアプリ① 練習問題

Day25:TODOアプリ①の練習問題Day25 のテーマは TODOアプリのタスク追加機能。ここでは、前半・後半で学んだ内容をしっかり定着させるための練習問題と、丁寧な解答・解説をまとめます。タスク...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day25:TODOアプリ①

Day25 前半のゴールいよいよ「ちゃんとした Web アプリ」に一歩踏み込むところです。Day25 のテーマは TODOアプリ①:タスク追加の実装。前半ではまず、タスクを入力する画面を作る「追加」ボ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day24:アプリ設計 練習問題

Day24:アプリ設計の練習問題Day24 のテーマは 入力・処理・出力。これはどんな Web アプリでも必ず存在する「3つの柱」です。ここでは、初心者でも確実に理解できるように、段階的な練習問題と丁...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:ミニWebアプリ開発 - Day24:アプリ設計

Day24 前半のゴールここからはいよいよ「ミニWebアプリ開発」のフェーズです。Day24 のテーマは アプリ設計。キーワードはとてもシンプルで、入力処理出力この 3 つです。前半では、なぜ「入力・...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day23:総合演習② 練習問題

Day23:総合演習②(簡易メモ帳)の練習問題Day23 のテーマは「簡易メモ帳」。ここまで学んだ DOM 操作・イベント・関数分割・localStorage・デバッグ を総動員して作る総合演習です。...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day23:総合演習②

Day23 前半のゴール今日のテーマは「総合演習②:簡易メモ帳」です。ここまで学んできたDOM 操作フォーム入力localStorage による保存関数分割デバッグ(console.log)を全部まと...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day22:デバッグ 練習問題

Day22:デバッグの練習問題デバッグは「バグを直す技術」ではなく、「バグの原因を見つける技術」です。Day22 の学習内容である console.log と エラー確認 を中心に、初心者でも確実に力...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day22:デバッグ

Day22 前半のゴールここまでで、かなりいろいろ書けるようになってきたはずです。でも、こう感じる瞬間が増えてきていない?「動かない。どこが悪いのか分からない。」「エラーが出てるけど、何を言われている...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day21:関数分割 練習問題

Day21:関数分割の練習問題関数分割は「大規模化の基礎」です。処理を整理し、読みやすく、変更しやすく、再利用しやすいコードを書くための必須スキルです。ここでは Day21 の内容に沿って、初心者でも...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day21:関数分割

Day21 前半のゴールここまでで、DOM 操作・入力チェック・localStorage など、かなり多くのことを学んできました。その結果、こう感じていないでしょうか。「コードが長くなってきて、どこに...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day20:localStorage 練習問題

Day20:localStorageの練習問題localStorage は「ブラウザにデータを保存する」ための仕組みで、Web アプリを作るうえで欠かせない機能です。ここでは Day20 の内容をしっ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day20:localStorage

Day20 前半のゴールここまでで「入力して」「チェックして」「画面に表示する」ところまでは来ました。Day20 では、そこから一歩進んで、「データをブラウザに保存する」ことを学びます。キーワードは ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day19.5:条件 + DOM応用 練習問題

Day19.5:条件 + DOM 応用の練習問題複雑なフォーム処理では、「複数の項目を複数の条件でチェックし、エラーをまとめて管理し、見た目にも反映する」という高度な DOM 操作が必要になります。こ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day19.5:条件 + DOM応用

Day19.5 前半のゴールDay19.5 は、Day19 までに学んだ「入力チェック」「条件分岐」「DOM 操作」をもう一段レベルアップさせて、“ちょっと複雑なフォーム”を扱えるようになる日です。前...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day19:条件 + DOM 練習問題

Day19:条件 + DOMの練習問題入力チェックは「ユーザーの入力をそのまま信用しない」ための重要な技術です。ここでは、Day19 の内容を確実に身につけるために、段階的な練習問題と丁寧な解答・解説...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day19:条件 + DOM

Day19 前半のゴールDay19 は「条件分岐(if)+ DOM + フォーム入力」を組み合わせて、“ちゃんと入力されているかチェックする” という、超実務的なテーマに入ります。前半のゴールはこうで...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day18.5:フォーム操作② 練習問題

Day18.5:フォーム操作②の練習問題チェックボックスとラジオボタンは、テキスト入力とはまったく違う性質を持つフォーム要素です。「オンかオフか」「複数選択してよいか」「1つだけ選ぶのか」など、ユーザ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day18.5:フォーム操作②

Day18.5 前半のゴールDay18 では「テキスト入力(input.value)」を扱いました。Day18.5 では一歩進んで、チェックボックスとラジオボタンを扱います。チェックボックスとラジオボ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day18:フォーム操作 練習問題

Day18:フォーム操作の練習問題input の値を JavaScript で取得することは、Webアプリの基礎中の基礎です。ここでは、Day18 の内容をしっかり定着させるために、段階的な練習問題と...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day18:フォーム操作

Day18 前半のゴールDay18 では、いよいよ「フォーム操作」に入ります。ここまでで「クリックされたら文字を変える」「要素を増やす」はできるようになりました。ここからは、ユーザーが入力した値を J...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day17:イベント処理 練習問題

Day17:イベント処理の練習問題click イベントは「ユーザーの操作をきっかけに JavaScript を動かす」ための最重要機能です。ここでは、Day17 の内容をしっかり定着させるために、段階...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day17:イベント処理

Day17 前半のゴールDay17 は 「イベント処理」=ユーザーの操作に反応して JavaScript を動かす仕組み を本格的に理解する日です。特に click イベント は、Webアプリの 80...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day16.5:DOM操作③ 練習問題

Day16.5:DOM操作③の練習問題classList・style・remove は「見た目を変える」「状態を表現する」「要素を消す」という、Webアプリの UI 制御に欠かせない機能です。ここでは...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day16.5:DOM操作③

Day16.5 前半のゴールDay16.5 では、DOM 操作をもう一段レベルアップさせます。これまで「要素を増やす・文字を変える」はできるようになりました。ここからは「見た目を変える」「要素を消す」...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day16:DOM操作② 練習問題

Day16:DOM操作②の練習問題createElement と appendChild は「新しい要素を作って、DOM に追加する」ための基本操作です。Day16 の内容をしっかり定着させるために、...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:Webページを操作できるようになる - Day16:DOM操作②

Day16 前半のゴールDay16 では、いよいよ「HTMLをあとから増やす」世界に入ります。これまでの document.getElementById / textContent は「既にある要素を...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day15:総合演習① 練習問題

Day15:総合演習①の練習問題ボタンクリックで文字を変更する仕組みは、DOM 操作の基礎をすべて含んだ「総合問題」です。document.getElementById、textContent、イベン...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day15:総合演習①

Day15 前半のゴールDay15 は「総合演習」です。ここまで学んできた JavaScript の基礎と DOM 操作を組み合わせて、「ボタンクリックで文字が変わる小さなアプリ」を、自分の手で組み立...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day14:DOM操作① 練習問題

Day14:DOM操作①の練習問題document.getElementById と textContent は、DOM 操作の“入口”であり、Webアプリを作るための最初の大きな壁です。ここでは、初...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day14:DOM操作①

Day14 前半のゴールDay14 からいよいよ「画面(HTML)を JavaScript でいじる世界」に入ります。ここを超えると、「ただの計算」から「動くWebページ」を作る側に回れます。前半のゴ...
Java

Java | 1 日 90 分 × 7 日アプリ学習 初級編:クラス分割アプリ

1日目のゴール1日目のテーマは「Javaの“クラス”ってそもそも何者なのか」と「mainメソッドとの関係」を、頭の中でスッキリさせること です。いきなり「クラス分割しよう!」と言われても、クラスの正体...
Python

Python | 1 日 120 分 × 7 日アプリ学習:Flaskで作る超簡単Webアプリ(中級編)

1日目のゴール1日目のテーマは「Flaskで“自分のPCの中だけで動く超ミニWebサーバー”を立ち上げて、URLごとに表示内容を変えられるようになる」ことです。ここで言う「Webアプリ」は、いきなり本...
Python

Python | 1 日 120 分 × 7 日アプリ学習:API取得アプリ(requests使用)(中級編)

1日目のゴール1日目のテーマは「requests を使って、外部APIからデータを1回取ってくる」 ところまで行くことです。今日できるようになってほしいのは、この2つです。外部APIって何をしているの...
Python

Python | 1 日 120 分 × 7 日アプリ学習:tkinterで作るGUIアプリ(中級編)

1日目のゴール1日目のテーマは「tkinterでウィンドウを出して、ボタンを押したら何かが起きる」ここまでを自分の手で動かせるようになることです。今日できるようになってほしいのは、この2つです。ウィン...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day13.5:非同期処理 練習問題

Day13.5:非同期処理 練習問題セットPromise / async / await は、JavaScript を「実務レベル」で扱うための必須スキルです。ここでは、初心者でも確実に理解できるよう...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day13.5:非同期処理

Day13.5 前半のゴール非同期処理は「今すぐ終わらない処理」と仲良くするための仕組みです。ネットワーク通信、ファイル読み込み、タイマーなどはすぐに終わらないので、JavaScript は「待ちなが...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day13:例外処理 練習問題

Day13 例外処理の練習問題try / catch は「エラーが起きてもアプリを落とさない」ための超重要スキルです。ここでは、初心者でも確実に理解できるように、実践的な練習問題と丁寧な解説をまとめま...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day13:例外処理

Day13 前半のゴールDay13 は「エラーが起きたら終わり」から「エラーが起きても、ちゃんと受け止めて処理を続ける」世界に進む日です。前半のゴールはこの2つです。Day13 前半でつかみたい感覚t...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day12.5:オブジェクト応用 練習問題

Day12.5 オブジェクト応用の練習問題ネスト構造とデータ整形は、JavaScript の実務で最も重要なスキルのひとつです。ここでは、初心者でも確実に理解できるように、段階的な練習問題と丁寧な解説...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day12.5:オブジェクト応用

Day12.5 前半のゴールDay12.5 は「オブジェクトを“ただの箱”として見る段階」から「構造を設計して、欲しい形に整える段階」に進む日です。前半のゴールはこの2つです。Day12.5 前半でつ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day12:配列応用 練習問題

Day12 配列応用の練習問題map / filter / forEach は JavaScript 実務で最も使われる三種の神器。ここでは、初心者でも確実に理解できるように、それぞれの特徴を活かした...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day12:配列応用

Day12 前半のゴールDay12 は「配列を“ただ回す”段階から、“意味を持って変換・抽出・処理する”段階」に進む日です。テーマは map / filter / forEach。しかも「実務で超重要...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day11:文字列操作 練習問題

Day11 文字列操作の練習問題template literal / split / replace を「実際に使える」レベルにするための練習問題です。初心者でも確実に理解できるように丁寧に解説します...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day11:文字列操作

Day11 前半のゴールDay11 は「文字列を“ただ表示する”から“自在に扱う”」ステージに進む日です。前半では特に次の感覚をつかむことをゴールにします。Day11 前半で身につけたいことtempl...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day10.5:条件分岐の応用 練習問題

Day11.5 条件分岐の応用の練習問題三項演算子と switch は、JavaScript の条件分岐を「短く」「読みやすく」「安全に」書くための重要ツールです。ここでは、初心者でも確実に理解できる...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day10.5:条件分岐の応用

Day11.5 前半のゴールDay11.5 は「条件分岐をもっとコンパクトに・読みやすく」書くための日です。テーマは三項演算子と switch。前半ではまず、それぞれをこういうイメージでつかむことを目...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day10:関数② 練習問題

Day10 関数②の練習問題Day10 のテーマは スコープ / 無名関数 / アロー関数。ここでは、理解を深めるための練習問題と、それぞれの解答・解説をまとめていきます。関数②は「書き方の幅が広がる...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day10:関数②

Day10 前半のゴールDay10 は「関数レベルを一段上げる日」です。テーマはスコープ・無名関数・アロー関数。前半では特に、Day10 前半で押さえたいポイントスコープ=「変数が生きている範囲」とい...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day9:関数① 練習問題

Day9 関数①の練習問題Day9 のテーマは function / 引数 / return。ここでは、関数の基本をしっかり理解するための練習問題と、それぞれの解答・解説をまとめていきます。関数は「処...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day9:関数①

Day9 前半のゴールDay9 のテーマは「関数」です。ここから一気に「コードを部品として再利用する」力が手に入ります。前半では、まず次の3つをしっかり押さえることをゴールにします。Day9 前半で身...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day8:オブジェクト 練習問題

Day8 オブジェクトの練習問題Day8 のテーマは オブジェクト / key / value。ここでは、オブジェクトの基本操作をしっかり身につけるための練習問題と、それぞれの解答・解説をまとめていき...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScriptを使えるレベルにする - Day8:オブジェクト

Day8 前半のゴールDay8 のテーマは「オブジェクト」です。ここから一気に「現実世界の情報をそのままコードで表現する」力が手に入ります。前半では、とくに次の感覚をつかむことをゴールにします。Day...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day7:配列 練習問題

Day7 配列の練習問題Day7 のテーマは 配列 / push / splice。ここでは、配列操作の理解を深めるための練習問題と、それぞれの解答・解説をまとめていきます。配列は JavaScrip...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day7:配列

Day7 前半のゴールDay7 のテーマは「配列」です。ここから一気に「データをまとめて扱う」力が手に入ります。前半では、まず次の3つを目標にします。Day7 前半で身につけたいこと配列とは何かをイメ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day6:繰り返し 練習問題

Day6 繰り返しの練習問題Day6 のテーマは for と while。ここでは、繰り返し処理の理解を深めるための練習問題と、それぞれの解答・解説をまとめていきます。初心者がつまずきやすいポイントを...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day6:繰り返し

Day6 前半のゴールDay6 のテーマは「繰り返し」です。ここから一気に「コンピュータらしさ」が強くなります。前半では、特に次の2つを目標にします。Day6 前半で身につけたいこと同じ処理を「何回も...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day5:条件分岐 練習問題

Day5 条件分岐の練習問題Day5 のテーマは if / else / else if。ここでは、条件分岐の理解を深めるための練習問題と、それぞれの解答・解説をまとめていきます。初心者がつまずきやす...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day5:条件分岐

Day5 前半のゴールDay5 のテーマは「条件分岐」です。ここから一気に「プログラムが考えて動く」感じが強くなります。前半では、まず if / else / else if の基本形 をしっかり押さ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day4:演算子 練習問題

Day4 演算子の練習問題Day4 のテーマは 四則演算・比較演算・論理演算。ここでは、学んだ内容をしっかり定着させるための練習問題と、それぞれの解答・解説をまとめていきます。初心者がつまずきやすいポ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day4:演算子

Day4 前半のゴールDay4 のテーマは「演算子」です。演算子は、値と値のあいだで「計算する」「比べる」「組み合わせる」といった操作をするための記号です。前半では、次の3つをしっかり押さえることを目...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day3:データ型 練習問題

Day3 データ型の練習問題Day3 のテーマは string / number / boolean / null / undefined。ここでは、学んだ内容をしっかり定着させるための練習問題と、そ...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day3:データ型

Day3 前半のゴールDay3 のテーマは「データ型」です。Day2 で「変数」という“箱”を学びましたが、今日は「その箱の中に入る中身の種類」を理解していきます。ここを押さえておくと、「この値はどう...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day2:変数 練習問題

Day2 変数の練習問題Day2 のテーマ「let」「const」「変数命名」「基本は const」これらをしっかり理解できているか確認するための練習問題です。すべて 自分の手で書いて動かす ことを前...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day2:変数

Day2 前半のゴールDay2 のテーマは「変数」です。ここをしっかり押さえられるかどうかで、この先の理解スピードが大きく変わります。前半では次の3つに集中します。Day2 前半でやること変数とは何か...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day1:JavaScriptとは・環境構築 練習問題

Day1 練習問題Day1 の内容「JavaScriptとは」「ブラウザで動く仕組み」「HTMLとの関係」「VS Code導入」「scriptタグ」「Hello World」これらをしっかり理解できた...
30日で身につけるJavaScript

JavaScript | ゼロからはじめるプログラミング、30日で基礎を学ぶJavaScript:JavaScript文法の基礎 - Day1:JavaScriptとは・環境構築

JavaScript学習カリキュラム(30日完全基礎ロードマップ)カリキュラム全体像このカリキュラムは、プログラミング未経験者が「JavaScriptの基礎を理解し、自力で小さなWebアプリを作れる状...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務応用 - Day30 アウトプット

Day30 前半のゴール「“頭の中の設計”を、他人と共有できる形に書き出せるようになる」いよいよ Day30。ここまでで、MySQL を使って「それなりにちゃんとしたシステム」を作れるところまで来まし...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務応用 - Day29 総合課題

Day29 前半のゴール「“バラバラに学んだピースを、1つのECシステムとして頭の中で組み上げる”」ここまでで、テーブル設計、インデックス、API連携、ログ、権限、障害対応まで、一通りのピースを学んで...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務応用 - Day28 障害対応

Day28 前半のゴール「“DBでトラブルが起きたときの見方”を持てるようになる」ここからは、ちょっと怖いテーマです。「障害対応」――データ破損やロック問題の話です。前半のゴールはこうです。データ破損...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務応用 - Day27 権限管理

Day27 前半のゴール「“誰が何をしていいか”を、設計として説明できるようになる」ここからは「権限管理」です。パフォーマンスやAPI連携が「どう動かすか」だとしたら、権限管理は「誰にどこまで触らせる...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務応用 - Day26 ログ設計

Day26 前半のゴール「“あとからちゃんと追えるDB”とは何かを理解する」ここからは「ログ設計」です。パフォーマンスやAPI連携が“攻め”だとしたら、ログは“守りと証拠”の領域です。今日の前半のゴー...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務応用 - Day25 API連携

Day25 前半のゴール「“APIがDBの入口になる”イメージを、はっきり持てるようになる」Day24 で「アプリから MySQL に直接つなぐ」話をしました。Day25 は、そこにもう一段レイヤーを...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務応用 - Day24 アプリ連携

Day24 前半のゴール「“アプリからMySQLに話しかける”流れを、自分でイメージできるようになる」ここまでで、MySQL 単体での設計・チューニングはかなり触ってきました。Day24 からは「アプ...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:数値エラー行の検出

ゴールのイメージをそろえる今回のテーマは「Power Query で “数値になってほしい列”に変な値が入っている行をきれいに検出する実務テンプレ」です。ここでいう「数値エラー行」は、例えばこんな状態...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:日付が不正な行を除外

ゴールのイメージをそろえる今回のテーマは「Power Query で 日付が変(読めない・ありえない)な行だけをきれいに除外する実務テンプレ」です。やりたいことはシンプルで、「日付が壊れている行は、集...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:日付文字列を日付型変換

ゴールのイメージをそろえる今回のテーマは「2024/10/01 や 2024-10-01 のような“日付っぽい文字列”を、Power Query で ちゃんと日付型(type date)に変換する実務...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:カンマ付き数値を数値化

ゴールのイメージをそろえる今回のテーマは「1,234 や 12,345,678 のような カンマ付き数値を、Power Query で“ちゃんと数値型”に変換する実務テンプレ」です。見た目は数字なのに...
Power Query M Formula Language

Power Query 実務テンプレ | クレンジング(前処理)系:改行コード削除

ゴールのイメージをそろえる今回のテーマは「Power Query で セル内に紛れ込んだ改行コード(折り返し)をきれいに削除する実務テンプレ」です。Excel で「セル内改行(Alt+Enter)」が...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - アクセシブル配色設計

アクセシブル配色設計は「誰にとっても読める・分かる色設計」のことおしゃれな配色と、アクセシブルな配色は別物です。アクセシブル配色設計は、「見えにくい人・色の区別がつきにくい人・小さい画面で見る人」も含...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - opacityと透明の違い

opacity と「透明色(rgba/transparent)」は“似ているようで全く違う”初心者が必ずつまずくポイントが opacity と rgba の透明度の違い です。どちらも「透明にする」よ...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - currentColor活用

currentColor は「その要素の文字色を再利用するためのキーワード」currentColor は、「この要素に今効いている color の値」を指す 特別な色キーワード です。一言でいうと、“...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - mix-blend-mode

mix-blend-mode は「下の色と“混ぜて描画する”」フォトショップ系テクニックmix-blend-mode は、要素の色を「そのまま上に乗せる」のではなく、下にある背景や要素の色と“合成して...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - filter応用

filter は「画像や要素に後からレタッチをかける」CSS版フォトショップfilter は、要素そのものにぼかし・明るさ・コントラスト・彩度・モノクロ・セピア…などの“画像加工フィルター” をかける...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - backdrop-filter

backdrop-filter は「要素の後ろにある背景だけをぼかす・加工する」魔法のようなプロパティ普通の filter は「要素そのもの」をぼかしますが、backdrop-filter は “要素...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - グラスモーフィズム

グラスモーフィズムは「背景をぼかした半透明カード」で“空気感”をデザインする技術ガラス越しに背景が見えるような、ふわっと透けて、光がにじむ UI 表現。それが「グラスモーフィズム(Glassmorph...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - グラデーションボーダー

グラデーションボーダーは「線そのものをデザインする」テクニックボーダーは本来「1色の線」ですが、グラデーションボーダーを使うと 枠そのものが装飾要素 になります。カード、ボタン、バッジ、セクションの囲...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - conic-gradient

conic-gradient は「円を中心に色が回転する」ちょっとトリッキーなグラデーションlinear-gradient が「線」、radial-gradient が「円の広がり」だとしたら、con...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - radial-gradient

radial-gradient は「光のにじみ・スポットライト」を作る背景テクニックlinear-gradient が「線」で色を変えるのに対して、radial-gradient は “円や楕円を中心...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - linear-gradient

linear-gradient は「色を滑らかにつなぐ」背景デザインの基本背景色をただ塗るだけではなく、色と色を自然につなげて“奥行き・光・立体感”を作る のが linear-gradient() で...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - rgba透明表現

rgba は「色に透明度を足す」ための最も基本で強力なテクニック背景色・ボタン・オーバーレイ・影・グラデーションなど、透明度を扱うデザイン では必ず使うのが rgba() です。初心者がつまずきやすい...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - prefers-color-scheme

prefers-color-scheme は「ユーザーの OS 設定に自動で合わせる」ための最強ダークモード技術ダークモード対応には「ユーザーがライト/ダークを選ぶ」「OS の設定に自動で合わせる」と...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - ダークモード対応

ダークモード対応は「色を切り替える」のではなく「テーマを切り替える」設計ダークモードは、単に背景を黒くするだけではありません。“ライトテーマ”と“ダークテーマ”という2つのテーマを切り替える設計 が本...
CSS

CSS Tips | 超実務コアCSSテクニック:カラー・背景 - CSS変数(カスタムプロパティ)

CSS変数(カスタムプロパティ)は「色・余白・フォント」を“プロジェクト全体で統一”する最強の仕組みCSS変数(custom properties)は、「値に名前をつけて再利用できる」 という、デザイ...
C#

C# Tips | ログ・例外・診断:タスク例外処理

はじめに:タスク例外処理は「非同期の失敗を“なかったこと”にしない技術」async/await や Task を使い始めると、最初にハマりやすいのが 「例外がどこに行ったか分からない問題」 です。同期...
C#

C# Tips | ログ・例外・診断:グローバル例外

はじめに:「グローバル例外」は“アプリ全体でただ一つの例外の窓口”を作ること例外処理って、最初は「必要なところで try-catch 書けばいいでしょ?」で済ませがちですよね。でもアプリが大きくなると...
C#

C# Tips | ログ・例外・診断:未処理例外捕捉

はじめに:「未処理例外捕捉」は“最後の砦”を用意することどれだけ丁寧に try-catch を書いても、どこかで必ず「取りこぼしの例外」が出ます。想定していなかったバグ、ライブラリ内部の例外、テストで...
C#

C# Tips | ログ・例外・診断:例外ログ共通化

はじめに:例外ログ共通化は「どこで落ちても、同じ形で記録する」ための仕組み業務システムが大きくなると、あちこちで例外をログに書くコードが散らばりがちになります。catch (Exception ex)...
C#

C# Tips | ログ・例外・診断:スタックトレース整形

はじめに:スタックトレース整形は「エラーの道筋を、人間が読める形にする」技例外が発生したとき、ex.ToString() や ex.StackTrace をそのままログに出すと、情報は多いけれど「どこ...
C#

C# Tips | ログ・例外・診断:例外再スロー

はじめに:「例外再スロー」は“いったん受け止めてから、ちゃんと投げ直す”テクニック例外をキャッチしたあとに、こう思う場面がよくあります。ログは取りたいでも、この場では処理できないだから、上の層に判断を...
C#

C# Tips | ログ・例外・診断:例外ラップ

はじめに:「例外ラップ」は“生のエラーを、そのまま外に漏らさないためのフィルター”業務システムを書いていると、いろんな層で例外が飛びます。DB アクセス、外部 API、ファイル I/O、ライブラリ内部...
C#

C# Tips | ログ・例外・診断:ログローテート

はじめに:ログローテートは“ログを永遠に増やさないための自動整理術”ログを出し続けるアプリは、放っておくと ログファイルが無限に肥大化 します。その結果、ディスクがいっぱいになり、アプリが止まることす...
C#

C# Tips | ログ・例外・診断:ログ削除

はじめに:「ログ削除」は“未来のトラブル調査”と“ディスク容量”の綱引き調整ちゃんとログを出し始めると、次に必ず出てくるのが「ログが消えない問題」です。ログは残しておきたい、でもディスクは有限。このバ...
C#

C# Tips | ログ・例外・診断:ログ圧縮

はじめに:「ログ圧縮」は“ログを捨てずに、場所だけ小さくする”技業務システムでログをちゃんと出し始めると、必ずぶつかる問題があります。「ディスクがログでパンパンになる」です。ログは残しておきたい。でも...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:パフォーマンスと設計 - Day23 設計演習

Day23 前半のゴール「“ECサイトのDB設計”を、怖がらずに分解して考えられるようになる」いよいよ設計演習です。テーマは「ECサイトのDB設計」。いきなり完璧な設計を作る必要はありません。今日の前...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:パフォーマンスと設計 - Day22 バックアップ

Day22 前半のゴール「“もしDBが飛んでも戻せる”状態を、自分で作れるイメージを持つ」ここからは「パフォーマンスと設計」だけでなく、「守り」の話に入ります。テーマはバックアップ――mysqldum...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:パフォーマンスと設計 - Day21 パーティショニング

Day21 前半のゴール「“テーブルを分けて速くする”という発想を、自分の言葉で説明できるようになる」今日のテーマは「パーティショニング」です。一言でいうと、巨大テーブルを“論理的には1つのテーブルの...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:パフォーマンスと設計 - Day20 正規化と非正規化

Day20 前半のゴール「“正規化が正義”でも“非正規化が悪”でもなく、目的で選べるようになる」今日は「正規化と非正規化」です。ここは、実務に出たときにほぼ確実にぶつかるテーマです。前半のゴールはこう...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:パフォーマンスと設計 - Day19 クエリチューニング②

Day19 前半のゴール「JOIN が遅いときに“どこが悪いか”を冷静に切り分けられるようになる」Day18 では「遅いSQL全般」のチューニングをやりました。Day19 はその中でも、実務で一番ハマ...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:パフォーマンスと設計 - Day18 クエリチューニング①

Day18 前半のゴール「“なんとなく遅いSQL”を、筋道立てて改善ポイントまで分解できるようになる」Day18 からはいよいよ「クエリチューニング」です。テーマは「遅いSQLの改善」。ここで目指すの...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:パフォーマンスと設計 - Day17 インデックス設計

Day17 前半のゴール「“なんとなく”ではなく“理由を持って”インデックスを貼れるようになる」Day17 のテーマはインデックス設計です。ここからが、パフォーマンスと設計の本丸です。一言で言うと、今...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:パフォーマンスと設計 - Day16 実行計画

Day16 前半のゴール「EXPLAIN を“怖い表”じゃなくて“SQLの行動ログ”として読めるようになる」ここからいよいよ「パフォーマンスと設計」の世界に入ります。Day16 の主役は EXPLAI...
Python

Python | 1 日 120 分 × 7 日アプリ学習:エラーハンドリング付き入力アプリ(中級編)

1日目のゴール1日目のテーマは「try / except を使って、入力エラーでアプリが落ちないようにする」 ことです。今日のゴールはシンプルです。ユーザーに数字を入力してもらう間違った入力(文字など...
Python

Python | 1 日 120 分 × 7 日アプリ学習:JSON保存アプリ(中級編)

1日目のゴール1日目のテーマは「JSONって何者かを理解して、Pythonで“とりあえず保存して読み戻す”ところまでできるようになること」です。今日はまだ「アプリ」までは行きません。でも、ここで学ぶJ...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務SQL力 - Day15 中間課題

Day15 前半のゴール「ここまで学んだ要素を“注文処理システム”として頭の中で組み立てられるようにする」Day15 は中間課題です。テーマは「注文処理システムを実装」です。ここまでで、あなたはすでに...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務SQL力 - Day14 トランザクション

Day14 前半のゴール「“お金の振込”をイメージしながらトランザクションを理解する」今日のテーマはトランザクションとロックです。ここから一気に「実務っぽさ」が増えます。まず一言で言うと、トランザクシ...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務SQL力 - Day13 トリガー

Day13 前半のゴール「“INSERT にフックする自動処理”としてトリガーをイメージできるようにする」今日のテーマはトリガー(TRIGGER)です。ここから一気に「DBが自分で動き出す」感じが強く...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務SQL力 - Day12 ストアドプロシージャ②

Day12 前半のゴール「“SQLの中でプログラムを書く”感覚をつかむ」Day11 でストアドプロシージャの基本構文と、IN / OUT パラメータ、IF・CASE の入口まで触れました。Day12 ...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務SQL力 - Day11 ストアドプロシージャ①

Day11 前半のゴール「“SQL版の関数”としてストアドプロシージャをイメージできるようになる」ここからは、いよいよ「DBの中で動くプログラム」、ストアドプロシージャの世界に入ります。SQLite ...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務SQL力 - Day10 ビュー

Day10 前半のゴール「ビューを“保存されたSELECT文”としてイメージできるようになる」Day10 のテーマはビュー(VIEW)です。SQLite にもビューはありましたが、使わずに来た人も多い...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務SQL力 - Day9 サブクエリ最適化

Day9 前半のゴール「EXISTS と IN を“なんとなく同じ”から卒業する」今日はサブクエリの中でも、実務で頻出のテーマEXISTS と INを扱います。多くの人が最初こう思います。「EXIST...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:実務SQL力 - Day8 JOINの最適化

Day8 前半のゴール「JOIN は“上から順に実行されない”ことを理解する」ここからいよいよ「実務SQL力」に入っていきます。Day8 のテーマは JOIN の最適化、その中でも「実行順序」です。多...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:差分理解 - Day7 復習課題

Day7 前半のゴール「“SQLiteで書けたCREATE TABLE”を、MySQL流に書き直せるようになる」Day7 は、ここまで学んだ差分を一気に使う「総復習の入り口」です。テーマはシンプルで、...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:差分理解 - Day6 インデックス基礎

Day6 前半のゴール「“インデックス=検索用の目次”を、感覚レベルで理解する」SQLiteでもインデックスはありましたが、「なんとなくPRIMARY KEYに勝手についてるやつ」くらいの理解で済ませ...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:差分理解 - Day5 制約の強化

Day5 前半のゴール「“あいまいなデータ”をDBレベルで拒否できるようになる」今日は「制約(constraint)」の中でも、特に重要な2つに絞ります。PRIMARY KEYFOREIGN KEYS...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:差分理解 - Day4 文字コードと照合順序

Day4 前半のゴール「“文字化けしない”だけじゃなく、“正しく比較・ソートできる”を意識する」SQLite を使っていると、文字コードやソート順をあまり意識しないままでも、そこそこ動いてしまいます。...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:差分理解 - Day3 基本操作の確認

Day3 前半のゴール「SQLiteで知っている基本操作を、“MySQLの文法とクセ”で再確認する」今日はあえて「復習レベル」でいきます。テーマはこの3つです。CREATE TABLEINSERT /...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:差分理解 - Day2 SQLiteとの違い

Day2 前半のゴール「“なんとなくTEXTだけ”から、“型を意識して設計する”に切り替える」SQLite では、正直こうでしたよね。TEXT と INTEGER と REAL があればだいたい何とか...
30日で身につけるMySQL

MySQL | SQLite経験者向け、30日で習得するMySQL:差分理解 - Day1 環境構築

Day1 前半のゴール「SQLiteとの“違い”を意識しながら、MySQLの入口に立つ」この30日コースは「SQLiteは触ったことがある人」が前提です。だから Day1 では、まっさらな説明ではなく...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:実践 - Day30 アウトプット

Day30 前半のゴール「“SQLだけでレポートを作る”感覚と、“他人に説明する”視点を手に入れる」ここまで29日間、テーブル設計・JOIN・集計・インデックス・EC風DB設計まで、一通りやってきまし...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:実践 - Day29 総合課題

Day29 前半のゴール「“ECサイト風”の世界を、テーブル設計に落とし込めるようになる」いよいよ Day29、総合課題です。テーマは 小規模データベースをゼロから設計(ECサイト風)。前半のゴールは...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:実践 - Day28 パフォーマンス基礎

Day28 前半のゴール「インデックスって“何者か”を、体感レベルで理解する」ここまでで、かなり複雑な JOIN や集計を書けるようになりました。次のテーマは パフォーマンス基礎:インデックス です。...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:実践 - Day27 実践クエリ

Day27 前半のゴール「“複雑そうに見えるJOIN+集計”を、怖がらずに分解して読めるようになる」Day25〜26 で、顧客・商品・注文・注文明細を分けて設計し、正規化の感覚もつかんできました。Da...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:実践 - Day26 設計改善

Day26 前半のゴール「“とりあえず動く設計”から“一生付き合える設計”に育てる感覚をつかむ」Day25 までで、顧客・商品・注文のテーブルを分けて、それなりに“ちゃんとした”売上管理ができるように...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:実践 - Day25 ミニ課題②

Day25 前半のゴール「顧客×商品×注文を“ちゃんと分けて”設計できるようになる」Day24 では「顧客だけ」の世界でした。Day25 は一気に現実寄りになります。テーマは 売上管理(顧客×商品×注...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:実践 - Day24 ミニ課題①

Day24 前半のゴール「小さくても“ちゃんとした顧客管理テーブル”を自分で設計して作る」ここからは「実践編」です。Day24 のテーマは、ミニ課題としての 顧客管理テーブル。前半では、次のところまで...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:データ操作・設計 - Day23 ビュー

Day23 前半「VIEW は“よく使う SELECT に名前をつけてテーブルみたいに扱う仕組み」だと思っていいここまで、テーブルを設計してSELECT / JOIN / サブクエリで欲しい形の結果を...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:データ操作・設計 - Day22 サブクエリ②

Day22 前半「EXISTS / IN は“あるかどうか”を聞くためのサブクエリ専用キーワード」Day21 では、SELECT の中にサブクエリを入れて「1行ごとの追加情報」をくっつけました。Day...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:データ操作・設計 - Day21 サブクエリ①

Day21 前半「SELECT の“1列”として、もう1回 SELECT を動かす」という発想を持つここまであなたは、1つの SELECT でテーブルから行を取り出す複数テーブルを JOIN して情報...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:データ操作・設計 - Day20 複数テーブル設計

Day20 前半「テーブルを“ちゃんと分ける”ことで、あとから自分を助けるのが正規化」ここまで、1つのテーブルを前提にSELECT / JOIN / UPDATE / DELETE / INDEX を...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:データ操作・設計 - Day19 インデックス

Day19 前半「インデックス=“本の索引”をテーブルに付けて、検索を一気に速くする」ここまでで、SELECT・JOIN・WHERE・GROUP BY…いろいろな「検索の技」を覚えてきました。でも、デ...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:データ操作・設計 - Day18 制約

Day18 前半「そもそも“おかしなデータ”が入らないようにする」ための仕組みが制約ここまで、SELECT(読む)UPDATE(書き換える)DELETE(消す)をやってきました。ここで一度、視点をガラ...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:データ操作・設計 - Day17 削除

Day17 前半「本当に消える」DELETE は、UPDATE よりさらに“重い一手”ここまでで、SELECT(読む)UPDATE(書き換える)をやってきました。Day17 のテーマは DELETE(...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:データ操作・設計 - Day16 更新

Day16 前半「データを書き換える」という、検索とはまったく違う“力”を手に入れるDay1〜Day15 までは、SELECT を中心に「データを読む」ことを学んできました。Day16 からは、いよい...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:検索力強化 - Day15 結合②

Day15 前半「片方にしかいないデータも“落とさずに見る”」ための LEFT JOINDay14 で学んだ INNER JOIN は、「両方のテーブルに相手がいる行だけを残す結合」でした。Day15...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:検索力強化 - Day14 結合①

Day14 前半「バラバラのテーブルを“意味のある1枚”にくっつける」のが JOINここまでずっと、1つのテーブルだけを相手にしてきました。users なら users だけ、orders なら or...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:検索力強化 - Day13 条件付き集計

Day13 前半「グループを作った“あと”に条件をかける」という新しい一手Day12 で、GROUP BY を使って「ユーザーごとの合計」「日付ごとの件数」のような グループ単位の集計 ができるように...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:検索力強化 - Day12 グループ化

Day12 前半「1件ずつ」ではなく「グループごと」に数字を見る世界に入るここまでで、COUNT / SUM / AVG / MAX / MIN を使って「テーブル全体」や「WHERE で絞った一部」...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:検索力強化 - Day11 集計②

Day11 前半「平均・最大・最小」で“数字の性格”をつかみにいくDay10 では、COUNT と SUM を使って「何件あるか」「合計はいくらか」を数字で見るところまで来ました。Day11 では、そ...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:検索力強化 - Day10 集計①

Day10 前半「行そのもの」ではなく「行の“数”や“合計”を見る」世界に入るDay9 までは、どの行を取るか(WHERE)どの順番で並べるか(ORDER BY)どれだけ取るか(LIMIT)をコントロ...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:検索力強化 - Day9 件数制御

Day9 前半「全部はいらない、そのうち何件かだけでいい」をSQLで言えるようにするDay8 までで、どの行を取るか(WHERE)どの順番で並べるか(ORDER BY)はコントロールできるようになりま...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:検索力強化 - Day8 並び替え

Day8 前半「どの順番で見るか」をコントロールできるようになる日Day7 までで、どの行を取るか(WHERE)どの列を見るか(SELECT)はコントロールできるようになりました。Day8 では、そこ...
Java

Java Tips | 日付・時間:テスト用日時固定

なぜ「テスト用日時固定」ユーティリティが必要になるのか日付・時間に依存するロジックは、業務システムのど真ん中にいます。「締め切りを過ぎているか」「有効期限内か」「月末かどうか」「営業日かどうか」。こう...
Java

Java Tips | 日付・時間:Clock差し替え

なぜ「Clock差し替え」が業務ユーティリティとして重要なのか日付・時間を扱うコードを書くとき、多くの人が最初にやるのは LocalDate.now() や Instant.now() をそのまま呼ぶ...
Java

Java Tips | 日付・時間:日付キャッシュ

日付キャッシュユーティリティは何のために必要か「今日の日付」「今月の営業日一覧」「今年の祝日一覧」など、日付まわりの計算は、業務システムのあちこちで何度も呼ばれます。しかも、多くの場合「同じ結果」が何...
Java

Java Tips | 日付・時間:夏時間判定

夏時間判定ユーティリティは何のために必要か日本にいるとあまり意識しませんが、アメリカやヨーロッパでは「夏時間(Daylight Saving Time, DST)」が当たり前に使われています。同じ「A...
Java

Java Tips | 日付・時間:タイムゾーン一覧

タイムゾーン一覧ユーティリティは何のために必要かグローバルなサービスや、海外拠点を持つ会社のシステムでは、「どのタイムゾーンで日時を扱うか」をユーザーに選ばせる場面がよく出てきます。ユーザー設定画面の...
Java

Java Tips | 日付・時間:日付重複判定

日付重複判定ユーティリティは何のために必要か業務システムでは、期間がかぶってはいけない場面がたくさんあります。割引キャンペーン期間が重複してはいけない。同じ部屋の予約が同じ時間帯に二重に入ってはいけな...
Java

Java Tips | 日付・時間:範囲内判定

「範囲内判定」とは何をしたいユーティリティか業務システムでは、ものすごく頻繁に「この日付はキャンペーン期間内か?」「この日時はメンテナンス時間帯に含まれるか?」「この日付は契約の有効期間に入っているか...
Java

Java Tips | 日付・時間:日付比較

日付比較ユーティリティは何のために必要か業務システムでは、「締め日を過ぎているか?」「有効期限内か?」「開始日 ≤ 対象日 ≤ 終了日か?」といった“日付の比較”が、あらゆるところに出てきます。このと...
Java

Java Tips | 日付・時間:休日除外

「休日除外」とは何をしたいユーティリティなのか「この期間のデータを集計したいけど、休日は含めたくない」「SLA は“営業日ベース”なので、休日はカウントから外したい」。こういうときに必要になるのが「休...
Java

Java Tips | 日付・時間:営業日一覧

「営業日一覧」とは何をするユーティリティかまずイメージしてほしいのは、カレンダーから「土日と祝日を抜いた日だけ」を抜き出した表です。請求締め、入金予定表、納期チェック、SLA(何営業日以内に対応)など...
Java

Java Tips | 日付・時間:年一覧生成

年一覧生成とは何をするユーティリティか「年度選択のプルダウンに 2015〜2030 年を出したい」「レポート画面で対象年を選ばせたい」「ログ集計で“どの年のデータか”を一覧にしたい」。こういうときに使...
Java

Java Tips | 日付・時間:月一覧生成

月一覧生成とは何をするユーティリティか「2023年1月〜2025年12月までの月を全部出したい」「指定期間の月ごとのレポートを作りたい」「画面のプルダウンに“年月”を並べたい」。こういうときに使うのが...
Java

Java Tips | 日付・時間:日付範囲生成

日付範囲生成とは何をするユーティリティか「今月の全日付を一覧にしたい」「レポート期間の開始日〜終了日を1日ずつ処理したい」「1週間分のデータを日ごとに集計したい」。こういうときに必要になるのが「日付範...
Java

Java Tips | 日付・時間:CRON生成

CRON生成とは何をするユーティリティかここまで「CRON解析(読む側)」をやってきましたが、今回は逆方向です。CRON生成とは、アプリ側で「こういうスケジュールで動かしたい」という条件から、0 3 ...
Java

Java Tips | 日付・時間:CRON解析

CRON解析とは何をするものかCRON解析とは、「0 0 * * * のような CRON 表記を読み取り、次にいつ実行されるかを計算する」「この CRON は毎日? 毎週? 毎月? どんなタイミングで...
Java

Java Tips | 日付・時間:スケジューラ補助

スケジューラ補助とは何を助けるユーティリティなのかスケジューラ補助とは、「決まった時間に処理を実行したい」「一定間隔で繰り返し処理したい」「次の実行時刻を計算したい」といった“時間に基づく処理”を安全...
Java

Java Tips | 日付・時間:実行時間計測

「実行時間計測」で何を知りたいのか実行時間計測は、一言でいうと「この処理、実際どれくらい時間かかっているの?」を数字で見える化することです。なんとなく「遅い気がする」ではなく、「平均 120ms」「ピ...
Java

Java Tips | 日付・時間:ストップウォッチ

「ストップウォッチ」とは何をするクラスかイメージしてほしいのは、手に持つあのストップウォッチです。ボタンを押した瞬間に「スタート」、もう一度押したら「ストップ」、表示には「経過時間」が出る。Java ...
Java

Java Tips | 日付・時間:タイマー測定

「タイマー測定」で何をしたいのかイメージする業務システムを書いていると、「この処理、どれくらい時間かかっているんだろう?」「リリース前に性能をざっくり測りたい」「ログに処理時間を出しておきたい」という...
Java

Java Tips | 日付・時間:ナノ秒変換

ナノ秒変換で何をしたいのかをまずイメージする「処理が何ナノ秒で終わったか知りたい」「高頻度トレードやIoTでサブミリ秒の世界を扱いたい」「ログの順序を“同じミリ秒の中”でも区別したい」。こういう“めち...
JavaScript

JavaScript Tips | 配列ユーティリティ:分割

何をしたいユーティリティか:「配列の分割」ここでの「分割」は、1つの配列を「小さな配列のかたまり」に切り分ける処理のことです。英語だと「chunk(チャンク)」と呼ばれることが多いです。例えば、こんな...
JavaScript

JavaScript Tips | 配列ユーティリティ:ページング

何をしたいユーティリティか:「配列のページング」ここでの「ページング」は、たくさんのデータを「ページ番号」と「1ページあたり件数」に分割して扱う処理のことです。Web の一覧画面でよく見る「1〜10件...
JavaScript

JavaScript Tips | 配列ユーティリティ:多段ソート

何をしたいユーティリティか:「多段ソート」ここでの「多段ソート」は、複数のキーを優先順位付きで使って並び替える処理です。SQL でいう ORDER BY category ASC, price DES...
JavaScript

JavaScript Tips | 配列ユーティリティ:キー指定ソート

何をしたいユーティリティか:「キー指定ソート」ここでの「キー指定ソート」は、オブジェクトの配列を「特定のキー(プロパティ)」を基準に並び替える処理です。SQL の ORDER BY price ASC...
JavaScript

JavaScript Tips | 配列ユーティリティ:グループ化

何をしたいユーティリティか:「配列のグループ化」ここでの「グループ化」は、配列の要素を「ある条件(キー)」ごとにまとめ直す処理です。SQL の GROUP BY や、Excel の「ピボットテーブルの...
JavaScript

JavaScript Tips | 配列ユーティリティ:平均算出

何をしたいユーティリティか:「配列の平均算出」ここでの「平均算出」は、配列の中の数値を全部足して、その合計を要素数で割る処理です。学校で習った「平均」と同じですが、プログラムでやるときは「空配列のとき...
JavaScript

JavaScript Tips | 配列ユーティリティ:合計算出

何をしたいユーティリティか:「配列の合計算出」ここでの「合計算出」は、配列の中の値を全部足して、ひとつの数値にまとめる処理です。一番シンプルなのは「数値配列の合計」ですが、業務では「オブジェクト配列の...
JavaScript

JavaScript Tips | 配列ユーティリティ:最小値取得

何をしたいユーティリティか:「配列の最小値取得」ここでの「最小値取得」は、配列の中で一番小さい値を取り出す処理です。「最大値取得」の逆ですが、業務では同じくらい頻繁に使います。例えばこんな場面がありま...
JavaScript

JavaScript Tips | 配列ユーティリティ:最大値取得

何をしたいユーティリティか:「配列の最大値取得」ここでの「最大値取得」は、配列の中で一番大きい値を取り出す処理です。一番シンプルなのは「数値配列の最大値」ですが、業務では「オブジェクト配列の中で、特定...
JavaScript

JavaScript Tips | 配列ユーティリティ:ランダム要素取得

何をしたいユーティリティか:「ランダム要素取得」ここでの「ランダム要素取得」は、配列の中から 1 要素(または複数要素)をランダムに取り出す処理です。「配列シャッフル」が「順番を全部ランダムにする」の...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel自動印刷

Excel自動印刷は「帳票・レポートを自動でPDF化・印刷し、提出作業をゼロにする」ための最強スキルExcel業務自動化の中でも 自動印刷(PDF化含む) は、「最後の仕上げ」を自動化する非常に重要な...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel帳票生成

Excel帳票生成は「定型フォーマットを自動で作り、毎月の提出資料をゼロ秒で完成させる」ための最強スキルExcel業務自動化の中でも 帳票(レポート・申請書・明細書など)の自動生成 は効果が圧倒的です...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excelレポート作成

Excelレポート作成は「集計・グラフ・KPIを自動でまとめ、毎月の資料作成をゼロにする」ための最強スキルExcel業務自動化の中でも レポート作成の自動化 は効果が圧倒的です。なぜなら、実務では次の...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excelダッシュボード生成

Excelダッシュボード生成は「複数の集計・グラフ・指標を1画面にまとめ、意思決定を高速化する」ための最強スキルExcel業務自動化の中でも ダッシュボード自動生成 は最も効果が大きい分野です。なぜな...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel集計表作成

Excel集計表作成は「大量データを“意味のある形”にまとめ、レポートを自動生成する」ための最強スキルExcel業務自動化の中でも 集計表の自動生成 は効果が非常に大きいです。なぜなら、実務では次のよ...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excelピボット作成

Excelピボット作成は「大量データを一瞬で集計し、分析レポートを自動生成する」ための最強スキルExcel業務自動化の中でも ピボットテーブルの自動生成 は効果が非常に大きいです。なぜなら、実務では次...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel円グラフ生成

Excel円グラフ生成は「割合・構成比を一瞬で理解できる資料を自動で作る」ための最強スキル円グラフは “全体に対する割合” を見せるのに最適 です。実務でも次のような場面で非常に多く使われます。売上構...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel折れ線グラフ生成

Excel折れ線グラフ生成は「データの変化・推移を一目で理解できる資料を自動で作る」ための最強スキル折れ線グラフは “時間の流れによる変化” を見せるのに最適 です。実務でも次のような場面で非常に多く...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel棒グラフ生成

Excel棒グラフ生成は「データを一瞬で“見える化”し、説得力のある資料を自動で作る」ための最強スキルExcel業務自動化の中でも 棒グラフの自動生成 は特に効果が大きいです。なぜなら、実務では次のよ...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excelグラフ作成

Excelグラフ作成は「データを“見える化”し、説得力のある資料を自動生成する」ための最強スキルExcel業務自動化の中でも、グラフ作成の自動化は効果が非常に大きいです。なぜなら、実務では次のような場...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:基礎理解 - Day7 総復習

Day7 前半「CRUD を一周させる」ことで“ただの知識”を“手応え”に変えるDay1〜Day6で、テーブルのイメージ、CREATE TABLE、INSERT、SELECT、WHERE、AND / ...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:基礎理解 - Day6 データ取得②

Day6 前半「条件を組み合わせる」と「ざっくり探す」を覚える日Day5 では、WHERE で「1つの条件」を使って絞り込むことをやりました。Day6 では、そこから一歩進んで条件を組み合わせる AN...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:基礎理解 - Day5 データ取得①

Day5 前半「入れたデータを、狙って取り出す」最初の一歩Day4 までで、テーブルを作り、INSERT でデータを入れられるようになりました。Day5 からはいよいよ、「欲しいデータだけを取り出す」...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:基礎理解 - Day4 データ登録

Day4 前半「行を1件、ちゃんとテーブルに入れる」感覚を身につけるDay3 までで、テーブルという「箱」を自分で設計して作れるようになりました。Day4 では、その箱の中に 実際のデータ(行)を入れ...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:仕上げ(本番意識) - Day14

Day14:仕上げ(本番意識)前半テーマ:他人が“迷わず・詰まらず・再現できる”環境を作るための README を書けるようになるDay14 の前半では、「自分が作った Docker 環境を、他の人が...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:実務課題(重要) - Day13

Day13:実務課題(前半)テーマ:React+API+MySQLという“よくある現場構成”を、頭の中でちゃんと描けるようになるDay13 は、ここまで学んできた Docker・Dockerfile・...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:ログ・デバッグ - Day12

Day12:ログ・デバッグ(前半)テーマ:コンテナの“中で何が起きているか”を読み取り、原因を突き止める力をつけるDay12 の前半では、Docker を使った障害対応の基本であるdocker log...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:本番用Dockerfile - Day11

Day11:本番用Dockerfile(前半)マルチステージビルドの前半で最も重要なのは「ビルド用の重い環境」と「本番用の軽い環境」を分けるという発想です。これによりイメージが軽量化し、安全性も向上し...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:基礎理解 - Day3 テーブル作成

Day3 前半「テーブルを作る」とは何をしているのかをちゃんと理解するDay1・Day2で、データベースのイメージと SQLite の動かし方はつかめてきました。Day3 ではいよいよ、SQL の中で...
30日で身につけるSQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:基礎理解 - Day2 SQLite環境

Day2 前半SQLite環境の全体像をつかむDay1 で「データベースとは何か」「テーブル・行・列とは何か」が見えてきました。Day2 ではいよいよ、実際に SQLite を「動かせる状態」にしてい...
SQLite

SQLite | ゼロからはじめるSQL、30日で習得するSQLite:基礎理解 - Day1 データベースの概念

Day1 前半 データベースのイメージを「ちゃんと」つくるプログラミング初心者が最初にやるべきことは、文法を覚えることではなく、「そもそもデータベースって何者なのか」を正しくイメージすることです。ここ...
SQL

SQL | SQLを学ぶなら何を選ぶべきか

SQLを学ぶなら何を選ぶべきか結論から言うと、「どの環境でSQLを使うか」によって最適な選択は変わります。SQL自体は共通ですが、データベース製品ごとに方言や機能差があるため、目的に合わせて選ぶ必要が...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:ネットワーク理解 - Day10

Day10:ネットワーク理解(前半)テーマ:まず「localhostの正体」と「コンテナ同士のつながり方」を腹落ちさせるDay10 の前半では、コンテナ間通信と service 名での接続に入る前提と...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:環境変数と設定管理 - Day9

Day9:環境変数と設定管理 前半テーマ:.env を使って「環境ごとの差」を吸収し、どこでも同じアプリを動かせるようにするDay9 の前半では、Docker 実務で必須となる環境変数(Environ...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:Docker Compose入門 - Day8

Day8:Docker Compose入門 前半テーマ:複数コンテナを「1つのアプリ」として扱う感覚をつかむまずは、今日のキーワードである Docker Compose が何者なのかを、イメージからつ...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - interfaceのジェネリクス

ゴール:「interface は“型のテンプレート”であり、<T> で“穴あきテンプレート”にできると理解するクラスのジェネリクスが「インスタンス全体のルール」を決めるものだとしたら、interfac...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - クラスのジェネリクス

ゴール:「クラスにも <T> が付くんだ、しかも“インスタンス全体の型のルール”になるんだ、を体で覚える関数のジェネリクスはだいぶ見慣れてきたと思います。クラスのジェネリクスは、その 「型パラメータを...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - ジェネリクスとintersection

ゴール:「T & U は“足し算された型”だ、と直感でわかるようになる」ジェネリクスと intersection(交差型、&)を一緒に使うときのキーワードは、「型を“混ぜる”のではなく、“足し算する”...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - ジェネリクスとunionの併用

ゴール:「T なのに T | U もアリ?を“安全に混ぜる感覚”で理解するジェネリクスと union(|)を一緒に使うとき、最初に出てくるモヤモヤはだいたいこれです。「T って“1つの型”じゃないの?...
TypeScript

TypeScript | 関数・クラス・ジェネリクス:ジェネリクス基礎 - ジェネリクス配列操作

ゴール:「配列操作は全部 any で書けるけど、あえてジェネリクスで“型を守る”感覚をつかむ配列操作は、正直 any[] でも全部書けます。でもそれをやると、バグも型の穴も“侵入し放題”になります。ジ...
JavaScript

JavaScript | Web API:グラフィック・メディア - アニメーション処理

アニメーション処理は「毎フレーム、画面を描き直す仕組み」を作ることグラフィック系の JavaScript でいう「アニメーション処理」は、ざっくり言うと「時間の経過に合わせて、毎フレームごとに“今の状...
JavaScript

JavaScript | Web API:グラフィック・メディア - WebRTC の概要

WebRTC は「ブラウザ同士を直接つないで、映像・音・データをやり取りする仕組み」まず一言でいうと、WebRTC は「ブラウザ同士を“ほぼ直接”つないで、カメラ映像・マイク音声・任意のデータをリアル...
JavaScript

JavaScript | Web API:グラフィック・メディア - ストリーム処理

「ストリーム処理」は“流れてくる映像・音を、そのまま扱う”考え方グラフィック・メディアの世界でいう「ストリーム」は、ざっくり言うと「時間とともに流れてくるデータ(映像・音)の連続」です。カメラからの映...
JavaScript

JavaScript | Web API:グラフィック・メディア - MediaDevices(カメラ・マイク)

MediaDevices は「ブラウザからカメラ・マイクを借りるための窓口」スマホや PC には、カメラやマイクが付いています。普段はカメラアプリやビデオ通話アプリがそれを使っていますが、実は Web...
JavaScript

JavaScript | Web API:グラフィック・メディア - Audio API

Audio API は「ブラウザの中にある音のミキサー&シンセサイザー」JavaScript で音を扱う方法は大きく分けて 2 つあります。ひとつは <audio> タグを JavaScript から...
JavaScript

JavaScript | Web API:グラフィック・メディア - 動画制御

「動画制御」は“ブラウザにあるビデオプレイヤーのリモコンを自分で作る”ことHTML の <video> タグは、それだけで再生ボタンやシークバーを持っています。でも JavaScript から操作する...
JavaScript

JavaScript | Web API:グラフィック・メディア - 画像読み込み

「画像読み込み」は“ファイルをブラウザに連れてきて、キャンバスに貼る”ことCanvas で画像を扱うときに必ず通るのが「画像読み込み」です。ざっくり言うと、画像ファイルをブラウザに読み込む読み込みが終...
JavaScript

JavaScript | Web API:グラフィック・メディア - 描画処理

「描画処理」は“毎回、画面をどうやって作るか”を決めることCanvas API の世界でいう「描画処理」は、ざっくり言うと「キャンバスという白い紙に、どの順番で、何を、どこに、どういう見た目で描くか」...
JavaScript

JavaScript | Web API:グラフィック・メディア - 2D コンテキスト

「2D コンテキスト」は“キャンバスに絵を描くためのペン箱”Canvas API を使うとき、必ず最初にやるのがこれです。const canvas = document.querySelector("...
JavaScript

JavaScript | Web API:グラフィック・メディア - Canvas API

Canvas API は「ブラウザの中にあるお絵かき用の白い紙」Canvas API は、HTML の <canvas> 要素と JavaScript を使って図形・文字・画像・アニメーションなどを「...
JavaScript

JavaScript | 1 日 30 分 × 7 日アプリ学習超初級編:文字を表示するアプリ

1日目のゴール1日目のテーマは「JavaScript で“画面の文字を書き換える”感覚をつかむこと」 です。・ボタンを押したら文字が変わる・入力した文字を画面に出すたったこれだけでも、「ただの HTM...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:1週間まとめ(ミニ課題) - Day7

Day7:1週間まとめミニ課題の全体像Day7は「知識をバラバラで終わらせず、一本の線にする日」です。テーマは Node.js のAPIサーバを「完全にDocker化」すること。ここまで学んだ Doc...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:データ永続化(ボリューム) - Day6

Day6:データ永続化(ボリューム)前半テーマ:コンテナを消してもデータが残る“ボリューム”の本質を理解するDay6 の前半では、Docker の中でも実務で最重要の概念「データ永続化(ボリューム)」...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:開発効率化(マウント) - Day5

Day5:開発効率化(マウント)前半前半の核心は「マウント=ホストのフォルダをコンテナに映し込み、コード変更を即反映させる仕組み」であることです。ホットリロードの土台になる重要概念です。テーマ:マウン...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:Dockerfile入門(最重要) - Day4

Day4:Dockerfile入門(最重要)前半テーマ:自分のアプリを“誰でも動かせる形”にするための Dockerfile の基礎を理解するDay4 の前半では、Docker 学習の中でも最重要テー...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:Webサーバ起動(実務の入口) - Day3

DDay3:Webサーバ起動(実務の入口)前半テーマ:ポートフォワーディングを“感覚で理解する”Day3 の前半では、Docker を使って nginx(Webサーバ)を起動し、外部からアクセスできる...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:基本コマンド完全習得 - Day2

Day2:基本コマンド完全習得(前半)前半では、Docker の「基本コマンド」を “意味から理解する” ことを目的にします。単にコマンドを覚えるのではなく、コンテナのライフサイクル(生まれる → 動...
Docker

Docker | 2週間で実務レベルに到達するDocker学習:Dockerの全体理解と導入 - Day1

Day1:Dockerの全体理解と導入(前半)Dockerとは「アプリを入れるための小さな箱(コンテナ)を、設計図(イメージ)から作って動かす技術」であることを前半で理解するのがゴールです。Docke...
Java

Java Tips | 日付・時間:秒変換

秒変換で何をしたいのかイメージする「DBに“1970年からの秒”で保存されている」「外部APIがエポック秒で送ってくる」「処理時間を秒でログに出したい」。こういうときに必要になるのが、日付・時間と「秒...
Java

Java Tips | 日付・時間:ミリ秒変換

「ミリ秒変換」で何をしたいのかイメージする「処理時間をミリ秒で計測したい」「DBには long のミリ秒で保存されている」「外部APIが“1970年からのミリ秒”で送ってくる」。こういうときに必要にな...
Java

Java Tips | 日付・時間:ISO変換

「ISO変換」とは何をするものか「API は ISO 形式で日時を返してくる」「ログを ISO 形式で出したい」「他言語ともやり取りしたい」そんなときに出てくるキーワードが ISO-8601 です。I...
Java

Java Tips | 日付・時間:フォーマット共通化

なぜ「フォーマット共通化」が重要なのか同じシステムの中で、画面Aは「2025/03/26」、画面Bは「2025-03-26」、ログは「2025-03-26T10:00:00Z」――こういうバラバラな状...
Java

Java Tips | 日付・時間:JST変換

JST変換のゴールイメージ「アプリは日本時間で動いている」「外部APIはUTCで返してくる」「DBにはUTCで保存したいけど画面はJSTで見せたい」。こういうときに必要になるのが JST(日本標準時)...
Java

Java Tips | 日付・時間:UTC変換

UTC変換のゴールイメージ「アプリは日本時間で動いているけど、DBには UTC で保存したい」「ログは全部 UTC に統一したい」「外部APIは UTC で返してくる」業務システムで“時間”をちゃんと...
Java

Java Tips | 日付・時間:タイムゾーン変換

タイムゾーン変換のゴールイメージ「サーバは UTC、ユーザーは日本時間」「海外拠点はロサンゼルス時間」「ログは全部 UTC で残したい」業務システムで“時間”を扱うとき、ほぼ必ず出てくるのが「タイムゾ...
Java

Java Tips | 日付・時間:日付丸め

「日付丸め」とは何をするものか「2025-03-26 を“月初”にそろえたい」「日付を“週単位”にまとめたい」「分析用に“日単位”までに丸めたい」こういうときに出てくるのが「日付丸め」です。日付丸めは...
Java

Java Tips | 日付・時間:時間丸め

「時間丸め」とは何をするものか「10:03 を 5 分単位に丸めて 10:05 にしたい」「ログの時刻を“分単位”にそろえたい」「勤務時間を 15 分単位で計算したい」こういうときに出てくるのが「時間...
Java

Java Tips | 日付・時間:経過時間

経過時間のゴールイメージ「処理に何秒かかった?」「ログインから何時間経過した?」「締切まであと何時間?」業務システムでは、“2つの日時の差”=経過時間を扱う場面がとても多いです。ここでまず押さえてほし...
C#

バイブコーディングとセキュリティーについて

バイブコーディングの本質と現代開発における位置づけバイブコーディングとは、仕様や設計書に厳密に従うのではなく、直感や流れ、試行錯誤を重視してコードを書く開発スタイルである。とくにAIによるコード生成や...
C#

C# | 1 日 90 分 × 7 日アプリ学習:初級編

1日目のゴール「初級編」1日目のテーマは“C# で「入力 → 処理 → 出力」という一連の流れを、自分で組み立てられるようになること” です。超初級編では、主に「こちらから決めた値」をコードの中に書い...
C#

C# | 1 日 60 分 × 7 日アプリ学習:超初級編

1日目のゴール1日目のテーマは「C# で“とりあえず1個、自分のプログラムを動かせた”という感覚をつかむこと」 です。難しいことは一旦全部置いておいて、「C# の世界に入るための入口」だけを、ゆっくり...
C#

C# Tips | ログ・例外・診断:JSONログ

はじめに:コンソールログは「今この瞬間の動き」を見るための窓業務でも学習でも、まず一番最初に触るログがコンソールログです。画面にそのまま出るので、「今なにが起きているか」をリアルタイムで確認できます。...
C#

C# Tips | ログ・例外・診断:コンソールログ

はじめに:「コンソールログ」は“今この瞬間の状態を一番早く知る窓”業務でも、開発でも、まず一番手軽なのがコンソールログです。画面にサッと出てくれるので、「今なにが起きているか」をリアルタイムで確認でき...
C#

C# Tips | ログ・例外・診断:ファイルログ

はじめに:「ファイルログ」は“あとから読み返せるブラックボックスレコーダー”コンソールにログを出すだけだと、アプリを閉じた瞬間に全部消えます。でも業務システムでは、数日後・数週間後に「そのとき何が起き...
C#

C# Tips | ログ・例外・診断:ログレベル制御

はじめに:「ログレベル制御」は“どの声量でしゃべるか”を決める仕組みログは「全部出せばいい」わけではありません。本番では重要なものだけ見たいし、調査中は細かい情報も欲しい。この「どこまで細かくログを出...
C#

C# Tips | ログ・例外・診断:ログ出力

はじめに:「ログ出力」は“未来の自分へのメッセージ”業務システムで一番「効いてくる」のがログです。動いているときは意識されないのに、トラブルが起きた瞬間に「ログがすべての命綱」になります。何が起きたの...
JavaScript

JavaScript | 1 日 30 分 × 7 日アプリ学習超初級編:ボタンを押すアプリ

1日目のゴール1日目のテーマは「ボタンを押した“きっかけ”で JavaScript が動くんだ、という感覚をつかむこと」 です。やることはシンプルです。ボタンを押す→ JavaScript が動く→ ...
Python

Python | 1 日 120 分 × 7 日アプリ学習:CSVファイル読み書きアプリ(中級編)

1日目のゴール1日目のテーマは「csvモジュールを使って、CSVファイルを“怖くない実務データ”として扱える感覚をつかむこと」 です。今日つかみたいのは、この2つです。CSVってそもそも何者か(ただの...
JavaScript

JavaScript Tips | 配列ユーティリティ:配列シャッフル

何をしたいユーティリティか:「配列シャッフル」ここでの「配列シャッフル」は、配列の要素の順番をランダムに並べ替える処理です。例えばこうです。[1, 2, 3, 4, 5]// ↓ シャッフル[3, 1...
JavaScript

JavaScript Tips | 配列ユーティリティ:共通要素抽出

何をしたいユーティリティか:「共通要素抽出」ここでの「共通要素抽出」は、複数の配列を比べて「両方(または全部)に含まれている要素だけ」を取り出す処理です。イメージとしては「集合の積(intersect...
JavaScript

JavaScript Tips | 配列ユーティリティ:差分抽出

何をしたいユーティリティか:「配列の差分抽出」ここでの「差分抽出」は、「ある配列 A と配列 B を比べて、“どこが違うのか”を取り出す処理」です。業務だと、例えばこんな場面で使います。画面で「変更前...
JavaScript

JavaScript Tips | 配列ユーティリティ:重複抽出

何をしたいユーティリティか:「配列の重複抽出」ここでの「重複抽出」は、配列の中で「1 回しか出てこないもの」ではなく、「2 回以上出てくるもの」を取り出す処理です。重複削除(ユニーク化)は「かぶりを消...
JavaScript

JavaScript Tips | 配列ユーティリティ:重複削除

何をしたいユーティリティか:「配列の重複削除」ここでの「重複削除」は、同じ値が何度も入っている配列から、重複を取り除いて「一意な要素だけの配列」を作る処理です。業務だと、こんな場面でよく出てきます。ユ...
JavaScript

JavaScript Tips | 文字列ユーティリティ:業務用 - 文字コード判定

何をしたいユーティリティか:「文字コード判定」ここでの「文字コード判定」は、外部から受け取った「バイト列」が、UTF-8 なのか Shift_JIS なのか EUC-JP なのか、といった「エンコーデ...
JavaScript

JavaScript Tips | 文字列ユーティリティ:業務用 - BOM 除去

何をしたいユーティリティか:「BOM 除去」ここでの「BOM 除去」は、テキストの先頭にこっそり付いている「BOM(Byte Order Mark)」という特殊な目に見えない文字を取り除く処理です。C...
JavaScript

JavaScript Tips | 文字列ユーティリティ:業務用 - 改行コード統一

何をしたいユーティリティか:「改行コード統一」ここでの「改行コード統一」は、バラバラな改行コード(\n, \r\n, \r)が混ざったテキストを、指定した形式にそろえる処理です。Windows 由来の...
JavaScript

JavaScript Tips | 文字列ユーティリティ:業務用 - パス正規化

何をしたいユーティリティか:「パス正規化」ここでの「パス正規化」は、"//api//v1/../v2//users/./123/" のような「ぐちゃっとしたパス文字列」を、"/api/v2/users...
JavaScript

JavaScript Tips | 文字列ユーティリティ:業務用 - パンくず生成

何をしたいユーティリティか:「パンくず生成」ここでの「パンくず生成」は、「今いるページまでの階層(ホーム > マスタ > ユーザー一覧 > ユーザー詳細)」を、決まったルールで文字列や配列として作る」...
Java

Java Tips | 日付・時間:経過日数

経過日数のゴールイメージ「申込日から何日経った?」「納期まであと何日?」「プロジェクト開始からの経過日数は?」業務システムだと、“2つの日付の差”=経過日数を出す場面が本当に多いです。ここでまず押さえ...
Java

Java Tips | 日付・時間:年齢計算

年齢計算のゴールイメージ「生年月日から現在の年齢を出したい」「基準日時点での年齢を知りたい」業務システムだと、会員管理・保険・年齢制限チェックなどで“年齢”はよく出てきます。ここで一番やってはいけない...
Java

Java Tips | 日付・時間:祝日判定

祝日判定のゴールイメージ「この日付は祝日か?」「祝日は営業日から除外したい」「祝日は締切をずらしたい」業務システムでは、祝日判定はかなりの頻度で登場します。ここでまず押さえてほしい現実があります。祝日...
Java

Java Tips | 日付・時間:営業日判定

営業日判定のゴールイメージ「この日付は営業日か?」「締切日が休業日のときは翌営業日にずらしたい」業務システムでは、こういう“営業日判定”が本当に頻繁に出てきます。ここで大事なのは、営業日=「土日以外」...
Java

Java Tips | 日付・時間:曜日取得

曜日取得のゴールイメージ「2025-03-26 は何曜日?」「この日付が土日かどうか知りたい」業務システムだと、営業日判定・カレンダー表示・締切日のチェックなどで“曜日”は頻出です。ここでやってはいけ...
Java

Java Tips | 日付・時間:年末取得

「年末取得」は“その年の最後の日を意味でつかまえる”こと業務システムでは、「今年の年末」「会計年度の最終日」「前年の年末」みたいな話がよく出てきます。ここでやってはいけないのは、「12 月 31 日で...
Java

Java Tips | 日付・時間:年初取得

「年初取得」は“その年の1月1日を意味で取り出す”こと業務システムだと、「今年の年初」「会計年度の開始日」「前年の年初」みたいな話がよく出てきます。ここでやってはいけないのは、month = 1; d...
Java

Java Tips | 日付・時間:月末取得

「月末取得」は“その月の最後の日を安全につかまえる”こと業務システムでは、「今月の月末」「請求月の月末」「締め月の月末」が頻出します。ここでやってはいけないのは、「31 日で固定」「30 日で固定」「...
Java

Java Tips | 日付・時間:月初取得

「月初取得」は“その月の1日を安全に取り出す”こと業務システムでは、「今月の月初」「請求月の月初」「締め月の月初」をよく使います。ここでやってはいけないのは、day = 1; のように自分で日付をいじ...
Java

Java Tips | 日付・時間:日付減算

日付減算の本質は「過去にさかのぼるカレンダー計算を任せること」日付減算は、「今日から 7 日前」「3 ヶ月前」「1 年前の同じ日」といった“カレンダー上で過去にさかのぼる”計算です。ここでも一番やって...
C#

C# Tips | コレクション・LINQ:LINQ式キャッシュ

はじめに:「LINQ式キャッシュ」は“同じクエリを何度も組み立てないための知恵”LINQ を使っていると、こういうコードが増えがちです。var q1 = users.Where(x => x.IsAc...
C#

C# Tips | コレクション・LINQ:条件付き並び替え

はじめに:「条件付き並び替え」は“状況に応じてソートルールを切り替える”技業務システムでは、単純に「いつも同じ並び順」だけで済むことはあまりありません。画面のソート条件をユーザーが選べる検索条件によっ...
C#

C# Tips | コレクション・LINQ:並び替えキー複数

はじめに:「並び替えキー複数」は“人間の並び順ルールをそのままコードにする”技業務でデータを並び替えるとき、単純に「ID順」だけで済むことはあまりありません。部署コード昇順、その中で社員区分昇順、さら...
C#

C# Tips | コレクション・LINQ:HashSet活用

はじめに:「HashSet活用」は“とにかく速く・かんたんに重複と集合を扱う”技業務で LINQ やコレクションを使っていると、こういう処理がよく出てきます。同じ値が含まれているかを高速に判定したい重...
C#

C# Tips | コレクション・LINQ:比較用EqualityComparer

はじめに:「比較用EqualityComparer」は“何をもって同じとみなすか”をコードにする道具LINQ やコレクションを使っていると、こういう場面がよく出てきます。「ユーザーIDが同じなら同じユ...
C#

C# Tips | コレクション・LINQ:シャローコピー

はじめに:「シャローコピー」は“速いけど、油断すると元を汚すコピー”ディープコピーの逆側にあるのが シャローコピー(浅いコピー) です。一言でいうと、「入れ物は別だけど、中身(参照先)はそのまま共有す...
C#

C# Tips | コレクション・LINQ:ディープコピー

はじめに:「ディープコピー」は“元データを絶対に汚したくないときの保険”業務コードを書いていると、こういうことが起きがちです。「編集用にコピーしたつもりが、元のデータまで変わってしまった」「画面でキャ...
C#

C# Tips | コレクション・LINQ:Immutable変換

はじめに:「Immutable変換」は“絶対に書き換えられないコレクション”を手に入れる技業務システムを書いていると、こういう悩みが出てきます。「このコレクション、誰かにうっかり書き換えられてバグにな...
C#

C# Tips | コレクション・LINQ:Span対応変換

はじめに:「Span対応変換」は“速さを意識した LINQ の次の一歩”LINQ は書きやすいけれど、「配列や文字列をガッツリ触る処理」でパフォーマンスを突き詰めたいときには、メモリ確保(アロケーショ...
C#

C# Tips | コレクション・LINQ:ReadOnlyCollection化

はじめに:「ReadOnlyCollection化」は“触ってほしくないコレクションに鍵をかける”技業務コードを書いていると、こういう気持ちになる場面がよくあります。「このコレクション、外から中身をい...
C#

C# Tips | コレクション・LINQ:ObservableCollection変換

はじめに:「ObservableCollection変換」は“画面とコレクションをつなぐ橋”業務アプリ(特に WPF / MAUI / WinUI など)を書くと、List<T> や IEnumera...
C#

C# Tips | コレクション・LINQ:キャッシュ付き検索

はじめに:「キャッシュ付き検索」は“同じものを何度も探さない”ための技LINQ で検索を書くとき、最初はだいたいこうなります。var user = users.FirstOrDefault(x => ...
C#

C# Tips | コレクション・LINQ:高速検索

はじめに:「高速検索」は“探し方を変えるだけで世界が変わる”テクニックLINQ を覚えたての頃は、だいたいこう書きがちです。var user = users.FirstOrDefault(x => x...
C#

C# Tips | コレクション・LINQ:順序保持Distinct

はじめに:「順序保持 Distinct」は“最初に出てきた順だけを残す”技「重複を消したいけど、元の並び順は崩したくない」——業務でデータを扱っていると、かなり頻繁に出てきます。ログの順番はそのままに...
C#

C# Tips | コレクション・LINQ:重複カウント

はじめに:「重複カウント」は“どれがどれだけ被っているか”を一発で見抜く技業務でデータを扱っていると、こういうことを知りたくなる場面がよく出てきます。どの商品が何回注文されているかどのユーザーが何回ロ...
C#

C# Tips | コレクション・LINQ:インデックス付きSelect

はじめに:「インデックス付き Select」は“要素の値+位置情報”を同時に扱える便利ワザLINQ の Select は「値を変換する」ためのメソッドですが、実務では「値だけでなく、その要素が何番目か...
C#

C# Tips | コレクション・LINQ:Empty除外

はじめに:「Empty除外」は“中身がないものを先にどかす”テクニックnull を除外する話をしましたが、実務ではもう一つよく出てくる「やっかいな存在」がいます。それが「空文字」や「空コレクション」、...
C#

C# Tips | コレクション・LINQ:Null除外

はじめに:「Null除外」は“ゴミを先に掃き出してから考える”テクニック業務コードを書いていると、ほぼ確実にこうなります。データのどこかに null が紛れ込むnull を意識せずにプロパティにアクセ...
C#

C# Tips | コレクション・LINQ:AsParallel制御

はじめに:「AsParallel制御」は“並列の暴れ方に手綱をつける”技前回の「並列 LINQ」は、「AsParallel() を付けると並列になるよ」という話でした。でも、実務で本気で使うなら、どれ...
C#

C# Tips | コレクション・LINQ:並列LINQ

はじめに:「並列 LINQ」は“同じ処理をみんなで手分けする”仕組み同じような処理を大量のデータに対して繰り返すとき、1 件ずつ順番に処理するとどうしても時間がかかります。そこで出てくるのが「並列 L...
C#

C# Tips | コレクション・LINQ:Batch処理

はじめに:「Batch処理」は“まとめてやるけど、やり過ぎない”ための設計業務で C# を書いていると、こういう悩みがよく出てきます。一度に 10 万件 INSERT すると重いし、失敗したときの巻き...
JavaScript

JavaScript | Web API:クリップボード・共有 - UX 改善パターン

クリップボード・共有の UX は「技術」より「気づかい」で差がつくコピー・ペースト・共有って、コード的にはどれも数行で書けます。でも、「使っていて気持ちいいかどうか」 はその数行の周りにある“気づかい...
JavaScript

JavaScript | Web API:クリップボード・共有 - URL 共有

「URL 共有」は“このページを誰かに渡す”ための一番シンプルな機能URL 共有は、ざっくり言うと「今見ているページのリンクを、他の人や自分の別の端末に渡す」ための仕組みです。JavaScript で...
JavaScript

JavaScript | Web API:クリップボード・共有 - ネイティブ共有

「ネイティブ共有」は“ブラウザの外の世界”に渡すための出口Web アプリの中だけなら、URL をコピーしたり、画面に何か表示したりすれば完結します。でも実際のユーザーは、このページを LINE で送り...
JavaScript

JavaScript | Web API:クリップボード・共有 - Share API

Share API は「このページいい感じだから誰かに送ろう」をボタン一発にする仕組みスマホでブラウザを見ていると、「共有」ボタンからLINE やメール、Twitter などに URL を送れますよね...
JavaScript

JavaScript | Web API:クリップボード・共有 - セキュリティ制限

クリップボードのセキュリティ制限は「ユーザーを守るための強いガード」クリップボードには、ユーザーがコピーしたあらゆる情報が入ります。パスワード、クレカ番号、住所、仕事の文章、社外秘のコード——全部です...
JavaScript

JavaScript | Web API:クリップボード・共有 - 読み取り権限

クリップボードの「読み取り権限」は“ユーザーのプライバシーを守るための最重要ポイント”クリップボードには、ユーザーがコピーした パスワード・住所・クレカ番号・仕事の文章 など、とてもセンシティブな情報...
JavaScript

JavaScript | Web API:クリップボード・共有 - 書き込み権限

「書き込み権限」は“クリップボードを勝手にいじらないためのブレーキ”Clipboard API の「書き込み権限」は、ざっくり言うと 「このサイトに、クリップボードへ書き込ませていいか?」 をブラウザ...
JavaScript

JavaScript | Web API:クリップボード・共有 - ペースト処理

「ペースト処理」は“ユーザーのクリップボードの中身を、アプリに連れてくる”ことコピー処理が「アプリ → クリップボード」だとしたら、ペースト処理はその逆、「クリップボード → アプリ」 です。ユーザー...
JavaScript

JavaScript | Web API:クリップボード・共有 - コピー処理

「コピー処理」は“ユーザーの手を 1 回減らす”ための仕組みコピー処理は、ユーザーが本来やるはずだったテキストをドラッグで選択Ctrl+C / 右クリック → コピーという手順を、ボタン 1 回で代わ...
JavaScript

JavaScript | Web API:クリップボード・共有 - Clipboard API

Clipboard API は「コピー/ペーストをコードから扱うための正式な入口」普段、コピーやペースストはキーボードの Ctrl+C / Ctrl+V や右クリックメニューでやりますよね。Clipb...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excelテンプレ作成

Excelテンプレ作成は「毎回同じフォーマットを自動生成し、作業時間を大幅削減する」ための最強スキルExcel業務自動化の中でも、テンプレート(雛形)を自動生成する処理は特に効果が大きいです。なぜなら...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - 別名保存

別名保存は「元ファイルを壊さず、安全に新しいExcelを作る」ための超重要テクニックExcel業務自動化では、別名保存(Save As) が非常に重要です。なぜなら、次のような実務ニーズがあるからです...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - Excel保存

Excel保存は「作ったExcelを確実に残し、業務自動化を完成させる」ための最重要ステップPythonでExcelを操作する際、保存処理(save)は必ず最後に必要になります。どれだけセル操作・書式...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - 行高さ変更

行高さ変更は「Excelの見た目を整え、読みやすいシートを自動生成する」ための基本テクニックExcel業務自動化では、行の高さを調整する処理がとても重要です。なぜなら、次のような問題を防げるからです。...
Python

Python 業務自動化 | Excel業務自動化:Excel基本操作 - 列幅変更

列幅変更は「Excelの見やすさを劇的に改善し、読みやすい帳票を自動生成する」ための基本テクニックExcel業務自動化では、列幅を自動で調整する処理がとても重要です。なぜなら、次のような問題を防げるか...
Python

Python | テスト・設計・品質:Web アプリの本番運用

「本番運用」って何?一言でいうと「“たまたま動く”から“24時間ちゃんと動き続ける”にすること」ローカルで FastAPI や Django を動かして「動いた!」は、まだスタートラインです。本番運用...
Python

Python | テスト・設計・品質:API のモック

APIのモックって何?一言でいうと「本物の代わりに動く“テスト用の偽物サーバー”」API のモックは、「本物の外部APIを呼ばずに、その代わりをする“偽物”を用意してテストすること」です。本物のAPI...
Python

Python | テスト・設計・品質:環境変数管理

環境変数管理って何?一言でいうと「コードに書いちゃいけない“秘密と設定”を外に出してあげること」環境変数管理は、「本番・開発・テストで変わる値」や「絶対にコードに埋め込んではいけない秘密」を、コードの...
Python

Python | テスト・設計・品質:コンテナ構築

コンテナ構築って何?一言でいうと「動く箱を作るための“レシピづくり+焼き上げ”」ここでいう「コンテナ構築」は、ほぼ「Docker コンテナを作ること」と考えてOKです。レシピを書くフェーズ(Docke...
Python

Python | テスト・設計・品質:Docker

Dockerって何?一言でいうと「どこでも同じように動く“持ち運べる開発環境”」Docker は、ざっくり言うと「アプリとその周りの環境を、ひとまとめにして箱に入れて持ち運べるようにする仕組み」です。...
Python

Python | 1 日 120 分 × 7 日アプリ学習:クラスで作る商品管理アプリ(中級編)

1日目のゴール1日目のテーマは「class・__init__・オブジェクトを、“商品”という身近な題材で体に入れること」 です。辞書でユーザーを扱ったときと同じように、今度は「商品」をクラスで表現して...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - 見出しスケール設計

見出しスケール設計は「階層の意味 × 読みやすさ × デザインの一貫性」を作る技術見出し(H1〜H6)は、ただ大きさを変えるだけでは不十分です。階層の差が明確で、読みやすく、デザインとして美しいスケー...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - リンクデザイン設計

リンクデザインは「読みやすさ × 分かりやすさ × 美しさ」を同時に満たす設計リンクは UI の中で最も重要な要素のひとつ。どれがリンクか一瞬で分かること、読みやすく邪魔にならないこと、デザインとして...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - text-decoration応用

text-decoration は「線の種類・位置・色・太さ」を自由に操るプロパティリンクの下線だけでなく、強調・アクセント・装飾・UI 表現 まで幅広く使えるのが text-decoration の...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - text-align最適化

text-align は「文章の重心」を決めるプロパティ文章は“どこに揃えるか”だけで読みやすさや印象が大きく変わります。text-align を最適化すると、見出し・本文・UI ラベル・ボタン・カー...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - writing-mode

writing-mode は「文字の流れる方向」を変えるプロパティ横書き・縦書き・縦中横など、日本語特有のレイアウトにも対応できる強力な CSS 機能です。特に日本語サイトでは、縦書きの見出し・帯・サ...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - word-break制御

word-break は「単語のどこで折り返すか」をコントロールするプロパティテキストが枠からはみ出すとき、どこで折り返すか(または折り返さないか) を決めるのが word-break です。特に日本...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - white-space制御

white-space は「改行・空白・折り返し」をコントロールするタイポグラフィの基礎文章がどう折り返されるか、空白がどう扱われるかは 読みやすさ・レイアウトの安定性 に直結します。white-sp...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - text-overflow省略

text-overflow は「入りきらないテキストをどう見せるか」をコントロールするUI デザインでは、タイトル・カード・ボタン・リストなど、テキストが枠からはみ出す場面が必ず発生します。そのときに...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - text-transform活用

text-transform は「文字の見せ方を一瞬で変える」タイポグラフィのスイッチ大文字化・小文字化・単語の頭だけ大文字など、文章の“印象”を一瞬で変える強力なプロパティ が text-trans...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - letter-spacing最適化

letter-spacing(字間調整)は「読みやすさ」と「デザインの質」を決める重要パラメータ特に日本語は欧文よりも字面が大きく、フォントによっても見え方が大きく変わるため、適切な letter-s...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - clampで可変フォント

clamp() を使うと「画面幅に応じて自然に伸び縮みするフォントサイズ」が作れるしかも、最小値・理想値・最大値を 1 行でコントロールできるので、レスポンシブタイポグラフィの“最強ツール”と言ってい...
CSS

CSS Tips | 超実務コアCSSテクニック:タイポグラフィ - remとemの使い分け

rem と em は「どこを基準にサイズが決まるか」が違うだけでも、この違いを理解すると タイポグラフィ設計が一気に安定 します。rem → ルート(html)のフォントサイズを基準にするem → そ...
JavaScript

JavaScript | Web API:ファイル・データ操作 - 大容量ファイルの扱い

「大容量ファイルの扱い」は“全部一気にやらない”が合言葉まず前提からいきます。数 KB〜数 MB 程度のファイルなら、FileReader.readAsText や readAsArrayBuffer...
JavaScript

JavaScript | Web API:ファイル・データ操作 - CSV / JSON ファイル処理

CSV / JSON ファイル処理は「テキストとして読み、オブジェクトとして扱い、またテキストに戻す」流れCSV も JSON も、本質はただのテキストファイルです。JavaScript から扱うとき...
JavaScript

JavaScript | Web API:ファイル・データ操作 - バイナリデータ処理

「バイナリデータ処理」は“0と1の生データ”を意識して触ることふだん JavaScript で扱っているのは、文字列・数値・オブジェクトなど「人間に優しい形」のデータです。でも、画像・音声・PDF・Z...
JavaScript

JavaScript | Web API:ファイル・データ操作 - input type=”file”

input type="file" は「ユーザーにファイルを選んでもらうための唯一の正規ルート」まず大前提として、ブラウザの JavaScript は、勝手にユーザーのパソコンの中を覗けません。「この...
JavaScript

JavaScript | Web API:ファイル・データ操作 - ドラッグ&ドロップ

ドラッグ&ドロップは「マウスでつかんで、そのままブラウザに渡す入力方法」ドラッグ&ドロップ(D&D)は、「ユーザーがファイルや要素をマウスでつかんで、別の場所に“落とす”操作をイベントとして扱う仕組み...
JavaScript

JavaScript | Web API:ファイル・データ操作 - ダウンロード処理

「ダウンロード処理」は“ブラウザの中のデータ”を“ユーザーのファイル”に変えることJavaScript でいう「ダウンロード処理」は、ブラウザの中にあるデータ(文字列・JSON・画像・Blob など)...
JavaScript

JavaScript | Web API:ファイル・データ操作 - URL.createObjectURL

URL.createObjectURL は「Blob や File に一時的な URL を貼る魔法」URL.createObjectURL は、Blob や File に「一時的にアクセスできる UR...
JavaScript

JavaScript | Web API:ファイル・データ操作 - Blob

Blob は「生データ(バイナリやテキスト)をまとめて持つ“データのかたまり”」Blob は、「ファイルっぽい“データのかたまり”をメモリ上に表現するためのオブジェクト」 です。画像・テキスト・JSO...
JavaScript

JavaScript | Web API:ファイル・データ操作 - FileReader

FileReader は「ファイルの中身を“いろんな形”で読み出すための専用リーダー」前回の File API で出てきた File は、「ユーザーが選んだファイルへのハンドル(取っ手)」でした。でも...
JavaScript

JavaScript | Web API:ファイル・データ操作 - File API

File API は「ユーザーが選んだファイルをブラウザから触るための窓口」まず一番大事なことから。JavaScript は、勝手にユーザーのパソコンの中を覗いたり、好きなファイルを読みまくったりはで...
Python

Python | 1 日 120 分 × 7 日アプリ学習:辞書型で作るユーザー管理アプリ(中級編)

1日目のゴール1日目のテーマは「辞書型 dict を使って、“ユーザー管理アプリの土台”を作れるようになること」 です。今日つかんでほしいのは、この3つです。辞書型とは何か(キーと値の関係)ユーザー1...
Python

Python | 1 日 90 分 × 7 日アプリ学習:ファイルを読み込むアプリ(初級編)

1日目のゴール1日目のテーマは「ファイルの中身を read で読み込んで、そのまま画面に表示できるようになること」 です。ここでできるようになってほしいのは、たった2つです。ファイルを開いて中身を読み...
Python

Python | 1 日 90 分 × 7 日アプリ学習:ファイルに保存するメモ帳(初級編)

1日目のゴール1日目のテーマは「テキストをファイルに保存できる“超シンプルなメモ帳”を作ること」です。今日できるようになってほしいのは、この3つです。open でファイルを開くイメージをつかむwrit...
スポンサーリンク
タイトルとURLをコピーしました