smart8612 / GoodJob

2024 singularis7's personal project for appstore launching

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

๐Ÿ‘๐Ÿป GoodJob Toy Project

๊ฐœ์š”

์ด ์‹œ๋Œ€๋ฅผ ์‚ด์•„๊ฐ€๋Š” ์ฒญ๋…„๋“ค์„ ์œ„ํ•œ ์ฑ„์šฉ ๊ตฌ์ง ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์„ iOS ์•ฑ์œผ๋กœ ๊ฐœ๋ฐœํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ๊ตฌ์ง์ž๊ฐ€ ๋งˆ์Œ์— ๋“œ๋Š” ์ฑ„์šฉ ๊ณต๊ณ ๋ฅผ ์Šคํฌ๋žฉํ•˜๊ณ  ์ฑ„์šฉ ํ”„๋กœ์„ธ์Šค์˜ ์ง„ํ–‰ ๊ณผ์ •์—์„œ ๊ฒฝํ—˜์„ ํšŒ๊ณ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ทจ์ค€์ƒ์˜ ๊ฐ€๋ฒผ์šด ์ฃผ๋จธ๋‹ˆ ์‚ฌ์ •์„ ๊ณ ๋ คํ•ด ์•ฑ ์Šคํ† ์–ด์—์„œ ๋ฌด๋ฃŒ๋กœ ๋ฐฐํฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

GoodJob Logo Image

ํ”„๋กœ๋ชจ์…˜

GoodJob features describe image

์ฃผ์š”๊ธฐ๋Šฅ

  • ์ฑ„์šฉ๊ณต๊ณ  ์Šคํฌ๋žฉ

    ์ง€์›ํ•˜๊ณ  ์‹ถ์€ ์ฑ„์šฉ ๊ณต๊ณ ๋ฅผ ์Šคํฌ๋žฉ ํ•ด๋ณด์„ธ์š”. ์Šคํฌ๋žฉํ•œ ๊ณต๊ณ ์˜ ์ง„ํ–‰ ์ƒํƒœ๋„ ํ•œ๋ˆˆ์— ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

  • ์ฑ„์šฉ์ง€์› ํ˜„ํ™ฉ ๊ด€๋ฆฌ

    ์ฑ„์šฉ ๊ณต๊ณ ์™€ ์—ฐ๊ณ„ํ•˜์—ฌ ์ง€์› ์ด๋ ฅ์„ ๊ด€๋ฆฌํ•ด๋ณด์„ธ์š”. ์ „ํ˜•๋ณ„ ์ง„์ฒ™๋„์™€ ๊ฒฝํ—˜ ํšŒ๊ณ ๋ฅผ ํ•œ๋ฒˆ์— ๊ธฐ๋ก ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

  • ์ฑ„์šฉ ์ „ํ˜•๋ณ„ ๊ฒฝํ—˜ ๊ธฐ๋ก

    ์ „ํ˜•๋ณ„ ์„ธ๋ถ€ ๊ฒฝํ—˜๊ณผ ํ•ฉ๊ฒฉ ์—ฌ๋ถ€๋ฅผ ๊ธฐ๋กํ•ด๋ณด์„ธ์š”. ํšŒ๊ณ ํ•˜๋ฉฐ ์•ž์œผ๋กœ์˜ ๊ตฌ์ง ํ™œ๋™์„ ๊ณ„ํš ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ๋ฐฉ๋ฒ•

๋‹ค์šด๋กœ๋“œ

์ตœ์†Œ ์š”๊ตฌ์‚ฌ์–‘์„ ์ถฉ์กฑํ•˜๋Š” ๋‹จ๋ง๊ธฐ์—์„œ ๋‹ค์Œ์˜ QR ์ฝ”๋“œ๋ฅผ ์Šค์บ”ํ•˜๊ฑฐ๋‚˜ "App Store์—์„œ ๋‹ค์šด๋กœ๋“œ ํ•˜๊ธฐ" ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ์„œ๋น„์Šค ์ด์šฉ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

AppStore Download qr-code Download_on_the_App_Store_Badge

์ตœ์†Œ ์š”๊ตฌ์‚ฌ์–‘

  • iPhone

    Requires iOS 16.0 or later

  • iPad

    Requires iPadOS 16.0 or later

  • Mac

    Requires macOS 13.0 or later and a Mac with Apple M1 chip or later

  • Apple Vision

    Requires visionOS 1.0 or later

โš’๏ธ ๊ธฐ์ˆ 

๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ singularis7's Life Note์—์„œ ๏ฝข3์ฃผ๋งŒ์— ์•ฑ์Šคํ† ์–ด์— ์•ฑ ์ถœ์‹œํ•˜๊ธฐ๏ฝฃ๋ฅผ ์—ฐ์žฌํ•˜๋ฉฐ GoodJob ํ”„๋กœ์ ํŠธ์˜ ๊ฐœ๋ฐœ ๊ณผ์ •์„ ๋ฌธ์„œํ™”ํ•˜์—ฌ ๊ด€๋ฆฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ฐธ์กฐ ๋งํฌ๋ฅผ ํด๋ฆญํ•˜์‹œ์–ด ๊ฐœ๋ณ„ ๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ ์„ธ๋ถ€ ๊ฒฝํ—˜์˜ ํ™•์ธ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

1๏ธโƒฃ ๊ธฐํš๊ณผ ๋””์ž์ธ

์ทจ์—… ์ค€๋น„์˜ ์–ด๋ ค์›€์„ ํ•ด๊ฒฐํ•ด๋ณด์ž๋Š” ๋ชฉํ‘œ๋กœ ์• ํ”Œ ๊ฐœ๋ฐœ์ž ํฌ๋Ÿผ์˜ Develop in Swift App Design Workbook์„ ํ™œ์šฉํ•ด ์‹ ๊ทœ ์•ฑ์„ ๊ธฐํšํ•ฉ๋‹ˆ๋‹ค. ๋””์ž์ธ ๋„๊ตฌ Figma๋ฅผ ํ™œ์šฉํ•ด ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์„ ์„ค๊ณ„ํ•˜๊ณ  ์•ฑ์˜ ํƒ์ƒ‰ ๊ตฌ์กฐ ๋“ฑ์˜ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์„ค๊ณ„ํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ์จ ๊ฐ์ฒด ์ง€ํ–ฅ ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๊ณผ GUI ์„ค๊ณ„๋ฅผ ๋„์ถœํ•ฉ๋‹ˆ๋‹ค.

2๏ธโƒฃ ์ž‘์—… ๊ด€๋ฆฌ

GitHub๋กœ ํ”„๋กœ์ ํŠธ์˜ ๊ฐœ๋ฐœ ํ๋ฆ„์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์—์„œ ์ƒ์„ฑํ•œ ์ž‘์—…์„ ์ด์Šˆ๋กœ ์ „ํ™˜ํ•˜์—ฌ ๊ฐœ๋ฐœ ๋ธŒ๋žœ์น˜๋ฅผ ๋”ฐ์˜จ ๋’ค์— ์‹ ๊ทœ ๊ฐœ๋ฐœ ๋‚ด์šฉ์„ PR์„ ํ†ตํ•ด Main ๋ธŒ๋žœ์น˜์— ๋ณ‘ํ•ฉํ•˜๋Š” ๋‚ด์šฉ์„ ๋‹ด์•˜์Šต๋‹ˆ๋‹ค. ์ด๋กœ์จ ์ž‘์—… ํ๋ฆ„ ๊ฐ„์˜ ํ†ตํ•ฉ๋œ ๊ด€๋ฆฌ ๊ฒฝํ—˜์„ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค.

3๏ธโƒฃ ํ”„๋กœํ† ํƒ€์ดํ•‘

์• ์ž์ผ ๊ฐœ๋ฐœ ์ฒ ํ•™์„ ์ง€ํ–ฅํ•˜๋ฉฐ ๋น ๋ฅธ ํ”„๋กœํ† ํƒ€์ดํ•‘๊ณผ ๋””์ž์ธ ๊ฒ€์ฆ์„ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐํš๊ณผ ๋””์ž์ธ ๋‹จ๊ณ„์—์„œ ์‚ฐ์ถœํ•œ ๊ฐ์ฒด์ง€ํ–ฅ ๋ชจ๋ธ์„ ํ™œ์šฉํ•˜์—ฌ ํ™”๋ฉด ๊ตฌ์กฐ๋ฅผ ๋„์ถœํ•ฉ๋‹ˆ๋‹ค. Xcode์˜ ์ธํ„ฐํŽ˜์ด์Šค ๋นŒ๋”์™€ ์Šคํ† ๋ฆฌ๋ณด๋“œ๋กœ ํ™”๋ฉด์„ ๋ฐฐ์น˜ํ•˜๊ณ  ์‹ค์ œ ๋‹จ๋ง๊ธฐ์—์„œ ์‹คํ–‰ํ•˜๋ฉฐ ๋””์ž์ธ์„ ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. HIG๋ฅผ ์ค€์ˆ˜ํ•˜๋„๋ก ์‚ฌ์šฉ์ž ๊ฒฝํ—˜ ๊ฐœ์„  ๊ณผ์ •์„ ๋ฐ˜๋ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ์จ ์ต์ˆ™ํ•œ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ๊ฐ€์ง„ ์ธํ„ฐํŽ˜์ด์Šค ์„ค๊ณ„๋ฅผ ๋„์ถœํ•ฉ๋‹ˆ๋‹ค.

4๏ธโƒฃ ๋ชจ๋ธ ์„ค๊ณ„ ๋ฐ ๊ฐœ๋ฐœ

๊ธฐํš๊ณผ ๋””์ž์ธ ๋‹จ๊ณ„์—์„œ ๋„์ถœํ•œ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋กœ Core Data ํ”„๋ ˆ์ž„์›Œํฌ์˜ ์—”ํ‹ฐํ‹ฐ ๋ชจ๋ธ์„ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค. ์ „๋‹จ๋ถ€ ๋„๋ฉ”์ธ๊ณผ ํ›„๋‹จ๋ถ€ ์˜์†์„ฑ ์—”ํ‹ฐํ‹ฐ ๋ชจ๋ธ์˜ ๋ณ€๋™์‚ฌํ•ญ ์œ ์ง€๊ด€๋ฆฌ ํŽธ์˜์„ฑ์„ ๊ณ ๋ คํ•˜๊ณ ์ž ํด๋ฆฐ ์•„ํ‚คํ…์ฒ˜๋ฅผ ๋„์ž…ํ•˜๊ณ  Swift๋กœ ๊ตฌํ˜„ ๋ฐ ๊ฒ€์ฆํ•ด๋ด…๋‹ˆ๋‹ค. ์ด๋กœ์จ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ๊ทœ์น™์— ๊ธฐ๋ฐ˜ํ•œ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ์˜ ์˜์†์„ฑ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ์„ ๋„์ž…ํ•ฉ๋‹ˆ๋‹ค.

5๏ธโƒฃ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๊ฐœ๋ฐœ

SwiftUI View์™€ ๋ฐ์ดํ„ฐ ๋ฐ”์ธ๋”ฉ ๊ธฐ์ˆ ์„ ํ™œ์šฉํ•˜์—ฌ MVVM ๊ตฌ์กฐ๋กœ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. Swift๋กœ ์•ฑ Navigation ๊ตฌ์กฐ๋ฅผ ์—ด๊ฑฐํ˜• ์ถ”์ƒํ™”ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ CRUD ๋“ฑ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” View๋ฅผ ํ…œํ”Œ๋ฆฟ์œผ๋กœ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค. Shape ํ”„๋กœํ† ์ฝœ๋กœ ์ปค์Šคํ…€ View๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. UIKit ์ƒํ˜ธ์šด์šฉ์„ฑ์œผ๋กœ ํ”ผ๋“œ๋ฐฑ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ณ  ์•ฑ๋‚ด ์ŠคํŠธ๋ง ์ž์›์„ ๊ตญ์ œํ™”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ์จ ์†์‰ฝ๊ฒŒ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ๋ฐฐ๊ฒฝ์˜ ์‚ฌ์šฉ์ž๊ฐ€ ์ด์šฉ๊ฐ€๋Šฅํ•œ ์•ฑ์„ ๊ฐœ๋ฐœํ•ฉ๋‹ˆ๋‹ค.

6๏ธโƒฃ ์ฝ”๋“œ ์•„ํ‚คํ…์ฒ˜ ์„ค๊ณ„

ํ•˜๋‚˜์˜ ๊ฑฐ๋Œ€ํ•œ ์ปจํŠธ๋กค๋Ÿฌ ๊ตฌ์กฐ์—์„œ ๋ฌธ์ œ์ ์„ ๋„์ถœํ•˜์—ฌ ๋ฆฌํŒฉํ† ๋ง์„ ํ†ตํ•ด ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค. ์ฝ”์–ด ๋ฐ์ดํ„ฐ์™€ ์œ ์ฆˆ ์ผ€์ด์Šค์˜ ๋…๋ฆฝ์ ์ธ ๋ณ‘ํ–‰ ๊ฐœ๋ฐœ์ด ๊ฐ€๋Šฅํ•˜๋„๋ก Repository ํŒจํ„ด์„ ๋„์ž…ํ•˜์—ฌ ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฏธ๋“ค์›จ์–ด๋ฅผ ๊ฐœ๋ฐœํ•ฉ๋‹ˆ๋‹ค. ์ฝ”์–ด ๋ฐ์ดํ„ฐ์˜ ์˜ต์ €๋ฒ„ ๊ฐ์ฒด๋ฅผ Delegation ํŒจํ„ด์œผ๋กœ View์™€ ์—ฐ๋™ํ•˜์—ฌ ๋‹จ๋ฐฉํ–ฅ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ์จ ์œ ์ง€๊ด€๋ฆฌ์„ฑ์„ ๋†’์—ฌ๊ฐ€๋ฉฐ ์ฝ”์–ด๋ฐ์ดํ„ฐ์™€ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์—ฐ๋™ํ•ฉ๋‹ˆ๋‹ค.

7๏ธโƒฃ ์•ฑ ์Šคํ† ์–ด ๋ฐฐํฌ

์• ํ”Œ ๋ฐฐํฌ ๊ฐ€์ด๋“œ์™€ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๊ฐ€์ด๋“œ๋ผ์ธ์„ ์ฐธ์กฐํ•˜์—ฌ ๋ฐฐํฌ์— ํ•„์š”ํ•œ ์•„์ด์ฝ˜ ๋“ฑ์˜ ์—์…‹๋ฅผ ํ‚ค๋…ธํŠธ๋กœ ๋””์ž์ธ ํ•ฉ๋‹ˆ๋‹ค. ์•ฑ์Šคํ† ์–ด ์ปค๋„ฅํŠธ์—์„œ ์•ฑ์„ ๋“ฑ๋กํ•˜๊ธฐ์œ„ํ•œ ํ™๋ณด๋ฌธ๊ตฌ์™€ ๊ฐœ์ธ์ •๋ณด ๊ด€๋ฆฌ ์ •์ฑ…์„ ์„ธ์›Œ๋ด…๋‹ˆ๋‹ค. Xcode์—์„œ ์•ฑ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์ง์ ‘ ๋ฐฐํฌํ•˜๊ฑฐ๋‚˜ Xcode Cloud๋กœ CI/CD ํŒŒ์ดํ”„๋ผ์ธ์„ ๊ตฌ์ถ•ํ•˜์—ฌ ๋ด…๋‹ˆ๋‹ค. ์ด ๋•Œ ์ œ3์ž ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ํ† ํฐ ์ •๋ณด๋ฅผ Privateํ•˜๊ฒŒ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ „ํŒŒํ•ฉ๋‹ˆ๋‹ค.

โ“’ ์ €์ž‘๊ถŒ

Copyright ยฉ๏ธ 2024. Han Jeong Taek all rights reserved. <smart8612@gmail.com>

Distributed under the MIT License. See LICENSE.txt for more information.

About

2024 singularis7's personal project for appstore launching

License:MIT License


Languages

Language:Swift 99.4%Language:Shell 0.6%