728x90 ์ ์ฒด ๊ธ50 [๋์์ธํจํด] ์ ๋ต ํจํด ๊ฐ์ฒด์ ํ์๋ฅผ ํด๋์ค๋ฅผ ํตํด ์บก์ํํ์ฌ ๋์ ์ผ๋ก ํ์๋ฅผ ๋ณ๊ฒฝํ ์ ์๊ฒ ํด์ฃผ๋ ํจํด ์ฅ์ :์ฝ๋์ ์ ์ฐ์ฑ : ์๋ก ๋ค๋ฅธ ์๊ณ ๋ฆฌ์ฆ์ ์ฝ๊ฒ ๊ต์ฒดํ ์ ์์ผ๋ฏ๋ก, ์ฝ๋์ ์ ์ฐ์ฑ ๋์์ง์ฌ์ฌ์ฉ์ฑ : ํน์ ํ๋(์ ๋ต)์ ๋ณ๋์ ํด๋์ค๋ก ๋ถ๋ฆฌํจ์ผ๋ก์จ ์ฌ๋ฌ ๊ฐ์ฒด์์ ์ฌ์ฌ์ฉ๋ฐํ์์์ ์ ๋ต ์ ํ : ์ธํฐํ์ด์ค๋ฅผ ํตํด ๋ค์ํ ์๊ณ ๋ฆฌ์ฆ(์ ๋ต)์ ๊ตฌํ ๊ฐ๋ฅ, ์ด๋ฅผ ๋ฐํ์์ ์ ํํ๊ฑฐ๋ ๊ต์ฒด๋จ์ :ํด๋์ค ์ ์ฆ๊ฐ : ํด๋์ค๋ก ๋ถ๋ฆฌํ์ฌ ํด๋์ค์ ์ ์ฆ๊ฐํจ. ์ด๋ก์ธํด ์ฝ๋ ๋ณต์กํด์งํด๋ผ์ด์ธํธ ์ฝ๋์ ๋ณต์ก์ฑ : ๊ฐ์ฒด ์์ฑ ๋ฐ ๊ด๋ฆฌ ๋ก์ง ์ถ๊ฐ๋จ์์กด์ฑ ์ฆ๊ฐ : ์๋ชป ์ค๊ณ ์ ์ ์ง๋ณด์ ์ด๋ ค์์์ ์ฝ๋# ์ ๋ตclass MusicStrategy: def recommend_song(self): pass# ๋ฐ๋ผ๋class Ballad(.. 2024. 9. 10. [๋์์ธํจํด] MVVM ํจํด MVVM ํจํด์ํํธ์จ์ด ๋์์ธ ํจ๋, UI ๊ฐ๋ฐ์ ์ฌ์ฉ. ๋ทฐ(View)์ ๋ชจ๋ธ(Model) ์ฌ์ด์ ๊ฐํ ๊ฒฐํฉ์ ์ค์ด๊ธฐ ์ํด ๋์ Model : ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ดํฐ์ ๋น์ฆ๋์ค ๋ก์ง์ ๊ด๋ฆฌView : ์ฌ์ฉ์ ์ธํฐํ์ด์ค ์์ViewModel : View์ Model ์ฌ์ด์์ ๋ฐ์ดํฐ๋ฅผ ์ค๊ณํ๊ณ , ๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ์ ํตํด View์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ฌMVC์ MVVM์ ์ฐจ์ด์ ์ฌ์ฉ์ ์ ๋ ฅ ์ฒ๋ฆฌ:MVC: ์ฌ์ฉ์ ์ ๋ ฅ์ Controller๊ฐ ์ง์ ์ฒ๋ฆฌMVVM: ์ฌ์ฉ์ ์ ๋ ฅ์ ViewModel์ด ์ฒ๋ฆฌํฉ๋๋ค.๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ:MVC : ๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ์ด ์๋ X, Controller๋ฅผ ํตํด ์๋์ผ๋ก ์ฒ๋ฆฌMVVM : ๋ฐ์ดํฐ ๋ฐ์ธ๋ฉ์ด ์๋, View์ ViewModel ๊ฐ์ ๋ฐ์ดํฐ ๋๊ธฐํ๊ฐ ํ๋ ์์ํฌ์ ์ํด ์๋์ผ๋ก ์ฒ๋ฆฌ์์ ์ฝ๋# Mod.. 2024. 9. 9. [JavaScript] ๊ฐ์ฒด ๐ ์๋ฐ์คํฌ๋ฆฝํธ ๊ฐ์ฒด ์ ์ ์๋ฐ๋ ์์์ ์ ์ด์ ์ฝ๋์ ์ฌ์ฌ์ฉ์ ์ํด ์ฌ์ฉํ๋ค. ํ์ง๋ง ์๋ฐ์คํฌ๋ฆฝํธ๋ ์ค๋ก์ง ์ฝ๋์ ์ฌ์ฌ์ฉ(๊ณต์ )์ ์ํด์ ์ฌ์ฉํ๋ค. ๐๊ฐ์ฒด ๋ฆฌํฐ๋ด ๋ฐฉ์: ES3 var pobj ={ x: 100, y: 200, myShape: 'Player', display: function(){ document.write(""+this.x+", "+this.y+"="+this.myShape+"") } }; pobj.display(); ๐ ์์ฑ์ํจ์ ํจํด์ ๊ฐ์ฒด ์์ฑ: ES5 // java: ClassType object = new ClassType(); function Person(){ // ์์ฑ์ํจ์๋ฅผ ๋ง๋ ๋ค๊ณ ์๊ฐ. // ์ธ์คํด์ค์ ๊ตฌ์ฑ์์๋ฅผ ์ด๊ธฐํ this.x= 100; // ํจ์์ ์์ฑ์ํจ์ .. 2024. 1. 17. [DB] ์ธ๋ฑ์ค( Index ) ๐ ์ธ๋ฑ์ค( Index ) ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ๋น ๋ฅด๊ฒ ์ฐพ์ ์ ์๋๋ก ๋ง๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ด๋ค. ๋น ๋ฅธ ํ์ ์๋๋ฅผ ์ํด ์ฌ์ฉํ๋ ๊ธฐ์ ์ด๋ค. ๐ ์ธ๋ฑ์ค ์์ฑ ๊ณ ๋ ค์ฌํญ WHERE์ ์ ์์ฃผ ์ฌ์ฉ๋๋ ์์ฑ ์กฐ์ธ์ด ์์ฃผ ์ฌ์ฉ๋๋ ์์ฑ ๋จ์ผ ํ ์ด๋ธ์ ์ธ๋ฑ์ค ๋ง์ผ๋ฉด ์๋๊ฐ ๋๋ ค์ง๋ค. (3~4๊ฐ ๊ถ์ฅ) ๐ ์ธ๋ฑ์ค์ ์ข ๋ฅ ์๋์ธ๋ฑ์ค: ๊ธฐ๋ณธํค(PK), UNIQUE ๊ท์น์ ์ํด ์๋์ผ๋ก ์์ฑ๋๋ ์ธ๋ฑ์ค์ด๋ค. ์๋์ธ๋ฑ์ค: CREATE INDEX ๋ช ๋ น์ผ๋ก ์์ฑ๋ ์ธ๋ฑ์ค์ด๋ค. ๐ ํ ์ด๋ธ์ ํฌ๊ธฐ๊ฐ ์๊ฑฐ๋, ์์ฃผ ๊ฐฑ์ ๋ ๋ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ์ง์๋๋ค. ๐ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํด ํ์ ์์ ๊ฒฐ๊ณผ๋ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ๊ธฐ ์ ๊ฒฐ๊ณผ์ด๊ณ , ๋ฐ์ ๊ฒฐ๊ณผ๊ฐ ์ธ๋ฑ์ค๋ฅผ ์ฌ์ฉํ ํ์ ๊ฒฐ๊ณผ์ด๋ค. COST๋ฅผ ๋ณด๋ฉด 2์ฉ ๋ด๋ ค๊ฐ๋ค. ๐ ์ธ๋ฑ์ค์ ์ฌ์ฉํ ์ ํ์์ ํจ์จ์ ๋น๊ตํด๋ณด์์.. 2024. 1. 3. [DB] ๋ทฐ VIEW ๐ผ ๋ทฐ( View ) ํ ์ด๋ธ์ ํฉ์ณ์ ๋ง๋ ๊ฐ์์ ํ ์ด๋ธ์ด๋ค. ํธ๋ฆฌ์ฑ, ์ฌ์ฌ์ฉ์ฑ: ์์ฃผ ์ฌ์ฉ๋๋ ๋ณต์กํ ์ง์๋ฅผ ๋ทฐ๋ก ๋ฏธ๋ฆฌ ์ ์ํด ์ฌ์ฉํ ์ ์๋ค. ๋ณด์์ฑ: ์ค์ํ ์ง์(ex. ๊ฐ์ธ์ ๋ณด)์ ๊ฒฝ์ฐ ์ํธํํ์ฌ ์ ๊ณตํ๊ฑฐ๋, ์ฌ์ฉ์๋ณ๋ก ํ์ํ ๋ฐ์ดํฐ๋ง ์ ๋ณํด ์ ๊ณตํ ์ ์๋ค. ๋ ๋ฆฝ์ฑ: ์๋ณธ ํ ์ด๋ธ์ ๊ตฌ์กฐ๊ฐ ๋ณํด๋ ์์ฉํด ์ํฅ์ฃผ์ง ์๋๋กํ๋ ๋ ผ๋ฆฌ์ ๋ ๋ฆฝ์ฑ์ด ์ ๊ณต๋๋ค. ๐ผ ๋ทฐ์ ํน์ง ์๋ณธ ๋ฐ์ดํฐ ๊ฐ์ ๋ฐ๋ผ ๊ฐ์ด ๋ณํ๋ค.(์ฐ๊ฒฐ) ๋ ๋ฆฝ์ ์ธ ์ธ๋ฑ์ค ์์ฑ ์ด๋ ต๋ค. ์ฝ์ , ์ญ์ , ๊ฐฑ์ ์ฐ์ฐ์ ๋ง์ ์ ์ฝ์ด ์กด์ฌํ๋ค. SELECT * FROM BOOK WHERE BOOKNAME LIKE '%์ถ๊ตฌ%'; -- ๋ทฐ ์์ฑ CREATE VIEW VW_BOOK AS SELECT * FROM BOOK WHERE BOOKNAME LIKE '%.. 2024. 1. 3. [DB] ์ ๊ทํ ์ค๋ณต์ ์ต์ํํ๊ธฐ์ํด์ ์ ๊ทํ๋ฅผ ํ๋ค. ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ์ฅ ํฐ ๋ชฉ์ ์ ์ค๋ณต์ ์ ๊ฑฐํ๋ ๊ฒ์ด๋ค. ์? ์ค๋ณต์ด ์์ผ๋ฉด ์ด์ ํ์์ด ๋ฐ์ํ ์ ์๋ค. ๐ฒ ์ด์ ํ์ ( Anomaly ) ์ญ์ ์ด์: ์ฐ์์ ์ญ์ ๋ฌธ์ ๋ฐ์ ์ฝ์ ์ด์: NULL ๊ฐ ๋ฌธ์ ๋ฐ์ ์์ ์ด์: ๋ถ์ผ์น ๋ฌธ์ ๋ฐ์ ๐ฒ ํจ์ ์ข ์์ฑ( Functional Dependency ) ์ด๋ค ์์ฑ์ ๊ฐ์ ์๋ฉด ๋ค๋ฅธ ์์ฑ ๊ฐ์ด ์ ์ผํ๊ฒ ์ ํด์ง๋ ์์กด ๊ด๊ณ๋ฅผ ์ข ์ํ๋ค๊ณ ํ๋ค. ex. ํ์ ๋ฒํธ๋ฅผ ์๋ฉด ํ์์ด๋ฆ์ ์ ์ ์๋ค. ํ์ง๋ง ํ์๋ฒํธ๋ก ํ์์ด ์๊ฐํ๋ ๊ฐ์ข์ด๋ฆ์ ์ ์ผํ๊ฒ ์ ์๋ ์๋ค. (์ฌ๋ฌ๊ฐ๋ฅผ ์๊ฐํ ์ ๋ ์๊ธฐ๋๋ฌธ์) X ๊ฐ๊ฐ์ ๊ฐ์ด Y์ ๊ฐ ํ ๊ฐ์ ๋์์ด ๋๋ฉด ‘X๋ Y๋ฅผ ํจ์์ ์ผ๋ก ๊ฒฐ์ ํ๋ค’, X→Y๋ก ํ๊ธฐํ๋ค. X๊ฐ ๊ฒฐ์ ์์ด๋ค. * ํจ์ .. 2024. 1. 2. ์ด์ 1 2 3 4 5 6 7 ยทยทยท 9 ๋ค์ 728x90