0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

新卒1年目の新人エンジニアがWebアプリを作成する

Posted at

:black_medium_square: iOSアプリ開発の技術選定

✅ 必要な技術スタック

カテゴリ 技術 説明
フロントエンド(iOSアプリ) Swift Apple推奨の開発言語
SwiftUI / UIKit UIフレームワーク(最新: SwiftUI、従来: UIKit)
Core Location GPS位置情報取得
MapKit / Google Maps SDK 地図表示
バックエンド(API & DB) FastAPI / Django APIサーバー(FastAPI: 軽量 & 高速 / Django: 管理機能 & 認証)
PostgreSQL / Firebase Firestore データベース(RDB or NoSQL)
AWS S3 / Firebase Storage 画像・写真保存
通信(iOS ⇔ バックエンド) URLSession / Alamofire API通信(標準: URLSession / 簡単: Alamofire)
WebSocket(FastAPI) リアルタイム通信

🛠 フロントエンド(iOSアプリ開発)

📌 使用技術

  • Swift(言語)
  • SwiftUI(UIフレームワーク)
    • iOS 13以下をサポートするなら UIKit も選択肢
  • Core Location(位置情報取得)
  • MapKit / Google Maps SDK(地図表示)
  • CoreData / SQLite(ローカルデータ保存)
  • URLSession / Alamofire(API通信)

🌍 位置情報 & 地図

import CoreLocation
import MapKit
  • Core Location → ユーザーの現在地を取得
  • MapKit → Apple純正の地図表示
  • Google Maps SDK を使いたい場合は追加でライブラリ導入

🛠 バックエンド(API & データ管理)

📌 選択肢

✅ APIサーバー

技術 特徴
FastAPI 軽量 & 高速、非同期処理が得意
Django REST Framework 認証や管理機能が充実

✅ データベース

技術 特徴
PostgreSQL スケールしやすいRDB
Firebase Firestore NoSQL、スキーマレスで柔軟

✅ 画像保存(写真管理)

技術 特徴
AWS S3 大規模向け、セキュア
Firebase Storage Firebaseと統合が楽

🛠 通信(iOS ⇔ バックエンド)

✅ API通信

let url = URL(string: "https://example.com/api")!
var request = URLRequest(url: url)
request.httpMethod = "GET"
URLSession.shared.dataTask(with: request) { data, response, error in
    if let data = data {
        print(String(data: data, encoding: .utf8) ?? "")
    }
}.resume()
  • URLSession → 標準API通信
  • Alamofire を使うとより簡単に記述可能

✅ リアルタイム処理

  • WebSocket(FastAPIが得意) を使えばリアルタイム位置共有が可能

🎯 どれを選ぶべき?

機能 おすすめ
シンプルにローカル保存 SQLite / CoreData(バックエンド不要)
クラウド同期したい Firebase Firestore + Firebase Storage
カスタムAPIを作る FastAPI + PostgreSQL
SNSのように共有する Django + Django REST Framework
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?