ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Swift] ์ ‘๊ทผ ์ œ์–ด
    iOS/Swift 2022. 8. 5. 14:10

     

    ๐Ÿ’ก ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ

     

    ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ƒํ™”์‹œ์ผœ ์ƒํƒœ์™€ ๋™์ž‘์„ ๊ฐ€์ง€๋Š” ํ•˜๋‚˜์˜ ๊ฐ์ฒด๋กœ ๋ฌถ์–ด์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ๋ฒ•์ด๋‹ค.

    * ์ถ”์ƒํ™”: ๊ณตํ†ต์ ์ธ ์†์„ฑ์ด๋‚˜ ๊ธฐ๋Šฅ์„ ๋ฌถ์–ด ์ด๋ฆ„์„ ๋ถ™์ด๋Š” ๊ฒƒ (ํด๋ž˜์Šค๋ฅผ ์ •์˜ํ•˜๋Š” ์ผ)

     

    ์ ˆ์ฐจ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ค‘์š”์‹œ ํ•˜์ง€๋งŒ, ๊ฐ์ฒด ์ง€ํ–ฅ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์ค‘์š”์‹œํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ๋ฌธ์ œ์—์„œ ํ•„์š”ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋จผ์ € ์„ค๊ณ„ํ•˜๋Š”๋ฐ, ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜ํƒ€๋‚ผ ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋„๊ตฌ๊ฐ€ ํด๋ž˜์Šค์ด๋‹ค.

     

    ํด๋ž˜์Šค์—๋Š” ๋ฐ์ดํ„ฐ์™€ ํ•จ์ˆ˜(์•Œ๊ณ ๋ฆฌ์ฆ˜)๊ฐ€ ํฌํ•จ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์ง€ ์•Š๋‹ค๋Š” ์ ์ด ํฐ ํŠน์ง•์ด๋‹ค.


    ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ์žฅ์ :

    - ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์˜ ์œ ์šฉ์„ฑ

    - ์œ ์ง€ ๋ฐ ๋ณด์ˆ˜์˜ ํšจ์œจ์„ฑ


    ์บก์Šํ™”

    ๋ฐ์ดํ„ฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ•˜๋‚˜์˜ ๋‹จ์œ„(ํด๋ž˜์Šค)๋กœ ๋ฌถ๋Š” ๊ฒƒ์œผ๋กœ,

    ์บก์Šํ™”๋ฅผ ์ดํ•ด ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ๋ถˆํ•„์š”ํ•œ ์ ‘๊ทผ์„ ์ฐจ๋‹จํ•ด์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ๋‹ค. (=์ •๋ณด ์€๋‹‰)

     


    Swift์—์„œ์˜ ์ ‘๊ทผ ์ œ์–ด

    ์ ‘๊ทผ์ œ์–ด๋ž€ ์ •๋ณด ์€๋‹‰์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ํ•ต์‹ฌ ๊ธฐ๋Šฅ์œผ๋กœ, ์ฝ”๋“œ๋ผ๋ฆฌ ์ƒํ˜ธ์ž‘์šฉ์„ ํ•  ๋•Œ ํŒŒ์ผ ๊ฐ„, ๋˜๋Š” ๋ชจ๋“ˆ๊ฐ„์— ์ ‘๊ทผ์„ ํ†ต์ œํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด๋‹ค.

    ๋ชจ๋“ˆ ์†Œ์ŠคํŒŒ์ผ
    ๋ฐฐํฌํ•  ์ฝ”๋“œ์˜ ๋ฌถ์Œ ๋‹จ์œ„ ํ•˜๋‚˜์˜ ์Šค์œ„ํ”„ํŠธ ์†Œ์Šค ์ฝ”๋“œ ํŒŒ์ผ
    ํ”„๋ ˆ์ž„์›Œํฌ, ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜  

     


    ์ ‘๊ทผ ์ˆ˜์ค€ ํ‚ค์›Œ๋“œ๋ฅผ ํ†ตํ•ด ์ ‘๊ทผ ์ œ์–ด ๊ตฌํ˜„

    • open (ํด๋ž˜์Šค์—์„œ๋งŒ ์‚ฌ์šฉ)
    • public 
    • internal (default)
    • fileprivate
    • private

    * private ์ ‘๊ทผ ์ˆ˜์ค€์˜ ๊ฒฝ์šฐ ์ž์‹ ์„ ํ™•์žฅํ•˜๋Š” ์ต์Šคํ…์…˜ ์ฝ”๋“œ๊ฐ€ ๊ฐ™์€ ํŒŒ์ผ์— ์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ ์š”์†Œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค


    ์ฝ๊ธฐ ์ „์šฉ ๊ตฌํ˜„

    ์„ค์ •์ž๋งŒ ๋” ๋‚ฎ์€ ์ ‘๊ทผ์ˆ˜์ค€์„ ๊ฐ–๋„๋ก ์ œํ•œํ•  ์ˆ˜ ์žˆ๋‹ค.

    ์ ‘๊ทผ์ˆ˜์ค€(set)

     

    import Foundation
    
    //์ ‘๊ทผ์ˆ˜์ค€(set)์œผ๋กœ ์„ค์ •์ž์˜ ์ ‘๊ทผ ์ˆ˜์ค€๋งŒ ๋” ๋‚ฎ๋„๋ก ์ง€์ •ํ•ด์ค„ ์ˆ˜ ์žˆ๋‹ค
    public struct SomeType {
        public private(set) var SetPrivate: Int = 120
    }
    
    
    var SomeInstance: SomeType = SomeType()
    print(SomeInstance.SetPrivate)

     

     

     

Designed by Tistory.