TIL_20171127 ~ 20171202
27 Nov 2017 | TIL์ด๋ฒ ์ฃผ์ ๋ฐฐ์ด / ๋๋ ๊ฒ
-
๊ฑฐ์ ์ขํ๊ณ์ฐ๊ธฐ ๋ฏธ์ ์๋ง ๋งค๋ฌ๋ ธ๋ ํ ์ฃผ ์๋คโฆ!
- ๋ฐ๋ณต๋ฌธโฆ
- ๋ฐ๋ณต๋ฌธ ์์ ์กฐ๊ฑด๋ฌธ์ ์ธ๋ ์ฐฉ๊ฐํด์ ๋ด๊ฐ ์๊ฐํ๋ ๊ฒ๋ณด๋ค ๋ ๋ฐ๋ณต์ด ๋๋ค๋์ง, ๋ ๋๋ค๋์ง ํ๋ ์ค์๊ฐ ์ฆ์๋ค. ์๋ฅผ๋ค๋ฉด Array์ ๊ฐ์ ์ถ๊ฐํด์ผ ํ๋๋ฐ ์๊พธ๋ง ๋ง์ง๋ง ๊ฐ๋ง ๋ค์ด๊ฐ๋ ๋ฌธ์ ๊ฐ ์์ด์ ๋๋ฒ๊น
์ ์ด๋ฐฉ๋ฒ ์ ๋ฐฉ๋ฒ์ผ๋ก ํ๋๋ฐ ์๊ณ ๋ณด๋ for๋ฌธ scope๋ฐ์์
.append
๋ฅผ ํ๋ ๋ฌธ์ ์๋ค. ๋ฐ๋ณตํด์ ํน์ ์กฐ๊ฑด์ ๋ฐ๋ผ์ ์ฒ๋ฆฌํด์ผํ๋ ๋ก์ง์์๋ scope์ ์ฃผ์ํ๊ณ ์กฐ๊ฑด๋ฌธ์ ๊ฑธ๋ฆฌ์ง ์๋ ๊ฒฝ์ฐ์ ๋ฐ๋ณต๋ฌธ ๋ด์ ์๋ ๋ชจ๋ ์ฝ๋๋ ๋ฐ๋ณต๋๋ค๋ ์ฌ์ค์ ๊ผญ๊ผญ ๊ธฐ์ตํด์ผ๊ฒ ๋ค! - ์ขํ๊ณ์ฐ๊ธฐ ๋ฏธ์
์ mainํ์ผ์
while
๋ฌธ ์ถ๊ฐ :while
๋ฌธ์ ์ถ๊ฐํ๊ณ ์ข ๋ฃ์กฐ๊ฑด์ ์๋ก ์ถ๊ฐํ๋ฉด์, ์๋ ์๋ฌ์ฒ๋ฆฌ๋ ํ๋ ๋ก์ง์ด๋ผ์ ์ข ๊น๋ค๋ก์ ๋๋ฐ ์์ผ๋ก ๋ฏธ์ ๋ง๋ค๋ฉด์ ํ๋ก๊ทธ๋จ ์คํ๊ณผ ์ข ๋ฃ์๋ ์ข ๋ฃ์กฐ๊ฑด์ ์ถ๊ฐํด์ ์ฐ์ต์ ๊ณ์ํด์ผ๊ฒ ๋ค.
- ๋ฐ๋ณต๋ฌธ ์์ ์กฐ๊ฑด๋ฌธ์ ์ธ๋ ์ฐฉ๊ฐํด์ ๋ด๊ฐ ์๊ฐํ๋ ๊ฒ๋ณด๋ค ๋ ๋ฐ๋ณต์ด ๋๋ค๋์ง, ๋ ๋๋ค๋์ง ํ๋ ์ค์๊ฐ ์ฆ์๋ค. ์๋ฅผ๋ค๋ฉด Array์ ๊ฐ์ ์ถ๊ฐํด์ผ ํ๋๋ฐ ์๊พธ๋ง ๋ง์ง๋ง ๊ฐ๋ง ๋ค์ด๊ฐ๋ ๋ฌธ์ ๊ฐ ์์ด์ ๋๋ฒ๊น
์ ์ด๋ฐฉ๋ฒ ์ ๋ฐฉ๋ฒ์ผ๋ก ํ๋๋ฐ ์๊ณ ๋ณด๋ for๋ฌธ scope๋ฐ์์
- ํ๋กํ ์ฝ
- MyPoint์ฒ๋ผ ๋ง๋ ๊ฐ์ฒด๋ฅผ
Equatable
ํ๋กํ ์ฝ์ ์ค์ํ๊ฒ ๋ง๋ค์ด์ ํ์ํ๋๋ก ์ฌ์ฉํ๋ค. ํ๋กํ ์ฝ๊ฐ์ด ์ฒ์์ ์ดํด๊ฐ ๋ชจํธํ๊ฒ ๋๋ ๊ฐ๋ ๋ค์ ์ฌ์ฉํ๋ฉด์ ์ ์ ๋ ์ต์ํด์ง๋๊ฒ๊ฐ๋ค. - ํ๋กํ ์ฝ ์ปดํฌ์ง์
: ์๋ ํ๋์ ํํ ์ฝ๋ก ์ปค๋ฒํ ์ ์๋ ๊ฐ์ฒด๋ค์ด ๊ธฐ๋ฅ์ด ์ ์ ์ถ๊ฐ๋๋ฉด์, ํ๋์ ํ๋กํ ์ฝ๋ก ์๋ฒฝํ ์ถ์ํ๊ฐ ์ด๋ ค์์ก๋ค. ์ด๋ฐ๊ฒฝ์ฐ, ์์ ๊ณตํต๋๋ ๊ธฐ๋ฅ๋ง์ผ๋ก ํ๋กํ ์ฝ์ ํ๋ ๋ ์์ฑํ๊ณ ๊ทธ ๊ธฐ๋ฅ์ด ํ์ํ ๊ฐ์ฒด๋ง ์๋ก์ด ํ๋กํ ์ฝ์ ์ค์ํ๊ฒ ๋๋ ์ ๊ตฌํํ๋ค.
- ex)ResultByShape ํ๋กํ ์ฝ - ์ถ๋ ฅ๋๋ ๊ฒฐ๊ณผ๊ฐ์ ์ ๋ฌด๊ฐ ๊ฐ ๋ํ๋ง๋ค ๋ฌ๋ผ์ MyShapeํ๋กํ ์ฝ์ด ๊ฒฐ๊ณผ ์ถ๋ ฅ๊ณผ ๊ด๋ จ๋ ํจ์๋ฅผ ๊ฐ๊ณ ์๋๊ฒ ์ ์ ์น ์์์. ๊ฒฐ๊ณผ ์ถ๋ ฅ์ ํ๋ ํจ์๋ง ๋ฐ๋ก ResultByShapeํ๋กํ ์ฝ์ ์๋ก ์ ์ํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ ํ์๊ฐ ์๋ ๋ํ๊ฐ์ฒด๋ง ์ค์ํ๊ฒ ๊ตฌํ.
drawPoint()ํจ์์ ํ๋ผ๋ฏธํฐ๋ ํ๋กํ ์ฝ ์ปดํฌ์ง์ (MyShape & ResultByShape)๋ฅผ ๋ฐ๋ ๊ฒ์ผ๋ก ์์ .
- ex)ResultByShape ํ๋กํ ์ฝ - ์ถ๋ ฅ๋๋ ๊ฒฐ๊ณผ๊ฐ์ ์ ๋ฌด๊ฐ ๊ฐ ๋ํ๋ง๋ค ๋ฌ๋ผ์ MyShapeํ๋กํ ์ฝ์ด ๊ฒฐ๊ณผ ์ถ๋ ฅ๊ณผ ๊ด๋ จ๋ ํจ์๋ฅผ ๊ฐ๊ณ ์๋๊ฒ ์ ์ ์น ์์์. ๊ฒฐ๊ณผ ์ถ๋ ฅ์ ํ๋ ํจ์๋ง ๋ฐ๋ก ResultByShapeํ๋กํ ์ฝ์ ์๋ก ์ ์ํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํ ํ์๊ฐ ์๋ ๋ํ๊ฐ์ฒด๋ง ์ค์ํ๊ฒ ๊ตฌํ.
- MyPoint์ฒ๋ผ ๋ง๋ ๊ฐ์ฒด๋ฅผ
- ์๋ฌํธ๋ค๋ง
do-catch
๋ฌธ์ ์๋ฌํ์ ์ ๋ฐ๋ผ์ ๋๋๋ ๊ฒ์ ์ฌ์ฉํด๋ณด๋ฉด์ ์ข๋ ์ต์ํด์ง ์ ์์๋ค.- ์๋ฌ์ผ์ด์ค
enum
์ Errorํ๋กํ ์ฝ์ ์ค์ํ๋๋ก ์ค๊ณํด์ ๊ฐ์ ํ์ ์ ์๋ฌ๋ฅผ ๋ ์๋ฌ ์ผ์ด์ค์ ๋ฐ๋ผ ๊ตฌ๋ถํ๊ธฐ ์ํด์ ์ค๋ณต๋๊ฒ ์์ฑํ๋ catch๋ฌธ์ case์ ๋ฐ๋ผ์ ์๋ฅผ ์ค์ผ ์ ์์๋ค.
- ์ ๋๊ฐ์ ๊ตฌํ๋ ํ๋กํผํฐ
magnitude
- ์ ๋ํ ์คํธ ํ์ฉ
- ์ฐ์ฐํ ํ๋กํผํฐ
static
ํ์ฉ
Comments