์ ์ฒด ๊ธ
[Flutter] ํ๋ก์ ํธ ์์ฑ
ํฐ๋ฏธ๋์์ ์ฝ๊ฒ flutter ํ๋ก์ ํธ๋ฅผ ์์ฑํ ์ ์๋ค. $flutter create ํ๋ก์ ํธ๋ช Xcode simulator ์ด์ฉํด์ ํ๋ก์ ํธ ์ด๊ธฐ vscode์์ ํด๋น ํ๋ก์ ํธ๋ก ๋ค์ด๊ฐ๋ฉด ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ณด์ผ ๊ฒ์ด๋ค. ํด๋น ํ๋ฉด ์ฐ์ธกํ๋จ์ macOS(darwin)์ ํด๋ฆญํ๋ฉด ๋๋ฐ์ด์ค๋ฅผ ์ ํํ ์ ์๋ ์ฐฝ์ด ์๊ธด๋ค. ๊ฑฐ๊ธฐ์ 'Start IOS Simulator'๋ฅผ ๋๋ฌ์ฃผ๋ฉด Simulator๊ฐ ์คํ๋ ๊ฒ์ด๋ค. ์ค๋ฅธ์ชฝ ์ฌ์ง๊ณผ ๊ฐ์ด ์๋ฎฌ๋ ์ดํฐ๊ฐ ์ผ์ก๋ค๋ฉด, ์ ์คํ๋ ๊ฒ์ด๋ค. ์ดํ Run -> Start Debugging ์ ํด๋ฆญํ๋ฉด ํ๋ก์ ํธ๊ฐ ์คํ๋๋ค. ์๋ ์ค๋ฅธ์ชฝ ํ๋ฉด์ด ์ฒ์ ํ๋ฌํฐ ํ๋ก์ ํธ๋ฅผ ์์ฑํ์ ๋ ๋์ค๋ ์ฒ์ ํ๋ฉด์ด๋ค! ๋!
[Flutter] Solved - flutter doctor ์ค๋ฅ(Xcode - cocoapods)
์๋ก์ด ํ๋ก์ ํธ๋ฅผ ๋ง๋๋ ค๊ณ flutter doctor๋ฅผ ์คํํ๋๋ฐ ์๋ ์ค๋ฅ๊ฐ ๋ด๋ค. ์ฅ CocoaPod? ์ด์ ์๋ ์ ๋น๋๊ฐ ๋๋๋ฐ ์ ๋ ๊ฒ ์ค๋ฅ๊ฐ ๋ด๋ค. ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ ์ค๋ฅ๊ฐ ๋์จ ๋ถ๋ถ์ ๊ฐ์ด๋๋ฅผ ๋ฐ๋ผ๊ฐ๋ฉด ์ฝ๊ฒ ํด๊ฒฐํ ์ ์๋ค. To install see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.์ ๋ด์ฉ์ฒ๋ผ ํด๋น ์ฌ์ดํธ์ ๋ฐฉ๋ฌธํด์ ๊ฐ์ด๋๋ฅผ ๋ฐ๋ผํ๋ค. ๊ฐ์ด๋์๋ ์๋ ๋ช ๋ น์ด๋ฅผ ์คํํด์ cocoapods์ ์ค์นํ๋ผ๊ณ ๋์ด์์ด์ ๊ทธ๋ ๊ฒ ํ๋ค. $ sudo gem install cocoapods ๊ทธ๋ ๊ฒ ํ๋ ์ถ๊ฐ ์ค๋ฅ๊ฐ ๋ด๋ค. 'gem install drb -v 2.0.5'๋ฅผ ์ค์นํ๋ผ๊ณ ๋..
1.3 The Network Core
network edge ๋ค์์ผ๋ก ์ด๋ฒ์๋ network core์ ๋ํด์ ๋ค๋ฃจ์ด๋ณด๋ ค๊ณ ํ๋ค. mesh of interconnected routers(์ ํํ๋ ๊ตฌ์กฐ๊ฐ ์๋ ๊ทธ๋ฌผ๋ง์ผ๋ก ๋์ด ์์) ๋คํธ์ํฌ ์ฝ์ด๋ ์๋ก์๋ก ์ฐ๊ฒฐ๋์ด ์๋ ๋ผ์ฐํฐ๋ค์ ์งํฉ์ฒด์ด๋ค. ๋คํธ์ํฌ ์ฝ์ด์์, router๋ค์ interconnected๋์ด end system๊ฐ์ ๋ฐ์ดํฐ ๊ตํ์ ๋๋๋ค. ๋ฐ์ดํฐ๋ค์ด ๋ฐฉ๋ฌธํ๋ ๋คํธ์ํฌ์์ ๋ชจ๋ ์ฅ์น๋ค์ ๊ฐ๊ฐ์ internet protocol stack์ ๊ฐ์ง๊ณ ์๋๋ฐ internet protocol stack์ application layer์์ ์์ฑ๋๋ message๋ค์ ํธ์คํธ๋ค์ ์ํด ์ฌ๋ฌ ๊ฐ์ ํจํท์ผ๋ก ์ชผ๊ฐ์ง๋ค. ํธ์คํธ์ ์ํด ์ชผ๊ฐ์ง ํจํท๋ค์ network core์ ์์นํ router๋ฅผ ..
1.2 The Network Edge
๋คํธ์ํฌ๋ ํฌ๊ฒ 3๊ฐ์ง๋ก ๊ตฌ์ฑ๋์ด ์๋ค. ๋คํธ์ํฌ ์ฃ์ง(Network edge) ์์ธ์ค ๋คํธ์ํฌ(Access network) ๋คํธ์ํฌ ์ฝ์ด(Network core) end system๋ค์ core์ชฝ์ผ๋ก ์ด๋ป๊ฒ ์ฎ๊ธฐ๋ ์ง์ ๋ํ ์์ธ์ค ๋คํธ์ํฌ์ ๋ฐฉ์๋ค๊ณผ Link๋ฅผ ๊ตฌ์ฑํ๋ physical media์ ๋ํ ํฌ์คํ ์ด๋ค. 1. ๋คํธ์ํฌ ์ฃ์ง๋ ์ธํฐ๋ท์ ๊ฐ์ฅ์๋ฆฌ์ด๋ค. ์ฌ๊ธฐ์๋ ์๋ง์ end systems์ด ์กด์ฌํ๋ค. End system์ host์ด๋ค. host๋ ํด๋ผ์ด์ธํธ๋ ์๋ฒ๋ฅผ ๋ปํ๋ค. ์๋ฒ๋ data senter์ ์๋ ์๋ฒ๋ก ์๊ฐํ๋ฉด ๋๋ค. 2. ์์ธ์ค ๋คํธ์ํฌ๋ ๋คํธ์ํฌ์ ์ ๊ทผํ๊ธฐ ์ํ ๋คํธ์ํฌ์ด๋ค. end system๋ค์ด ์ธํฐ๋ท์ ์ฌ์ฉํ ์ ์๋๋ก ๋์์ฃผ๋ ๋คํธ์ํฌ๋ผ๊ณ ๋ณด๋ฉด ๋๋ค. ์ค๋งํธํฐ์์ ์์ด..
1.1. What Is the Internet?
1. 1 What Is the Internet? Internet : Nuts-and-Bolts ๊ด์ / a networking infrastructure(์๋น์ค ๊ด์ ) 1.1.1 A Nuts-and-Bolts View (Bottom-up) Nuts-and-Bolts ๊ด์ ์ผ๋ก ์ธํฐ๋ท์ ์ค๋ช ํ๋ค๋ฉด ์ด๋ ๊ธฐ๋ณธ์ ํ๋์จ์ด ๋ฐ ์ํํธ์จ์ด๊ฐ ์ธํฐ๋ท์ ๊ตฌ์ฑํ๊ณ ์๋ค๋ ๊ฒ์ด๋ค. laptops, smartphones, tablets, TVs, gaming consoles ๋ฑ๊ณผ ๊ฐ์ ๋ชจ๋ ๋๋ฐ์ด์ค๋ค์ ํธ์คํธ(hosts) ๋๋ ์๋ ์์คํ (end systems)๋ผ๊ณ ๋ถ๋ฆฐ๋ค. host = end systems end systems : ์ธํฐ๋ท์ ์ง์ ์ฐ๊ฒฐ๋์ด ๊ฐ๋ณ ์ฌ์ฉ์๊ฐ ์ก์ธ์ค ํ ์์๋ ์ธํฐํ์ด์ค๋ฅผ ๋ง๋๋ ์ฅ์น (= hos..
[์ด์์ฒด์ ] Chapter7. Synchronization Examples
1. Classic Problems of Synchronization The bounded-buffer problem The readers-writers problem The dining-philosophers problem 1) The Bounded-Buffer Problem ๋ ์ข ๋ฅ์ ํ๋ก์ธ์ค๊ฐ ์๋ค. ํ๋๋ Producer, ๋ ๋ค๋ฅธ ํ๋๋ Consumer์ด๋ค. ์ด๋ ์์ฐ์-์๋น์ ๋ฌธ์ (Producer-Consumer Problem)์ด๋ผ๊ณ ๋ ๋ถ๋ฆฐ๋ค. ์ฌ๊ธฐ์ ๋ฐ์ํ ์ ์๋ ๋ฌธ์ ์ ์ ์ด๋ producer๊ฐ ๋ฒํผ ์ค ๋น ๊ณณ์ ๋ฐ์ดํฐ๋ฅผ ์ฐ๋ ค๊ณ ํ ๋, interrupt๊ฐ ๋ฐ์ํ์ฌ ๋ค๋ฅธ ํ๋ก์ธ์คํํ ๊ณต์ ์์์ด ๋์ด๊ฐ์ ๋ค๋ฅธ ํ๋ก์ธ์ค๊ฐ ํด๋นํ๋ ๋น ๊ณณ์ ๋ฐ์ดํฐ๋ฅผ ์ธ ๋ ๋ํ๋ ์ ์๋ค. ๊ทธ๋ ๊ฒ ๋๋ฉด ๋ ์ค ..
[์ด์์ฒด์ ] Chapter6. Synchronization Tools(๋๊ธฐํ)
1. Background ์ด ์ฅ์์๋ ํ๋ก์ธ์ค๊ฐ ๋ณํ ๋๋ ๋ณ๋ ฌ๋ก ์คํ๋ ๋ ์ฌ๋ฌ ํ๋ก์ธ์ค๊ฐ ๊ณต์ ํ๋ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ์ด๋ค ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋ ์ง์ ๊ดํด ์ค๋ช ํ๋ค. Process communication method ์ธ 1)message passing 2)Shared memory๊ฐ ์ด๋ฃจ์ด ์ง๋ ์ถฉ๋์ด ์ผ์ด๋ ์ ์๋ค. ์) Producer-consumer problem - ๊ณต์ ๋ฉ๋ชจ๋ฆฌ(shared memory)๋ฅผ ์ฌ์ฉํ ๋ Producer์ Consumer์ ๊ณผ์ ์ด ์ด๋ฃจ์ด ์ง๋ฉด์ Buffer๊ฐ ์ด์ฉ๋๋๋ฐ ์ด๋ ์ถฉ๋์ด ๋ฐ์ํ ์ ์๋ค. : Concurrent Access of Shared Data(๊ณต์ ๋ฐ์ดํฐ๋ก์ ๋์์ ๊ทผ) ์์ธํ๊ฒ ์ค๋ช ์ ํ์๋ฉด, size๊ฐ 5์ธ buffer(circular queue)๊ฐ ์๋ค..
[Python] ๋ฅ๋ฌ๋์ ์ํ ํ์ด์ฌ ๊ธฐ์ด - 3) ์๋ฃ๊ตฌ์กฐ(Data Structure)
๋ฅ๋ฌ๋์์๋ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ์๋ฃ๊ฐ ํ์ํ๋ค. ์ด๋ค ์๋ฃ๊ตฌ์กฐ๊ฐ ๋ฅ๋ฌ๋์ ์ฌ์ฉ๋๋์ง ์ดํด๋ณผ ๊ฒ์ด๋ค. โถ List(๋ฆฌ์คํธ) ๋ฆฌ์คํธ๋ ์ฌ๋ฌ ๋ฐ์ดํฐ๋ค์ ์ ๊ด๋ฆฌํ๊ธฐ ์ํด ์์๋ฅผ ์ ํด ๋ฌถ์ด์ ๊ด๋ฆฌํ ์ ์๋ ์๋ฃํ ์ค ํ๋์ด๋ค. ํ๋์ ๋ณ์๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํด๋๋๋ค๋ฉด ๋ช๋ฐฑ๊ฐ์ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃฐ ๋๋ ์ ๋ง ํ๋ ๊ณผ์ ์ ๊ฒช์ด์ผ ํ ๊ฒ์ด๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ๋ฆฌ์คํธ๋ ๋ฐ์ดํฐ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด์ ์ ์ฉํ๋ค. : ๋๊ดํธ์ ์์๋ฅผ ์ ๋ ฅํ์ฌ ์ ์ธํด์ฃผ๋ฉด ๋๋ค. list1 = [1, 2, 3] list2 = ['a', 'b', 'c'] print(list1) print(list2) [1, 2, 3] ['a', 'b', 'c'] : ๋ฆฌ์คํธ์ ๊ธธ์ด๋ len()ํจ์๋ฅผ ์ฌ์ฉํ์ฌ ํ์ธํ ์ ์๋ค. length = len(list1) print(le..
[Python] ๋ฅ๋ฌ๋์ ์ํ ํ์ด์ฌ ๊ธฐ์ด - 2) Library
๊ณต๋ถ์ค์ธ ํ์์ ๋๋ค. ํ๋ฆฐ ๋ถ๋ถ์ด ์๋ค๋ฉด ๊ผญ ๋๊ธ๋ก ๋จ๊ฒจ์ฃผ์ธ์ :) ํ์ด์ฌ์ผ๋ก ๋ฅ๋ฌ๋์ ๋ค๋ฃฐ ๋ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋๋ Library๋ค์ด ์กด์ฌํ๋ค. ํ๋ํ๋์ฉ ์ฐจ๊ทผ์ฐจ๊ทผ ๋ณด์. ์ด๋ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์๋ ์ง ์ดํด๋ณด๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ๋ฐฉ๋ฒ์ ๋์ค์ ์์ธํ ๋ค๋ค๋ณด๋๋ก ํ๋ค. โถ Numpy Numpy๋ ๊ณผํ ๊ณ์ฐ์ ์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ก ๋ค์ฐจ์ ๋ฐฐ์ด์ ์ฒ๋ฆฌํ๋๋ฐ ํ์ํ ์ฌ๋ฌ ์ ์ฉํ ๊ธฐ๋ฅ์ ์ ๊ณตํ๊ณ ์๋ค. : Mac ์ฌ์ฉ์๋ผ๋ฉด ํฐ๋ฏธ๋์์ ์ฝ๊ฒ ์ค์น๊ฐ ๊ฐ๋ฅํ๋ค. $ pip install numpy import numpy as np # numpy๋ฅผ ์ฌ์ฉํ ๋ np๋ก ์ฌ์ฉํ๋ฉด ๋๋ค. import numpy as np list1 = np.array([[1, 2, 3],[4, 5, 6]]) print(list1) print(type(..