์ต๊ทผ์ ํ ์ดํ๋ก์ ํธ๋ก ์งํ์ค์ด๋ ์์
๋ฌผ ์ค์์ ๋ํผ์ ์ฐ๊ธฐ๊ฐ ์๊น์ pub.dev ์ ๊ฒ์๋ฅผ ํ์ฌ ๋ชจ๋์ ํจ๊ป ์ธ์์๋ ํ๋จ ๋ค๋น๊ฒ์ด์
๋ฐ๋ฅผ ๊ฐ๋ฐํ๋ค. ์๋ํ๋ฉด ๋จผ์ ๋ณด์ฌ์ฃผ๊ณ ์ ์ฉ์ ๋ํ ์ค๋ช
์ ์งํํ๋๋ก ํ๊ฒ ๋ค. ์ด์ ๊ฐ์ด ํ๋จ NavigationBar๋ฅผ ์ฌ์ฉํ๋ ๋์ ๋ด๊ฐ ์ํ๋ ์ฌ๊นํ ์์ ฏ์ ์ฌ์ฉํ๋๋ก ํ๋ค. ์๋ ์ฃผ์๋ ๋ด๊ฐ ์ง์ ๊ฒ์ํด๋ ํจํค์ง์ด๊ณ ๊ฐ์ฅ ์ต์ ๊ฒ์ผ๋ก dependency์ ์ถ๊ฐํ์ฌ ์ ์ฉํ๋๋ก ํ๋ค. https://pub.dev/packages/flutter_bottom_floating_bar flutter_bottom_floating_bar | Flutter Package This plugin was maked to use bottom navigation bar pub.dev ์ฌ์ฉ๋ฐฉ..
๐ Flutter
์์ฆ ์์์ ๋จน๊ธฐ๋ง ํ๋ ๋น๋๊ฐ ์ฆ๊ฐํ๋ค๋ณด๋ ๋ชธ์ ํ์ด์ด๊ฐ 2์ผ์น๊ฐ๋ ๋์ด๋๊ฒ ๋์๋ค. ์ฌ๋ฆ๋ ์ค๊ณ ์ฌ์ฌ ๋ค์ด์ดํธ ์์์ ํด์ผ๋ ๋ฏ ํ๋ค. ์ด๋ฒ ํฌ์คํ
์์๋ Linux๊ธฐ๋ฐ ์๋ฒ์์ Flutter๋ก ์์ฑํ Web์ดํ๋ฆฌ์ผ์ด์
์ ํธ์คํ
ํ๋ ๋ฒ์ ์์๊ฐ ๋ณด๋๋ก ํ๊ฒ ๋ค. ์ฐ์ ์ฐ๋ฆฌ๊ฐ ์ค๋นํด์ผํ ์ฌํญ๋ค์ 1. Flutter๋ก ์์ฑ๋ ํ๋ก์ ํธ (2.0 ์ด์) 2. ๋ฆฌ๋
์ค ๊ธฐ๋ฐ ์๋ฒ (ubuntu, debian, centOS ํฌํจ) ์ด๊ฒ ๋์ด๋ค. ์ ๊ทธ๋ฌ๋ฉด ๋จผ์ Flutter ๋ก ์์ฑ๋ ํ๋ก์ ํธ๋ฅผ ์น ์ฑ์ผ๋ก ๋น๋ํด์ฃผ๋๋ก ํดํ์ ํ๋ก์ ํธ ์ฝ์์ flutter build web ์ ์
๋ ฅํ๋๋ก ํ์. flutter build web ๊ทธ๋ฌ๋ฉด ์ด๋ฐ ๋ชจ์ต์ผ๋ก ์น๋ฒ์ ์ผ๋ก ๋น๋๊ฐ ์๋ฃ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋น๋๋ ํด๋๋ก ์ด๋ํ์. ํ๋ก์ ํธ ..
์ด๋ฒ ํฌ์คํ
์์๋ ์ ๋ฒ ํฌ์คํ
์ ์ด์ด ๋ฉ์์ง ์ ์ฅํ๊ธฐ ๊ธฐ๋ฅ์ ๊ตฌํํด๋ณผ ์์ ์ด๋ค. ์ฐ์ ๋ชจ๋ธ ํด๋์ค๋ฅผ ์ฝ๊ฐ ๋ ์์ ํ์๋ค. message_model.dart import 'package:cloud_firestore/cloud_firestore.dart'; class MessageModel { final String id; //ํด๋น ๋ํ๋จผํธ์ ID๋ฅผ ๋ด๊ธฐ์ํจ. final String content; final Timestamp sendDate; MessageModel({ this.id = '', this.content = '', Timestamp? sendDate, }):sendDate = sendDate??Timestamp(0, 0); //์๋ฒ๋ก๋ถํฐ mapํํ์ ์๋ฃ๋ฅผ MessageModelํํ์ ์๋ฃ๋ก ..
์ด๋ฒ์์ ์ ๋ฒ ํฌ์คํ
์ ์ด์ด ํ์ด์ด๋ฒ ์ด์ค์ ์ปฌ๋ ์
๊ตฌ์กฐ๋ฅผ ์ค๊ณํ๊ณ ๋ฐ์ดํฐ๋ฅผ Flutterํ๋ก์ ํธ๋ก ๊ฐ์ ธ์ค๋ ์์
์ ์งํํด ๋ณผ ๊ฒ์ด๋ค. ๋จผ์ Firebase ์ฝ์๋ก ์ด๋ํ๋ค. ์ฝ์ ์ข์ธก ๋ฉ๋ด์์ Firestore Database๋ฅผ ์ ํํ๋ค. ๊ทธ๋ฌ๋ฉด ์ด๋ ๊ฒ Cloud Firestore ์น์
์ผ๋ก ์ด๋ํ๊ฒ ๋๊ณ ์ฌ๊ธฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง๋ค๊ธฐ๋ผ๋ ๋ฒํผ์ ํด๋ฆญํ๋๋ก ํ๋ค. ์๋ก์ด ์ฐฝ์ด ๋จ๊ฒ ๋๋๋ฐ ์ฌ๊ธฐ์ ๋ณด์๊ท์น์ ์ ์ฉํ๋ผ๊ณ ํ๋ค. ๊ท์น์ ๋์ค์ ์ธ์ ๋ ์ง ์์ ์ด ๊ฐ๋ฅํ๋ฏ๋ก ์ง๊ธ์ 30์ผ ๋์๋ง ์ด์ด๋๋ ํ
์คํธ ๋ชจ๋๋ก ์๋์ ์ํค๋๋ก ํ๊ฒ ๋ค. ๋ค์์ผ๋ก ์ด๋ํ๋ฉด ํด๋น ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ ์ฅ๋๋ ์์น๋ฅผ ์ ํํ๋ผ๊ณ ๋ฌ๋ค ๊ธฐ๋ณธ์ผ๋ก ์ค์ ํด๋๊ณ ๋์ด๊ฐ๋๋ก ํ๊ฒ ๋ค. ์๋ฃ๊ฐ ๋๋ฉด ์ด๋ ๊ฒ ๋ฐ์ดํฐ ํ
์ด๋ธ ๊ฐ์ ํ๋ฉด์ด ๋์ค๊ฒ ๋๋ค. ์ฌ๊ธฐ์ ์ค..
์์ผ๋ก Flutter ๊ด๋ จ ํฌ์คํ
์ ์ง์ค์ ์ผ๋ก ์
๋ก๋ํ ์์ ์ด๋ค. ๊ทธ๋์ Flutter ๊ฐ๋ฐ์ ์งํํ๋ฉด์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃฐ ๋ ๋๋ถ๋ถ RDBMS(๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค)์ WebAPI ์๋ฒ ๊ตฌํ์ ํตํด ์จ๋ผ์ธ ์ดํ๋ฆฌ์ผ์ด์
์ ๊ตฌํํด ์์๋ค. ํ์ง๋ง ์ปค๋ฎค๋ํฐ ์ฑ์ ๊ฒฝ์ฐ ๋ฐ์ดํฐ ์์ฒญ ๊ฑด์ด ์๋น์ด ๋ง์์ง๋ ๊ฒฝ์ฐ๊ฐ ์๊ธฐ ๋๋ฌธ์ Back-End์ ์ ํ์ ๋ค๋ฅธ ๊ณณ์ผ๋ก ๋ฐ๊ฟ์ผ ํ ํ์์ฑ์ ๋๋ผ๊ฒ ๋์๋ค. ์ค๋๋ถํฐ ์ฐ์ตํด๋ณผ Back-End ๊ธฐ์ ์ Firebase์ด๋ค. ์ฌ์ค NoSQL(Not-Only-SQL) ๋ค ์ค MongoDB์ Firestore ์ค ๊ณ ๋ฏผ์ ๋ง์ด ํ๋๋ฐ MongoDB๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด Node.js๋ฅผ ์๋ฌํ๊ณ ์๋ฒ ๊ตฌ์ถ๊น์ง ๋ค์ ์งํํด์ผ ํ๊ธฐ ๋๋ฌธ์ ์๊ท๋ชจ ์ฑ์ผ๋ก ์์ํ๊ธฐ์ ๋น์ฉ์ด ๋ง์ด ๋ค ๊ฒ ๊ฐ์ ๋ฌธ์ ๊ฐ ๋ค์๋ค...
Flutter 3.0 ์ด ์ถ์ํ ์ดํ ๋ฐ๋ก ๋ฐ์คํฌํฑ ํ๊ฒฝ์์ ๊ฐ๋ฐ์ด stable ์ฑ๋์์ ๊ฐ๋ฅํ๋ค๋ ์์์ ๋ฃ๊ณ ๋ฐ๋ก windows์ฉ ํ
์คํธ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด๋ณด์๋ค. VisualStudio Installer๋ก visual studio ์ค์น๋ฅผ ์งํํ์๊ณ ๋๋ฒ๊น
๋ชจ๋๋ก ์คํ์ ํด๋ณด๋ ค๋๋ฐ ๋ฐ์ดํธ ์ฝ๋์ ํจ๊ป ์๋์ ๊ฐ์ด ์ค๋ฅ์ฝ๋๊ฐ ๋ฌด๋๊ธฐ๋ก ๋์๋ฒ๋ ธ๋ค. ๊ตฌ๊ธ๋ง ์กฐ์ฌ๋ก ํ์ธํด๋ณด๋ ์ค ์ต์ ๋ฒ์ ์ผ๋ก ๋์จ VisualStudio Installer๊ฐ ํ๊ธ์ ํฌํจ ๋ฌธ์์ด ์ธ์ ์ค๋ฅ๋ผ๊ณ ํ์ฌ ์์ ํด๊ฒฐ์ฑ
์ผ๋ก Visual Studio Installer๋ฅผ ์ค์นํ๊ธฐ ์ ์ธ์ด ์ค์ ์ German(๋
์ผ์ด)๋ก ์ ์ฉํ ํ ์ค์น๋ฅผ ํด๋๋ฉด ์งํ์ด ๊ฐ๋ฅํ๋ค๊ณ ํ๋ค. ํ์ง๋ง ๊ตณ์ด ์ธ์ด๋ฅผ ๋ฐ๊พธ์ง ์๋ ์์ ๋ฐฉ์์ ์ฐพ์๋๋ฐ https://git..