๐ฅ Firebase๋?
Firebase๋ Google์์ ์ ๊ณตํ๋ ํด๋ผ์ฐ๋ ๊ธฐ๋ฐ ๋ฐฑ์๋ ์๋น์ค(BaaS, Backend as a Service)๋ก, ๋ชจ๋ฐ์ผ ๋ฐ ์น ์ ํ๋ฆฌ์ผ์ด์
๊ฐ๋ฐ์ ๋น ๋ฅด๊ณ ์ฝ๊ฒ ํ ์ ์๋๋ก ๋ค์ํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ํ๋ซํผ์
๋๋ค.
๐ฏ Firebase ์ฃผ์ ๊ธฐ๋ฅ
1๏ธโฃ Authentication (์ธ์ฆ)
- Google, Facebook, Twitter, Apple, GitHub ๋ฑ ์์
๋ก๊ทธ์ธ ์ง์
- ์ด๋ฉ์ผ/๋น๋ฐ๋ฒํธ ๋ก๊ทธ์ธ
- ์ ํ๋ฒํธ ์ธ์ฆ (SMS)
- ์ฌ์ฉ์ ๊ด๋ฆฌ API ์ ๊ณต
2๏ธโฃ Cloud Firestore (NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค)
- JSON ๊ธฐ๋ฐ์ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์ค์๊ฐ ๋๊ธฐํ ๋ฐ ์คํ๋ผ์ธ ์ง์
- ๊ฐ๋ ฅํ ์ฟผ๋ฆฌ ๊ธฐ๋ฅ๊ณผ ๋ณด์ ๊ท์น ์ ๊ณต
3๏ธโฃ Realtime Database (์ค์๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค)
- ์ค์๊ฐ ๋ฐ์ดํฐ ๋๊ธฐํ ๊ธฐ๋ฅ ์ ๊ณต
- ์คํ๋ผ์ธ ์ํ์์๋ ๋ฐ์ดํฐ ์ ์ฅ ๊ฐ๋ฅ
- ํด๋ผ์ด์ธํธ ๊ฐ ์ค์๊ฐ ๋ฐ์ดํฐ ๊ณต์ ์ ์ ํฉ
4๏ธโฃ Cloud Storage (ํ์ผ ์ ์ฅ์)
- ์ด๋ฏธ์ง, ๋์์, ์ค๋์ค ๋ฑ ๋์ฉ๋ ํ์ผ ์ ์ฅ ๋ฐ ๊ด๋ฆฌ
- Google Cloud Storage ๊ธฐ๋ฐ์ผ๋ก ์์ ์ ์ธ ์ฑ๋ฅ ์ ๊ณต
5๏ธโฃ Cloud Functions (์๋ฒ๋ฆฌ์ค ๋ฐฑ์๋)
- Node.js ๊ธฐ๋ฐ์ ์๋ฒ๋ฆฌ์ค ํจ์ ์ ๊ณต
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณ๊ฒฝ, HTTP ์์ฒญ, ์ธ์ฆ ์ด๋ฒคํธ ๋ฑ ๋ค์ํ ํธ๋ฆฌ๊ฑฐ ์ง์
- ๋ฐฑ์๋ ์๋ฒ ์์ด ๋์ ๊ฐ๋ฅ
6๏ธโฃ Firebase Hosting
- ์ ์ ์น์ฌ์ดํธ ๋ฐ SPA(React, Vue, Angular) ๋ฐฐํฌ ๊ฐ๋ฅ
- ๋ฌด๋ฃ SSL ์ธ์ฆ์ ๋ฐ CDN ์ ๊ณต
- ๊ฐํธํ ๋ฐฐํฌ(firebase deploy ๋ช
๋ น์ด)
7๏ธโฃ Firebase Analytics
- ์ ์ ํ๋ ๋ถ์ ๋ฐ ์ด๋ฒคํธ ํธ๋ํน
- Google Ads, BigQuery ๋ฑ ๋ค์ํ Google ์๋น์ค์ ์ฐ๋ ๊ฐ๋ฅ
8๏ธโฃ Firebase Crashlytics (์๋ฌ ๋ชจ๋ํฐ๋ง)
- ์ฑ์ ์ค๋ฅ ๋ฐ ์ถฉ๋ ๋ฆฌํฌํธ ์ ๊ณต
- ์ค์๊ฐ ์ค๋ฅ ๊ฐ์ง ๋ฐ ์ฌ์ฉ์๋ณ ์ค๋ฅ ์ถ์ ๊ฐ๋ฅ
9๏ธโฃ Firebase Remote Config
- ์ฑ ์
๋ฐ์ดํธ ์์ด ์ค์ ๋ณ๊ฒฝ ๊ฐ๋ฅ
- ๋ฒํผ ์์, ๊ธฐ๋ฅ ํ์ฑํ ์ฌ๋ถ ๋ฑ์ ์๊ฒฉ์ผ๋ก ๋ณ๊ฒฝ ๊ฐ๋ฅ
- A/B ํ
์คํธ ํ์ฉ ๊ฐ๋ฅ
๐ Firebase๋ฅผ ์ธ์ ์ฌ์ฉํ๋ฉด ์ข์๊น?
โ
๋น ๋ฅด๊ฒ MVP(์ต์ ๊ธฐ๋ฅ ์ ํ)๋ฅผ ๊ฐ๋ฐํ ๋
โ
์ค์๊ฐ ๋๊ธฐํ๊ฐ ํ์ํ ์ ํ๋ฆฌ์ผ์ด์
(์: ์ฑํ
์ฑ, ๊ณต๋ ํธ์ง ๊ธฐ๋ฅ)
โ
์๋ฒ๋ฅผ ์ง์ ๊ตฌ์ถํ์ง ์๊ณ ํด๋ผ์ฐ๋ ์๋น์ค๋ฅผ ์ด์ฉํ๊ณ ์ถ์ ๋
โ
์๊ท๋ชจ ํ๋ก์ ํธ ๋๋ ์คํํธ์
์์ ๊ฐ๋ฐ ์๋๋ฅผ ๋์ด๊ณ ์ถ์ ๋
๐ Firebase๋ฅผ ์ฌ์ฉํ ๊ฐ๋ฐ ์์
// Flutter + Firebase Authentication ์์
FirebaseAuth.instance.signInWithEmailAndPassword(
email: "user@example.com",
password: "securepassword"
);
// Firebase Firestore ๋ฐ์ดํฐ ์ฝ๊ธฐ (JavaScript)
firebase.firestore().collection("users").get().then((querySnapshot) => {
querySnapshot.forEach((doc) => {
console.log(`${doc.id} => ${doc.data()}`);
});
});
๐ Firebase ๊ณต์ ๋ฌธ์ & ๋งํฌ
โก๏ธ ์ ๋ฆฌํ๋ฉด, Firebase๋ ๊ฐ๋ฐ ์๋๋ฅผ ๋น ๋ฅด๊ฒ ํ๊ณ , ๋ฐฑ์๋ ์์ด๋ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ํด๋ผ์ฐ๋ ์๋น์ค์
๋๋ค.
ํนํ ๋ชจ๋ฐ์ผ ์ฑ(Firebase Authentication, Firestore, Cloud Storage)์ด๋ ์น์ฑ(Firebase Hosting, Cloud Functions)์์ ๋ง์ด ์ฌ์ฉ๋ฉ๋๋ค.