2021. 2. 22. 06:00ใ๊ฐ๋ ์ ๋ฆฌ ์์ ์ค/Java
๐ 2021๋ 02์ 16์ผ ๊ณต๋ถ ๋ด์ฉ
๐ Memory
๐ Stack Memory
์ง์ญ๋ณ์, ํจ์๊ฐ ์ ์ฅ๋๋ ๊ณณ ์ ๋๋ค. ์ฒซ๋ฒ์งธ๋ก main ํจ์(Method) ์ฆ, Entry Point Method๊ฐ ์คํ๋๊ณ , ์ด ํจ์๊ฐ ๋๋ฒ์งธ ํจ์๋ฅผ ํธ์ถํ๊ณ , ์ธ๋ฒ์งธ ํจ์๋ฅผ ํธ์ถํ๋ค๊ณ ๊ฐ์ ํ๋ค๋ฉด ์ฒซ๋ฒ์งธ ~ ์ธ๋ฒ์งธ ์์ผ๋ก ์ฐจ๋ก๋๋ก Stack Memory์ ์์ด๊ฒ ๋ฉ๋๋ค.
ํ๋ก๊ทธ๋จ์ด ์ข ๋ฃ๊ฐ ๋๋ฉด ์ญ์์ผ๋ก ์ธ๋ฒ์งธ ํจ์๊ฐ ์ข ๋ฃ๊ฐ ๋๋ฉด์ ํจ์๊ฐ ์ฐ์ฐํ๊ณ , ๋์ถ๋ ๋ฐํ๊ฐ์ return(๋ฐํ)ํ์ฌ ์์ ์ ํธ์ถํ๋ ํจ์์๊ฒ ์ฃผ๊ฒ ๋๊ณ , ๋๋ฒ์งธ ํจ์๋ ๋์ผํ ์์ ์ ํตํด ์ข ๋ฃ๊ฐ ๋ฉ๋๋ค.
์ด๋ฌํ ํ๋ก๊ทธ๋จ์ ์์๊ณผ ์ข ๋ฃ์ ์์ ์์ FIFO(First In First Out)์ด๋ผ๊ณ ํ๊ณ , ์ด ๋ฐฉ์์ Stack ๋ฐฉ์์ด๋ผ๊ณ ํฉ๋๋ค.
๐ Heap Memory
์ ์ญ๋ณ์์ ๊ฐ์ฒด(์ธ์คํด์ค)๊ฐ ์ ์ฅ๋๋ ๊ณณ.
๐ Driver
Driver๋ ์ฐ๋ฆฌ๋๋ผ ๋ง๋ก ํ๋ฉด ์ฐ๊ฒฐ์ ํน์ ์ด์ ์๋ผ๊ณ ํํ ํ ์ ์๊ณ , Java ๋ฌธ๋ฒ์์๋ Interface๋ผ๊ณ ๋ถ๋ฆ ๋๋ค.
Hard Ware Machine(์: ํค๋ณด๋)์ด OS(Operation System) ์ฆ, ์ด์์ฒด์ ์ ์ํตํ๊ธฐ ์ํด์๋ Driver๋ผ๋ SoftWare๊ฐ ํ์ํฉ๋๋ค.
๋ํ, Application (Program)๊ณผ DB (Data Base)๋ฅผ ์ฐ๊ฒฐํ ๋๋ DB Driver๊ฐ ํ์ํฉ๋๋ค.
๐ ํด์๊ธฐ์ ๋ฒ์ญ๊ธฐ
๐ ํด์๊ธฐ(Compiler - ์ปดํ์ผ๋ฌ)
์ด๋ค ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก Coding์ ํ๋ฉด ๊ทธ๊ฑธ ์ ๋ ฅ์ผ๋ก ๋ฐ์ ์คํํ ์ ์๋ ํ์ผ๋ก ๋ง๋๋ ์์ . ์ฆ, ํด์(Compile - Build)ํ๋ ๊ฒ ์ ๋๋ค.
๋น์ ๋ฅผ ํ์๋ฉด ๋ฒ์ญ๊ธฐ๋ก ๋น์ ํ ์ ์๊ฒ ๋ค์. ์ฆ, ํ๊ธ๋ก ์ฐ์ฌ์ง ์ฑ ์ ์ธ๊ตญ ๋ฒ์ญ๊ฐ๊ฐ ์์ด๋ก ๋ฒ์ญํ์ฌ ์ฑ ์ ๋ด๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ๋ฉด ์ฝ๋ต๋๋ค!
๐ ๋ฒ์ญ๊ธฐ(Interpreter)
์คํ ํ์ผ์ ๋ง๋๋ ๊ฒ์ด ์๋๊ณ , ๋ฐ๋ก ํ๋ก๊ทธ๋จ์ ์คํ ์์ผ ๋ฒ๋ฆฌ๋ ๋ฐฉ์ ์ ๋๋ค.
๋น์ ๋ฅผ ํ์๋ฉด ํต์ญ๊ณผ ๊ฐ๋ค๊ณ ํ ์ ์๊ฒ ๋ค์. ์ฆ, ํ๊ตญ ์ฌ๋๊ณผ ๋ฏธ๊ตญ ์ฌ๋์ด ์์ ๋, ์ค๊ฐ์ ํต์ญ์ฌ๊ฐ ์ค์๊ฐ์ผ๋ก ํต์ญ ํด ์ฃผ๋ ๊ฒ๊ณผ ์ ์ฌํ๋ค๊ณ ํ ์ ์๋ต๋๋ค!
๐ SDK์ JDK
๐ SDK (Service Develope Kit)
๊ฐ ์ข OS๋ด์ ๊ฐ๋ฐ ์์ ์ฌ์ฉํ ์ ์๋ Kit๊ณผ ๊ฐ ์ธ์ด ๋ณ ๊ฐ๋ฐ์ ์ฌ์ฉํ ์ ์๋ Kit ์ ๋๋ค. ์ด๊ฒ์ Tool๊ณผ API๋ฅผ ํฉ์ณ ๋์ ๊ฒ์ด์์.
๐ JDK (Java Develope Kit)
JDK ์์ JRE (Java Runtime Envirment)๊ฐ ์๋๋ฐ, Java ์คํ ํ๊ฒฝ์ ์ด์ผ๊ธฐ ํฉ๋๋ค. ์ด๊ฒ์ API์ JVM์ด ๊ฐ์ด ์ค์น ๋ฉ๋๋ค.
Java๋ก ๊ฐ๋ฐ์ ํ ๋ ํ์๋ก ์ค์นํด์ผ ํ๋ Kit์ด๋ผ๊ณ ์๊ฐํ์๋ฉด ๋๊ฒ ์ต๋๋ค.
๐ก ์ํ!
Project๋ Program์ ๋ง๋ค ๋๋ ํ๊ฒฝ. ์ฆ, ์ด๋ค OS๋ฅผ ์ฌ์ฉํ ๊ฒ์ธ์ง๋ฅผ ๊ฒฐ์ ํ๊ณ , ๊ทธ๊ฒ์ ๋ํ API๋ฅผ ํ์ธํ ๋ค API์์ ์๊ตฌํ๋ ์ธ์ด๋ฅผ ๊ฐ์ง๊ณ , Coding์ ํด์ผ ํฉ๋๋ค.
์ฃผ๋ํ๋์ ๊ธ์ด ๋ง์์ ๋์
จ๋์? ๊ตฌ๋
๊ณผ ๊ณต๊ฐ! ๊ทธ๋ฆฌ๊ณ , ๋๊ธ์ ์ฃผ๋ํ๋์๊ฒ ๋ง์ ํ์ด ๋ฉ๋๋ค!
'๊ฐ๋ ์ ๋ฆฌ ์์ ์ค > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Java] ๋ฐฐ์ด์ ๊ธฐ์ด (0) | 2021.02.23 |
---|---|
[Java] ์๋ฐ ๊ธฐ์ด (0) | 2021.02.23 |
[๋ถ๋ก][JAVA] Random / Scanner ํจ์ (0) | 2021.02.10 |
[๋ถ๋ก][JAVA] ํผํ๊ณ ๋ผ์ค์ ์ผ๊ฐํ (0) | 2021.02.09 |
[JAVA] ๊ธฐํ ์ ์ด๋ฌธ (0) | 2021.02.08 |