Skip to content

๐Ÿ“Œ๊ฑด๊ตญ๋Œ€ํ•™๊ต ํ•™์ƒ๋“ค์ด ์บ ํผ์Šค๋ฅผ ๋” ๊ฐ€์น˜์žˆ๊ฒŒ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ€์ƒ์˜ ํ•€๐Ÿ“Œ

Notifications You must be signed in to change notification settings

Hwanji2/PinKonkuk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

17 Commits
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ“ PinKonkuk

โ–ถ ์‹คํ–‰ ์˜์ƒ

Flutter ๊ธฐ๋ฐ˜ ์žฅ์†Œ ๊ธฐ๋ก ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ PinKonkuk์€
๊ฑด๊ตญ๋Œ€ํ•™๊ต ํ•™์ƒ๋“ค์ด ์บ ํผ์Šค ๊ณต๊ฐ„์— ๊ฐ€์ƒ์˜ ๋ฉ”๋ชจ๋ฅผ ๋‚จ๊ธธ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ž…๋‹ˆ๋‹ค.
์‚ฌ์šฉ์ž๋Š” ์œ„์น˜ ๊ธฐ๋ฐ˜์œผ๋กœ ์žฅ์†Œ๋ฅผ ๊ธฐ๋กํ•˜๊ณ , ์‚ฌ์ง„๊ณผ ๋ฉ”๋ชจ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ž์‹ ๋งŒ์˜ ์žฅ์†Œ ๋‹ค์ด์–ด๋ฆฌ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


โœจ ์ฃผ์š” ๊ธฐ๋Šฅ

image

1. ํ•€ ์ถ”๊ฐ€

  • โž• ์‚ฌ์šฉ์ž๋Š” ํŠน์ • ์žฅ์†Œ์— ๋Œ€ํ•œ ์ œ๋ชฉ, ๋ฉ”๋ชจ, ์นดํ…Œ๊ณ ๋ฆฌ, ์„œ๋ธŒ ์นดํ…Œ๊ณ ๋ฆฌ, ์œ„์น˜ ์ •๋ณด ๋ฐ ์ด๋ฏธ์ง€๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ์ƒˆ๋กœ์šด ํ•€์„ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๐Ÿ“ ์œ„์น˜ ์ •๋ณด๋Š” Geolocator ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.
  • ๐Ÿ’พ ์ €์žฅ๋œ ํ•€ ๋ฐ์ดํ„ฐ๋Š” SQLite ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ๋˜๋ฉฐ, ์•ฑ์„ ์žฌ์‹คํ–‰ํ•ด๋„ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.

image

2. ํ•€ ๋ชฉ๋ก ๋ณด๊ธฐ

  • ๐Ÿ“‹ ์ €์žฅ๋œ ๋ชจ๋“  ํ•€์„ ๋ฆฌ์ŠคํŠธ ํ˜•ํƒœ๋กœ ๋ณผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ฆฌ์ŠคํŠธ์—๋Š” ์ œ๋ชฉ, ์žฅ์†Œ ์ด๋ฆ„, ์นดํ…Œ๊ณ ๋ฆฌ, ์œ„๋„, ๊ฒฝ๋„๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • ๐Ÿ” ํŠน์ • ํ•€์„ ์„ ํƒํ•˜์—ฌ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

3. ํ•€ ์‚ญ์ œ

  • ๐Ÿ—‘๏ธ ์ €์žฅ๋œ ํ•€ ํ•ญ๋ชฉ์˜ ์‚ญ์ œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ์‚ญ์ œ ํ›„ ์ž๋™์œผ๋กœ ๋ฆฌ์ŠคํŠธ๊ฐ€ ๊ฐฑ์‹ ๋ฉ๋‹ˆ๋‹ค.

4. ์นดํ…Œ๊ณ ๋ฆฌ ํ•„ํ„ฐ๋ง

  • ๐Ÿท๏ธ ์ฃผ์š” ์นดํ…Œ๊ณ ๋ฆฌ(์ƒˆ๋‚ด๊ธฐ, ๋ง›์ง‘, ์Šคํ„ฐ๋””, ๊ฑด์ถ• ๋“ฑ)์™€ ์„œ๋ธŒ ์นดํ…Œ๊ณ ๋ฆฌ(ํ•™๊ต ํˆฌ์–ด, ๋…ธ๋ž˜๋ฐฉ, ๊ฐ€์„ฑ๋น„ ๋“ฑ)๋ฅผ ์ œ๊ณตํ•˜์—ฌ ์‚ฌ์šฉ์ž๋Š” ๊ด€์‹ฌ ์žˆ๋Š” ํ•ญ๋ชฉ๋งŒ ์„ ํƒํ•˜์—ฌ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

5. ์ด๋ฏธ์ง€ ์ถ”๊ฐ€

  • ๐Ÿ–ผ๏ธ ํ•€์— ์ด๋ฏธ์ง€๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‚ฌ์šฉ์ž๋Š” Image Picker๋ฅผ ํ†ตํ•ด ๊ฐค๋Ÿฌ๋ฆฌ์—์„œ ์ด๋ฏธ์ง€๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ› ๏ธ ์‚ฌ์šฉํ•œ ๊ธฐ์ˆ 

1. ๊ฐœ๋ฐœ ์–ธ์–ด

  • ๐ŸŒ Dart

2. ํ”„๋ ˆ์ž„์›Œํฌ

  • ๐Ÿ–ฅ๏ธ Flutter

3. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

  • ๐Ÿ“‚ SQLite (ํŒจํ‚ค์ง€: sqflite, sqflite_common_ffi)

4. ๊ธฐํƒ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ

  • ๐Ÿ“ก Geolocator: ์œ„์น˜ ์ •๋ณด ์ˆ˜์ง‘
  • ๐Ÿ“ท Image Picker: ๊ฐค๋Ÿฌ๋ฆฌ์—์„œ ์ด๋ฏธ์ง€ ์„ ํƒ

๐Ÿงฉ ์ฃผ์š” ํด๋ž˜์Šค ์„ค๋ช…

1. DBHelper

  • ๐Ÿฆ SQLite ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์ดˆ๊ธฐํ™”ํ•˜๊ณ  CRUD(Create, Read, Update, Delete) ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ํด๋ž˜์Šค์ž…๋‹ˆ๋‹ค.
  • ์ฃผ์š” ๋ฉ”์„œ๋“œ:
    • insertPin(Map<String, dynamic> pin): ์ƒˆ๋กœ์šด ํ•€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค.
    • getPins(): ๋ชจ๋“  ํ•€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ถˆ๋Ÿฌ์˜ต๋‹ˆ๋‹ค.
    • deletePin(int id): ํŠน์ • ID์— ํ•ด๋‹นํ•˜๋Š” ํ•€ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.

2. MainPage

  • ๐Ÿ  ๋ฉ”์ธ ํ™”๋ฉด์œผ๋กœ, ํ•€ ๋ชฉ๋ก์„ ๋ณด์—ฌ์ฃผ๊ณ  ํ•„ํ„ฐ๋ง ๊ธฐ๋Šฅ๊ณผ ํ•€ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์ฃผ์š” ๊ธฐ๋Šฅ:
    • ๐Ÿ“ ํ˜„์žฌ ์œ„์น˜ ์ •๋ณด ๊ฐ€์ ธ์˜ค๊ธฐ: Geolocator๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์‹ค์‹œ๊ฐ„ ์œ„์น˜๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.
    • ๐ŸŽ›๏ธ ํ•€ ๋ฆฌ์ŠคํŠธ ํ•„ํ„ฐ๋ง: ์„ ํƒํ•œ ์นดํ…Œ๊ณ ๋ฆฌ์™€ ์„œ๋ธŒ ์นดํ…Œ๊ณ ๋ฆฌ์— ๋งž๋Š” ํ•€๋งŒ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
    • ๐Ÿ”„ ๋ฆฌ์ŠคํŠธ ๊ฐฑ์‹ : ํ•€ ์ถ”๊ฐ€, ์‚ญ์ œ ์‹œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ํ•€ ๋ฐ์ดํ„ฐ๋ฅผ ๋‹ค์‹œ ๋กœ๋“œํ•˜์—ฌ UI๋ฅผ ๊ฐฑ์‹ ํ•ฉ๋‹ˆ๋‹ค.

3. AddEntryPage

  • โž• ์ƒˆ๋กœ์šด ํ•€์„ ์ถ”๊ฐ€ํ•˜๋Š” ํ™”๋ฉด์ž…๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž๋Š” ์ œ๋ชฉ, ๋ฉ”๋ชจ, ์žฅ์†Œ ์ด๋ฆ„, ์นดํ…Œ๊ณ ๋ฆฌ, ์„œ๋ธŒ ์นดํ…Œ๊ณ ๋ฆฌ, ์ด๋ฏธ์ง€๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํ˜„์žฌ ์œ„์น˜ ์ •๋ณด๋Š” ์ž๋™์œผ๋กœ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

4. ViewEntryPage

  • ๐Ÿ” ํŠน์ • ํ•€์˜ ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ํ™”๋ฉด์ž…๋‹ˆ๋‹ค.
  • ํ•€์— ์ €์žฅ๋œ ์ œ๋ชฉ, ๋ฉ”๋ชจ, ์žฅ์†Œ ์ด๋ฆ„, ์นดํ…Œ๊ณ ๋ฆฌ, ์œ„์น˜ ์ •๋ณด ๋ฐ ์ด๋ฏธ์ง€๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ—‚๏ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ตฌ์กฐ

์ปฌ๋Ÿผ ์ด๋ฆ„ ๋ฐ์ดํ„ฐ ํƒ€์ž… ์„ค๋ช…
id INTEGER ๊ณ ์œ  ID, ์ž๋™ ์ฆ๊ฐ€
title TEXT ํ•€ ์ œ๋ชฉ
note TEXT ํ•€์— ๋Œ€ํ•œ ๋ฉ”๋ชจ
placeName TEXT ์žฅ์†Œ ์ด๋ฆ„
latitude REAL ์œ„๋„
longitude REAL ๊ฒฝ๋„
category TEXT ์ฃผ์š” ์นดํ…Œ๊ณ ๋ฆฌ
imagePath TEXT ์ด๋ฏธ์ง€ ๊ฒฝ๋กœ

๐Ÿš€ ์‹คํ–‰ ๋ฐฉ๋ฒ•

์˜์กด์„ฑ ์„ค์น˜
ํ”„๋กœ์ ํŠธ ๋””๋ ‰ํ„ฐ๋ฆฌ์—์„œ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜์—ฌ ํ•„์š”ํ•œ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค:

flutter pub get

About

๐Ÿ“Œ๊ฑด๊ตญ๋Œ€ํ•™๊ต ํ•™์ƒ๋“ค์ด ์บ ํผ์Šค๋ฅผ ๋” ๊ฐ€์น˜์žˆ๊ฒŒ ํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๊ฐ€์ƒ์˜ ํ•€๐Ÿ“Œ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published