๊ฐ๋ฐํ๋ฉด์ if๋ฌธ์ ํตํ ์์ธ์ฒ๋ฆฌ๋ ์จ์ฌ๋ฏ์ด ์ฐ๋๊ฒ ์ผ์์
ํ์ง๋ง ์ด๋ค ํจ์ ๋ด์์ ๋ฐ๋์ ํ์์ ์ธ ๋ถ๋ถ(ex ํน์ ์ปดํฌ๋ํธ๊ฐ ์์ผ๋ฉด Debug.log()๋ก ํ์ํ๊ธฐ)๋ if๋ฌธ ์์ธ์ฒ๋ฆฌ๋ฅผ ํ๋ฉด ๋น๋ก ์์ ๋ถ๋ถ์ด๋ผํด๋ ์ฑ๋ฅ์ ๋ฏผ๊ฐํ ์ฌ๋๋ค์ ์ ๊ฒฝ์ฐ์ด๋ ๋ถ๋ถ์
๋ํ ๊ฐ๋ฐ์๋ผ๋ฉด ๋ชจ๋ ์ํฉ์ ๋ํ ์์ธ๋ฅผ ๊ฐ์ ํ๊ณ ์ฝ๋๋ฅผ ์ง ๋ค๊ธฐ๋ณด๋ค ์์ธ์ ์ธ ์ํฉ์ ์ค์ด๋๋ฐ ์ง์คํ๋๊ฒ์ด ๋ ์ข์ ๊ฐ๋ฐ์์
๊ทธ๋ผ ์์ธ์ ์ธ ์ํฉ์ ์ด๋ป๊ฒ ๋ ์ค์ผ ์ ์์๊น?
๋ต์ Debug.Assert()
Debug.Assert()๋ ํจ์ ๋ด ํ๋ผ๋ฏธํฐ ์ธ์๊ฐ false๊ฐ ๋๋ฉด ๋ก๊ทธ๋ฅผ ๋์ฐ๋ ๋๋ฒ๊น ์ฝ๋์
์๋ฅผ ๋ค์ด if(_playerComponent == null) { debug.log("~ null!); ์ด๋ผ๋ฉด
Debug.Assert(_playerComponent != null, debug.log("~ null) ์ด๋ ๊ฒ ์ฌ์ฉํด _playerComponent๊ฐ null์ผ ๊ฒฝ์ฐ ๋ก๊ทธ๋ฅผ ๋์
์ด ๋๋ฒ๊ทธ๋ฌธ๊ตฌ์ ๊ฐ๋ ฅํ์ ์ ์์ if๋ฌธ์ Relase๋ชจ๋์์๋ ์๋ํ์ง๋งย
Assert๋ ๋๋ฒ๊น ๋ชจ๋์์๋ง ๋์ํ๊ณ Release๋ชจ๋์์ ๋ฌด์๊ฐ ๋จย
๋ฐ๋ผ์ ์ถ์์ฉ Release ๋ชจ๋์์๋ ์ฑ๋ฅ์์ ์ด์ ์ ์กฐ๊ธ์ด๋ผ๋ ๋ ๊ฐ์ ธ๊ฐ ์ ์๊ฒ๋จ
ํด๋น ๋๊ธ์ ์ญ์ ๋์์ต๋๋ค.
C#์๋ ์์ด System.Diagnostics.Debug.Assert