Skip to content

mash-up-kr/mobalmobal_iOS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

mobalmobal_iOS

๋ชจ๋ฐœ๋ชจ๋ฐœ iOS ๐ŸŽ

์žฌํฌ

์„œ์˜

์ˆ˜ํ˜„

๋ฏผํ˜ธ

Pull Request

  • Template

    ### Related Issue
    
    resolve: #
    
    ### What does this PR do?
    
    -
    
    ### Why are we doing this?
    
    -
    
    ### Screenshots
  • Merge Option

    • ํ•ด์ปคํ†ค : 1๋ช… ์ด์ƒ์˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ
    • ์ดํ›„ : 2๋ช… ์ด์ƒ์˜ ์ฝ”๋“œ๋ฆฌ๋ทฐ

Architecture

MVVM


์ฝ”๋“œ ์Šคํƒ€์ผ

  • ๋””๋ ‰ํ† ๋ฆฌ ๊ตฌ์„ฑ

    • ํ™”๋ฉด ํ•˜๋‚˜๋‹น ํฐ ํด๋”๋ฅผ ๊ฐ–๋Š”๋‹ค.
    • ํฐ ํด๋” ๋‚ด์—๋Š” cell ํด๋”, ViewController ํŒŒ์ผ, ViewModel ํŒŒ์ผ์„ ๊ฐ–๋Š”๋‹ค.
  • MARK ์ฃผ์„ ์ˆœ์„œ

    // MARK: - describe
    1. UIComponents
    2. Properties
    3. Initializer
    4. Lifecycle
    5. Actions
    6. Methods
    7. Protocols
  • /// ์ฃผ์„ ํ™œ์šฉ

    • ๋ฉ”์„œ๋“œ๋ฅผ ์„ ์–ธํ–ˆ๋Š”๋ฐ ์„ค๋ช…์ด ๋ถ€์กฑํ•˜๋‹ค๊ณ  ๋Š๋ผ๋ฉด,
    • ์„ ์–ธ๋ถ€ ์œ„์— /// ์ฃผ์„์œผ๋กœ Summary์— ์„ค๋ช…์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ๋˜๋Š” command + ํ•จ์ˆ˜๋ช… ํด๋ฆญํ•ด์„œ Add documentation์œผ๋กœ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ๋‚˜์ค‘์— ํ˜ธ์ถœ๋ถ€์—์„œ option + ํ•จ์ˆ˜๋ช… ํด๋ฆญ์œผ๋กœ Summary ๋‚ด์šฉ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ์ฝ”๋“œ๋กœ ๋ ˆ์ด์•„์›ƒ ์งค ๋•Œ ์—ฌ๋Ÿฌ๊ฐœ์˜ subview ์ถ”๊ฐ€ํ•˜๋Š” ๋ฒ•

    [subview1, subview2, subview3].forEach { superview.addSubView($0) }
  • SnapKit

    • left, right ๋ณด๋‹ค๋Š” leading, trailing ์‚ฌ์šฉ

    • ์ œ์•ฝ์กฐ๊ฑด ์žก๋Š” ์ˆœ์„œ : top, leading, trailing, bottom, width, heigth ์ˆœ -!

    • make

      vs

      remake

      vs

      update

      • makeConstraints : ์ฒ˜์Œ ์žก์„ ๋•Œ
      • remakeConstraints : ์žกํ˜€์žˆ๋˜ ์ œ์•ฝ์กฐ๊ฑด ์ดˆ๊ธฐํ™”ํ•˜๊ณ  ๋‹ค์‹œ ์žก์„ ๋•Œ
      • updateConstraints : ๊ธฐ์กด์˜ ์ œ์•ฝ์กฐ๊ฑด ์œ ์ง€ํ•œ ์ฑ„, ์ผ๋ถ€๋งŒ ์—…๋ฐ์ดํŠธํ•  ๋•Œ
    • makeConstraints ํด๋กœ์ €์— make ๋˜๋Š” $0 ?? โ‡’ make๋ฅผ ์“ฐ์ž

  • ๋ทฐ ์„ ์–ธ ํ•  ๋•Œ lazy var vs let

  • ๋ทฐ ์„ ์–ธ๊ณผ ๋™์‹œ์— ์ดˆ๊ธฐํ™” (ํด๋กœ์ € ํ™œ์šฉ)

    let gameImageView: UIImageView = {
        let imageView: UIImageView = UIImageView(frame: .zero)
        imageView.contentMode = .scaleAspectFill
        imageView.layer.masksToBounds = true
        imageView.layer.cornerRadius = 9
        imageView.layer.borderWidth = 1
        imageView.layer.borderColor = UIColor.veryLightPinkTwo.cgColor
        return imageView
    }()
  • extension ํ™œ์šฉ

    • Zeplin์—์„œ๋Š” UIColor๋ฅผ extension ํ•œ ์ฝ”๋“œ๋ฅผ ๋‚ด๋ณด๋‚ด๊ธฐ ํ•ด์ค€๋‹ค. โ†’ ํ”ผ๊ทธ๋งˆ๋Š” ์–ด๋–ป๊ฒŒ ๋‚˜์˜ค๋‚˜ ๋ด…์‹œ๋‹ค!
    • label, button ๋“ฑ, ์ดˆ๊ธฐํ™”ํ•ด์ค˜์•ผ ํ•  ์†์„ฑ๋“ค์ด ๋งŽ์€๋ฐ, ์ด๋ฅผ ํ•œ๊บผ๋ฒˆ์— ๋ฌถ์–ด์„œ ์ดˆ๊ธฐํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ extension์— ๋งŒ๋“ค์–ด์„œ ๋„ฃ์–ด์ค„ ์ˆ˜ ์žˆ๋‹ค.

About

๋ชจ๋ฐœ๋ชจ๋ฐœ iOS ๐ŸŽ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published