プログラミング

スポンサーリンク
JavaScript

JavaScript Tips | 文字列ユーティリティ:検索・置換 - 全置換

「全置換」って何をするユーティリティ?まずイメージからいきましょう。「この文字列の中にある foo を、全部 bar に変えたい」という場面、よくありますよね。"foo foo foo" → "bar...
JavaScript

JavaScript Tips | 文字列ユーティリティ:検索・置換 - 大文字小文字無視検索

「大文字小文字無視検索」とは何をしてくれるのかまずゴールのイメージからいきます。次の3つの文字列を見てください。"Apple""apple""APPLE"人間からすると「全部 Apple でしょ」です...
JavaScript

JavaScript Tips | 文字列ユーティリティ:検索・置換 - 後方一致

「後方一致」とは何をしているのか前回の「前方一致」は“先頭が合っているか”を見るものでした。「後方一致」はその逆で、文字列の“末尾”が、指定した文字列と一致しているかどうかを調べます。「report....
JavaScript

JavaScript Tips | 文字列ユーティリティ:検索・置換 - 前方一致

「前方一致」とは何をしているのかまず言葉の整理からいきます。「前方一致」は、文字列の“先頭”が、指定した文字列と一致しているかどうかを調べることです。「山田太郎」が「山田」で始まっているか?「」が「h...
JavaScript

JavaScript Tips | 文字列ユーティリティ:検索・置換 - 部分一致検索

「部分一致検索」ユーティリティは何をしてくれるのか業務システムで文字列を扱うとき、「完全一致」だけで足りることはあまりありません。ユーザー一覧から「山」で始まる人を探したい、商品名に「USB」が含まれ...
C#

C# Tips | 日付・時間処理:日付丸め

はじめに 「日付丸め」は“時間をざっくり区切るための技”「集計は1時間単位で」「グラフは5分刻みで」「日付だけにそろえたい」こういう“きっちりした時刻”ではなく“区切りの時刻”が欲しいときに必要になる...
C#

C# Tips | 日付・時間処理:四半期判定

はじめに 「四半期判定」は“月をざっくり4つに区切るラベル付け”「この売上は第何四半期?」「四半期ごとの集計を出したい」「決算Q1〜Q4でグラフを描きたい」こういう“3ヶ月単位”の世界で必ず必要になる...
C#

C# Tips | 日付・時間処理:週番号取得

はじめに 「週番号取得」は“時間をざっくり区切るためのラベル付け”「この売上は何週目のデータ?」「週次レポートの第何週?」「ISO週番号でログを集計したい」こういう“週単位”の集計やレポートを作るとき...
C#

C# Tips | 日付・時間処理:年一覧生成

はじめに 「年一覧生成」は“長期スパンの集計・分析の土台”売上の年次推移、年度別の件数集計、ログの年別アーカイブ。こういう「年単位」で物事を見る処理の裏側には、たいてい「年一覧」がいます。C# では、...
C#

C# Tips | 日付・時間処理:月一覧生成

はじめに 「月一覧生成」は“月次処理の背骨”になる「指定期間の月ごとの集計」「月次レポート」「月別売上グラフ」こういう“月単位”の処理をするときに土台になるのが「月一覧生成」です。C# では、Date...
C#

C# Tips | 日付・時間処理:日付一覧生成

はじめに 「日付一覧生成」は“カレンダー系ロジックの土台”「指定期間の全日付を出したい」「1ヶ月分のカレンダーを作りたい」「営業日一覧を作りたい」こういうときに必ず必要になるのが「日付一覧生成」です。...
C#

C# Tips | 日付・時間処理:日付範囲判定

はじめに 「日付範囲判定」は“ビジネスルールの線引き”そのもの「この日付はキャンペーン期間内か?」「契約有効期間に含まれるか?」「集計対象期間か?」こういう“期間に入っているかどうか”の判定は、業務シ...
Java

Java Tips | コレクション:シャッフル

シャッフルは「順番に意味を持たせないために、あえてぐちゃっと混ぜる」技シャッフルは、ざっくり言うと「コレクションの要素の順番をランダムに入れ替える」処理です。テストデータの順番を毎回変えたい。おすすめ...
Java

Java Tips | コレクション:バッチ分割

バッチ分割は「一気にやると危ない処理を、小さな塊に分けて安全に回す」技バッチ分割は、ざっくり言うと「大量データを、バッチ(かたまり)単位に分けて処理する」ためのユーティリティです。1 万件のレコードを...
Java

Java Tips | コレクション:分割処理

分割処理は「大きな塊を、ちょうどいいサイズのかたまりに刻む」技分割処理は、ざっくり言うと「大きな List を、一定サイズごとの小さな List に分ける」テクニックです。一度に 1 万件のレコードを...
Java

Java Tips | コレクション:フラット化

フラット化は「入れ子の一覧を、一本の一覧に伸ばす」技フラット化は、ざっくり言うと「List<List<T>> のような“入れ子のコレクション”を、List<T> という“まっすぐなコレクション”に伸ば...
Java

Java Tips | コレクション:マッピング

マッピングは「一覧の“形”を変える」技マッピングは、ざっくり言うと「ある型の一覧を、別の型の一覧に変換する」処理です。ユーザー一覧から「名前だけの一覧」を作る。商品一覧から「価格だけの一覧」を作る。注...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - 単語分割

なぜ「単語分割」ユーティリティが必要になるのかキャメルケース化・スネークケース化・ケバブケース化・パスカルケース化。ここまでいろいろやってきましたが、実は全部の“土台”にあるのが 「単語分割」 です。...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - パスカルケース化

パスカルケースってそもそも何かまず言葉の整理からいきます。「パスカルケース(PascalCase)」は、単語の先頭をすべて大文字にして、間をつめてつなげる書き方です。"user name" → "Us...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - ケバブケース化

ケバブケースってそもそも何かまず言葉の整理からいきましょう。「ケバブケース(kebab-case)」は、単語をハイフン - でつなぎ、全部小文字で書くスタイルです。"userName" → "user...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - スネークケース化

スネークケースってそもそも何かまず言葉の整理からいきます。「スネークケース(snake_case)」は、単語をアンダースコア _ でつなぎ、全部小文字で書くスタイルです。"userName" → "u...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - キャメルケース化

キャメルケースってそもそも何かまず言葉の整理からいきます。「キャメルケース(camelCase)」は、プログラミングでよく使う“名前の付け方”のルールの一つです。先頭は小文字。単語の区切りごとに、次の...
Python

Python | テスト・設計・品質:カバレッジ

カバレッジって何?まずは一言でイメージをつかむテストの「カバレッジ(coverage)」は、「テストを実行したときに、あなたのコードのどこまでが実際に実行されたか」を数値で教えてくれる指標です。ざっく...
Python

Python | テスト・設計・品質:E2E テスト

E2E テストって何?まずはざっくりイメージからE2E テスト(End-to-End テスト)は、「ユーザーの操作の始まりから終わりまで、システム全体を通して動かして確認するテスト」です。単体テスト関...
Python

Python | テスト・設計・品質:結合テスト

結合テストって何?単体テストとの違いからつかむ結合テスト(integration test)は、「複数の部品(関数・クラス・モジュール)を“つなげた状態”で、ちゃんと一緒に動くかを確認するテスト」です...
Python

Python | テスト・設計・品質:単体テスト

単体テストって何?まずはゴールのイメージから単体テスト(ユニットテスト)は、「プログラムを小さな“部品(ユニット)”ごとに分けて、その部品がちゃんと動くかを確認するテスト」です。ここでいう“部品”は、...
Python

Python | テスト・設計・品質:monkeypatch

monkeypatch って何?mock とどう違うのかpytest の monkeypatch は、「テスト中だけ、モジュールやオブジェクトの属性を書き換えるための道具」です。やりたいことは moc...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 – API 設計との関係

API 設計と fetch の関係の全体像fetch 自体は「URL に HTTP リクエストを送って、レスポンスを受け取るだけ」の素朴な道具です。でも、実際のコードの書きやすさ・分かりやすさは、AP...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 – 再試行処理

「再試行処理」を一言でいうとfetch の「再試行処理」は、「1 回の通信が失敗したときに、すぐ諦めずにもう何回かやり直す仕組み」 のことです。ネットワークの世界では、「たまたま一瞬だけ回線が不安定だ...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 – タイムアウト対策

fetch の「タイムアウト対策」を一言でいうとfetch のタイムアウト対策は、「一定時間待ってもサーバーから返事がこなかったら、自分から通信を打ち切る仕組みを入れること」 です。そのままの fet...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 – エラーレスポンス処理

「エラーレスポンス処理」を一言でいうとfetch / API 通信における「エラーレスポンス処理」は、「サーバーから“うまくいかなかった”という返事が返ってきたときに、何をどうするか決めておくこと」 ...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 – ステータスコード確認

ステータスコード確認を一言でいうとfetch で API を叩くときの「ステータスコード確認」は、「サーバーが今どんな気持ちで返事してきているか」をちゃんと見ること です。200「OK、うまくいったよ...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):基本文法 - Exit文

Exit文は「ここでいったん打ち切るための非常口」Exit文は、「本来の終わり方を待たずに、ここで処理を打ち切りたい」ときに使う“非常口”のような命令です。ループなら「本当は10回回す予定だけど、条件...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):基本文法 - Do Until

Do Until は「条件が成り立つ“まで”繰り返す」ループDo While は「条件が True のあいだ繰り返す」ループでした。Do Until はその逆で、「条件が True になる“まで”繰り...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):基本文法 - Do While

Do While は「条件が成り立つあいだ、ずっと繰り返す」ループFor文は「何回繰り返すか」があらかじめ決まっているループでした。一方 Do While は、「この条件が True のあいだは、ずっ...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):基本文法 - For Each

For Each は「集まりの中身を一つずつ取り出して処理する」ための文For文は「番号で回すループ」でした。i = 1 から 10 まで のように、「番号(インデックス)」を自分で管理します。一方 ...
VBA

Excel VBA | 超初心者(Excel操作+マクロ体験):基本文法 - Step指定

Step指定は「カウンタの増え方・減り方を決めるつまみ」For文は、For i = 1 To 10 ' 繰り返し処理Next iFor i = 1 To 10 ' 繰り返し処理Next iVB...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 – JSON 送受信

JSON と fetch の関係を一言でいうとJSON と fetch の関係は、「JavaScript とサーバーが会話するときの“共通言語(JSON)”を、fetch という電話で送受信する」 と...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 – headers の設定

headers ってそもそも何?なぜ設定が必要なのかfetch の headers は、「このリクエストに関する“メタ情報”(追加情報)をサーバーに伝えるためのラベル集」 です。サーバーは、ただ UR...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 - POST リクエスト

POST リクエストを一言でいうとfetch の POST リクエストは、「ブラウザからサーバーに“データを送る”ための HTTP 通信」 です。GET が「取りに行く」だとしたら、POST は「渡し...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 – GET リクエスト

GET リクエストって何をしているのかまず「GET リクエスト」とは、“サーバーにデータをください、とお願いするためのリクエスト” です。今日の天気を教えてユーザー一覧をちょうだい記事の詳細を見せてみ...
JavaScript

JavaScript | 非同期処理:fetch / API 通信 – fetch の基本

fetch ってそもそも何者かfetch は、JavaScript から「ネット越しにデータを取りに行く(サーバーと通信する)」ための関数 です。天気 API から今日の天気をもらう自分のサーバーにフ...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - 小文字変換

「小文字変換」ユーティリティは何のために使うのか大文字変換と対になるのが「小文字変換」です。次のような値を考えてみてください。"ABC""Abc""abc"人間からすると「同じ abc」ですが、コンピ...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - 大文字変換

「大文字変換」ユーティリティは何のために使うのかまずイメージからいきます。次のような値があるとします。"abc""Abc""ABC"人間から見ると「だいたい同じ」ですが、コンピュータ的には全部別物です...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - 半角→全角

「半角→全角」ユーティリティは何のために使うのかさっきの「全角→半角」と逆方向の話です。業務システムでは、こんな要望がよく出ます。帳票や PDF で、桁をきれいに揃えたいから全角で出したい。画面上の見...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - 全角→半角

「全角→半角」ユーティリティは何を解決してくれるのかまず、よくある業務の“あるある”からいきます。ユーザーが「1234」と全角数字で入力してくる。「@」や「-」が全角のせいでメールアドレス判定に落ちる...
JavaScript

JavaScript Tips | 文字列ユーティリティ:整形 - trim

trim は「余計な空白をきれいに落とす」道具まずイメージからいきましょう。ユーザーがフォームにこう入力したとします。" 山田太郎 "(前後にスペース付き)見た目は同じ「山田太郎」でも、実際の文字列と...
TypeScript

TypeScript | 1 日 90 分 × 7 日アプリ学習:超初級編

1日目のゴールと今日やること1日目のテーマは「TypeScript に触りながら、“型って怖くない”を体で覚える」ことです。今日のゴールは 3 つだけです。「型って何をしてくれる存在なのか」をイメージ...
JavaScript

JavaScript | 1 日 120 分 × 7 日アプリ学習:検索 & ソート機能付き一覧

1日目のゴールと今日やること1 日目のテーマは「検索・ソート機能付きの一覧アプリを作りながら、高階関数(map / filter / sort)の本質を理解する」ことです。今日の学習ポイントは次の 3...
C#

C# Tips | 日付・時間処理:日付比較

はじめに 「日付比較」は“ビジネスルールをコードに落とす入り口”「締切を過ぎているか?」「この期間内か?」「開始日より前か後か?」業務システムで“条件分岐”を書くとき、ほぼ必ず出てくるのが「日付比較」...
C#

C# Tips | 日付・時間処理:UnixTime変換

はじめに 「UnixTime変換」は“異世界の時計との変換アダプタ”API やログ、JavaScript、Linux 系ツールと連携するときに、よく出てくるのが「UnixTime(UNIX時間)」です...
C#

C# Tips | 日付・時間処理:ISO8601変換

はじめに 「ISO8601変換」は“システム同士の共通語”をしゃべるための必須スキルAPI、バッチ連携、ログ、クラウドサービス。システム同士が日時をやり取りするとき、ほぼ必ず出てくるのが「ISO860...
PHP

PHP Tips | 文字列処理:実務向け便利系 - Unicode 正規化

なぜ「Unicode 正規化」が実務で問題になるのか同じ「見た目」の文字でも、内部的には“別の文字列”として扱われてしまうことがあります。これが Unicode 正規化の話です。例えば、次の 2 つは...
PHP

PHP Tips | 文字列処理:実務向け便利系 - 文字列中の数値を数値化

「文字列中の数値を数値化」とは何をしたいのか業務システムでは、ユーザー入力や CSV から読み込んだ値が「文字列」として渡ってくることが多いです。"123"" 1,234 ""9876"(全角)見た目...
PHP

PHP Tips | 文字列処理:実務向け便利系 - 先頭ゼロ埋め

「先頭ゼロ埋め」で何をしたいのか先頭ゼロ埋めは、一言でいうと「数字や文字列を、決めた桁数になるように左側を 0 で埋める」ことです。社員番号を 000123 のように 6 桁でそろえたい。請求書番号を...
PHP

PHP Tips | 文字列処理:実務向け便利系 - 配列を改行文字列に変換

なぜ「配列を改行文字列に変換」したくなるのかさっきまでやっていた「複数行テキストを配列化」の逆方向が、今回の「配列を改行文字列に変換」です。例えば、こんな場面がよくあります。画面のテキストエリアに、配...
PHP

PHP Tips | 文字列処理:実務向け便利系 - 複数行テキストを配列化

なぜ「複数行テキストを配列化」するのか業務でよくあるのが、こんなテキストです。山田太郎佐藤花子鈴木一郎これを「1 行ずつ処理したい」「1 行ずつバリデーションしたい」「1 行ずつ DB に登録したい」...
PHP

PHP Tips | 文字列処理:実務向け便利系 - 改行を除去した1行化

なぜ「改行を除去した1行化」が必要になるのか業務で文字列を扱っていると、「中身はそのままでいいから、とにかく“1行の文字列”にしたい」という場面がよく出てきます。ログに出すときに、改行があると見づらい...
PHP

PHP Tips | 文字列処理:実務向け便利系 - JSON デコード(例外対応)

なぜ「JSON デコード(例外対応)」が必要なのか業務で JSON を扱うとき、ほぼ必ずやるのが「文字列 → 配列(オブジェクト)」への変換、つまり JSON デコードです。ここで怖いのは、「壊れた ...
PHP

PHP Tips | 文字列処理:実務向け便利系 - JSON 安全エンコード

「JSON 安全エンコード」で何を守りたいのかJSON 自体はただのデータ形式ですが、「どこに出すか」で話が一気に“セキュリティの話”になります。特に危険なのは、JSON をそのまま HTML や J...
スポンサーリンク