Introduce
์•ˆ๋…•ํ•˜์„ธ์š”๐Ÿ™‡๐Ÿปโ€โ™€๏ธ์—ด์‹ฌํžˆ ๊ณต๋ถ€ํ•˜๊ณ  ์žˆ๋Š” ์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž ์งธ์ž…๋‹ˆ๋‹คโœจย ์•„์ง ๋ถ€์กฑํ•˜์ง€๋งŒ,์กฐ๊ธˆ์”ฉ ์กฐ๊ธˆ์”ฉ ์—ฌ๊ธฐ์— ์ €์˜ ๊ฐœ๋ฐœ ์ผ๊ธฐ๋ฅผ ์จ๋ณด๋ ค๊ณ  ํ•ด์š”.ย ์˜ค๋กฏ์ด ์ €๋ฅผ ์œ„ํ•œ, ์ €์˜ ๊ณต๋ถ€์— ๋Œ€ํ•œ, ์ €์˜ ๋ฏธ๋ž˜๋ฅผ ํ–ฅํ•œ ์ผ๊ธฐ์žฅ์ด์—์š”.ย ๊ณต๋ถ€๋ฅผ ํ•˜๋ฉฐ, ์•„์ฃผ ์ž‘๊ณ  ์‚ฌ์†Œํ•œ ์ •๋ณด๋“ค๋„ ์ „๋ถ€ ๊ธฐ๋กํ•ด๋ณผ๊ฒŒ์š”!์ด ์ผ๊ธฐ์žฅ์€ ๋ฏธ๋ž˜์˜ ์ €์˜ ๋‡Œ๊ฐ€ ๋˜์–ด์ค„๊ฑฐ์—์š”.์—ด์‹ฌํžˆ ์•„์ฃผ ๊พธ์ค€ํžˆ ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค!!!ย ์•„์ฃผ ๋ฉ‹์ง„ ๊ฐœ๋ฐœ์ž๊ฐ€ ๋˜์–ด ์žˆ๋Š” ์ €์˜ ๋ชจ์Šต์„ ์ƒ์ƒํ•˜๋ฉฐ,์˜ค๋Š˜๋„ ์ „ ๊ธ€์„ ์จ๋‚ด๋ ค ๊ฐ‘๋‹ˆ๋‹ค.
Main
์•„๋ž˜์˜ ๊ธ€์€ ์ธํ”„๋Ÿฐ "์‹ค๋ฌด์ค‘์‹ฌ! FE ์ž…๋ฌธ์ž๋ฅผ ์œ„ํ•œ React" ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ๋‚œ ํ›„์— ์ •๋ฆฌํ•˜๊ณ  ๊ธฐ๋กํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.ย ย ์ปดํฌ๋„ŒํŠธ๋ž€?React๋Š” ์ปดํฌ๋„ŒํŠธ๋ผ๋Š” ๋‹จ์œ„๋กœ ํ™”๋ฉด์ด ๊ตฌ์„ฑ์Šค์Šค๋กœ ์ƒํƒœ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ์บก์Šํ™”๋œ ์ฝ”๋“œ ์กฐ๊ฐํ•˜๋‚˜์˜ JSX๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜ย ย ์ปดํฌ๋„ŒํŠธ ๋งŒ๋“ค๊ธฐ์•„๋ž˜์˜ App ์ปดํฌ๋„ŒํŠธ๋ฅผ Hello ์ปดํฌ๋„ŒํŠธ์™€ World ์ปดํฌ๋„ŒํŠธ๋กœ ๋ถ„๋ฆฌํ•˜๊ธฐexport default function App() { return ( Hello, World );}ย [ App.js ]ย import Hello from "./Hello.js";import World from "./World.js";export default function App() { return ( ..
๋ฌธ์ œKOI ํ†ต์‹ ์—ฐ๊ตฌ์†Œ๋Š” ๋ ˆ์ด์ €๋ฅผ ์ด์šฉํ•œ ์ƒˆ๋กœ์šด ๋น„๋ฐ€ ํ†ต์‹  ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์‹คํ—˜์„ ํ•˜๊ณ  ์žˆ๋‹ค. ์‹คํ—˜์„ ์œ„ํ•˜์—ฌ ์ผ์ง์„  ์œ„์— N๊ฐœ์˜ ๋†’์ด๊ฐ€ ์„œ๋กœ ๋‹ค๋ฅธ ํƒ‘์„ ์ˆ˜ํ‰ ์ง์„ ์˜ ์™ผ์ชฝ๋ถ€ํ„ฐ ์˜ค๋ฅธ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ์ฐจ๋ก€๋กœ ์„ธ์šฐ๊ณ , ๊ฐ ํƒ‘์˜ ๊ผญ๋Œ€๊ธฐ์— ๋ ˆ์ด์ € ์†ก์‹ ๊ธฐ๋ฅผ ์„ค์น˜ํ•˜์˜€๋‹ค. ๋ชจ๋“  ํƒ‘์˜ ๋ ˆ์ด์ € ์†ก์‹ ๊ธฐ๋Š” ๋ ˆ์ด์ € ์‹ ํ˜ธ๋ฅผ ์ง€ํ‘œ๋ฉด๊ณผ ํ‰ํ–‰ํ•˜๊ฒŒ ์ˆ˜ํ‰ ์ง์„ ์˜ ์™ผ์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ๋ฐœ์‚ฌํ•˜๊ณ , ํƒ‘์˜ ๊ธฐ๋‘ฅ ๋ชจ๋‘์—๋Š” ๋ ˆ์ด์ € ์‹ ํ˜ธ๋ฅผ ์ˆ˜์‹ ํ•˜๋Š” ์žฅ์น˜๊ฐ€ ์„ค์น˜๋˜์–ด ์žˆ๋‹ค. ํ•˜๋‚˜์˜ ํƒ‘์—์„œ ๋ฐœ์‚ฌ๋œ ๋ ˆ์ด์ € ์‹ ํ˜ธ๋Š” ๊ฐ€์žฅ ๋จผ์ € ๋งŒ๋‚˜๋Š” ๋‹จ ํ•˜๋‚˜์˜ ํƒ‘์—์„œ๋งŒ ์ˆ˜์‹ ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.์˜ˆ๋ฅผ ๋“ค์–ด ๋†’์ด๊ฐ€ 6, 9, 5, 7, 4์ธ ๋‹ค์„ฏ ๊ฐœ์˜ ํƒ‘์ด ์ˆ˜ํ‰ ์ง์„ ์— ์ผ๋ ฌ๋กœ ์„œ ์žˆ๊ณ , ๋ชจ๋“  ํƒ‘์—์„œ๋Š” ์ฃผ์–ด์ง„ ํƒ‘ ์ˆœ์„œ์˜ ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ(์™ผ์ชฝ ๋ฐฉํ–ฅ)์œผ๋กœ ๋™์‹œ์— ๋ ˆ์ด์ € ์‹ ํ˜ธ๋ฅผ ๋ฐœ์‚ฌํ•œ๋‹ค๊ณ  ํ•˜์ž. ๊ทธ๋Ÿฌ๋ฉด, ๋†’์ด๊ฐ€ ..
๋ฌธ์ œ์ž‘๋…„์— ์ด์–ด ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด ๊ฒŒ์ž„์ด ์žˆ๋‹ค. ๊ฒŒ์ž„์˜ ์ง„ํ–‰ ๋ฐฉ์‹์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด W๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.์–‘์˜ ์ •์ˆ˜ K๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.์–ด๋–ค ๋ฌธ์ž๋ฅผย ์ •ํ™•ํžˆ K๊ฐœ๋ฅผ ํฌํ•จํ•˜๋Š”ย ๊ฐ€์žฅ ์งง์€ ์—ฐ์†ย ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ ๊ตฌํ•œ๋‹ค.์–ด๋–ค ๋ฌธ์ž๋ฅผ ์ •ํ™•ํžˆ K๊ฐœ๋ฅผ ํฌํ•จํ•˜๊ณ , ๋ฌธ์ž์—ด์˜ ์ฒซ ๋ฒˆ์งธ์™€ ๋งˆ์ง€๋ง‰ ๊ธ€์ž๊ฐ€ ํ•ด๋‹น ๋ฌธ์ž๋กœ ๊ฐ™์€ ๊ฐ€์žฅ ๊ธด ์—ฐ์† ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ ๊ตฌํ•œ๋‹ค.์œ„์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ๊ฒŒ์ž„์„ TํšŒ ์ง„ํ–‰ํ•œ๋‹ค.ย ย ์ž…๋ ฅ๋ฌธ์ž์—ด ๊ฒŒ์ž„์˜ ์ˆ˜ T๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 โ‰คย T โ‰ค 100)๋‹ค์Œ ์ค„๋ถ€ํ„ฐ 2๊ฐœ์˜ ์ค„ ๋™์•ˆ ๋ฌธ์ž์—ด W์™€ย ์ •์ˆ˜ย K๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. (1 โ‰ค Kย โ‰ค |W|ย โ‰ค 10,000)ย ย ์ถœ๋ ฅT๊ฐœ์˜ ์ค„ ๋™์•ˆ ๋ฌธ์ž์—ด ๊ฒŒ์ž„์˜ 3๋ฒˆ๊ณผ 4๋ฒˆ์—์„œ ๊ตฌํ•œ ์—ฐ์† ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ ๊ณต๋ฐฑ์„ ์‚ฌ์ด์— ๋‘๊ณ  ์ถœ๋ ฅํ•œ๋‹ค.๋งŒ์•ฝย ๋งŒ์กฑํ•˜๋Š” ์—ฐ์† ๋ฌธ์ž์—ด์ดย ์—†์„ ์‹œย -1์„ย ..
๋ฌธ์ œ์ •์ˆ˜ 4๋ฅผ 1, 2, 3์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ๋ฒ•์€ ์ด 4๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. ํ•ฉ์„ ๋‚˜ํƒ€๋‚ผ ๋•Œ๋Š” ์ˆ˜๋ฅผ 1๊ฐœ ์ด์ƒ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. ํ•ฉ์„ ์ด๋ฃจ๊ณ  ์žˆ๋Š” ์ˆ˜์˜ ์ˆœ์„œ๋งŒ ๋‹ค๋ฅธ ๊ฒƒ์€ ๊ฐ™์€ ๊ฒƒ์œผ๋กœ ์นœ๋‹ค.1+1+1+12+1+1 (1+1+2, 1+2+1)2+21+3 (3+1)์ •์ˆ˜ n์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, n์„ 1, 2, 3์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.์ž…๋ ฅ์ฒซ์งธ ์ค„์— ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ๊ฐœ์ˆ˜ T๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ํ•œ ์ค„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , ์ •์ˆ˜ n์ด ์ฃผ์–ด์ง„๋‹ค. n์€ ์–‘์ˆ˜์ด๋ฉฐ 10,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค.์ถœ๋ ฅ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋งˆ๋‹ค, n์„ 1, 2, 3์˜ ํ•ฉ์œผ๋กœ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.์˜ˆ์ œ ์ž…๋ ฅ 134710์˜ˆ์ œ ์ถœ๋ ฅ 14814๋‚˜์˜ ํ’€์ด๋ฌธ์ œ ์„ค๋ช… ๋ฐ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ๋ฌธ์ œ๋Š” DP(Dynamic Pro..
๋ฐฑ์ค€ ๋ฌธ์ œ ๋งํฌํ’€์ด Github ๋งํฌย ๋ฌธ์ œ์ˆ˜์ง์„  ์œ„์— N๊ฐœ์˜ ์ขŒํ‘œ X1, X2, ..., XN์ด ์žˆ๋‹ค. ์ด ์ขŒํ‘œ์— ์ขŒํ‘œ ์••์ถ•์„ ์ ์šฉํ•˜๋ ค๊ณ  ํ•œ๋‹ค.Xi๋ฅผ ์ขŒํ‘œ ์••์ถ•ํ•œ ๊ฒฐ๊ณผ X'i์˜ ๊ฐ’์€ Xiย > Xj๋ฅผ ๋งŒ์กฑํ•˜๋Š” ์„œ๋กœ ๋‹ค๋ฅธ ์ขŒํ‘œ Xj์˜ ๊ฐœ์ˆ˜์™€ ๊ฐ™์•„์•ผ ํ•œ๋‹ค.X1, X2, ..., XN์— ์ขŒํ‘œ ์••์ถ•์„ ์ ์šฉํ•œ ๊ฒฐ๊ณผ X'1, X'2, ..., X'N๋ฅผ ์ถœ๋ ฅํ•ด๋ณด์ž.ย ย ์ž…๋ ฅ์ฒซ์งธ ์ค„์— N์ด ์ฃผ์–ด์ง„๋‹ค.๋‘˜์งธ ์ค„์—๋Š” ๊ณต๋ฐฑ ํ•œ ์นธ์œผ๋กœ ๊ตฌ๋ถ„๋œ X1, X2, ..., XN์ด ์ฃผ์–ด์ง„๋‹ค.์ถœ๋ ฅ์ฒซ์งธ ์ค„์— X'1, X'2, ..., X'N์„ ๊ณต๋ฐฑ ํ•œ ์นธ์œผ๋กœ ๊ตฌ๋ถ„ํ•ด์„œ ์ถœ๋ ฅํ•œ๋‹ค.ย ย ์ œํ•œ1 โ‰ค N โ‰ค 1,000,00010ย โ‰ค Xย โ‰ค 10i99ย ย ์˜ˆ์ œ ์ž…๋ ฅ 152 4 -10 4 -9์˜ˆ์ œ ์ถœ๋ ฅ 12 3 0 3 1ย ์˜ˆ์ œ ์ž…๋ ฅ 261000 999 100..
๋ฐฑ์ค€ ๋ฌธ์ œ ๋งํฌํ’€์ด Github ๋งํฌย ย ๋ฌธ์ œ์ˆ˜๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ํ†ต๊ณ„ํ•™์—์„œ ์ƒ๋‹นํžˆ ์ค‘์š”ํ•œ ์ผ์ด๋‹ค. ํ†ต๊ณ„ํ•™์—์„œ N๊ฐœ์˜ ์ˆ˜๋ฅผ ๋Œ€ํ‘œํ•˜๋Š” ๊ธฐ๋ณธ ํ†ต๊ณ„๊ฐ’์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒƒ๋“ค์ด ์žˆ๋‹ค. ๋‹จ, N์€ ํ™€์ˆ˜๋ผ๊ณ  ๊ฐ€์ •ํ•˜์ž.์‚ฐ์ˆ ํ‰๊ท  : N๊ฐœ์˜ ์ˆ˜๋“ค์˜ ํ•ฉ์„ N์œผ๋กœ ๋‚˜๋ˆˆ ๊ฐ’์ค‘์•™๊ฐ’ : N๊ฐœ์˜ ์ˆ˜๋“ค์„ ์ฆ๊ฐ€ํ•˜๋Š” ์ˆœ์„œ๋กœ ๋‚˜์—ดํ–ˆ์„ ๊ฒฝ์šฐ ๊ทธ ์ค‘์•™์— ์œ„์น˜ํ•˜๋Š” ๊ฐ’์ตœ๋นˆ๊ฐ’ : N๊ฐœ์˜ ์ˆ˜๋“ค ์ค‘ ๊ฐ€์žฅ ๋งŽ์ด ๋‚˜ํƒ€๋‚˜๋Š” ๊ฐ’๋ฒ”์œ„ : N๊ฐœ์˜ ์ˆ˜๋“ค ์ค‘ ์ตœ๋Œ“๊ฐ’๊ณผ ์ตœ์†Ÿ๊ฐ’์˜ ์ฐจ์ดN๊ฐœ์˜ ์ˆ˜๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๋„ค ๊ฐ€์ง€ ๊ธฐ๋ณธ ํ†ต๊ณ„๊ฐ’์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.ย ย ์ž…๋ ฅ์ฒซ์งธ ์ค„์— ์ˆ˜์˜ ๊ฐœ์ˆ˜ N(1 โ‰ค N โ‰ค 500,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹จ, N์€ ํ™€์ˆ˜์ด๋‹ค. ๊ทธ ๋‹ค์Œ N๊ฐœ์˜ ์ค„์—๋Š” ์ •์ˆ˜๋“ค์ด ์ฃผ์–ด์ง„๋‹ค. ์ž…๋ ฅ๋˜๋Š” ์ •์ˆ˜์˜ ์ ˆ๋Œ“๊ฐ’์€ 4,000์„ ๋„˜์ง€ ์•Š๋Š”๋‹ค.ย ์ถœ๋ ฅ์ฒซ์งธ ์ค„์—๋Š” ์‚ฐ์ˆ ํ‰๊ท ..
๋ฐฑ์ค€ ๋ฌธ์ œ ๋งํฌํ’€์ด Github ๋งํฌย ๋ฌธ์ œํ‰์†Œ์— ์งˆ๋ฌธ์„ ์ž˜ ๋ฐ›์•„์ฃผ๊ธฐ๋กœ ์œ ๋ช…ํ•œ ์ค‘์•™๋Œ€ํ•™๊ต์˜ย JH ๊ต์ˆ˜๋‹˜์€ย ํ•™์ƒ๋“ค๋กœ๋ถ€ํ„ฐ ์žฌ๊ท€ํ•จ์ˆ˜๊ฐ€ ๋ฌด์—‡์ธ์ง€์— ๋Œ€ํ•˜์—ฌ ๋งŽ์€ ์งˆ๋ฌธ์„ ๋ฐ›์•„์™”๋‹ค.๋งค๋ฒˆ ์งˆ๋ฌธ์„ ์ž˜ ๋ฐ›์•„์ฃผ์…จ๋˜ JH ๊ต์ˆ˜๋‹˜์ด์ง€๋งŒ ๊ทธ๋Š” ์ค‘์•™๋Œ€ํ•™๊ต๊ฐ€ ์ž์‹ ๊ณผ ๋งž๋Š”๊ฐ€์— ๋Œ€ํ•œ ๊ณ ๋ฏผ์„ ํ•ญ์ƒ ํ•ด์™”๋‹ค.์ค‘์•™๋Œ€ํ•™๊ต์™€ ์ž์‹ ์˜ ๊ธธ์ด ๋งž์ง€ ์•Š๋‹ค๊ณ  ์ƒ๊ฐํ•œ JH ๊ต์ˆ˜๋‹˜์€ย ๊ฒฐ๊ตญ ์ค‘์•™๋Œ€ํ•™๊ต๋ฅผ ๋– ๋‚˜๊ธฐ๋กœย ๊ฒฐ์ •ํ•˜์˜€๋‹ค.๋– ๋‚˜๊ธฐ ์ „๊นŒ์ง€๋„ ์ œ์ž๋“ค์„ ์ƒ๊ฐํ•˜์…จ๋˜ JH ๊ต์ˆ˜๋‹˜์€ ์žฌ๊ท€ํ•จ์ˆ˜๊ฐ€ ๋ฌด์—‡์ธ์ง€ย ๋ฌผ์–ด๋ณด๋Š” ํ•™์ƒ๋“ค์„ ์œ„ํ•œ ์ž‘์€ ์„ ๋ฌผ๋กœ ์ž๋™ ์‘๋‹ต ์ฑ—๋ด‡์„ ์ค€๋น„ํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค.JH ๊ต์ˆ˜๋‹˜์ด ๋งŒ๋“ค ์ฑ—๋ด‡์˜ ์‘๋‹ต์„ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค์–ด๋ณด์ž.ย ์ž…๋ ฅ๊ต์ˆ˜๋‹˜์ด ์ถœ๋ ฅ์„ ์›ํ•˜๋Š” ์žฌ๊ท€ย ํšŸ์ˆ˜ N(1ย โ‰ค N โ‰ค 50)์ด ์ฃผ์–ด์ง„๋‹ค.ย ์ถœ๋ ฅ์ถœ๋ ฅ ์˜ˆ์‹œ๋ฅผ ๋ณด๊ณ  ์žฌ๊ท€ ํšŸ์ˆ˜์— ๋”ฐ๋ฅธ ์ฑ—๋ด‡์˜ ์‘๋‹ต์„ ์ถœ๋ ฅํ•œ๋‹ค.ย ..
List (๋ฆฌ์ŠคํŠธ): ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ’์„ ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅํ•˜๋Š” ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•œ ์‹œํ€€์Šค ์ž๋ฃŒํ˜•ย ๋ฆฌ์ŠคํŠธ์˜ ํŠน์ง•์ˆœ์„œ๊ฐ€ ์กด์žฌ๊ฐ€๋ณ€ํ˜• ์ž๋ฃŒํ˜•๋Œ€๊ด„ํ˜ธ([])๋กœ ํ‘œ๊ธฐ์–ด๋–ค ์ž๋ฃŒํ˜•์ด๋ผ๋„ ์ €์žฅ ๊ฐ€๋Šฅ0 ๊ฐœ ์ด์ƒ์˜ ๊ฐ์ฒด๋ฅผ ํฌํ•จํ•˜๋ฉฐ ๋ฐ์ดํ„ฐ ๋ชฉ๋ก์„ ์ €์žฅmy_list_1 = [1, 'a', 3, 'b', 5]my_list_2 = [1, 2, 3, 'Python', ['hello', 'world', '!!!']]ย > ๋น„์–ด์žˆ๋Š” ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑa = list()b = []ย ย ย ๋ฆฌ์ŠคํŠธ์˜ ์ธ๋ฑ์‹ฑ( indexing )my_list = [1, 'a', 3, 'b', 5]print(my_list[0]) # 1print(my_list[1]) # aprint(my_list[2]) # 3print(my_list[3]) # bprint(my_list[4]) #..
์˜ค๋žœ๋งŒ์— TIL๋กœ ๋Œ์•„์™”๋„ค์š”!์˜ค๋Š˜๋ถ€ํ„ฐ ๋‹ค์‹œ ๊พธ์ค€ํžˆ ์จ๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค..ใ…Ž์‹ธํ”ผ ์ผ๊ธฐ๊ฐ€ ๋ ์ง€๋‘...?ใ…Žใ…Žย ย ๋ณ€์ˆ˜ (Variable): ๊ฐ’์„ ์ฐธ์กฐํ•˜๊ธฐ ์œ„ํ•œ ์ด๋ฆ„ย ย age = 2525๋ผ๋Š” ์ˆ˜๊ฐ€ ์ €์žฅ๋˜์–ด ์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๊ฐ€ age๋ผ๋Š” ๋ณ€์ˆ˜์— ํ• ๋‹น๋˜์–ด ์žˆ๋Š” ๊ฒƒย ย age = 32ages = 26age๋ผ๋Š” ๋ณ€์ˆ˜๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•œ๋‹ค๋ฉด, ๋ณ€์ˆ˜์— ๋“ค์–ด์žˆ๋Š” ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๋ณ€๊ฒฝages๋ผ๋Š” ๋ณ€์ˆ˜๊ฐ€ ๋ฉ”๋ชจ๋ฆฌ์— ์กด์žฌํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด, ์ƒˆ๋กœ์šด ๋ณ€์ˆ˜์— ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ํ• ๋‹นย ย ๋ณ€์ˆ˜๋ช… ๊ทœ์น™์˜๋ฌธ ์•ŒํŒŒ๋ฒณ, ์–ธ๋”์Šค์ฝ”์–ด, ์ˆซ์ž๋กœ ๊ตฌ์„ฑ ( ํ•œ๊ธ€์ด ์ปดํŒŒ์ผ ์—๋Ÿฌ๊ฐ€ ๋‚˜์ง„ ์•Š์ง€๋งŒ, ๊ทœ์น™์€ ์•„๋‹˜ )์ˆซ์ž๋กœ ์‹œ์ž‘๋ถˆ๊ฐ€๋Œ€์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•จ์Šค๋„ค์ดํฌ ์ผ€์ด์Šค ์‚ฌ์šฉํŒŒ์ด์ฌ ๋‚ด๋ถ€์˜ ์˜ˆ์•ฝ์–ด ์‚ฌ์šฉ ๋ถˆ๊ฐ€print์™€ ๊ฐ™์€ ํ•จ์ˆ˜๋ช… ์‚ฌ์šฉ ๋ถˆ๊ฐ€ย ย ย ๋ฐ์ดํ„ฐ ํƒ€์ž… ( Data Types )ย ย intย  (ย ..
๐Ÿ„ย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ๋งํฌย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.krโœ๐Ÿปย ๋ฌธ์ œ ํ’€์ด Github ๋งํฌย -Swift-CodingTest/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/2/84512.โ€…๋ชจ์Œโ€…์‚ฌ์ „ at main ยท BaeJihae/-Swift-CodingTestSwift๋กœ ํ‘ผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. Contribute to BaeJihae/-Swift-CodingTest development by creating an account on GitHub.github.comย ย ๋ฌธ์ œ ์„ค๋ช…์‚ฌ์ „์— ์•ŒํŒŒ๋ฒณ ๋ชจ์Œ 'A', 'E', 'I', 'O', 'U'๋งŒ์„ ..
์˜ค๋Š˜์€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ๋ฅผ ํ’€๊ณ  ( ํ•œ.. ํ•œ๋ฌธ์ œ.. )๋ธ”๊พธ๋ฅผ ์กฐ๊ธˆํ•˜๊ณ  ( ์•„๋‹ˆ.. ๋งŽ์ดํ•˜๊ณ .. )๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ( ์ •๋ฆฌ๋Š” ์•ˆํ•˜๊ณ .. )๋‚ด์ผ๊นŒ์ง€ ์ œ์ถœํ•ด์•ผํ•˜๋Š” Github ๊ณผ์ œ๋ฅผ ์—ด์‹ฌํžˆ ํ–ˆ์–ด์š”!ย ย ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ ์˜ค๋ฅ˜ํ .. ์•„๊นŒ๊นŒ์ง€๋Š” ๋ถ„๋ช…ํžˆ ๋˜์—ˆ๋Š”๋ฐ ๊ฐ‘์ž๊ธฐ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ ์˜ค๋ฅ˜๊ฐ€ ๋– ์„œ์–ด๋–ค ํ”„๋กœ์ ํŠธ์ด๋“  ๋‹ค ์ผœ์ง€์งˆ ์•Š๋”๋ผ๊ตฌ์š”!์ƒˆ๋กœ์šด ํ”„๋กœ์ ํŠธ๋ฅผ ํ˜•์„ฑํ•˜๋Š”๋ฐ๋„ ์ €๋ ‡๊ฒŒ ๋– ์„œ ์ธํ„ฐ๋„ท์—๋„ ์ณ๋ณด๊ณ , ๊น”๋ผ์„œ 17.4 ๋„ ๋‹ค์‹œ ๊น”์•˜๋Š”๋ฐ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•˜์˜€์–ด์š”!ย ย ํ .. ์ปดํ“จํ„ฐ๋ฅผ ํ•œ๋ฒˆ ๊ป๋‹ค๊ฐ€ ์ผœ๋ด์•ผ๊ฒ ๋‹ค ํ•˜๊ณ ๋Š” ์ปดํ“จํ„ฐ๋ฅผ ๊ป๋‹ค๊ฐ€ ํ‚ค๋‹ˆ ํ•ด๊ฒฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค~ ^_^๋ฌด์Šจ ์˜ค๋ฅ˜์ธ์ง€๋Š” ์•„์ง๋„ ๋ชจ๋ฅด๊ฒ ์–ด์š”ใ… ย URLSession๊ณผ Alamofire์˜ค๋Š˜ ๊ณผ์ œ๋ฅผ ํ•˜๋ฉด์„œ URLSession๊ณผ Alamofire ๋ณต์Šต ๊ฒธ ๋„คํŠธ์›Œํฌ ํ†ต์‹ ์„ ๋‘ ๊ฐ€์ง€ ๊ฒฝ์šฐ๋กœ ๋‹ค ๊ตฌํ˜„ํ•ด๋ณด์•˜์–ด์š”!ย ย A..
๐Ÿ„ย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ๋งํฌย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.krโœ๐Ÿปย ๋ฌธ์ œ ํ’€์ด Github ๋งํฌย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.krย ย ย ย ๋ฌธ์ œ ์„ค๋ช…์ฃผ์ฐจ์žฅ์˜ ์š”๊ธˆํ‘œ์™€ ์ฐจ๋Ÿ‰์ด ๋“ค์–ด์˜ค๊ณ (์ž…์ฐจ) ๋‚˜๊ฐ„(์ถœ์ฐจ) ๊ธฐ๋ก์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ฐจ๋Ÿ‰๋ณ„๋กœ ์ฃผ์ฐจ ์š”๊ธˆ์„ ๊ณ„์‚ฐํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” ํ•˜๋‚˜์˜ ์˜ˆ์‹œ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.ย ์š”๊ธˆํ‘œ๊ธฐ๋ณธ ์‹œ๊ฐ„(๋ถ„)๊ธฐ๋ณธ ์š”๊ธˆ(์›)๋‹จ์œ„ ์‹œ๊ฐ„(๋ถ„)๋‹จ์œ„ ์š”๊ธˆ(์›)180500010600์ž…/์ถœ์ฐจ ๊ธฐ..
๋กฑํƒ€์ž„๋…ธ์”จ์ž…๋‹ˆ๋‹ค.์ง€๊ธˆ์€ ์ƒˆ๋ฒฝ 1์‹œ ๋ฐ˜์ด์ง€๋งŒ, ์˜ค๋Š˜๋ถ€ํ„ฐ ๋‹ค์‹œ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ณผ TIL์„ ๋‹ฌ๋ฆฌ๊ธฐ๋กœ ์ € ์ž์‹ ๊ณผ ์•ฝ์†ํ–ˆ์œผ๋‹ˆ ์•‰์•„์„œ ์จ๋ด์•ผ์ฃ !ย ย ํŒ€ํ”„๋กœ์ ํŠธ ๋ฐœํ‘œํšŒย ์˜ค๋Š˜์€ ํŒ€ํ”„๋กœ์ ํŠธ ๋ฐœํ‘œํšŒ๊ฐ€ ์žˆ๋˜ ๋‚ ์ด์—ˆ์–ด์š”!์ผ์ฃผ์ผ๊ฐ„ ์ €์˜ ์‹œ๊ฐ„์„ ๊ฐˆ์•„๋„ฃ์—ˆ๋˜ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฐœํ‘œํ•˜๋Š” ์‹œ๊ฐ„์ด ๋˜์—ˆ๋Š”๋ฐ ์•„์‰ฌ์›€์ด ๋งŽ์•˜์Šต๋‹ˆ๋‹ค.์ €์˜ ์ƒ๊ฐ๋ณด๋‹ค ์™„์„ฑ๋„๊ฐ€ ๋†’์ง€ ์•Š์•˜๊ณ , ์•ฑ์„ ์™„์„ฑํ–ˆ๋‹ค๋Š” ๋ฟŒ๋“ฏํ•จ๋„ ๋“ค์ง€ ์•Š์•˜์–ด์š”.์ œ๊ฐ€ ํŒ€์žฅ์€ ์•„๋‹ˆ์ง€๋งŒ ํŒ€์„ ์ž˜ ์ด๋Œ์–ด๊ฐ€์ง€ ๋ชปํ–ˆ๋‹ค๋Š” ์ƒ๊ฐ์— ์กฐ๊ธˆ ์ขŒ์ ˆ๊ฐ์ด ๋“ค๋”๋ผ๊ตฌ์š”.ย ์•„์‰ฌ์›€์ด ๋งŽ์ด ๋‚จ๋Š” ํ”„๋กœ์ ํŠธ์˜€๋˜ ๋งŒํผ ๋ฐฐ์šด์ ๋„ ์•„์ฃผ ๋งŽ์•˜์Šต๋‹ˆ๋‹ค.์Šค์Šค๋กœ ํšŒ๊ณ ๋ฅผ ์ง„ํ–‰ํ•ด๋ณด๋ฉฐ, ์ œ๊ฐ€ ๋ถ€์กฑํ–ˆ๋˜ ์ ์— ๋Œ€ํ•ด์„œ ๋ฐ˜์„ฑํ•˜๊ณ  ์„ฑ์žฅํ•˜๋Š” ๊ณ„๊ธฐ๊ฐ€ ๋˜์—ˆ์–ด์š”.๊ทธ ๋ฌด์—‡๋ณด๋‹ค๋„ ์†Œํ”„ํŠธ ์Šคํ‚ฌ์ด ๋งŽ์ด ์„ฑ์žฅํ•˜์ง€ ์•Š์•˜๋‚˜ ์‹ถ์Šต๋‹ˆ๋‹ค.ย ์—ฌ๋Ÿฌ ์ƒํ™ฉ๊ณผ ๊ณผ์ •๋“ค์„ ๊ฒช์œผ๋ฉด์„œ '๋‹ค์Œ์—” ์ด๋ ‡๊ฒŒ ํ–‰๋™ํ•ด์•ผ๊ฒ ๋‹ค.',..
๐Ÿ„ย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ๋งํฌย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.krโœ๐Ÿปย ๋ฌธ์ œ ํ’€์ด Github ๋งํฌย -Swift-CodingTest/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/2/92335.โ€…k์ง„์ˆ˜์—์„œโ€…์†Œ์ˆ˜โ€…๊ฐœ์ˆ˜โ€…๊ตฌํ•˜๊ธฐ at main ยท BaeJihae/-Swift-CodingTesSwift๋กœ ํ‘ผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. Contribute to BaeJihae/-Swift-CodingTest development by creating an account on GitHub.github.comย ย ๋ฌธ์ œ ์„ค๋ช…์–‘์˜ ์ •์ˆ˜ย n์ด ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ์ด ์ˆซ์ž๋ฅผย k์ง„์ˆ˜๋กœ ๋ฐ”..
์˜ค๋Š˜์€ ์•„ํ‚คํ…์ฒ˜์™€ ๋””์ž์ธํŒจํ„ด์— ๋Œ€ํ•ด์„œ ํ•™์Šตํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค.ํ‰์†Œ์— ์•„ํ‚คํ…์ฒ˜์™€ ๋””์ž์ธํŒจํ„ด ์šฉ์–ด์— ๋Œ€ํ•œ ๋ช…ํ™•ํ•œ ๊ฐœ๋…์ด ์žกํ˜€์žˆ์ง€ ์•Š์•˜๋˜ ๊ฑฐ ๊ฐ™์€๋ฐ,์˜ค๋Š˜ ๋น„๋กœ์†Œ ๋‘ ๊ฐ€์ง€์˜ ๊ฐœ๋…์„ ๋ช…ํ™•ํžˆ ์ดํ•ดํ•˜๋ฉด์„œ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์–ด์š”!โœจย ย ์•„ํ‚คํ…์ฒ˜์ œ๊ฐ€ ์ดํ•ดํ•œ ์•„ํ‚คํ…์ฒ˜๋Š” ์‹œ์Šคํ…œ์˜ ์ „์ฒด์ ์ธ ๊ตฌ์กฐ(๋ชจ์Šต)๋ฅผ ์ •ํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์ž…๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค๊ณ„ํ•˜๋Š” ๋‹จ๊ณ„์—์„œ ์‹œ์Šคํ…œ ์•ˆ์˜ ์ปดํฌ๋„ŒํŠธ๋“ค์ด ์–ด๋–ค ์‹์œผ๋กœ ์ƒํ˜ธ์ž‘์šฉํ•˜๊ณ  ์œ„์น˜ํ•  ๊ฒƒ์ธ์ง€, ๋ฐ์ดํ„ฐ ํ๋ฆ„์€ ์–ด๋–ป๊ฒŒ ์ด๋ฃจ์–ด์ ธ ์žˆ์„ ๊ฒƒ์ธ์ง€๋ฅผ ์ •ํ•  ๋•Œ ์ง€์นจ์ด ๋˜๋Š” ๊ฒƒ ๊ฐ™์•„์š”. ์—ฌ๊ธฐ์„œ ๋” ๋‚˜์•„๊ฐ€ ์‹œ์Šคํ…œ์˜ ๊ธฐ๋Šฅ์ด๋‚˜ ์„ฑ๋Šฅ, ๋ณด์•ˆ, ํ™•์žฅ์„ฑ, ์œ ์ง€๋ณด์ˆ˜์„ฑ๊ณผ ๊ฐ™์€ ํ•ด๊ฒฐ์ฑ…๊นŒ์ง€ ์ œ๊ณตํ•ด ์ค„ ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.ย ์ €๋Š” ์ด๋•Œ๊นŒ์ง€ MVCํŒจํ„ด์˜ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์ฃผ๋กœ ์‚ฌ์šฉํ•ด์„œ ์•ฑ์„ ๊ฐœ๋ฐœํ•ด ์™”๋˜ ๊ฒƒ ๊ฐ™์•„์š”! ์˜ค๋Š˜์€ MVVM ์•„ํ‚คํ…์ฒ˜๊นŒ์ง€ ๋ฐฐ์›Œ..
์•ˆ๋…•ํ•˜์„ธ์š”~!์˜ค๋Š˜์€ ํผ์Šค๋„ ๋ชจ๋นŒ๋ฆฌํ‹ฐ์•ฑ์—์„œ ํƒ€์ด๋จธ๋ฅผ ์ด์šฉํ•ด์„œ ์ด์šฉ์‹œ๊ฐ„์„ ๊ตฌํ˜„ํ•œ ๋ถ€๋ถ„์„ ๊ธฐ๋กํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค!โœจํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„ ์ค‘ ๊ธฐ๊ฐ„์ผ์„ ์ง€ํ‚ค๊ธฐ ์œ„ํ•ด ์ •์‹ ์—†์ด ๋‹ฌ๋ฆฌ๋‹ค ๋ณด๋‹ˆ ๊ธฐ๋ก์„ ๋งŽ์ด ๋ชปํ•œ ์ ์ด ์•„์‰ฌ์›Œ์„œ์ด๋ฒˆ์ฃผ๋Š” ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„ ์ค‘์— ๊ณต๋ถ€ํ–ˆ๋˜ ๋‚ด์šฉ์„ ์œ„์ฃผ๋กœ ํฌ์ŠคํŒ…์„ ์ง„ํ–‰ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค~!๋„ˆ๋ฌด๋„ˆ๋ฌด ๋ฐ”๋น ๋„ ๊ธฐ๋ก์€ ๊ผญ ์ฑ™๊ธฐ๊ธฐโญ๏ธย ย ย ์ดˆ๊ธฐ๊ตฌํ˜„๋ฐฉ๋ฒ•ํ‚ฅ๋ณด๋“œ์˜ ๋Œ€์—ฌํ•˜๊ธฐ๋ฅผ ๋ˆŒ๋ €์„ ๋•Œ, ํ‚ฅ๋ณด๋“œ์˜ ๋Œ€์—ฌ์‹œ๊ฐ„์„ ๋ณด์—ฌ์ฃผ๋„๋ก UI๋ฅผ ๊ตฌ์„ฑํ•˜์˜€์–ด์š”!์ฒ˜์Œ์—๋Š” ๋Œ€์—ฌํ•œ ํ‚ฅ๋ณด๋“œ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ์ดํ„ฐ์— "๋Œ€์—ฌํ•˜๊ธฐ" ๋ฒ„ํŠผ์„ ๋ˆŒ๋ €์„ ๋•Œ์˜ ์‹œ๊ฐ„์„ ์ €์žฅํ•ด ๋‘” ๋’ค ๊ทธ ์‹œ๊ฐ„๊ณผ ํ˜„์žฌ์˜ ์‹œ๊ฐ„์˜ ์ฐจ๋ฅผ ๊ตฌํ•˜์—ฌ ์ด์šฉ์‹œ๊ฐ„์ด ์ €์žฅํ•˜๋„๋ก ๊ตฌํ˜„ํ•˜์˜€์–ด์š”.ย func calculateKickboardTotalTime() -> Int { guard let start = getUserDefa..
๐Ÿ„ย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ๋งํฌย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.krโœ๐Ÿปย ๋ฌธ์ œ ํ’€์ด Github ๋งํฌย -Swift-CodingTest/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/2/42583.โ€…๋‹ค๋ฆฌ๋ฅผโ€…์ง€๋‚˜๋Š”โ€…ํŠธ๋Ÿญ at main ยท BaeJihae/-Swift-CodingTestSwift๋กœ ํ‘ผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. Contribute to BaeJihae/-Swift-CodingTest development by creating an account on GitHub.github.comย ย ๋ฌธ์ œ ์„ค๋ช…ํŠธ๋Ÿญ ์—ฌ๋Ÿฌ ..
๐Ÿ„ย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ๋งํฌย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.krโœ๐Ÿปย ๋ฌธ์ œ ํ’€์ด Github ๋งํฌย -Swift-CodingTest/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/2/42587.โ€…ํ”„๋กœ์„ธ์Šค at main ยท BaeJihae/-Swift-CodingTestSwift๋กœ ํ‘ผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. Contribute to BaeJihae/-Swift-CodingTest development by creating an account on GitHub.github.comย ย ย ๋ฌธ์ œ ์„ค๋ช…์šด์˜์ฒด์ œ์˜ ์—ญํ• ..
๐Ÿ„ย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ๋งํฌย ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.programmers.co.krโœ๐Ÿปย ๋ฌธ์ œ ํ’€์ด Github ๋งํฌย -Swift-CodingTest/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/2/43165.โ€…ํƒ€๊ฒŸโ€…๋„˜๋ฒ„ at main ยท BaeJihae/-Swift-CodingTestSwift๋กœ ํ‘ผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. Contribute to BaeJihae/-Swift-CodingTest development by creating an account on GitHub.github.comย ย ย ๋ฌธ์ œ ์„ค๋ช…n๊ฐœ์˜ ์Œ์ด ์•„๋‹Œ ์ •..
์•ˆ๋…•ํ•˜์„ธ์š”~!์˜ค๋Š˜์€ ์ƒˆ๋กœ์šด ํŒ€ ํ”„๋กœ์ ํŠธ๋ฅผ ์‹œ์ž‘ํ•œ ๋‚ ์ž…๋‹ˆ๋‹ค!ํŒ€์›๋“ค๊ณผ ์ƒ์˜ ๋์— ํผ์Šค๋„ ๋ชจ๋นŒ๋ฆฌํ‹ฐ์•ฑ์„ ๊ตฌํ˜„ํ•ด๋ณด๊ธฐ๋กœ ํ–ˆ์–ด์š”~!MapKit์„ ์ฒ˜์Œ ์‚ฌ์šฉํ•ด ๋ด์„œ ๊ผญ ๋„์ „ํ•ด๋ณด๊ณ  ์‹ถ์—ˆ๋˜ ์•ฑ์ด์—ˆ์Šต๋‹ˆ๋‹ค!ย ย ย ์ดˆ๊ธฐ ์™€์ด์–ด ํ”„๋ ˆ์ž„ย ์ดˆ๊ธฐ์˜ ์™€์ด์–ด ํ”„๋ ˆ์ž„์ž…๋‹ˆ๋‹ค. ์ €ํฌ๋Š” GCOO ์•ฑ์„ ๋ชจ๋ฐฉํ•˜์—ฌ ์•ฑ์„ ๋””์ž์ธํ•˜์˜€์Šต๋‹ˆ๋‹ค~!ย ์ด 5๊ฐœ์˜ ํŽ˜์ด์ง€๋กœ ๊ตฌ์„ฑ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.๋กœ๊ทธ์ธ ํ™”๋ฉดํšŒ์›๊ฐ€์ž… ํ™”๋ฉด๋งต ํ™”๋ฉด์‚ฌ์šฉ์ž ํ™”๋ฉด๋Œ€์—ฌ ํ™”๋ฉดย ย ย ์ด๋ฒˆ์— ์ œ๊ฐ€ ๋งก์€ ๊ตฌํ˜„ ๋ถ€๋ถ„์€ ์‚ฌ์šฉ์ž ํ™”๋ฉด์ž…๋‹ˆ๋‹ค!โœจ์‚ฌ์šฉ์ž ํ™”๋ฉด ( ๋งˆ์ดํŽ˜์ด์ง€ ) ๊ตฌํ˜„ย ๊ตฌํ˜„ ์ „ ๋กœ์ง ๊ตฌ์ƒํ•˜๊ธฐย ์ œ๋ชฉ ๋ถ€๋ถ„์€ ๋’ค๋กœ ๊ฐ€๊ธฐ ๋ฒ„ํŠผ์ด ์ž๋™์œผ๋กœ ์ƒ์„ฑ์ด ๋˜๋Š” ๋‚ด๋น„๊ฒŒ์ด์…˜ ๋ฐ”๋ฅผ ์ด์šฉํ•˜์—ฌ,ํ”„๋กœํ•„, ๋Œ€์—ฌ์ค‘, ์ด์ „ ๋Œ€์—ฌ ๋ชฉ๋ก ๋ถ€๋ถ„์€ ํ…Œ์ด๋ธ” ๋ทฐ์˜ ์„ธ์…˜์„ ๋‚˜๋ˆ„์–ด์„œ ๊ตฌํ˜„์„ ํ•ด์•ผ๊ฒ ๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ์–ด์š”~!ย ย ย ? View๋กœ ๊ตฌํ˜„ํ•ด๋„ ๋˜๋Š”๋ฐ ..
๐Ÿ„ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ๋งํฌ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โœ๐Ÿป ๋ฌธ์ œ ํ’€์ด Github ๋งํฌ -Swift-CodingTest/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/2/87946. ํ”ผ๋กœ๋„ at 2155d92b0146c5dcfbdbe857b92dd391a4c36f4b ยท BaeJihae/-Swift-CodingT Swift๋กœ ํ‘ผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. Contribute to BaeJihae/-Swift-CodingTest development by creating an account on GitHub. github.com ๋ฌธ์ œ ์„ค๋ช… XX๊ฒŒ..
๐Ÿ„ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ๋งํฌ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โœ๐Ÿป ๋ฌธ์ œ ํ’€์ด Github ๋งํฌ -Swift-CodingTest/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/2/42586. ๊ธฐ๋Šฅ๊ฐœ๋ฐœ at main ยท BaeJihae/-Swift-CodingTest Swift๋กœ ํ‘ผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. Contribute to BaeJihae/-Swift-CodingTest development by creating an account on GitHub. github.com ๋ฌธ์ œ ์„ค๋ช… ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ํŒ€์—์„œ๋Š” ๊ธฐ๋Šฅ ๊ฐœ์„  ์ž‘์—…์„ ์ˆ˜ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค. ๊ฐ ๊ธฐ๋Šฅ..
๋งˆ์ง€๋ง‰์œผ๋กœ ์•ฑ์˜ ์•„์ด์ฝ˜์„ ๋ณ€๊ฒฝํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค! ChatGPT์—๊ฒŒ ์•ฑ ์•„์ด์ฝ˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ๋ช‡ ๊ฐœ ์ถ”์ฒœ ๋ฐ›์•˜๋Š”๋ฐ, ์—ฌ๊ธฐ๊ฐ€ ์•„์ฃผ ํŽธํ•˜๋”๋ผ๊ตฌ์š”~! iOS ์•„์ด์ฝ˜ ๋งŒ๋“œ๋Š” ์‚ฌ์ดํŠธ IconKitchen ( ๋งํฌ ์ฒจ๋ถ€๊ฐ€ ์•ˆ๋ผ์š”..ใ…œ ) AppIcon ์„ค์ •ํ•˜๊ธฐ ๋จผ์ € iphone ์•„์ด์ฝ˜์„ ๋งŒ๋“ค์–ด์ฃผ์„ธ์š”! Assets์˜ AppIcon์„ ์šฐํด๋ฆญํ•œ ํ›„์— Show in Finder๋ฅผ ํด๋ฆญํ•ด์ฃผ์„ธ์š”! AppIcon.appiconset ํด๋”์— ๋“ค์–ด๊ฐ€์„œ ์ž์‹ ์ด ๋งŒ๋“  iosIcon ํด๋”์˜ ๋‚ด์šฉ๋ฌผ์„ ๋ณต์‚ฌํ•ด์„œ ( cmd + c ) ๋ถ™์—ฌ๋„ฃ์–ด์ฃผ๋ฉด ๋~! ( cmd + v ) ์™„์ „ ๊ฐ„๋‹จํ•ด์„œ ๋†€๋ž์–ด์š”!! ์ ์šฉ ํ™”๋ฉด ๊ท€์—ฌ์šด Wish ์•ฑ ์•„์ด์ฝ˜์ด ์ ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค~!
์˜ค๋Š˜์€ ์•„๋‹ˆ ์–ด์ œ๋Š” ๋ฉ”์ธ ํ™”๋ฉด์— ์žˆ๋Š” ์ด๋ฏธ์ง€๋ฅผ ์Šค์™€์ดํ”„ํ•˜์—ฌ ์ธ๋„ค์ผ ๋Œ€์‹ ์— ์—ฌ๋Ÿฌ ์ด๋ฏธ์ง€๋ฅผ ๋ณด์—ฌ์ฃผ์—ˆ์œผ๋ฉด ์ข‹๊ฒ ์–ด์„œ ๊ทธ ๋ถ€๋ถ„์„ ๊ตฌํ˜„ํ•ด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์ œ๊ฐ€ ์›ํ•˜๋Š” ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ScrollView์™€ UIPageControl์„ ์‚ฌ์šฉํ•˜๋”๋ผ๊ตฌ์š”! ์–ด์ œ ๊ตฌํ˜„ํ–ˆ์ง€๋งŒ, ์˜ค๋Š˜ ๋ธ”๋กœ๊ทธ๋ฅผ ์ ๋Š” ์ด์œ ๋Š” ์ƒ๊ฐ๋ณด๋‹ค UIPageControl์—์„œ ๋ณต์žกํ•œ ๋ถ€๋ถ„์ด ์žˆ์–ด์„œ ์ถ”๊ฐ€์ ์ธ ๊ณต๋ถ€๋ฅผ ํ•œ ํ›„์— ๋Œ์•„์™”์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ ์‹œ์ž‘ํ•ด๋ด…์‹œ๋‹ค!!๐Ÿ˜„ UIPageControl์—๋Œ€ํ•œ ์ž์„ธํ•œ ์„ค๋ช…์€ ์•„๋ž˜ ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”๐Ÿ’— https://jihae-qu.tistory.com/87 [ UIKit ] UIPageControl #1 UIPageControl UIPageControl์€ ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€๋‚˜ ์—ฌ๋Ÿฌ ์žฅ์˜ ์‚ฌ์ง„๋“ค์˜ ์œ„์น˜๋ฅผ ํ‘œ์‹œํ•˜๋Š” ์ผ๋ จ์˜ ์ ๋“ค์ž…๋‹ˆ๋‹ค. page..
UIScrollView์™€ UIPageControl์„ ์ด์šฉํ•œ ํŽ˜์ด์ง€ ์ „ํ™˜ UI์„ค์ • ViewController์— UIScrollView์™€ PageControl์„ ์˜ฌ๋ฆฐ ํ›„ ScrollView์˜ ๋ ˆ์ด์•„์›ƒ์„ Top, Bottom, Left, Right ๋ชจ๋‘ safeArea์™€ 0์œผ๋กœ ๋งž์ถฅ๋‹ˆ๋‹ค. ScrollView์™€ Page Control๋Š” ๋”ฐ๋กœ ์œ„์น˜ํ•˜๋„๋ก ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ViewController์™€ ์—ฐ๊ฒฐ @IBOutlet weak var scrollView: UIScrollView! @IBOutlet weak var pageControl: UIPageControl! Page ์„ค์ • ์šฐ์„  page๋ฅผ ์„ค์ •ํ•˜๊ธฐ ์œ„ํ•ด ๋ณ€๊ฒฝํ•  ํŽ˜์ด์ง€๊ฐ€ ๋“ค์–ด๊ฐˆ UIView ๋ฐฐ์—ด ์„ ์–ธํ•ด์ค๋‹ˆ๋‹ค. var pages: [UIView] = [] ๊ทธ๋‹ค์Œ..
UIPageControl UIPageControl์€ ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€๋‚˜ ์—ฌ๋Ÿฌ ์žฅ์˜ ์‚ฌ์ง„๋“ค์˜ ์œ„์น˜๋ฅผ ํ‘œ์‹œํ•˜๋Š” ์ผ๋ จ์˜ ์ ๋“ค์ž…๋‹ˆ๋‹ค. pages ๊ด€๋ฆฌ var currentPage: Int : PageControl์—์„œ ํ‘œ์‹œ๋˜๋Š” ํ˜„์žฌ ํŽ˜์ด์ง€ ( ํ˜„์žฌ ์œ„์น˜ ํ‘œ์‹œ ) ( 0์ด ํ˜„์žฌ ํŽ˜์ด์ง€ ) var numberOfPages: Int : ํŽ˜์ด์ง€ ์ˆ˜ ( ํ‘œ์‹œํ•  ์ ์˜ ๊ฐœ์ˆ˜) ( default : 0 ) var hidesForSinglePage: Bool : ํŽ˜์ด์ง€๊ฐ€ ํ•˜๋‚˜๋งŒ ์žˆ์„ ๋•Œ, PageControl์˜ ์ˆจ๊น€ ์—ฌ๋ถ€ ๊ฒฐ์ • ( true : ์ˆจ๊น€, false : ์•ˆ์ˆจ๊น€ ( default ) ) Page Indicator ์˜ ์ƒ‰์ƒ ์ง€์ • var pageIndicatorTintColor: UIColor? : ์„ ํƒ๋˜์ง€ ์•Š์€ pageIndi..
๐Ÿ„ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ๋งํฌ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โœ๐Ÿป ๋ฌธ์ œ ํ’€์ด Github ๋งํฌ -Swift-CodingTest/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/2/131127. ํ• ์ธ ํ–‰์‚ฌ at main ยท BaeJihae/-Swift-CodingTest Swift๋กœ ํ‘ผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. Contribute to BaeJihae/-Swift-CodingTest development by creating an account on GitHub. github.com ๋ฌธ์ œ ์„ค๋ช… XYZ ๋งˆํŠธ๋Š” ์ผ์ •ํ•œ ๊ธˆ์•ก์„ ์ง€๋ถˆํ•˜๋ฉด 10์ผ ๋™์•ˆ ํšŒ์› ์ž๊ฒฉ..
๐Ÿ„ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฌธ์ œ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”. programmers.co.kr โœ๐Ÿป ๋ฌธ์ œ ํ’€์ด Github ๋งํฌ -Swift-CodingTest/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/2/42578. ์˜์ƒ at main ยท BaeJihae/-Swift-CodingTest Swift๋กœ ํ‘ผ ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ๋ฌธ์ œ๋“ค์„ ์ •๋ฆฌํ•˜๊ณ  ๊ณต๋ถ€ํ•˜๋Š” ๊ณต๊ฐ„์ž…๋‹ˆ๋‹ค. Contribute to BaeJihae/-Swift-CodingTest development by creating an account on GitHub. github.com ๋ฌธ์ œ ์„ค๋ช… ์ฝ”๋‹ˆ๋Š” ๋งค์ผ ๋‹ค๋ฅธ ์˜ท์„ ์กฐํ•ฉํ•˜์—ฌ ์ž…๋Š”๊ฒƒ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ฝ”๋‹ˆ๊ฐ€ ..
์˜ค๋Š˜์€ ๋ฉ”์ธํ™”๋ฉด๊ณผ TableView์— Pull to refresh ( ๋‹น๊ฒจ์„œ ์ƒˆ๋กœ๊ณ ์นจ ) ๋ฅผ ์ ์šฉํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค. UIRefreshControl UIRefreshControl๋Š” Table View์™€ Collection View๊ฐ€ ์ƒ์†๋ฐ›๊ณ  ์žˆ๋Š” UIScrollView์— ์—ฐ๊ฒฐํ•˜๋Š” ํ‘œ์ค€ Control์ž…๋‹ˆ๋‹ค. Content๋ฅผ ์ƒˆ๋กœ๊ณ ์นจํ•  ์ˆ˜ ์žˆ๋Š” Control๋ฅผ ์ œ๊ณตํ•˜๋Š” object์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์Šคํฌ๋กค์ด ๊ฐ€๋Šฅํ•œ Content ์˜์—ญ์„ ์•„๋ž˜๋กœ ๋“œ๋ž˜๊ทธํ•˜๋ฉด refresh control์ด ํ‘œ์‹œ๋˜๊ณ , progress indicator๊ฐ€ ์• ๋‹ˆ๋ฉ”์ด์…˜ํ™” ๋˜์–ด ์•ฑ์— ์•Œ๋ ค์ค๋‹ˆ๋‹ค. ์ด ์•Œ๋ฆผ์„ ์‚ฌ์šฉํ•ด content๋ฅผ ์—…๋ฐ์ดํŠธํ•˜๊ฑฐ๋‚˜ refresh control์„ ๋ฌด์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Target-action ๋ฉ”์ปค๋‹ˆ์ฆ˜ UIRefreshC..
์˜ค๋Š˜์€ Scroll View์˜ ๋ ˆ์ด์•„์›ƒ์„ ์žก๋Š” ๊ฒƒ์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•ด๋ณด๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค! ScrollView ScrollView๋Š” ์Šคํฌ๋กค์ด ๊ฐ€๋Šฅํ•œ Content์˜์—ญ ๋‚ด์—์„œ ์ž์‹ ์˜ Content๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ํ”Œ๋žซํผ์— ์ ํ•ฉํ•œ Scroll gesture๋ฅผ ์ˆ˜ํ–‰ํ•  ๋•Œ, ScrollView๋Š” ๊ธฐ๋ณธ content์˜ ์–ด๋Š ๋ถ€๋ถ„์ด ๋ณด์ด๋Š”์ง€ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ScrollView๋Š” ์ˆ˜ํ‰, ์ˆ˜์ง ํ˜น์€ ๋‘ ๊ฐœ ๋‹ค ์Šคํฌ๋กคํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ, ์คŒ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค. TableView์™€ CollectionView๋Š” ScrollView๋ฅผ ์ƒ์†๋ฐ›๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ž๋™์œผ๋กœ ์Šคํฌ๋กค์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ScrollView ์ ์šฉ 1) ViewController์— ScrollView๋ฅผ ์˜ฌ๋ ค์„œ AutoLayout ์„ค์ •ํ•˜๊ธฐ Library ์ฐฝ์—..
EarthSea
EarthSea's Log๐ŸŒ