๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
728x90

๐ŸŽ iOS/WWDC11

[WWDC19] LLDB: Beyond "po" LLDB ๋Š” ์•ฑ ๋Ÿฐํƒ€์ž„ ์ค‘์— ๋””๋ฒ„๊น… ํ•  ์ˆ˜ ์žˆ๋Š” ํˆด์ด๋‹ค. "po" ๊ธฐ๋ณธ์ ์œผ๋กœ LLDB ์—์„œ po ~~ ๋ช…๋ น์–ด๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ํ•ด๋‹น ํƒ€์ž…๊ณผ ํ”„๋กœํผํ‹ฐ์— ๋Œ€ํ•ด ๋ณด์—ฌ์ค€๋‹ค. CustomDebugStringConvertible ํ”„๋กœํ† ์ฝœ์„ ์ฑ„ํƒํ•˜๊ณ , debugDescription ์„ ์ถ”๊ฐ€ํ•˜๋ฉด Object ์ด๋ฆ„์ด ๋‚˜ํƒ€๋‚˜๋Š” ๊ณณ์— ์ปค์Šคํ…€ํ•˜๊ฒŒ ์„ค๋ช…์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค. Sub structure ์— ๋Œ€ํ•œ ์ปค์Šคํ…€์ด ํ•„์š”ํ•˜๋‹ค๋ฉด CustomReflectable ์„ ์ฐพ์•„๋ณด์ž. po ๋ช…๋ น์–ด๋Š” ๊ฐ์ฒด๋ฅผ ํ”„๋ฆฐํŒ…ํ•˜๋Š” ๊ฒƒ ์™ธ์—๋„, ๋ฉ”์†Œ๋“œ ํ˜ธ์ถœ ๋“ฑ์˜ ๋™์ž‘์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. po ๋Š” ์‚ฌ์‹ค ํŠน์ • ๋ช…๋ น์–ด๋ฅผ alias ๋กœ ๋‹จ์ถ•์‹œํ‚จ ๊ฒƒ์ด๋‹ค. ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ๋™์ผํ•˜๊ฒŒ ๋งŒ๋“ค ์ˆ˜๋„ ์žˆ๋‹ค. expression --object-description ์„ ์ค„์ธ๊ฒƒ "po" Un.. 2022. 7. 4.
[iOS] SnapKit / Then ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ด์šฉํ•ด ์ฝ”๋“œ๋กœ UI ๊ตฌํ˜„ํ•˜๊ธฐ SnapKit iOS ์—์„œ Autolayout ์„ ์ฝ”๋“œ๋กœ ๊ตฌํ˜„ํ•  ๋•Œ ์‰ฝ๊ณ  ํŽธ๋ฆฌํ•˜๊ฒŒ ๋„์™€์ฃผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ž‘์„ฑํ•ด์•ผํ•˜๋Š” ์ฝ”๋“œ์˜ ๊ธธ์ด๋ฅผ ์ค„์—ฌ์ฃผ๊ณ , ๊ฐ€๋…์„ฑ์„ ๋†’์—ฌ์ฃผ๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ๋ทฐ ๊ณ„์ธต์˜ depth ๊ฐ€ ๊นŠ์–ด์ง€๋ฉด ๋ณต์žกํ•ด์งˆ ์ˆ˜ ์žˆ๋‹ค. pure autolayout ์œผ๋กœ Autolayout ์„ ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• view.addSubview(label) label.translatesAutoresizingMaskIntoConstraints = false let leading = label.leadingAnchor.constraint(equalTo: view.leadingAnchor) let trailing = label.trailingAnchor.constraint(equalTo: view.trailingAnchor) le.. 2021. 11. 11.
728x90