๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
728x90
๋ฐ˜์‘ํ˜•
[React Native] Navigation์œผ๋กœ ํ™”๋ฉด ์ด๋™ํ•˜๊ธฐ (Navigation Between Screens) ์•ˆ๋…•ํ•˜์„ธ์š” Foma ์ž…๋‹ˆ๋‹ค! ์˜ค๋Š˜์€ ๋ฆฌ์•กํŠธ ๋„ค์ดํ‹ฐ๋ธŒ์—์„œ ๋„ค๋น„๊ฒŒ์ด์…˜์„ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํฌ๋ฆฐ์„ ์ด๋™ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ์‹œ์ž‘ํ• ๊ฒŒ์š”~ ์–ธ์–ด๋Š” TypeScript, ํ™˜๊ฒฝ์€ Expo๋กœ ์ง„ํ–‰ ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค! Install Native npm install @react-navigation/native @react-navigation/native Native-stack npm install @react-navigation/native @react-navigation/native-stack Safe-area-context expo install react-native-screens react-native-safe-area-context Navigation Initial Setting App.tsx ์ดˆ๊ธฐ .. 2022. 6. 16.
[Angular] Custom Directive ๋งŒ๋“ค์–ด ์ ์šฉํ•˜๊ธฐ (Create & Adjust a Custom Directive) ์•ˆ๋…•ํ•˜์„ธ์š” Foma ์ž…๋‹ˆ๋‹ค! ์ €๋ฒˆ ๊ธ€์— Angular์— ์ด๋ฏธ ๊ตฌํ˜„๋œ Built-in ๋””๋ ‰ํ‹ฐ๋ธŒ์— ๋Œ€ํ•ด์„œ ์•Œ์•„ ๋ณด์•˜๋Š”๋ฐ์š”. ์ด๋ฒˆ ๊ธ€์€ ์ง์ ‘ ์ปค์Šคํ…€ํ•œ ๋””๋ ‰ํ‹ฐ๋ธŒ๋ฅผ ๋งŒ๋“ค๊ณ  ์ ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ์•„ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ์‹œ์ž‘ํ• ๊ฒŒ์š”~ Generate Directive ์•„๋ž˜์™€ ๊ฐ™์ด ๋””๋ ‰ํ‹ฐ๋ธŒ๋ฅผ ์ƒ์„ฑํ•ด ์ค๋‹ˆ๋‹ค. ์ €๋Š” mouse control์— ๋”ฐ๋ผ ์Šคํƒ€์ผ์ด ๋ฐ”๋€Œ๋Š” ๋””๋ ‰ํ‹ฐ๋ธŒ๋ฅผ ๋งŒ๋“ค๊ฑฐ๊ธฐ ๋–„๋ฌธ์— mouseControl์œผ๋กœ ์ด๋ฆ„ ์ง€์–ด์ฃผ๊ฒ ์Šต๋‹ˆ๋‹ค. ng g d ๋””๋ ‰ํ‹ฐ๋ธŒ์ด๋ฆ„ //or ng generate directive ๋””๋ ‰ํ‹ฐ๋ธŒ์ด๋ฆ„ directive.ts ์•„๋ž˜์™€ ๊ฐ™์ด Directive๊ฐ€ ์ƒ์„ฑ ๋ ๊ฑฐ์—์š”. @Directive์— selector๋กœ app + ๋””๋ ‰ํ‹ฐ๋ธŒ์ด๋ฆ„์œผ๋กœ ๋งŒ๋“ค์–ด์ง€๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. import { Directiv.. 2022. 6. 9.
[Angular] Directive๋ž€? (feat. Built-in Directive) ์•ˆ๋…•ํ•˜์„ธ์š” Foma ์ž…๋‹ˆ๋‹ค! ์˜ค๋Š˜์€ HTML ์—˜๋ฆฌ๋จผํŠธ์— ๋‹ค์–‘ํ•œ ๋™์ž‘์„ ์ถ”๊ฐ€ํ•˜๋Š” Directive์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ์‹œ์ž‘ํ• ๊ฒŒ์š”~ Directive๋ž€? ๋จผ์ € ์‚ฌ์ „์  ์˜๋ฏธ๋ฅผ ๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด '์ง€์‹œ' ๋ผ๋Š” ๋œป์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Angular ๊ณต์‹ ๋ฌธ์„œ์—” Directive๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๊ฐ„๋‹จํžˆ ๋งํ•˜๋ฉด Directive๋Š” ์—˜๋ฆฌ๋จผํŠธ๊ฐ€ ์–ด๋– ํ•œ ๋™์ž‘์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก '์ง€์‹œ' ํ•˜๋Š” ํด๋ž˜์Šค ์ž…๋‹ˆ๋‹ค. Directive ์ข…๋ฅ˜ Directive๋Š” 3๊ฐ€์ง€ ์ข…๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. 1. Components ์ปดํฌ๋„ŒํŠธ๋Š” ํ…œํ”Œ๋ฆฟ์ด ์กด์žฌํ•˜๋Š” Directive๋กœ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋˜๋Š” Directive ์ž…๋‹ˆ๋‹ค. (์ปดํฌ๋„ŒํŠธ๋Š” ๋‚˜์ค‘์— ๋”ฐ๋กœ ๊ธ€์„ ์ •๋ฆฌ ํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.) 2. Attrubute Directives .. 2022. 6. 2.
[Angular] Custom Pipe ๋งŒ๋“ค์–ด ์ ์šฉํ•˜๊ธฐ (with. ngStyle) ์•ˆ๋…•ํ•˜์„ธ์š” Foma ์ž…๋‹ˆ๋‹ค! ์ €๋ฒˆ ์‹œ๊ฐ„์—๋Š” Angular ์ž์ฒด์— ๋‚ด์žฅ๋˜์–ด ์žˆ๋Š” Built-in Pipe์— ๋Œ€ํ•ด์„œ ์•Œ์•„ ๋ณด์•˜๋Š”๋ฐ์š”. (์•„์ง ์•ˆ๋ณด์‹  ๋ถ„๋“ค์€ ์—ฌ๊ธฐ ์—์„œ ๋ด์ฃผ์„ธ์š”!) ์ด๋ฒˆ์—๋Š” ์ง์ ‘ Custom Pipe๋ฅผ ๋งŒ๋“ค์–ด์„œ ์ ์šฉํ•ด ๋ณด๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์ •๋ฆฌํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. Pipe ์ƒ์„ฑ ์•„๋ž˜ ๋ช…๋ น์–ด๋กœ Pipe๋ฅผ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค. ng g p ํŒŒ์ดํ”„์ด๋ฆ„ //๋งŒ์•ฝ ํ…Œ์ŠคํŠธ ํŒŒ์ผ ์—†์ด ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด ng g p --skip-tests=true ํŒŒ์ดํ”„์ด๋ฆ„ ์ €๋Š” ํ‰๊ท  ๊ฐ’์— ๋”ฐ๋ผ์„œ ๋‹ค๋ฅธ ์ƒ‰์ด ๋ณด์ด๋„๋ก ํ•˜๋Š” AverageColorPipe๋ฅผ ๋งŒ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์ด pipe.ts ํŒŒ์ผ์ด ๋งŒ๋“ค์–ด ์งˆ๊ฑฐ์—์š”. @Pipe({})๋ฅผ ํ†ตํ•ด์„œ '|' ๊ธฐํ˜ธ ๋’ค์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” pipe ์ด๋ฆ„์„ ์ •ํ•ด ์ค๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณค transform ๋ฉ”.. 2022. 6. 2.
[iOS/UI] UIBezierPath ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•˜๊ธฐ (feat. EasierPath) ์•ˆ๋…•ํ•˜์„ธ์š” Foma ๐Ÿ’ป ์ž…๋‹ˆ๋‹ค! ์˜ค๋Š˜์€ ์ง์ ‘ ์›ํ•˜๋Š” ๋ชจ์–‘์„ ๊ทธ๋ฆด ์ˆ˜ ์žˆ๋Š” UIBezierPath๋ฅผ ๋”์šฑ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” EasierPath์— ๋Œ€ํ•ด์„œ ์•Œ์•„ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ์‹œ์ž‘ํ• ๊ฒŒ์š”~! UIBezierPath ํ‰์†Œ์— ์›ํ•˜๋Š” ๋ชจ์–‘์„ ์ง์ ‘ ์ปค์Šคํ…€ํ•ด์„œ ๊ทธ๋ฆด ๋•Œ UIBezierPath๋ฅผ ์ž์ฃผ ์‚ฌ์šฉ ํ–ˆ์—ˆ๋Š”๋ฐ์š”. ๋จผ์ € UIBezierPath๋ฅผ ์ด์šฉํ•ด์„œ ํ•ญ์•„๋ฆฌ ๋ชจ์–‘์„ ๊ทธ๋ฆฌ๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. 1. UIBezierPath ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒ์„ฑํ•ด ๊ทธ๋ ค์ค€๋‹ค. let bezierPath:UIBezierPath = UIBezierPath() bezierPath.move(to: CGPoint(x: 100, y: 100)) bezierPath.addLine(to: CGPoint(x: 200, y: 100)) bezier.. 2022. 5. 30.
[Angular] Pipe๋ž€? (feat. Built-in Pipe) Pipe๋ž€? Angular ๊ณต์‹ ๋ฌธ์„œ์—๋Š” ์•„๋ž˜์™€ ๊ฐ™์ด ์†Œ๊ฐœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ง๋…ํ•˜๋ฉด "ํด๋ž˜์Šค๋ฅผ ํŒŒ์ดํ”„๋กœ ํ‘œ์‹œํ•˜๊ณ  ๊ตฌ์„ฑ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ" ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ด๋ ‡๊ฒŒ ๋งํ•˜๋ฉด ๋ฌด์Šจ ๋ง์ธ์ง€ ์ดํ•ด๊ฐ€ ์•ˆ๋˜์ฃ ? ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ฒŒ ๋ง์”€ ๋“œ๋ฆฌ๋ฉด HTML์—์„œ ๋ฌธ์ž๋‚˜ ์ˆซ์ž๋ฅผ ์›ํ•˜๋Š” ๊ฒƒ์— ๋งž๊ฒŒ ๋ณ€ํ˜•ํ•  ๋•Œ ์“ฐ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” Angular์—์„œ built-in์œผ๋กœ ์ œ๊ณต๋˜๋Š” Pipe API List ์ธ๋ฐ์š”. ํ•˜๋‚˜์”ฉ ์‚ดํŽด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. 1. ๋ฌธ์ž ํŒŒ์ดํ”„ ๋จผ์ € ๊ฐ€์žฅ ์‰ฌ์šด ๊ฒƒ๋ถ€ํ„ฐ ๋ฌธ์ž๋ฅผ ๋ณ€ํ˜•์‹œํ‚ค๋Š” ํŒŒ์ดํ”„์ž…๋‹ˆ๋‹ค. UpperCasePipe,LowerCasePipe, TitleCasePipe ๋“ฑ์ด ์žˆ๋Š”๋ฐ ๋ง ๊ทธ๋Œ€๋กœ ๋ฌธ์ž๋ฅผ ๋ณ€ํ˜• ์‹œ์ผœ์ฃผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‚˜ํƒ€๋‚ด๊ณ  ์‹ถ์€ ๋ฌธ์ž๋ฅผ '|' ๊ฒƒ๊ณผ ํ•จ๊ป˜ ํŒŒ์ดํ”„ ์ด๋ฆ„์„ ์ ์–ด์ฃผ์‹œ๋ฉด .. 2022. 5. 24.
[Angular] ๋ชจ๋ฐ”์ผ ๋ธŒ๋ผ์šฐ์ € ํ™”๋ฉด ๊ณ ์ •ํ•˜๊ธฐ (Lock Screen orientation in mobile browser) 1์ฐจ ์‹œ๋„ ํ™”๋ฉด๋งˆ๋‹ค ์„ธ๋กœ๋กœ ๊ณ ์ • ๋˜๋Š” ๊ฐ€๋กœ๋กœ ๊ณ ์ •์ด ๋˜์•ผ ํ•œ๋‹ค๋Š” ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ฐ›๊ณ  iOS์—์„  ๊ฑฐ์˜ ์ฝ”๋“œ ํ•œ ์ค„๋งŒ ์ถ”๊ฐ€ํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ธˆ๋ฐฉ ๋๋‚ ๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค. ๋ฐ”๋กœ ๊ตฌ๊ธ€๋ง ํ•˜๋‹ˆ๊น MDN Web APIs ๋ฌธ์„œ์— ScreenOrientation.lock()์ด๋ผ๋Š” ๋ฉ”์„œ๋“œ๊ฐ€ ๊ฒ€์ƒ‰๋˜์—ˆ๋‹ค. https://developer.mozilla.org/en-US/docs/Web/API/ScreenOrientation/lock ScreenOrientation.lock() - Web APIs | MDN The lock() property of the ScreenOrientation interface locks the orientation of the containing document to the specified orient.. 2022. 5. 5.
[iOS/UI] UIBezierPath ์•ˆ์„ Gradient ์ปฌ๋Ÿฌ๋กœ ์ฑ„์šฐ๊ธฐ (Fill a UIBezierPath with Gradient Color) ์•ˆ๋…•ํ•˜์„ธ์š” Foma๐Ÿ’ป ์ž…๋‹ˆ๋‹ค! ์˜ค๋Š˜์€ UIBezierPath ์•ˆ์„ Gradient ์ปฌ๋Ÿฌ๋กœ ์ฑ„์šฐ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ์‹œ์ž‘ํ• ๊ฒŒ์š”~ TestView ๋ทฐ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ์ดˆ๊ธฐํ™” ํ•ด์ค๋‹ˆ๋‹ค. class TestView: UIView { override init(frame: CGRect) { super.init(frame: frame) } required init?(coder: NSCoder) { fatalError("init(coder:) has not been implemented") } override func draw(_ rect: CGRect) { } } UIBezierPath ์ด์ œ UIBezierPath๋ฅผ draw ๋ฉ”์„œ๋“œ ์•ˆ์— ๊ทธ๋ ค๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ํƒ€์›ํ˜• ๊ฒฝ๋กœ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ์ƒ์„ฑํ•ด ์ค๋‹ˆ๋‹ค.. 2022. 5. 2.
[Network] Port๋ž€? (feat. Protocol) (What is a Port?) Port๋ž€? Port๋Š” ์‚ฌ์ „์ ์ธ ์˜๋ฏธ๋กœ "ํ•ญ๊ตฌ"๋ผ๋Š” ๋œป์ด๋‹ค. ํ•ญ๊ตฌ๋Š” ๋ฐฐ๊ฐ€ ์ •์ฐฉํ•˜๊ณ  ์ถœ๋ฐœํ•˜๋Š” ๊ณต๊ฐ„์„ ์˜๋ฏธํ•œ๋‹ค. ์ปดํ“จํ„ฐ ๊ณผํ•™์—์„œ๋„ Port๋Š” ๋น„์Šทํ•œ ์˜๋ฏธ๋กœ ์‚ฌ์šฉ๋˜๋Š”๋ฐ ํŠน์ • ์„œ๋ฒ„์— ์ ‘์†ํ•˜๊ธฐ ์œ„ํ•œ ๊ณต๊ฐ„์œผ๋กœ ์‚ฌ์šฉ๋˜๋ฉฐ ํ†ต์‹ ํ•˜๊ธฐ ์œ„ํ•œ ์ข…๋‹จ์  ์—ญํ• ์„ ํ•œ๋‹ค. ํ•˜๋“œ์›จ์–ด์ ์ธ ์˜๋ฏธ๋กœ๋Š” ํ†ต์‹  ์žฅ๋น„๋ฅผ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์—ฐ๊ฒฐ๋‹จ์ด๊ณ , ์†Œํ”„ํŠธ์›จ์–ด์ ์ธ ์˜๋ฏธ๋กœ๋Š” ๋„คํŠธ์›Œํฌ ์„œ๋น„์Šค๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋…ผ๋ฆฌ์  ๋‹จ์œ„๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์กฐ๊ธˆ ์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด ์‹ค์ œ๋กœ ๋ฐฐ๊ฐ€ ๋ฌผ๊ฑด์„ ์‹ค์–ด๋‚˜๋ฅด๋Š” ์žฅ์†Œ๋ฅผ ํ•ญ๊ตฌ๊ฐ€ ์•Œ๋ ค์ฃผ๋Š” ๊ฒƒ๊ณผ ๊ฐ™์ด ๋ฌผ๊ฑด ๋Œ€์‹  ๋ฐ์ดํ„ฐ๋ฅผ ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ์ฃผ๊ณ  ๋ฐ›๋Š” ๊ณต๊ฐ„๊ณผ๋„ ๊ฐ™๋‹ค. Port๊ฐ€ ํ•„์š”ํ•œ ์ด์œ  ๊ทธ๋Ÿฐ๋ฐ ๋ฌธ๋“ "IP์™€ URL ์ฃผ์†Œ๋งŒ์œผ๋กœ ์ถฉ๋ถ„ํžˆ ์–ด๋–ค ๊ณณ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›์„์ง€ ์•Œ๋ ค์ค„ ์ˆ˜ ์žˆ์ง€ ์•Š์„๊นŒ? ๊ตณ์ด Port๋ฒˆํ˜ธ๊นŒ์ง€ ์ถ”๊ฐ€์ ์œผ๋กœ ๊ฐ€์ ธ์•ผํ•  ์ด์œ ๋Š” ๋ฌด์—‡์ผ๊นŒ?".. 2022. 4. 29.
[Network] CORS๋ž€? (feat. ๋ณด์•ˆ,HTTP) (What is a CORS?) CORS๋ž€? CORS๋Š” Cross-Origin Resource Sharing์˜ ์•ฝ์ž๋กœ ์ง์—ญํ•˜๋ฉด "๊ต์ฐจ ์ถœ์ฒ˜ ๋ฆฌ์†Œ์Šค ๊ณต์œ " ์ด๋‹ค. ์ข€ ๋” ์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด ๋™์ผํ•œ ์ถœ์ฒ˜๊ฐ€ ์•„๋‹Œ ๋‹ค๋ฅธ ์ถœ์ฒ˜์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋Š” ๊ฒƒ์„ ํ—ˆ์šฉํ•˜๋Š” ์ •์ฑ…์ด๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์ด๋Ÿฌํ•œ ์ •์ฑ…์ด ์™œ ํ•„์š”ํ•œ ๊ฒƒ์ผ๊นŒ? ๊ทธ๊ฑด ๋จผ์ € "๋™์ผ ์ถœ์ฒ˜ ์ •์ฑ…"์— ๋Œ€ํ•ด์„œ ์•Œ์•„์•ผ ํ•œ๋‹ค. Same Origin Policy(๋™์ผ ์ถœ์ฒ˜ ์ •์ฑ…) ๋™์ผ ์ถœ์ฒ˜ ์ •์ฑ…์€ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ๋™์ผํ•œ ์ถœ์ฒ˜์—์„œ๋งŒ ๋ฆฌ์†Œ์Šค๋ฅผ ์ฃผ๊ณ  ๋ฐ›๋„๋ก ํ•˜๋Š” ์ •์ฑ…์ด๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด "์ถœ์ฒ˜"๋Š” ๋„๋Œ€์ฒด ๋ฌด์—‡์ผ๊นŒ? ์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด URL ์ฃผ์†Œ์ด๋‹ค. (๋จผ์ € URL์˜ ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ๋ชจ๋ฅด๋Š” ๋ถ„๋“ค์„ ์—ฌ๊ธฐ ์—์„œ ๋จผ์ € ์ฝ๊ณ  ์˜ค๊ธธ ๋ฐ”๋ž€๋‹ค.) ํ•˜์ง€๋งŒ "๋™์ผํ•œ ์ถœ์ฒ˜"๋Š” ์ •ํ™•ํžˆ ๋˜‘๊ฐ™์€ URL์„ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์„ ์•„๋‹ˆ๋‹ค. ๋™์ผํ•œ.. 2022. 4. 27.
[Network] URL ๊ตฌ์„ฑ ์š”์†Œ (The components of a URL) URL URL์€ Uniform Resource Locator์˜ ์•ฝ์ž๋กœ ์›น ์ฃผ์†Œ๋ฅผ ๋œปํ•˜๋ฉฐ ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ๋ฆฌ์†Œ์Šค๊ฐ€ ์–ด๋””์žˆ๋Š”์ง€ ์•Œ๋ ค์ฃผ๊ธฐ ์œ„ํ•œ ๊ทœ์น™์ด๋‹ค. URL์˜ ๊ตฌ์„ฑ ์š”์†Œ ์•„๋ž˜๋Š” ๋„ค์ด๋ฒ„ ์›นํˆฐ์—์„œ ์‹ ์˜ ํƒ‘ ํŽ˜์ด์ง€ URL์ด๋‹ค. https://comic.naver.com/webtoon/list?titleId=183559&weekday=mon ์‹ ์˜ ํƒ‘ ์ž์‹ ์˜ ๋ชจ๋“  ๊ฒƒ์ด์—ˆ๋˜ ์†Œ๋…€๋ฅผ ์ซ“์•„ ํƒ‘์— ๋“ค์–ด์˜จ ์†Œ๋…„๊ทธ๋ฆฌ๊ณ  ๊ทธ๋Ÿฐ ์†Œ๋…„์„ ์‹œํ—˜ํ•˜๋Š” ํƒ‘ comic.naver.com ํ•ด๋‹น URL์€ https + comic.naver.com + (:443) + /webtoon/list + ?titleId=183559&weekday=mon ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค. 1. Protocol(ํ”„๋กœํ† ์ฝœ) ์œ„ URL์—์„œ "https"๋ฅผ ๋œปํ•˜๋ฉฐ ์–ด๋–ค ํ”„๋กœํ† .. 2022. 4. 27.
[Network] ์„ธ์…˜(Session)์ด๋ž€? (What is a Session?) Session์ด๋ž€? Session์€ ์˜๊ตฌ์ ์ด๊ณ  ์ƒํ˜ธ์ž‘์šฉ์ ์ธ ์ •๋ณด ๊ตํ™˜์„ ์ „์ œํ•˜๋Š” ๋‘˜ ์ด์ƒ์˜ ํ†ต์‹  ์žฅ์น˜๋‚˜ ์ปดํ“จํ„ฐ์™€ ์‚ฌ์šฉ์ž ๊ฐ„์˜ ๋Œ€ํ™”๋‚˜ ์†ก์ˆ˜์‹  ์—ฐ๊ฒฐ์ƒํƒœ๋ฅผ ์˜๋ฏธํ•˜๋Š” ๋ณด์•ˆ์ ์ธ ๋‹ค์ด์–ผ๋กœ๊ทธ(dialogue) ๋ฐ ์‹œ๊ฐ„๋Œ€๋ฅผ ๊ฐ€๋ฆฌํ‚จ๋‹ค. - ์œ„ํ‚ค ๋ฐฑ๊ณผ - ์ฆ‰, ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์˜ ์—ฐ๊ฒฐ ์ƒํƒœ๋ฅผ ์˜๋ฏธํ•˜๋Š” ๊ฒƒ์ด๋‹ค. ์ข€ ๋” ๊ตฌ์ฒด์ ์œผ๋กœ ์„ค๋ช…ํ•˜๋ฉด ํด๋ผ์ด์–ธํŠธ๊ฐ€ ๋ธŒ๋ผ์šฐ์ €์— ์ ‘์†ํ•˜์—ฌ ์„œ๋ฒ„์™€ ์ ‘์†์ด ์ข…๋ฃŒํ•˜๊ธฐ ์ „์˜ ์ƒํƒœ๋ฅผ ์˜๋ฏธํ•œ๋‹ค. ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•˜๋ฉด ์‚ฌ์šฉ์ž๊ฐ€ ์›น์‚ฌ์ดํŠธ์— ์ ‘์†ํ•ด ํ•ด๋‹น ์ฐฝ์„ ๋‹ซ๊ธฐ ์ „๊นŒ์ง€์˜ ์ƒํƒœ๋ผ๊ณ  ๋ณด๋ฉด ๋œ๋‹ค. ์„ธ์…˜ ๊ณผ์ • 1. ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์›น์‚ฌ์ดํŠธ์— ์ ‘์†ํ•ด ์„œ๋ฒ„์— ์š”์ฒญํ•œ๋‹ค. 2. ์„œ๋ฒ„๋Š” ์ ‘์†ํ•œ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์„ธ์…˜ ID๋ฅผ ๋ถ€์—ฌํ•ด์„œ ์‘๋‹ตํ•œ๋‹ค. 3. ํด๋ผ์ด์–ธํŠธ๋Š” ํ•ด๋‹น ์„ธ์…˜ ID๋ฅผ ํ—ค๋” ์ฟ ํ‚ค์— ๋„ฃ์–ด ๋ฐ์ดํ„ฐ๋ฅผ ์š”์ฒญํ•œ๋‹ค. 4. ์„œ๋ฒ„๋Š” ์„ธ์…˜ .. 2022. 4. 26.
728x90
๋ฐ˜์‘ํ˜•