本授業では、システムエンジニアとして必要な「バックエンド開発」の基礎から応用までを学び、Webアプリケーションや業務システムの裏側を支える技術を習得することを目指します。サーバーサイドの処理、データベース連携、API設計、セキュリティ対策など、実務に直結するスキルを体系的に身につけます。
授業内容
1. バックエンド開発の基礎理解
- バックエンドとは何か(フロントエンドとの違い)
- クライアント・サーバーモデルの理解
- リクエストとレスポンスの流れ(HTTPの基本)
- バックエンド開発に使われる主な言語(Java, Python, PHP, Node.jsなど)
2. Webサーバーとアプリケーションフレームワーク
- Webサーバーの役割(Apache, Nginx)
- アプリケーションフレームワークの活用(Spring Boot, Django, Expressなど)
- ルーティングとコントローラーの設計
- ミドルウェアの概念と活用
3. データベースとの連携
- RDBMSとNoSQLの違い(MySQL, PostgreSQL, MongoDBなど)
- SQLの基本操作(SELECT, INSERT, UPDATE, DELETE)
- ORマッパー(ORM)の活用(Hibernate, Sequelize, Django ORMなど)
- データベース設計と正規化
4. API設計と通信
- RESTful APIの設計原則
- JSONとXMLのデータフォーマット
- 認証と認可(JWT, OAuth 2.0)
- APIドキュメントの作成(Swagger/OpenAPI)
5. セキュリティとパフォーマンス
- 入力値検証とサニタイズ
- SQLインジェクション、XSS、CSRFなどの対策
- ログ管理とエラーハンドリング
- キャッシュ、非同期処理、スケーラビリティの考慮
6. 実践演習
- シンプルなCRUDアプリケーションの開発
- REST APIの設計と実装
- データベースとの接続と操作
- チームでのバックエンド開発演習(GitHub活用)
7.期待される成果
- サーバーサイドの処理を理解し、実装できる
- データベースと連携したアプリケーションを構築できる
- 安全で拡張性のあるAPIを設計・開発できる
- チーム開発においてバックエンドの役割を担える