プログラミング
はじめの一歩を、専門用語なしで。
63件の記事
関数の引数とは?位置引数・キーワード引数・デフォルト値をPythonで解説
引数とは、関数に渡す値のことです。位置引数・キーワード引数・デフォルト値の違い、引数の数が合わない時のエラー、デフォルト値にリストを使ってはいけない理由を、Pythonの短いコードと図解で解説します。
スコープ(変数の有効範囲)とは?ローカル変数・グローバル変数をPythonで解説
スコープとは、変数が使える範囲のことです。関数の中のローカル変数と、外のグローバル変数の違い、NameErrorやUnboundLocalErrorの原因と直し方、引数と戻り値で受け渡す書き方を、Pythonの短いコードと図解で解説します。
再帰(再帰関数)とは?自分自身を呼ぶ仕組みを、Pythonと図解で解説
再帰とは、関数が自分自身を呼び出す書き方です。必要な2つの条件(終了条件と、問題を小さくすること)、階乗の動き、RecursionErrorが出る原因、ループとの使い分けを、Pythonの短いコードと図解で解説します。
辞書(dict)型とは?キーと値で管理する書き方をPythonで解説
辞書(dict)型とは、キーと値のペアでデータを管理する入れ物です。リストとの違い、取り出し方、get()でKeyErrorを防ぐ方法、追加・更新・削除、for文での繰り返しを、Pythonの短いコードと図解で解説します。
ループ(繰り返し)とは?for文とwhile文の違いをPythonで図解
ループとは、同じ処理を繰り返す仕組みです。for文とwhile文の違い、使い分け、break・continue、リストの繰り返し、止まらない『無限ループ』の原因と対処を、Pythonの短いコードと図解で解説します。
条件分岐(if文)とは?if・elif・elseの書き方をPythonで図解
条件分岐(if文)とは、条件によって、実行する処理を切り替える仕組みです。if・elif・elseの書き方、比較演算子、andとor、よくあるつまずき(=と==、elifの順序、インデント)を、Pythonの短いコードと図解で解説します。
Webhookとは|APIとの違いと、通知が届く仕組み・安全に受け取る注意点
Webhookは、何かが起きた時に、サービス側から、指定したURLへ自動で通知を送る仕組みです。APIやポーリングとの違い、通知が届く流れ、受け取る側の注意点(署名の検証・再送・冪等性)をまとめます。
Base64とは|暗号化ではない理由と、メール・JWT・画像で使われる場面
Base64は、データを英数字だけの形に変換する方式です。暗号化ではなく、誰でも元に戻せます。変換の仕組み、使われる場面、データが約3分の1増える理由、パスワードの保護に使ってはいけない理由を解説します。
環境変数とは|.envファイルの役割と、APIキーを安全に扱う基本をやさしく解説
環境変数は、プログラムの外に置いておく「名前と値」の設定です。接続先を環境ごとに切り替える、APIキーをコードに直接書かない、といった目的で使います。.envファイルの書き方、Next.jsやVercelでの注意、GitHubに上げてしまった時の対処までをまとめます。
PHPとは?何ができる?仕組みとWordPressとの関係を図解で解説
PHPは、Webサイトの裏側(サーバー)で動くプログラミング言語で、WordPressもPHPで動いています。何ができるか、動く仕組み、簡単なコード例、メリット・注意点、始め方を、図解つきで初心者向けに解説します。
ストラングラーパターンとは?古いシステムを止めずに、少しずつ新しくする移行方法
古いシステムを、一度に全部作り直すのは、リスクが大きい方法です。ストラングラーパターンは、入口で振り分けながら、機能ごとに少しずつ新しいシステムへ移していく方法です。仕組み、進め方の5ステップ、向いている場面と、つまずきやすい点を解説します。
冪等キー(Idempotency-Key)とは?二重決済・二重登録を防ぐAPI設計と実装のポイント
通信エラーで、結果が分からず再送したら、二重に決済・登録されてしまった。この問題を防ぐのが、冪等キーです。仕組み、サーバー側の実装で決めること、クライアント側の使い方、よくある落とし穴を、サンプルコードつきで解説します。
APIのタイムアウトとリトライの決め方|待ち時間・回数・間隔と、やってはいけない再試行
APIを呼ぶ時、いつまで待つか、失敗したら何回やり直すか。決めていないと、無限に待ったり、相手に負荷をかけたり、二重に処理したりします。タイムアウトの種類、再試行してよい失敗と悪い失敗、指数バックオフとジッターの考え方を整理します。
API連携が「両方正常なのに繋がらない」時の確認5項目と切り分けの順番
どちらのシステムも正常に動いているのに、連携だけがうまくいかない。API連携で一番苦労するこのケースの原因は、認証情報・データ形式・必須項目・バージョン・通信の5つに絞れることが多いです。確認の順番と、HTTPステータスの読み方を整理します。
APIをループで呼ぶ時の3つの約束|間隔・上限・再試行でアクセス制限を防ぐ
APIをループ処理で何度も呼ぶと、短時間にリクエストが集中して、相手のサービスからアクセス制限を受けることがあります。待ち時間を入れる、件数の上限を決める、失敗時に間隔をあけて再試行する、の3つの約束と、サンプルコードを紹介します。
SQLインジェクション対策|プレースホルダ・エスケープの違いと限界
SQLインジェクションを防ぐ根本的な対策は、プレースホルダ(パラメータ化クエリ)です。エスケープや入力チェックとの違い、サニタイズの効果と限界、コード例、多層で守る考え方を解説します。
JSONとは?書き方の基本ルールと、よくあるエラーの直し方をやさしく解説
APIや設定ファイルでよく見かけるJSONとは何か。書き方の基本ルール、使えるデータの種類、「カンマ」「引用符」などよくあるエラーの原因まで、初心者向けに解説します。
プログラミング独学は「真似る→飛ばす→2周目」で続く|AI時代の学び方とAIの使いどころ
最初から全部を理解しようとすると挫折しやすいのが、プログラミングの独学です。「まず動くものを真似る→分からない部分は飛ばす→2周目で理解する」という順番と、AIを学習に使う時の良い使い方・悪い使い方を整理します。
フレームワークは「流行っているから」で選ばない|小さく始めて移行する判断基準
流行っているからという理由でフレームワークを選ぶと、学習コストや過剰な機能で、かえって開発が遅くなることがあります。選定の失敗談と、規模・運用・撤退のしやすさで判断する基準、小さく始めて移行する進め方を整理します。
AIが書いたコードをそのまま使ってはいけない理由|レビューで見る5つのチェック
AIはコードもすぐ書いてくれますが、「動く」ことと「安全で、後から直せる」ことは別です。秘密情報、存在しない関数、想定外の入力、テスト、説明できるかの5つのチェックと、小さく試す進め方を実務の視点で整理します。
Pythonとは?できること・向いている人・始め方を初心者向けに解説
Pythonとは何ができるプログラミング言語なのか。AI・データ分析・自動化・Web開発などの用途、読みやすいと言われる理由、始め方と最初のコード例を、初心者向けに解説します。
PoE(Power over Ethernet)とは?LANケーブル1本で電源も送れる仕組み
監視カメラやWi-Fiアクセスポイントの近くに、なぜかコンセントが見当たらない…。実はLANケーブルだけで電源を供給する仕組みがあります。
KVMスイッチとは?1組のキーボード・マウスで複数のパソコンを操作する仕組み
KVMスイッチとは、1組のキーボード・モニター・マウスで、複数のパソコンを切り替えて操作できる装置です。ハードウェア型とソフトウェア型の違い、向いている場面を解説します。
UPS(無停電電源装置)とは?停電の『数秒』がデータを守る理由
停電した瞬間、パソコンやサーバーは何の予告もなく電源が落ちます。その『数秒』を稼ぐための仕組みを解説します。
RAIDとは?RAID 0・1・5の違いと、バックアップにならない理由
RAIDとは、複数のハードディスクやSSDを組み合わせて、1台の大きなドライブのように扱う技術です。RAID 0・1・5の違いと、「RAIDを組んでいてもバックアップにはならない」理由を解説します。
コンシステントハッシュ法とは?サーバーを増減しても大惨事にならない仕組み
キャッシュサーバーを1台増やしただけで、保存されていたデータのほぼ全部が『迷子』になる…そんな事態を防ぐための分散のさせ方を解説します。
デッドレターキューとは?消えるはずのメッセージを取りこぼさない仕組み
処理に失敗したメッセージは、ただ消えてしまうわけではありません。『行き場のない郵便物』を専用の棚に取り分けておく、そんな仕組みがデッドレターキューです。
レースコンディション(競合状態)とは?同時アクセスが引き起こす、見えないバグ
テストでは再現しないのに、本番でだけ稀に起こる不具合。その正体は「タイミングの競合」かもしれません。
サーキットブレーカーパターンとは?障害の連鎖を防ぐ設計手法
1つのサービスの不調が、システム全体を巻き込んで停止させてしまう。それを防ぐための、電気のブレーカーと同じ発想の設計パターンです。
N+1問題とは?原因と対策をORMの例でやさしく解説
N+1問題とは、データ件数に比例してクエリの回数が増える性能問題。著者と本の例で原因を示し、まとめて取得する対策を解説します。
冪等性(べきとうせい)とは?二重決済を防ぐAPI設計の考え方
冪等性(べきとうせい)とは、同じ操作を何度行っても、結果が変わらない性質です。二重決済を防ぐAPI設計での考え方、冪等キー、HTTPメソッドとの関係、確認のチェックリストを解説します。
モノリシックとは?意味・メリット・マイクロサービスとの違い
「モノリシック」とは、1つの大きな塊で作るシステムの作り方です。マイクロサービスとの違い、それぞれのメリット・デメリット、選ぶ時の判断基準と、古いシステムを段階的に移行するストラングラーパターンまで、やさしく解説します。
CORSとは?Web開発者が必ず一度はハマるエラーの正体
コンソールに真っ赤な文字で表示される、あの見慣れないエラーを解説します。
静的サイトと動的サイトの違いとは
Webサイトの裏側にある、2つの異なる作りの違いをやさしく解説します。
ライブラリとは?プログラミングにおける「便利な部品集」を解説
ライブラリとは、プログラムでよく使う機能を、部品としてまとめたものです。使う理由、読み込み方、選ぶ時の確認ポイント、フレームワークとの違いを、工具箱にたとえて解説します。
依存関係とは?パッケージ管理の基本の考え方
「このパッケージ、あのパッケージに依存しています」という表現の意味を解説します。
例外処理とは?エラーに備えるプログラムの書き方
「もしもの時」への備えを、あらかじめコードに組み込んでおく考え方です。
YAMLとは?設定ファイルでよく見る記法
以前紹介したマークダウンと似た立ち位置の、設定ファイル向けの記法です。
正規表現とは?文字列パターンを扱う技術
「なんだか難しそうな記号の羅列」に見えて、実は非常に強力な検索の道具です。
Gitのブランチとは?枝分かれの考え方とマージの流れ
Gitのブランチとは、元のコードに影響を与えず、別の道として枝分かれさせる機能です。なぜ枝分かれさせるのか、マージで取り込む流れまで解説します。
テストコードとは?品質を守るための仕組み
「テストを書く」とはどういうことか、Q&A形式で整理しました。
リファクタリングとは?コードを「きれいに整える」作業
動いているコードを、あえて書き直す。一見不思議なこの作業の意味を解説します。
ローコード・ノーコードとは?プログラミング不要の開発
専門知識がなくてもアプリが作れる時代。仕組みと向いている用途を解説します。
配列とは?データをまとめて管理する仕組み
変数の「箱」が、ずらっと並んでいるとイメージすると理解しやすくなります。
APIキーとは?安全な管理方法もあわせて解説
外部サービスと連携する際によく登場する言葉。取り扱いには注意が必要です。
関数とは?プログラミングの「まとめ役」の考え方
変数と並んで最初に習う基本概念。日常生活のたとえと簡単なコード例で、つまずきやすいポイントを整理します。
コンパイラとインタープリタの違いとは?
プログラミング言語の分類でよく出てくる言葉、実は身近な例で理解できます。
マークダウン記法とは?知っておくと便利な理由
GitHubやメモアプリでよく見る「#」や「*」の意味、実は覚えると便利です。
オブジェクト指向とは何か、超入門
多くの現代的な言語が採用している考え方。難しく聞こえますが例えると簡単です。
CI/CDとは?開発の自動化をやさしく解説
CI/CDとは、ソフトウェアの変更を自動でチェックし(CI)、公開作業まで自動化する(CD)仕組みです。工場の自動検品・出荷ラインにたとえて、やさしく解説します。
変数とは?プログラミングの「箱」の考え方
変数とは、データを入れておく「名前のついた箱」のこと。簡単なコード例で、変数の考え方と、分かりやすい名前の付け方をやさしく解説します。
アルゴリズムとは?レシピに例えてやさしく解説
アルゴリズムとは、問題を解決するための手順のこと。料理のレシピに例えて、手順による効率の違いや、プログラミングでの役割をやさしく解説します。
フレームワークとライブラリの違い|主導権で見分ける
フレームワークとライブラリの違いは「主導権がどちらにあるか」。制御の逆転の考え方と、比較表、見分け方のコツをやさしく解説します。
SQLとは?データベースとの会話の仕方
「SQLが書ける」というスキル、実は特別な才能がなくても習得できます。
REST APIとGraphQLの違い|メリット・デメリットと選び方
REST APIとGraphQLの違いを、レストランの注文に例えて解説。メリット・デメリットの比較表と、どちらを選ぶかの判断基準もまとめました。
GitHubとGitの違い、初心者がつまずくポイント
名前が似ているこの2つ、実は役割がまったく異なります。
Dockerとは?「環境ごと持ち運べる箱」の仕組み
「自分の環境では動くのに…」という悩みを解決する技術です。
Gitとは?バージョン管理の基本をやさしく解説
エンジニアが必ず使う「バージョン管理」の仕組み。実は考え方はシンプルです。
「デバッグ」とは?初心者がつまずくポイント
エンジニアが日常的に使う「デバッグ」という言葉。実は誰でもできる地道な作業です。
エラーメッセージの正しい読み方・調べ方
赤い文字を見た瞬間に閉じたくなる気持ち、わかります。でも実は宝の地図です。
プログラミングを独学で学ぶ時の最初の一歩
プログラミング独学の最初の一歩は、完璧に理解しようとせず、動くものを真似ること。挫折しにくい学びの順番と、環境の選び方を解説します。
プログラミング言語の種類一覧|用途別の得意分野と選び方
プログラミング言語の主な種類と得意分野を、用途別の早見表で整理。Web・データ分析・アプリ開発での選び方と、初心者が最初に学ぶ言語の考え方も解説します。
HTML・CSS・JavaScriptの違い|家づくりでたとえて、役割を図解
Web制作の3点セット、実は家づくりに例えるとすっきり理解できます。