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

์ „์ฒด ๊ธ€166

[HARDWARE 016] ์Šˆํผ์ปดํ“จํ„ฐ๋ถ€ํ„ฐ ์‚ฌ๋ฌผ์ธํ„ฐ๋„ท๊นŒ์ง€ ์Šˆํผ์ปดํ“จํ„ฐ (supercomputer) ๊ณผํ•™๊ธฐ์ˆ  ์—ฐ์‚ฐ์„ ๋น„๋กฏํ•œ ๋‹ค์–‘ํ•œ ๋ถ„์•ผ์— ์‚ฌ์šฉ๋˜๋Š” ๊ณ ์† ์ปดํ“จํ„ฐ๋กœ, ๋ณดํ†ต ๋งŽ์€ ์ˆ˜์˜ ํ”„๋กœ์„ธ์„œ์™€ ๋Œ€๋Ÿ‰์˜ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์‚ฌ์šฉ๋˜๋Š” ํ”„๋กœ์„ธ์„œ ์ž์ฒด๋„ ํŠน์ • ์ข…๋ฅ˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ›จ์”ฌ ๋นจ๋ฆฌ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ช…๋ น์–ด๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. ์š”์ฆ˜์˜ ์Šˆํผ์ปดํ“จํ„ฐ๋Š” ์ „์šฉ ํ•˜๋“œ์›จ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋Œ€์‹ , ์†๋„๋Š” ๋นจ๋ผ๋„ ๊ธฐ๋ณธ์ ์œผ๋กœ๋Š” ํ‰๋ฒ”ํ•œ ํ”„๋กœ์„ธ์„œ๋กœ ๊ตฌ์„ฑ๋œ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„๋œ๋‹ค. ์Šˆํผ์ปดํ“จํ„ฐ์˜ ์†๋„๋Š” ํ”Œ๋กญ์Šค(flops, ์ดˆ๋‹น ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋ถ€๋™ ์†Œ์ˆ˜์  ์—ฐ์‚ฐ ํšŸ์ˆ˜)๋กœ ์ธก์ •๋œ๋‹ค. GPU (Graphics Processing Unit) ๋ฒ”์šฉ CPU๋ณด๋‹ค ๊ทธ๋ž˜ํ”ฝ ๊ด€๋ จ ๊ณ„์‚ฐ์„ ํ›จ์”ฌ ๋น ๋ฅด๊ฒŒ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ทธ๋ž˜ํ”ฝ ์ „์šฉ ํ”„๋กœ์„ธ์„œ์ด๋‹ค. ์ผ๋ฐ˜ ํ”„๋กœ์„ธ์„œ๊ฐ€ ํŠน์ •ํ•œ ์ข…๋ฅ˜์˜ ์ž‘์—…์„ ๋น ๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค€๋‹ค. ๊ฐ„๋‹จํ•œ ์‚ฐ์ˆ  ์—ฐ์‚ฐ์„ ๋ณ‘.. 2022. 8. 18.
[HARDWARE 015] ์บ์‹œ๊ฐ€ ๋ญ”๊ฐ€์š”? ํ”„๋กœ์„ธ์„œ์—์„œ ์บ์‹œ๋Š” ์šฉ๋Ÿ‰์ด ์ž‘๊ณ  ์†๋„๊ฐ€ ๋น ๋ฅธ ๋ฉ”๋ชจ๋ฆฌ๋กœ, ์šฉ๋Ÿ‰์ด ๋” ํฌ์ง€๋งŒ ํ›จ์”ฌ ๋А๋ฆฐ ์ฃผ ๊ธฐ์–ต ์žฅ์น˜์— ๋งค๋ฒˆ ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์„ ํ”ผํ•˜๊ณ ์ž ์ตœ๊ทผ์— ์‚ฌ์šฉ๋œ ์ •๋ณด๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค. ์ผ๋ฐ˜์ ์ธ ํ”„๋กœ์„ธ์„œ์—๋Š” ์บ์‹œ๊ฐ€ 2~3๊ฐœ ์žˆ๋Š”๋ฐ, ํ”ํžˆ L1, L2, L3 ๋ ˆ๋ฒจ์ด๋ผ๊ณ  ๋ถ€๋ฅด๊ณ  ๋’ค๋กœ ๊ฐˆ์ˆ˜๋ก ์šฉ๋Ÿ‰์€ ํ‚‚๋งŒ ์†๋„๋Š” ๋” ๋А๋ฆฌ๋‹ค. ์บ์‹ฑ์ด ํšจ๊ณผ์ ์ธ ์ด์œ ๋Š” ์ตœ๊ทผ์— ์‚ฌ์šฉ๋œ ์ •๋ณด๊ฐ€ ๊ณง ๋‹ค์‹œ ์ด์šฉ๋  ๊ฐ€๋Šฅ์„ฑ์ด ํฌ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ์บ์‹œ์— ์ •๋ณด๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค๋Š” ๊ฒƒ = ๋ฉ”๋ชจ๋ฆฌ ์ž‘์—…์„ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋ฐ ์‹œ๊ฐ„์„ ๋œ ์“ด๋‹ค๋Š” ๊ฒƒ ์บ์‹ฑ์€ ์„ฑ๋Šฅ์„ ํฌ๊ฒŒ ๋†’์ด๋Š” ๊ฒฝ์šฐ๋ฅผ ์ œ์™ธํ•˜๋ฉด ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ฑฐ์˜ ๋“œ๋Ÿฌ๋‚˜์ง€ ์•Š๋Š”๋‹ค. ํ•˜์ง€๋งŒ ์บ์‹ฑ์€ ์šฐ๋ฆฌ๊ฐ€ ๋ญ”๊ฐ€๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๊ณ  ๊ทธ๊ฒƒ์„ ๊ณง ๋‹ค์‹œ ์“ธ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๊ฑฐ๋‚˜ ๊ทผ์ฒ˜์— ์žˆ๋Š” ๋ญ”๊ฐ€๋ฅผ ์‚ฌ์šฉํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์„ ๋•Œ ์–ธ์ œ๋“ ์ง€ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ›จ์”ฌ ๋”.. 2022. 8. 15.
๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ OOP ์œ ํŠœ๋ธŒ๋ฅผ ๋ณด๋‹ค ๋ณด๋ฉด ๋งŽ์€ ์ฑ„๋„์—์„œ ๊ณตํ†ต์ ์œผ๋กœ ๋ณด์ด๋Š” ํ‚ค์›Œ๋“œ๊ฐ€ ์žˆ๋‹ค. '๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ OOP(Object Oriented Programming)' ๋‚˜์ค‘์— ๋ด์•ผ์ง€ ๋‚˜์ค‘์— ๋ด์•ผ์ง€ ํ•˜๋‹ค๊ฐ€ ์˜ค๋Š˜์—์„œ์•ผ ๋ณด๊ณ  ์ •๋ฆฌํ•ด๋ณธ๋‹ค. ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์€ ์ฝ”๋“œ๋ฅผ ์งœ๋Š” ์ผ์ข…์˜ ๋ฐฉ๋ฒ•๋ก ์ธ๋“ฏ ํ•˜๋‹ค. encapsulation ์บก์Аํ™” inheritance ์ƒ์† abstraction ์ถ”์ƒํ™” polymorphism ๋‹คํ˜•์„ฑ ์ด๋ ‡๊ฒŒ 4๊ฐ€์ง€์˜ ์ด๋ก ์ด ์กด์žฌํ•œ๋‹ค. encapsulation ๋ฐ์ดํ„ฐ์™€ class ์•ˆ์— ์žˆ๋Š” ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ์ด์šฉํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์ž˜ ์ •๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•๋ก  ๋ฐ์ดํ„ฐ์™€ ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•˜๋Š” ํ•จ์ˆ˜๋ฅผ ์บก์А(class) ํ˜น์€ ์ปจํ…Œ์ด๋„ˆ ์•ˆ์— ๋‘๋Š” ๊ฒƒ ์บก์А์„ ์ด์šฉํ•˜์—ฌ ํ‘œ์‹œํ•  ํด๋ž˜์Šค์˜ ์†์„ฑ๊ณผ ์ˆจ๊ธธ ์†์„ฑ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Œ ์–ด๋–ป๊ฒŒ ํด๋ž˜์Šค ์ •๋ณด์— ์ ‘๊ทผ ํ˜น.. 2022. 8. 4.
[JS] ๊ฐ์ฒด object ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์—์„œ ๊ฐ์ฒด๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์˜๋ฏธ๋กœ ํ•ด์„ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋Š” ์›น ์‚ฌ์ดํŠธ๋‚˜ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ”„๋กœ๊ทธ๋ž˜๋ฐํ•˜๋Š” ์–ธ์–ด์ด๊ธฐ ๋•Œ๋ฌธ์— ์›น ๋ธŒ๋ผ์šฐ์ €๋‚˜ ์›น ๋ฌธ์„œ์™€ ๊ด€๋ จ๋œ ๊ฒƒ๋“ค์„ ๊ฐ์ฒด๋กœ ์ธ์‹ํ•œ๋‹ค. ๋‚ด์žฅ ๊ฐ์ฒด Built-in Object ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ํ•  ๋•Œ ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ์š”์†Œ๊ฐ€ ๋ฏธ๋ฆฌ ๊ฐ์ฒด๋กœ ์ •์˜๋˜์–ด ์žˆ๋‹ค. ex) Number, Boolean, Array, Math ๋“ฑ ๋ฌธ์„œ ๊ฐ์ฒด ๋ชจ๋ธ DOM ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉํ•ด ์›น ๋ฌธ์„œ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ์‹ ์›น ๋ฌธ์„œ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์›น ๋ฌธ์„œ ์•ˆ์— ํฌํ•จ๋œ ์ด๋ฏธ์ง€·๋งํฌ·ํ…์ŠคํŠธ ํ•„๋“œ ๋“ฑ๋„ ๋ชจ๋‘ ๊ฐ๊ฐ ๋ณ„๋„์˜ ๊ฐ์ฒด๋กœ ๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด ๋†“์Œ ๋ธŒ๋ผ์šฐ์ € ๊ฐ์ฒด ๋ชจ๋ธ BOM ์›น ๋ธŒ๋ผ์šฐ์ €์˜ ์ฃผ์†Œ ํ‘œ์‹œ์ค„์ด๋‚˜ ์ฐฝ ํฌ๊ธฐ ๋“ฑ ์›น ๋ธŒ๋ผ์šฐ์ € ์ •๋ณด๋ฅผ ๊ฐ์ฒด๋กœ ๋‹ค๋ฃจ๋Š” ๊ฒƒ ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ์ฒด ์‚ฌ์šฉ์ž๊ฐ€ ํ•„์š”ํ•  ๋•Œ๋งˆ๋‹ค ์ž์‹ ์˜ ๊ฐ์ฒด๋ฅผ ์ •์˜ํ•ด.. 2022. 8. 4.
[JS] event handler ์‚ฌ์šฉ๋ฒ• ๊ฐ‘์ž๊ธฐ event handler ์‚ฌ์šฉ๋ฒ•์„ ์ ๋Š” ์ด์œ ๋Š”... ๋‚ด๊ฐ€ ๋งจ๋‚  ํ—ท๊ฐˆ๋ ค์„œ ์“ธ ๋•Œ๋งˆ๋‹ค ์ฐพ์•„๋ณด๊ธฐ ๋•Œ๋ฌธ... ์ด๋ฒคํŠธ(event)๋ž€ ๋ฌด์—‡์ธ๊ฐ€? ์›น ๋ธŒ๋ผ์šฐ์ €๋‚˜ ์‚ฌ์šฉ์ž๊ฐ€ ํ–‰ํ•˜๋Š” ์–ด๋–ค ๋™์ž‘์ด๋‹ค. ํ•˜์ง€๋งŒ ๋ธŒ๋ผ์šฐ์ € ์•ˆ์—์„œ ์ด๋ฃจ์–ด์ง€๋Š” ๋ชจ๋“  ๋™์ž‘์ด ๋ชจ๋‘ ์ด๋ฒคํŠธ๊ฐ€ ๋˜์ง€๋Š” ์•Š๋Š”๋‹ค. ์›น ๋ฌธ์„œ ์˜์—ญ ์•ˆ์—์„œ ์ด๋ฃจ์–ด์ง€๋Š” ๋™์ž‘๋งŒ์„ ๋งํ•œ๋‹ค. ์†์„ฑ ์„ค๋ช… click ๋งˆ์šฐ์Šค๋กœ ๋ˆŒ๋ €์„ ๋•Œ dblclick ๋งˆ์šฐ์Šค๋กœ ๋‘ ๋ฒˆ ๋ˆŒ๋ €์„ ๋•Œ mousedown ๋งˆ์šฐ์Šค ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋Š” ๋™์•ˆ mousemove ๋งˆ์šฐ์Šค ํฌ์ธํ„ฐ๋ฅผ ์›€์ง์ด๋Š” ๋™์•ˆ mouseover ๋งˆ์šฐ์Šค๋ฅผ ์œ„๋กœ ์˜ฌ๋ฆด ๋•Œ mouseout ๋งˆ์šฐ์Šค๊ฐ€ ๋ฐ”๊นฅ์œผ๋กœ ๋‚˜๊ฐˆ ๋•Œ mouseup ๋งˆ์šฐ์Šค ๋ฒ„ํŠผ์—์„œ ์†์„ ๋—„ ๋•Œ ์†์„ฑ ์„ค๋ช… keypress ํ‚ค๋ฅผ ๋ˆŒ๋ €์„ ๋•Œ keydown ํ‚ค๋ฅผ ๋ˆ„๋ฅด๋Š” ๋™์•ˆ keyup ํ‚ค์—์„œ .. 2022. 8. 4.
[๊ตฌํ˜„] ๋ฌธ์ž์—ด ์žฌ์ •๋ ฌ (ํŒŒ์ด์ฌ) s = input() #์•ŒํŒŒ๋ฒณ ๋ชจ์„ ๊ณณ alphabet = "" #์ˆซ์ž ๋”ํ•ด์„œ ๋ชจ์„ ๊ณณ number = 0 for i in range(len(s)): #์•ŒํŒŒ๋ฒณ ๋ชจ์œผ๊ธฐ if s[i].isalpha(): alphabet += s[i] #์ˆซ์ž ๋”ํ•ด์„œ ๋ชจ์œผ๊ธฐ else: number += int(s[i]) #์•ŒํŒŒ๋ฒณ ์ •๋ ฌ alphabet = list(alphabet) alphabet.sort() alphabet_new = "" for j in range(len(alphabet)): alphabet_new += alphabet[j] #์•ŒํŒŒ๋ฒณ์ด๋ž‘ ์ˆซ์ž ๋ชจ์•„๋†“์€ ๊ฒƒ ๋”ํ•˜๊ธฐ result = alphabet_new + str(number) print(result) 2022. 8. 4.
[๊ตฌํ˜„] ๋Ÿญํ‚ค ์ŠคํŠธ๋ ˆ์ดํŠธ (ํŒŒ์ด์ฌ) n = input() #์ ์ˆ˜ ์ ˆ๋ฐ˜ ๋‚˜๋ˆ„๊ธฐ n_len = len(n) mid = int(n_len / 2) left = n[0:mid] right = n[mid:n_len] print(left, right) #์™ผ์ชฝ ๋ถ€๋ถ„ ํ•ฉ left_sum = 0 for i in range(mid): left_sum += int(left[i]) #์˜ค๋ฅธ์ชฝ ๋ถ€๋ถ„ ํ•ฉ right_sum = 0 for i in range(mid): right_sum += int(right[i]) #์™ผ์ชฝ ํ•ฉ = ์˜ค๋ฅธ์ชฝ ํ•ฉ -> ๋Ÿญํ‚ค์ŠคํŠธ๋ ˆ์ดํŠธ result = 0 if left_sum == right_sum: result = 'LUCKY' else: result = 'READY' print(result) 2022. 8. 4.
[๊ตฌํ˜„] ์ƒํ•˜์ขŒ์šฐ (ํŒŒ์ด์ฌ) n = int(input()) a = input().split() x, y = 1, 1 #๊ณต๊ฐ„์„ ๋ฒ—์–ด๋‚˜๋Š” ์›€์ง์ž„์€ ๋ฌด์‹œ i = 0 while i < len(a): if a[i] == 'L': #์™ผ์ชฝ์œผ๋กœ ํ•œ ์นธ ์ด๋™ if y != 1: y -= 1 elif a[i] == 'R': #์˜ค๋ฅธ์ชฝ์œผ๋กœ ํ•œ ์นธ ์ด๋™ if y != n: y += 1 elif a[i] == 'U': #์œ„๋กœ ํ•œ ์นธ ์ด๋™ if x != 1: x -= 1 elif a[i] == 'D': #์•„๋ž˜๋กœ ํ•œ ์นธ ์ด๋™ if x != n: x += 1 print(a[i],x, y) i += 1 if i == len(a): break print(x, y) 2022. 8. 4.
[DEVIEW2021] ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”์˜ ๊ฝƒ APM, FE ๊ฐœ๋ฐœ ์ด์•ผ๊ธฐ 1. APM? Application Performance Management ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„ฑ๋Šฅ์„ ๊ด€๋ฆฌํ•˜๋Š” ์„œ๋น„์Šค ๊ด€๋ฆฌํ•˜๋Š” ์„œ๋น„์Šค์ด๋‹ค ๋ณด๋‹ˆ, ์ˆ˜์ง‘ํ•œ ๋ฐ์ดํ„ฐ๋„ ์ค‘์š”ํ•˜์ง€๋งŒ ์œ ์ €๊ฐ€ ์ด๋ฅผ ์ž˜ ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๊ฒƒ๋„ ๋งค์šฐ ์ค‘์š”ํ•จ ๋”ฐ๋ผ์„œ, APM FE ๊ฐœ๋ฐœ์ž์˜ ์ฃผ์š” ์—…๋ฌด๋Š” '๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”' ex) scatter chart, server map, inspector chart ๋“ฑ ๋ชจ๋‹ˆํ„ฐ๋ง์„ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ์‹œ๊ฐํ™” ์ปดํฌ๋„ŒํŠธ ์ œ๊ณต 2. Focus : APM FE ๊ฐœ๋ฐœ์ž๊ฐ€ ์‹ ๊ฒฝ์จ์•ผ ํ•  ๊ฒƒ? ๋ชฉํ‘œ : ์‚ฌ์šฉ์ž์—๊ฒŒ ์ข‹์€ ๋ชจ๋‹ˆํ„ฐ๋ง ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๊ธฐ - ์„ฑ๋Šฅ : ๋งŽ์€ ๋ฐ์ดํ„ฐ์—๋„ ์›ํ™œํ•œ ๋™์ž‘์ด ๊ฐ€๋Šฅํ•ด์•ผ ํ•จ - ์ง๊ด€์„ฑ : ์‚ฌ์šฉ์ž๊ฐ€ ์šฐ๋ฆฌ๊ฐ€ ์ œ๊ณตํ•œ ์ง€ํ‘œ๋“ค์„ ํ†ตํ•ด ๊ทธ ์˜๋ฏธ๋“ค์„ ์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•จ 3. ๊ณ ๋ฏผ๊ณผ ํ•ด๊ฒฐ Scatter Char.. 2022. 8. 4.