スポンサーリンク
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - autocomplete

autocomplete は「ブラウザに“ここには何の情報が入るか”を教えるための属性」autocomplete は、 「この入力欄には、ユーザーのどんな情報が入るのか」をブラウザに教えるための属性 ...
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - pattern

pattern は「この入力欄の“合格パターン”を正規表現で決めるためのルール」pattern は、 「この入力欄には、こういう形の文字列だけを“正解”として受け付けてほしい」 とブラウザに伝えるため...
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - required

required は「ここは“絶対に空で送らせない”ためのスイッチ」required は、 「この入力欄は必須です。空のままフォームを送信させないでください」 とブラウザに伝えるための属性です。ユーザ...
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - placeholder

placeholder は「入力欄の中に表示する“ヒントテキスト”」placeholder は、 入力欄の中に薄い文字で表示される「ここには何を書けばいいか」のヒント です。ラベルが「名前」だけだと、...
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - range入力

range入力は「スライダーで“数値の範囲”から直感的に選んでもらう入力欄」type="range" は、 ユーザーに「ある範囲の数値」を、スライダーを動かして選んでもらうための入力欄 です。テキスト...
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - color入力

color入力は「カラーピッカーで“色そのもの”を選んでもらうための入力欄」type="color" は、 ユーザーに「色」を選んでもらうための専用入力欄 です。テキスト入力で #ff0000 みたい...
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - date入力

date入力は「カレンダーUIで“正しい日付”を確実に受け取るための入力欄」type="date" は、 ユーザーに「日付」を入力してもらうための専用入力欄 です。テキスト入力と違い、 ブラウザが「カ...
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - file入力

file入力は「ユーザーのPCやスマホから“ファイルそのもの”を受け取るための入り口」type="file" は、 ユーザーの端末(PC・スマホ)の中から、画像やPDFなどの「ファイルそのもの」を選ん...
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - radioボタン

radioボタンは「グループの中から“必ず1つだけ”選んでもらうための入力欄」type="radio" は、 「いくつかの候補の中から、ユーザーに“1つだけ”選んでもらうための入力欄」 です。チェック...
JavaScript

JavaScript | HTML / CSS 連携:フォーム応用 - checkbox

checkbox は「ON/OFF や“複数選択”を表現するためのスイッチ」type="checkbox" は、 「その項目を選ぶか選ばないか(ON/OFF)を表現するための入力欄」 です。「利用規約...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - button

button 要素は「ユーザーに“何かのきっかけ”を押してもらうためのスイッチ」<button> は、 「ユーザーにクリック(タップ)してもらうことで、何かの処理を始めるためのスイッチ」 です。フォー...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - option

option 要素は「select の中の“1つぶんの選択肢”」<option> は、 「select の中に並ぶ、1 つ 1 つの“選べる候補”」 を表すタグです。<select> が「選択メニュー...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - select

select は「候補の中から選んでもらうための“選択メニュー”」<select> は、 「あらかじめ用意した選択肢の中から、ユーザーに選んでもらうための入力欄」 です。テキストボックスや texta...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - textarea

textarea は「長文や複数行の文章を入れてもらうための入力欄」<textarea> は、 「ユーザーに“複数行の文章”や“長めのテキスト”を入力してもらうための専用の入力欄」 です。input ...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - number入力

number入力は「数値だけを入れてもらうための“賢い入力欄”」type="number" の入力欄は、 ユーザーに 「数字だけ」を入力してもらうための専用の入り口 です。年齢 個数 価格 点数 割合...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - email入力

email入力は「メールアドレス専用の“賢いテキスト入力欄”」type="email" の入力欄は、 「ユーザーにメールアドレスを入力してもらうための、ちょっと賢いテキスト入力」 です。見た目はほぼ ...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - password入力

password入力は「中身を隠しながら文字を受け取るための入力欄」type="password" の入力欄は、 「ユーザーに文字を入力してもらうけれど、画面上では中身を見えなくする」 ための特別なテ...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - text入力

text入力は「なんでも文字を入れてもらうための“1行の入力欄”」type="text" の入力欄は、 「ユーザーに自由な文字列を 1 行ぶん入力してもらうための入り口」 です。名前 タイトル ニック...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - inputタグ

input 要素は「ユーザーから“1つの値”を受け取るための入り口」<input> は、 ユーザーから たった 1 つの値を受け取るためのパーツ です。名前 メールアドレス パスワード チェックの O...
JavaScript

JavaScript | HTML / CSS 連携:フォーム基礎 - formタグ

form 要素は「入力をひとまとめにして“送信するための枠”」<form> は、 「ユーザーの入力をひとまとまりにして、どこかへ送るための“フォーム全体の箱”」 です。テキストボックス チェックボック...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - ローディングスピナーCSSのみ

ローディングスピナーは「処理中だよ」とユーザーに安心感を伝える UIローディングスピナーは、 「今、裏側で処理しているから少し待ってね」 という状態を視覚的に伝えるための UI パーツです。CSSだけ...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - モーダルCSSのみ実装

モーダルは「画面の主役を一時的に切り替える」UIパーツモーダルは、ユーザーの視線と操作を一時的に“ひとつの領域”へ集中させるための UI です。 CSSだけで実装する場合は、 チェックボックス(または...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - ツールチップCSSのみ

ツールチップは「補足情報を、邪魔せず、そっと添える」UIパーツツールチップは、ボタンやアイコンの近くに ふわっと現れる説明文。 ユーザーの操作を邪魔せず、必要なときだけ情報を出すのが役割です。CSSだ...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - トグルスイッチCSSのみ

トグルスイッチは「ON/OFF を直感的に伝える」UIパーツチェックボックスやラジオボタンよりも、 トグルスイッチは “状態の変化が視覚的に分かりやすい” のが最大の強み。CSSだけで作る場合は、 非...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - ラジオボタンカスタム

ラジオボタンカスタムは「選択状態を“気持ちよく”伝える」UIテクニックラジオボタンは 「複数の中から1つだけ選ぶ」 という重要な役割を持つ UI パーツ。 だからこそ、選択状態がひと目で分かり、押しや...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - チェックボックスカスタム

チェックボックスカスタムは「見た目を変えても、意味はそのまま」にする UI テクニックチェックボックスはフォームの中でも“意味が強い”パーツなので、 見た目を変えても、チェックできる・外せる・状態が分...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - プレースホルダー装飾

プレースホルダー装飾は「入力前のガイド」を美しく・分かりやすくするテクニックプレースホルダー(placeholder)は、 「何を入力すればいいか」 を示す大事な UI の一部です。しかし、デフォルト...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - 入力フォームフォーカス装飾

入力フォームのフォーカス装飾は「入力しやすさ」と「安心感」を作る UI の要フォームはユーザーが“手を動かす場所”なので、 フォーカスした瞬間に 「ここに入力していいんだ」 と伝える視覚的サインが必要...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - 立体ボタン設計

立体ボタンは「影・光・奥行き」で“触れる質感”を作る UI テクニック平面的なボタンより、立体ボタンは 「押せそう」「触れそう」 という感覚を強く伝えます。 そのために必要なのは、 影(box-sha...
CSS

CSS Tips | 超実務コアCSSテクニック:UIパーツ - ボタンホバーアニメ

ボタンホバーアニメは「クリック前のワクワク」をデザインするボタンって、ただ押せればいいパーツじゃなくて 「ここを押すと何かが始まる」という期待を伝える場所でもあります。ホバーアニメーションは、 その“...
JavaScript

JavaScript Tips | 配列ユーティリティ:並び順復元

テーマの整理:「並び順復元」とは何か「並び順復元」は、以前保存しておいた“並び順情報”を使って、最新の配列を同じ順番に並べ直すユーティリティのことです。 直前の「並び順保存」が「順番を覚える」だとした...
JavaScript

JavaScript Tips | 配列ユーティリティ:並び順保存

テーマの整理:「並び順保存」とは何か「並び順保存」は、ユーザーが並べ替えた配列の順番を、あとで再現できるように“記録しておく”ユーティリティのことです。 業務だと、次のような場面でよく出てきます。画面...
JavaScript

JavaScript Tips | 配列ユーティリティ:UI 用整形

テーマの整理:「UI 用整形」とは何か「UI 用整形」は、配列データを「画面コンポーネントが扱いやすい形」に変換するユーティリティのことです。 API や DB から取ってきた“生データ”は、そのまま...
JavaScript

JavaScript Tips | 配列ユーティリティ:API レスポンス整形

テーマの整理:「API レスポンス整形」とは何か「API レスポンス整形」は、外部 API から返ってきた“生のレスポンス”を、アプリ側で扱いやすい配列・オブジェクトの形に変換するユーティリティのこと...
JavaScript

JavaScript Tips | 配列ユーティリティ:可視化用変換

テーマの整理:「可視化用変換」とは何か「可視化用変換」は、生の配列データを「グラフライブラリがそのまま読める形」に整えるユーティリティのことです。 業務だと、次のような場面でよく使います。売上データを...
JavaScript

JavaScript Tips | 配列ユーティリティ:統計情報生成

テーマの整理:「統計情報生成」とは何かここでの「統計情報生成」は、配列に入っている数値データから、もう一歩踏み込んだ“統計的な指標”を計算するユーティリティのことです。 サマリー生成が「合計・平均・最...
JavaScript

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

テーマの整理:「サマリー生成」とは何かここでの「サマリー生成」は、配列に入っているたくさんのデータを「要約・集計」して、業務で使いやすい形にまとめるユーティリティのことです。 「生データの配列」から、...
JavaScript

JavaScript Tips | 配列ユーティリティ:バリデーション

テーマの整理:「配列バリデーション」とは何かここでの「バリデーション」は、配列の中身が「業務で期待している形・値になっているか」をチェックすることです。 特に「オブジェクト配列」(レコード一覧)に対し...
JavaScript

JavaScript Tips | 配列ユーティリティ:型変換一括

テーマの整理:「型変換一括」とは何かここでの「型変換一括」は、配列の中のオブジェクトに対して「特定のプロパティの型をまとめて変換する」ユーティリティのことです。 業務だと、次のような場面でよく出てきま...
JavaScript

JavaScript Tips | 配列ユーティリティ:欠損補完

テーマの整理:「欠損補完」とは何かここでの「欠損補完」は、配列の中にある「抜けている値・足りないレコード」を、一定のルールで埋めるユーティリティのことです。 業務だと、次のような場面でよく出てきます。...
JavaScript

JavaScript Tips | 配列ユーティリティ:配列正規化

テーマの整理:「配列正規化」とは何かここでの「配列正規化」は、バラバラな形・揺れのある配列データを、「扱いやすい一定の形」にそろえるユーティリティのことです。 業務だと、次のような場面でよく出てきます...
JavaScript

JavaScript Tips | 配列ユーティリティ:行列転置

テーマの整理:「行列転置」とは何かここでの「行列転置」は、二次元配列(表データ)で「行と列を入れ替える」ユーティリティのことです。 業務だと、次のような場面で出てきます。Excel で「行と列を入れ替...
JavaScript

JavaScript Tips | 配列ユーティリティ:カラム削除

テーマの整理:「カラム削除」とは何かここでの「カラム削除」は、オブジェクト配列から「いらない列(プロパティ)」を取り除くためのユーティリティです。 業務だと、次のような場面でよく使います。機密情報(パ...
JavaScript

JavaScript Tips | 配列ユーティリティ:カラム抽出

テーマの整理:「カラム抽出」とは何かここでの「カラム抽出」は、オブジェクト配列から「欲しい列だけ」を取り出すためのユーティリティです。 業務だと、次のような場面でよく使います。画面の一覧では 10 項...
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 が高い」「サーバーが重い」「スレッドプールが枯渇しているかも」 といった問...
PostgreSQL

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Day2 前半のゴール「“PostgreSQLはちょっと真面目なやつ”という感覚をつかむ」今日は、SQLite と MySQLを触ってきたあなたに向けて、「PostgreSQLって、どこが違うの?」を...
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 を使い始めると、最初に戸惑うのが「例外がどこに飛んでいくのか分からない」という感覚です。同期コードなら、...
スポンサーリンク