[์ ๋ณด์ฒ๋ฆฌ๊ธฐ์ฌ] ์ค๊ธฐ _ ์ถ์ ์์ ๊ฐ๋ ์ ์ฒด ์์ ์ ๋ฆฌ 3
* 2020๋ 1~4ํ ๊ธฐ์ถ๋ฌธ์ ๋ฐ ํ๊ธฐ ๋ฌธ์ ๊ธฐ๋ฐ์ผ๋ก ์ถ์ ์์ ๊ฐ๋ ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค.
โ 21. XML (eXtensible Markup Language)
: ์น๋ธ๋ผ์ฐ์ ๊ฐ HTML ๋ฌธ๋ฒ์ด ํธํ๋์ง ์๋ ๋ฌธ์ ์ SGML์ ๋ณต์กํจ์ ํด๊ฒฐํ๊ธฐ ์ํด ๊ฐ๋ฐ๋ ๋ค๋ชฉ์ ๋งํฌ์ ์ธ์ด
<?xml version="๋ฒ์ " encoding="์ธ์ด์
" standalone="yes|no"?>
๐ข ๋ค์ ์ค๋ช ์ ๋ถํฉํ๋ ๊ฒ์ด ๋ฌด์์ธ์ง ์๋ฌธ ์ฝ์ด๋ก ์ฐ์์ค.
HTML์ ๋จ์ ์ ๋ณด์ํ ์ธํฐ๋ท ์ธ์ด๋ก, SGML์ ๋ณต์กํ ๋จ์ ์ ๊ฐ์ ํ ๋ค๋ชฉ์ ๋งํฌ์ ์ธ์ด์ด๋ค.
์น ์์์ ๊ตฌ์กฐํ๋ ๋ฌธ์๋ฅผ ์ํธ๊ตํ ๊ฐ๋ฅํ๋๋ก ์ค๊ณ๋ ์น ํ์ค ๋ฌธ์ ํฌ๋งท์ผ๋ก ๋ฉํ ๋ฐ์ดํฐ ์ ์๊ฐ ๋ช ํํ๋ค.
์ฌ์ฉ์๊ฐ ์๋ก์ด ํ๊ทธ์ ์์ฑ์ ์ ์ํ ์ ์๋ ํ์ฅ์ฑ์ ๊ฐ์ง๋ค.
๋ต : XML
โ 22. JSON (JavaScript Object Notation)
: ์์ฑ - ๊ฐ ์์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฐ์ดํฐ ์ค๋ธ์ ํธ๋ฅผ ์ ๋ฌํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ๊ฐ๋ฐฉํ ํ์ค ํฌ๋งท
๐ JSON์ XML์ ๋จ์ ์ ๋ณด์ํ๊ธฐ ์ํด ๋์จ ๊ฒ์ผ๋ก, ์ฌ๋์ด ์ฝ๊ธฐ์ ๋ ์ฝ๊ฒ ๋ง๋ค์ด์ก๋ค.
๐ข ๋ค์ ์ค๋ช ์ค ๋น ์นธ์ ๊ฐ์ฅ ๋ถํฉํ๋ ๊ฒ์ ์๋ฌธ ์ฝ์ด๋ก ์ฐ์์ค.
() ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ฑฐ๋ ์ ์กํ ๋ ๋ง์ด ์ฌ์ฉ๋๋ ๊ฒฝ๋์ data ๊ตํ ํ์์ด๋ค.
() ํํ์์ ์ฌ๋๊ณผ ๊ธฐ๊ณ ๋ชจ๋ ์ดํดํ๊ธฐ ์ฌ์ฐ๋ฉฐ ์์ฉ๋์ผ๋ก ์ต๊ทผ์๋ XML์ ๋์ฒดํด์ ๋ฐ์ดํฐ ์ ์ก ๋ฑ์ ๋ง์ด ์ฌ์ฉํ๋ค.
AJAX์์ ์๋ฒ์ ํต์ ํ์ฌ ๋ฐ์ดํฐ ๊ตํ์ ์ฝ๊ฒ ํ๊ธฐ ์ํด () ์ ๋ฐ์ดํฐ ์ ์ก ํ์์ผ๋ก ๋ง์ด ์ฌ์ฉํ๋ค.
() ์ ๋ฌธ๋ฒ์ key์ value๊ฐ ์์ผ๋ก ์กด์ฌํ๋ฉฐ ํ๊ทธ๋ก ํํํ๊ธฐ๋ณด๋ค๋ ์ค๊ดํธ {} ๊ฐ์ ํ์์ผ๋ก ํ๊ณ , ๊ฐ์ , ๋ก ๋์ดํ๊ธฐ์ ๊ทธ ํํ์ด ๊ฐ๋จํ๋ค.
๋ต : JSON
โ 23. AJAX (Asynchronous JavaScript and XML)
: JavaScript๋ฅผ ์ด์ฉํ ๋น๋๊ธฐ ํต์ ์ผ๋ก ํด๋ผ์ด์ธํธ์ ์๋ฒ ๊ฐ XML ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ๊ธฐ์
๐ข '๋น๋๊ธฐ์ ์๋ฐ์คํฌ๋ฆฝํธ XML' ์ ์๋ฏธํ๋ ์ฉ์ด๋ก ํด๋ผ์ด์ธํธ์ ์น ์๋ฒ ๊ฐ์ XML ๋ฐ์ดํฐ๋ฅผ ๋ด๋ถ์ ์ผ๋ก ํต์ ํ๋
๋ํ์ ์น ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ ์ํด ์ฌ์ฉ๋๋ค. ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ์ํด ์น ์๋ฒ์์ ๋ก๋ฉ๋ ๋ฐ์ดํฐ๋ฅผ ์น ๋ธ๋ผ์ฐ์ ์
ํ์ด์ง์ ๋ณด์ฌ์ฃผ๊ธฐ ์ํด ์น ํ์ด์ง ์ ์ฒด๋ฅผ '์๋ก๊ณ ์นจ' ํ ํ์ ์์ด ์ฆ, ์๋ก์ด HTML ํ์ด์ง๋ก ์ด๋ํ ํ์ ์์ด
ํ์ฌ ํ์ด์ง์์ ํ์ํ ์ผ๋ถ๋ถ๋ง ๋ก๋ฉ๋๋๋ก ํ๋ ์น ๊ฐ๋ฐ ๊ธฐ๋ฒ์ ์๋งํ๋ ์๋ฌธ ์ฝ์(์ฝ์ด)๋ฅผ ์ฐ์์ค.
๋ต : AJAX
โ 24. ๊ฐ๋ฐ ํ๊ฒฝ ์ค ์๋ฒ ํ๊ฒฝ
๐ ์๋ฒ
- ์น ์๋ฒ (Webserver) : ํด๋ผ์ด์ธํธ๋ก๋ถํฐ ์ง์ ์์ฒญ์ ๋ฐ์ ์ฒ๋ฆฌํ๋ ์๋ฒ
๐ ์ ์ฉ๋์ ์ ์ ํ์ผ๋ค์ ์ ๊ณต
๐ ex. Apache HTTP Server, Google Web Server
- ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ (WAS : Web Application Server)
: ์ฌ์ฉ์์๊ฒ ๋์ ์๋น์ค๋ฅผ ์ ๊ณตํ๊ธฐ ์ํด ์น ์๋ฒ๋ก๋ถํฐ ์์ฒญ์ ๋ฐ์ ๋ฐ์ดํฐ ๊ฐ๊ณต ์์ ์ ์ํํ๊ฑฐ๋,
์น ์๋ฒ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ฒ ๋๋ ์น ์๋ฒ์ ํ์ผ ์๋ฒ ์ฌ์ด์์ ์ธํฐํ์ด์ค ์ญํ ์ ์ํํ๋ ์๋ฒ
๐ ex. Apache Tomcat, Orcale WebLOgic ๋ฑ
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ฒ (DB Server)
๐ ex. Apache Tomcat, Orcale WebLOgic ๋ฑ
- ํ์ผ ์๋ฒ (File Server)
๐ ex. AWS S3 ๋ฑ
โ 25. ๊ฐ๋ฐ ์ธ์ด์ ์ ์ ๊ธฐ์ค
๐ข ์ ์ ์ฑ, ํจ์จ์ฑ, ์ด์์ฑ, ์น๋ฐ์ฑ, ๋ฒ์ฉ์ฑ
โ 26. ๋ชจ๋์ ๋ ๋ฆฝ์ฑ ์ธก์ ๋ฐฉ๋ฒ
๐ข ๊ฒฐํฉ๋ (Coupling): ๋ชจ๋ ๊ฐ์ ์ํธ ์์กดํ๋ ์ ๋ ๋๋ ๋ ๋ชจ๋ ์ฌ์ด์ ์ฐ๊ด ๊ด๊ณ๋ฅผ ์๋ฏธ
๐ข ์์ง๋ (Cohesion): ์ ๋ณด ์๋ ๊ฐ๋ ์ ํ์ฅํ ๊ฒ, ๋ช ๋ น์ด๋ ํธ์ถ๋ฌธ ๋ฑ ๋ชจ๋์ ๋ด๋ถ ์์๋ค์ ์๋ก ๊ด๋ จ๋์ด ์๋ ์ ๋
(๋ชจ๋์ด ๋ ๋ฆฝ์ ์ธ ๊ธฐ๋ฅ์ผ๋ก ์ ์๋์ด ์๋ ์ ๋๋ฅผ ์๋ฏธ)
๐ก ํ๋์ ํ๋ก๊ทธ๋จ์ ๋ช ๊ฐ์ ์์ ๋ถ๋ถ์ผ๋ก ๋ถํ ํ๋ ๊ฒฝ์ฐ ๊ทธ ๋ถํ ๋จ์๋ฅผ ์ผ๋ฐ์ ์ผ๋ก ๋ชจ๋ (Module) ์ด๋ผ ํ๋ค. ๋ค์ ์ค ๋ฐ๋์งํ ๋ชจ๋์ ๋ํ ์ค๋ช ์ผ๋ก ๋น์นธ (1), (2)์ ์๋ง์ ์ฉ์ด๋ฅผ ์ฐ์์ค.
๋ชจ๋ํ๋ฅผ ์ค์ฌ์ผ๋ก ํ๋ ์ํํธ์จ์ด ์ค๊ณ ๋ฐฉ๋ฒ์์๋ ๋ชจ๋์ ๋ ๋ฆฝ์ฑ์ ๋๊ฒ ํด์ฃผ๋ ๊ฒ์ด ์ข์ ์ค๊ณ ๋ฐฉํฅ์ด๋ค. ๋ชจ๋์ ๋ ๋ฆฝ์ฑ์ ๋์ฌ์ฃผ๊ธฐ ์ํด์๋ ๊ฐ ๋ชจ๋ ๊ฐ์ ๊ด๋ จ์ฑ์ ๋ํ๋ด๋ (1) ์ ๋ฎ์ถ๊ณ , ๋ชจ๋ ์์ ์์๋ค์ด ์๋ก ๊ด๋ จ๋์ด ์๋ ์ ๋๋ฅผ ๋ํ๋ด๋ (2) ๋ ๋์ด๋ ๊ฒ์ด ๊ฐ์ฅ ๋ฐ๋์งํ๋ค.
๋ต : (1) ๊ฒฐํฉ๋ (2) ์์ง๋
โ 27. ๊ฒฐํฉ๋์ ์ข ๋ฅ
๐ ๋ด ๊ณต ์ธ ์ ์ค ๋ฐ ('๋ด์ฉ ๊ฒฐํฉ๋' ๊ฐ ๊ฐ์ฅ ๊ฐํจ)
์๋ฃ ๊ฒฐํฉ๋ (Data Coupling) - ์คํฌํ ๊ฒฐํฉ๋ (Stamp Coupling) - ์ ์ด ๊ฒฐํฉ๋ (Control Coupling)
- ์ธ๋ถ ๊ฒฐํฉ๋ (External Coupling) - ๊ณตํต ๊ฒฐํฉ๋ (Common Coupling) - ๋ด์ฉ ๊ฒฐํฉ๋ (Content Coupling)
โ 28. ์์ง๋์ ์ข ๋ฅ
๐ ์ฐ ๋ ผ ์ ์ ํต ์ ๊ธฐ ('์ฐ์ฐ์ ์์ง๋' ๊ฐ ๊ฐ์ฅ ์ฝํจ)
๊ธฐ๋ฅ์ ์์ง๋ (Functional Cohesion) - ์์ฐจ์ ์์ง๋ (Sequential Cohesion) - ํต์ ์ ์์ง๋ (Communication Cohesion) - ์ ์ฐจ์ ์์ง๋ (Procedural Cohesion) - ์๊ฐ์ ์์ง๋ (Temporal Cohesion) - ๋ ผ๋ฆฌ์ ์์ง๋ (Logical Cohesion)
- ์ฐ์ฐ์ ์์ง๋ (Coincidental Cohesion)
โ 29. ํฌ์ธ (Fan-In) / ํฌ์์ (Fan-Out)
ํฌ์ธ (Fan-In) : ์์ ์ ํธ์ถํ๋ ๋ชจ๋์ ์
ํฌ์์ (Fan-Out) : ์์ ์ด ํธ์ถํ๋ ๋ชจ๋์ ์
๐ข ๋ค์ ํ๋ก๊ทธ๋จ์ ๊ตฌ์กฐ์์ Fan-in์ ์๊ฐ 2 ์ด์์ธ ๋ชจ๋์ ์ด๋ฆ์ ์ฐ์์ค.
๋ต : F, H