2021-04-16(Fri)
Last updated
Last updated
ํ ๊ฐ์ฒด์ ์ํ๊ฐ ๋ฐ๋๋ฉด ๊ทธ ๊ฐ์ฒด์ ์์กดํ๋ ๋ค๋ฅธ ๊ฐ์ฒด๋คํํ ์ฐ๋ฝ์ด ๊ฐ๊ณ ์๋์ผ๋ก ๋ด์ฉ์ด ๊ฐฑ์ ๋๋ ๋ฐฉ์์ผ๋ก ์ผ๋๋ค(one-to-many) ์์กด์ฑ์ ์ ์ํ๋ค.
java.util.Observer ์ธํฐํ์ด์ค์ java.util.Observable ํด๋์ค๋ฅผ ์ฌ์ฉํ ์ ์์.
์๋ฐ ๋ด์ฅ ์ต์ ๋ฒ ํจํด์ ํธ์ ๋ฐฉ์, ํ ๋ฐฉ์ ๋ชจ๋ ์ฌ์ฉ๊ฐ๋ฅ.
java.util.Observer ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๊ณ java.util.Observable ๊ฐ์ฒด์ addObserver() ๋ฉ์๋๋ฅผ ํธ์ถํ๋ฉด ์ต์ ๋ฒ ๋ชฉ๋ก์ ์ถ๊ฐ๊ฐ ๋๊ณ deleteObserver()๋ฅผ ํธ์ถํ๋ฉด ์ต์ ๋ฒ ๋ชฉ๋ก์์ ์ ๊ฑฐ๊ฐ ๋๋ค.
์ฐ๋ฝ์ ๋๋ฆฌ๋ ๋ฐฉ๋ฒ์ java.util.Observable๋ฅผ ์์๋ฐ๋ ์ฃผ์ ํด๋์ค์์ setChanged()
๋ฉ์๋๋ฅผ ํธ์ถํด์ ๊ฐ์ฒด์ ์ํ๊ฐ ๋ฐ๋์๋ค๋ ๊ฒ์ ์๋ฆฐ ํ notifyObservers()
๋๋ notifyObserver(Object arg)
๋ฉ์๋๋ฅผ ํธ์ถํ๋ฉด ๋๋ค. (์ธ์๊ฐ์ ๋ฃ์ด์ฃผ๋ ๋ฉ์๋๋ ํธ์๋ฐฉ์์ผ๋ก ์ฐ์.)
์ต์ ๋ฒ ๊ฐ์ฒด๊ฐ ์ฐ๋ฝ์ ๋ฐ๋ ๋ฐฉ๋ฒ์ update(Observable o, Object arg)
๋ฉ์๋๋ฅผ ๊ตฌํํ๊ธฐ๋ง ํ๋ฉด ๋๋ค. Observable o
์๋ ์ฐ๋ฝ์ ๋ณด๋ด๋ ์ฃผ์ ๊ฐ์ฒด๊ฐ ์ธ์๋ก ์ ๋ฌ์ด ๋๊ณ Object arg
์๋ notifyObservers(Object arg)
๋ฉ์๋์์ ์ธ์๋ก ์ ๋ฌ๋ ๋ฐ์ดํฐ ๊ฐ์ฒด๊ฐ ๋์ด์จ๋ค.
Observable์ ํด๋์ค๋ค. ๋ฐ๋ผ์ ์ฌ์ฌ์ฉ์ฑ์ ์ ์ฝ์ด ์๊ธด๋ค.
๋ฐ๋ผ์ ์๋ธ ํด๋์ค๋ฅผ ๋ง๋ค์ด์ผ ํ๋ค๋ ์ ์ด ๋ฌธ์ ๋ค. ์ด๋ฏธ ๋ค๋ฅธ ์ํผ ํด๋์ค๋ฅผ ํ์ฅํ๊ณ ์๋ ํด๋์ค์ Observable์ ๊ธฐ๋ฅ์ ์ถ๊ฐํ ์ ์๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋์ ์ฌ์ฌ์ฉ์ฑ์ ์ ์ฝ์ด ์๊ธด๋ค.
Observable ํด๋์ค์ ํต์ฌ ๋ฉ์๋๋ฅผ ์ธ๋ถ์์ ํธ์ถํ ์ ์๋ค.
Observervable API๋ฅผ ์ดํด๋ณด๋ฉด, setChanged()
๋ฉ์๋๊ฐ protected๋ก ์ ์ธ๋์ด ์๋ฐ.
Observable์ ์๋ฒํด๋์ค์์๋ง setChanged()
๋ฅผ ํธ์ถํ ์ ์๋ค. ๊ฒฐ๊ตญ ์ง์ ์ด๋ค ํด๋์ค๋ฅผ ๋ง๋๋ก, Observable์ ์๋ธํด๋์ค๋ฅผ ์ธ์คํด์ค ๋ณ์๋ก ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ๋ ์ธ ์ ์๋ค. ์ด๋ฐ ๋์์ธ์ ์์๋ณด๋ค๋ ๊ตฌ์ฑ์ ์ฌ์ฉํ๋ค๋ ๋์์ธ ์์น์๋ ์๋ฐฐ๋๋ค.
๋ฌธ๋ฒ ์ ๋ฆฌ
TDD ์ฐ์ต์ด ์ฐธ ์ฌ๋ฐ๋ค. ๋ผ์ด๋ธ ์ฝ๋ฉ์์๋ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ ค์ ํ๊ธฐ ํ๋ค ์๋ ์๊ฒ ๋๋ฐ, ์์ง ํ ์คํธ ์์ฑ์ด ๋ฏธ์ํ๊ฐ๋ณด๋ค.
Rails๋ก ๋ก๊ทธ์ธ ๊ธฐ๋ฅ ๊ตฌํํ๊ธฐ
ํญ๋ชฉ
๋ด์ฉ
ํ์ต ๋ ์ง
2021-04-16(๊ธ)
ํ์ต ์๊ฐ
09:00~23:00
ํ์ต ๋ฒ์ ๋ฐ ์ฃผ์
๋์์ธ ํจํด, Rails
ํ์ต ๋ชฉํ
rspec์ ์ด์ฉํ์ฌ TDDํ๋ค.
๋๋ฃ ํ์ต ๋ฐฉ๋ฒ
-
Chracter
๋ป
`
`
๋๋
()
๊ทธ๋ฃน
[]
๋ฌธ์์ , ๊ดํธ ์์ ์ด๋ค ๋ฌธ์๋
[^]
๋ถ์ ๋ฌธ์์ , ๊ดํธ์์ ์ด๋ค ๋ฌธ์๊ฐ ์๋ ๋
(?:)
์ฐพ์ง๋ง ๊ธฐ์ตํ์ง๋ ์์
Character
๋ป
?
์๊ฑฐ๋ ์๊ฑฐ๋ (zero or one)
*
์๊ฑฐ๋ ์๊ฑฐ๋ ๋ง๊ฑฐ๋(zero or more)
+
ํ๋ ๋๋ ๋ง์ด (one or more)
{n}
n๋ฒ ๋ฐ๋ณต
{min,}
์ต์
{min,max}
์ต์, ๊ทธ๋ฆฌ๊ณ ์ต๋
Chracter
๋ป
\b
๋จ์ด ๊ฒฝ๊ณ
\B
๋จ์ด ๊ฒฝ๊ณ๊ฐ ์๋
^
๋ฌธ์ฅ์ ์์
$
๋ฌธ์ฅ์ ๋
Chracter
๋ป
\
ํน์ ๋ฌธ์๊ฐ ์๋ ๋ฌธ์
.
์ด๋ค ๊ธ์(์ค๋ฐ๊ฟ ๋ฌธ์ ์ ์ธ)
\d
digit ์ซ์
\D
digit ์ซ์ ์๋
\w
word ๋ฌธ์
\W
word ๋ฌธ์ ์๋
\s
space ๊ณต๋ฐฑ
\S
space ๊ณต๋ฐฑ ์๋