用語集
エンジニアに必要な技術用語をカテゴリー別にまとめました。
プログラミング
アーキテクチャ
アーキテクチャシステム全体の構造や設計。
例:MVC、MVP、MVVM、クリーンアーキテクチャ
IDE
アイディーイーIntegrated Development Environment(統合開発環境)の略。コードエディタ、デバッガー、コンパイラなどを統合した開発ツール。
例:Visual Studio Code、IntelliJ IDEA、Eclipse
async/await
アシンクアウェイト非同期処理を同期的に書けるようにする構文。Promiseをより読みやすくする。
例:async function fetchData() { const data = await fetch(url); }
アルゴリズム
アルゴリズム問題を解決するための手順や方法。
例:ソート、検索、最短経路
undefined
アンディファインド値が定義されていないことを表す特別な値。
例:let value; // undefined
イベント駆動
イベントくどうイベントの発生に応じて処理を実行するプログラミングパラダイム。
例:クリックイベント、非同期処理
インデックス
インデックスデータベースの検索速度を向上させるための仕組み。
例:CREATE INDEX idx_name ON users(name);
インフラ
インフラInfrastructure(インフラストラクチャ)の略。システムを動作させるための基盤。
例:サーバー、ネットワーク、データベース
SQL
エスキューエルStructured Query Language(構造化照会言語)の略。リレーショナルデータベースを操作するための言語。
例:SELECT * FROM users WHERE age > 20;
npm
エヌピーエムNode Package Managerの略。JavaScriptのパッケージマネージャー。
例:npm install express、npm run build
エラー
エラープログラムの実行中に発生する問題や例外。
例:SyntaxError、TypeError、ReferenceError
ORM
オーアールエムObject-Relational Mapping(オブジェクトリレーショナルマッピング)の略。オブジェクト指向のコードでデータベースを操作するためのツール。
例:SQLAlchemy、Sequelize、TypeORM
オブジェクト
オブジェクトキーと値のペアで構成されるデータ構造。
例:{ name: '田中', age: 30 }
OOP
オブジェクトオリエンテッドプログラミングObject-Oriented Programming(オブジェクト指向プログラミング)の略。データと処理をオブジェクトとしてまとめて設計するプログラミングパラダイム。
例:クラス、継承、カプセル化、ポリモーフィズム
型
かたデータの種類。文字列、数値、オブジェクトなど。
例:string、number、boolean、object
型変換
かたへんかんあるデータ型を別のデータ型に変換すること。
例:String(123)、Number('123')
カプセル化
カプセルかデータとメソッドを1つの単位にまとめ、外部からの直接アクセスを制限すること。
例:private属性、public属性
関数
かんすう特定の処理をまとめた再利用可能なコードブロック。
例:function add(a, b) { return a + b; }
関数型プログラミング
かんすうがたプログラミング関数を中心としたプログラミングパラダイム。副作用を避け、純粋関数を使用する。
例:map、filter、reduce
KISS
キスKeep It Simple, Stupid(シンプルに保つ)の原則。複雑にしすぎない。
例:シンプルな実装を優先
Git
ギット分散型バージョン管理システム。コードの変更履歴を管理し、複数の開発者が協力して作業できるようにする。
例:git commit、git push、git pull
GitHub
ギットハブGitリポジトリをホスティングするWebサービス。コードの共有、コラボレーション、プロジェクト管理が可能。
例:https://github.com
クラウド
クラウドインターネット経由で提供されるコンピューティングリソースやサービス。
例:AWS、Azure、GCP
クラス
クラスオブジェクトの設計図。データ(属性)とメソッド(関数)を定義する。
例:class User { constructor(name) { this.name = name; } }
クロージャー
クロージャー関数とその関数が定義された環境(スコープ)を組み合わせたもの。
例:function outer() { const x = 1; return function inner() { return x; }; }
計算量
けいさんりょうアルゴリズムの実行時間やメモリ使用量の評価。
例:O(n)、O(log n)、O(n²)
継承
けいしょう既存のクラスから新しいクラスを作成し、既存の機能を再利用する機能。
例:class Dog extends Animal { ... }
コールバック
コールバックある処理が完了した後に実行される関数。
例:setTimeout(() => { ... }, 1000);
コンテナ
コンテナアプリケーションとその依存関係をパッケージ化したもの。環境に依存せずに実行できる。
例:Dockerコンテナ
サーバーレス
サーバーレスサーバーの管理を意識せずにアプリケーションを実行できるアーキテクチャ。
例:AWS Lambda、Azure Functions
最適化
さいてきかプログラムのパフォーマンスや効率を向上させること。
例:コードの最適化、データベースクエリの最適化
CI/CD
シーアイシーディーContinuous Integration / Continuous Deployment(継続的インテグレーション・継続的デプロイ)の略。自動化されたビルド、テスト、デプロイのプロセス。
例:GitHub Actions、Jenkins、CircleCI
JSON
ジェイソンJavaScript Object Notationの略。データを表現するための軽量なテキスト形式。JavaScriptだけでなく、多くのプログラミング言語で使用される。
例:{"name": "田中", "age": 30}
JavaScript
ジャバスクリプトWebブラウザで動作するプログラミング言語。動的なWebページの作成や、サーバーサイド開発(Node.js)でも使用される。
例:const greeting = 'Hello, World!';
条件分岐
じょうけんぶんき条件に応じて処理を分岐させる構文。
例:if、else if、else、switch
数値
すうち数値を表現するデータ型。
例:123、3.14
スケーラビリティ
スケーラビリティシステムが負荷の増加に対応できる能力。
例:水平スケーリング、垂直スケーリング
スコープ
スコープ変数や関数が参照できる範囲。
例:グローバルスコープ、ローカルスコープ
正規化
せいきかデータベース設計において、データの冗長性を減らし、整合性を保つための設計手法。
例:第1正規形、第2正規形、第3正規形
設計パターン
せっけいパターンソフトウェア設計でよく使われる再利用可能な解決策。
例:GoFのデザインパターン
SOLID
ソリッドオブジェクト指向設計の5つの原則。Single Responsibility、Open/Closed、Liskov Substitution、Interface Segregation、Dependency Inversion。
例:単一責任の原則、開放/閉鎖の原則
データ構造
データこうぞうデータを効率的に格納・操作するための構造。
例:配列、リスト、スタック、キュー、ツリー、ハッシュテーブル
データベース
データベース構造化されたデータを効率的に保存・管理・検索するためのシステム。
例:MySQL、PostgreSQL、SQLite
テスト
テストプログラムが正しく動作するかを確認する作業。
例:ユニットテスト、統合テスト、E2Eテスト
デバッグ
デバッグプログラムのバグ(不具合)を発見し、修正する作業。
例:デバッガーを使用したステップ実行
DevOps
デブオプスDevelopment(開発)とOperations(運用)を統合し、効率的な開発・運用を実現する文化や手法。
例:CI/CD、インフラのコード化
デプロイ
デプロイ開発したアプリケーションを本番環境に公開すること。
例:サーバーへのアップロード、コンテナの起動
Docker
ドッカーコンテナ仮想化技術。アプリケーションをコンテナとしてパッケージ化し、実行する。
例:docker build、docker run
DRY
ドライDon't Repeat Yourself(繰り返しを避ける)の原則。同じコードを繰り返さない。
例:関数化、共通化
トランザクション
トランザクション複数のデータベース操作を1つの単位として実行する仕組み。すべて成功するか、すべて失敗するか。
例:BEGIN TRANSACTION; ... COMMIT;
null
ヌル値が存在しないことを表す特別な値。
例:let value = null;
NoSQL
ノーエスキューエルリレーショナルデータベース以外のデータベースの総称。ドキュメント型、キー・バリュー型、グラフ型などがある。
例:MongoDB、Redis、Cassandra
Python
パイソン読みやすさを重視したプログラミング言語。データ分析、機械学習、Web開発など幅広い用途で使用される。
例:print('Hello, World!')
配列
はいれつ複数の値を順序付けて格納するデータ構造。
例:[1, 2, 3]、['apple', 'banana']
バグ
バグプログラムの不具合やエラー。
例:予期しない動作、クラッシュ
パターン
パターンよく使われる設計パターンやコーディングパターン。
例:Singleton、Factory、Observer、MVC
バックアップ
バックアップデータの複製を作成し、失われた場合に復元できるようにすること。
例:データベースのバックアップ、ファイルのバックアップ
パッケージマネージャー
パッケージマネージャーソフトウェアパッケージのインストール、更新、削除を管理するツール。
例:npm、pip、composer
非同期処理
ひどうきしょり処理の完了を待たずに次の処理を実行できる仕組み。
例:Promise、async/await、コールバック
ブール値
ブールち真(true)または偽(false)の2つの値のみを持つデータ型。
例:true、false
フレームワーク
フレームワークアプリケーション開発を効率化するための骨組みやライブラリの集合。
例:React、Vue.js、Django、Rails
Promise
プロミス非同期処理の結果を表現するオブジェクト。成功または失敗を表す。
例:new Promise((resolve, reject) => { ... })
変数
へんすうデータを格納するための名前付きの領域。
例:let x = 10; const name = '田中';
ポリモーフィズム
ポリモーフィズム同じインターフェースで異なる動作を実現する機能。
例:同じメソッド名で異なる実装
マイグレーション
マイグレーションデータベースのスキーマ(構造)を変更するためのスクリプト。
例:データベースのバージョン管理
マイクロサービス
マイクロサービスアプリケーションを小さな独立したサービスに分割するアーキテクチャパターン。
例:各サービスが独立してデプロイ可能
メソッド
メソッドオブジェクトに属する関数。
例:array.map()、string.toUpperCase()
文字列
もじれつ文字の連続。テキストデータを表現する。
例:'Hello'、"World"
モニタリング
モニタリングシステムの状態を継続的に監視すること。
例:パフォーマンス監視、エラー監視、リソース監視
モノリシック
モノリシックアプリケーションを1つの大きな単位として構築するアーキテクチャ。
例:従来のWebアプリケーション
YAGNI
ヤグニYou Aren't Gonna Need It(必要になるまで実装しない)の原則。
例:過度な抽象化を避ける
ライブラリ
ライブラリ再利用可能なコードの集合。特定の機能を提供する。
例:jQuery、Lodash、NumPy
リファクタリング
リファクタリングプログラムの動作を変えずに、コードの構造を改善すること。
例:関数の分割、変数名の変更、コードの整理
リレーショナルデータベース
リレーショナルデータベーステーブル形式でデータを管理するデータベース。テーブル間の関係(リレーション)を定義できる。
例:MySQL、PostgreSQL、Oracle
ループ
ループ同じ処理を繰り返し実行する構文。
例:for、while、forEach
例外処理
れいがいしょりエラーが発生した場合の処理。
例:try { ... } catch (error) { ... }
ロードバランサー
ロードバランサー複数のサーバーに負荷を分散する仕組み。
例:Nginx、AWS ELB
ログ
ログシステムの動作記録。デバッグや監視に使用される。
例:エラーログ、アクセスログ、アプリケーションログ
Web開発
アクセシビリティ
アクセシビリティWebサイトやアプリケーションが、様々な能力を持つ人々に使いやすく設計されていること。
例:WCAG準拠、キーボード操作、スクリーンリーダー対応
HTTP
エイチティーティーピーHyperText Transfer Protocol(ハイパーテキスト転送プロトコル)の略。Web上でデータを送受信するためのプロトコル。
例:HTTP/1.1、HTTP/2、HTTP/3
HTTPS
エイチティーティーピーエスHTTPにSSL/TLSによる暗号化を追加したプロトコル。セキュアな通信を実現する。
例:https://example.com
API
エーピーアイApplication Programming Interface(アプリケーションプログラミングインターフェース)の略。ソフトウェア同士が連携するための仕様やインターフェースのこと。
例:RESTful API、GraphQL APIなど
SEO
エスイーオーSearch Engine Optimization(検索エンジン最適化)の略。検索エンジンでの表示順位を向上させる施策。
例:メタタグの最適化、構造化データ、サイトマップ
SQLインジェクション
エスキューエルインジェクション悪意のあるSQLコードをデータベースクエリに注入する攻撃。
例:パラメータ化クエリ、プリペアドステートメント
OAuth
オーオースサードパーティのアプリケーションに、ユーザーのリソースへのアクセス権限を付与する認証プロトコル。
例:Googleログイン、GitHubログイン
キャッシュ
キャッシュ頻繁にアクセスするデータを一時的に保存し、高速にアクセスできるようにすること。
例:ブラウザキャッシュ、CDNキャッシュ
グリッド
グリッドCSS Grid Layout。2次元のレイアウトを実装できる機能。
例:display: grid; grid-template-columns: repeat(3, 1fr);
XSS
クロスサイトスクリプティングCross-Site Scriptingの略。悪意のあるスクリプトをWebページに注入する攻撃。
例:入力値のサニタイズ、エスケープ処理
CSS
シーエスエスCascading Style Sheets(カスケーディングスタイルシート)の略。HTMLの見た目を制御するためのスタイルシート言語。
例:color: red; font-size: 16px;
CDN
シーディーエヌContent Delivery Network(コンテンツ配信ネットワーク)の略。地理的に分散したサーバーでコンテンツを配信する。
例:Cloudflare、AWS CloudFront
JWT
ジェイダブリューティーJSON Web Tokenの略。認証情報を安全に伝送するためのトークン形式。
例:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
セキュリティ
セキュリティシステムやデータを保護すること。不正アクセスや攻撃から守る。
例:認証、認可、暗号化、XSS対策
DOM
ドムDocument Object Model(ドキュメントオブジェクトモデル)の略。HTMLやXML文書をプログラムから操作するためのインターフェース。
例:document.getElementById()、document.querySelector()
認可
にんかユーザーが特定のリソースにアクセスする権限があるかを確認すること。
例:ロールベースアクセス制御(RBAC)
認証
にんしょうユーザーが本人であることを確認すること。
例:ログイン、パスワード認証、2要素認証
パフォーマンス
パフォーマンスアプリケーションの動作速度や効率性。
例:ページ読み込み速度、レスポンス時間
フレックスボックス
フレックスボックスCSSのレイアウト機能。1次元のレイアウトを簡単に実装できる。
例:display: flex;
メディアクエリ
メディアクエリ画面サイズやデバイスの特性に応じてCSSを適用する機能。
例:@media (min-width: 768px) { ... }
RESTful
レストフルREST(Representational State Transfer)の原則に従って設計されたAPI。HTTPメソッドを適切に使用し、リソース指向の設計を行う。
例:GET /api/users、POST /api/users など
レスポンシブデザイン
レスポンシブデザイン様々な画面サイズやデバイスに自動的に適応するWebデザインの手法。
例:メディアクエリ、フレックスボックス、グリッド
一般
アジャイル
アジャイルソフトウェア開発の手法。短いサイクルで反復的に開発を進める。
例:スクラム、カンバン
カンバン
カンバンタスクを可視化し、ワークフローを管理する手法。
例:To Do、In Progress、Done
コードレビュー
コードレビュー他の開発者が書いたコードを確認し、フィードバックを提供するプロセス。
例:Pull Requestでのレビュー
スクラム
スクラムアジャイル開発のフレームワーク。短いスプリントで反復的に開発を進める。
例:スプリント、デイリースクラム、スプリントレビュー