๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ
ํ์ ์คํฌ๋ฆฝํธ + ๋ฆฌ๋์ค
https://devlog-h.tistory.com/33 Typescript์์ Redux๋ฅผ ์ฌ์ฉํด๋ณด์ ์๋ ํ์ธ์ ํด๋ชฌ๋ฉ ์ด๋ณด ๊ฐ๋ฐ์ ์ฐจ์์์ ๋๋ค. ์ด๋ฒ ์๊ฐ์๋ Typescript ํ๊ฒฝ์์ Redux๋ฅผ ์ฌ์ฉํด๋ณด๊ฒ ์ต๋๋ค. Redux๋ React ์์์ state๊ด๋ฆฌ๊ฐ ํ๋ค ์ ์๋ ๋ถ๋ถ์ ๋ณด์ํ๊ธฐ ์ํด ๋ง๋ค์ด์ก์ต๋๋ค. โป devlog-h.tistory.com
[์์คํธ๋ฆฌ] ์์คํธ๋ฆฌ ๊ธฐ๋ณธ
https://devlog-h.tistory.com/9 ์์คํธ๋ฆฌ ์๋ฒฝ๋ถํด ๊ฐ์ด๋ (2) Revision - Discard, Reset, Revert ์๋ ํ์ธ์. ํด๋ชฌ๋ฉ ์ด๋ณด ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ์(Ho Park)๊ฐ ์์ฑํ๋ ์ด๋ณด ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ์๋ฅผ ์ํ ๊ธ ์ ๋๋ค. ์ด ๊ธ์ ์ด๋ณด ๊ฐ๋ฐ์ ๊ธฐ์ค์ผ๋ก ๊ฐ์ธ์ ์ธ ์๊ฐ๊ณผ ๊ฒฝํ์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋ devlog-h.tistory.com https://devlog-h.tistory.com/7?category=1094461 ์์คํธ๋ฆฌ ์๋ฒฝ๋ถํด ๊ฐ์ด๋ (1) ์๋ ํ์ธ์. ํด๋ชฌ๋ฉ ์ด๋ณด ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ์(Ho Park)๊ฐ ์์ฑํ๋ ์ด๋ณด ์๋๋ก์ด๋ ์ฑ ๊ฐ๋ฐ์๋ฅผ ์ํ ๊ธ ์ ๋๋ค. ์ด ๊ธ์ ์ด๋ณด ๊ฐ๋ฐ์ ๊ธฐ์ค์ผ๋ก ๊ฐ์ธ์ ์ธ ์๊ฐ๊ณผ ๊ฒฝํ์ ๋ฐํ์ผ๋ก ์์ฑ๋์์ต๋ devlog-h.t..
python -m SimpleHTTPServer 8000 ์ค๋ฅ
python -m SimpleHTTPServer 8000 ๋ฅผ ํฐ๋ฏธ๋์ ์ณค์ ๋ No module named SimpleHTTPServer ๋ผ๋ ์๋ฌ๋ฉ์์ง๋ฅผ ๋ฐ๋ ์ด์์ ๋ํ ํด๊ฒฐ์ ์๋ ๋ธ๋ก๊ทธ ํ์ด์ฌ(python)์ ์ด์ฉํ ๊ฐ๋จํ ํ์ผ ์๋ฒ ๋ช ๋ น (daum.net) ํ์ด์ฌ(python)์ ์ด์ฉํ ๊ฐ๋จํ ํ์ผ ์๋ฒ ๋ช ๋ น ํ์ด์ฌ(python)์ ์ด์ฉํ ๊ฐ๋จํ ํ์ผ ์๋ฒ ๋ช ๋ น ๊ธ. ์ค์๋ฌธ (sualchi@daum.net) ํ์ด์ฌ์ด ์ค์น๋์ด ์๊ณ PATH๊น์ง ์ค์ ๋์ด ์๋ค๋ฉด ๋ค์์ฒ๋ผ ํ ์ค๋ง ์ ๋ ฅํ๋ฉด ํ์ผ ์๋ฒ๋ก ๋์ํ๊ฒ ๋ง๋ค ์ ์๋ค. ์ blog.daum.net ํ์ด์ฌ์ด ์ค์น๋์ด ์๊ณ PATH๊น์ง ์ค์ ๋์ด ์๋ค๋ฉด ๋ค์์ฒ๋ผ ํ ์ค๋ง ์ ๋ ฅํ๋ฉด ํ์ผ ์๋ฒ๋ก ๋์ํ๊ฒ ๋ง๋ค ์ ์๋ค. [ํ์ผ ์๋ฒ ๊ตฌ์ถ ๋ฐฉ๋ฒ] ํ์ด์ฌ..
WebGL์ด๋, three.js๋, pixi.js๋
WebGL์ด๋ ๋ฌด์์ธ๊ฐ(+ HTML Canvas, WebGL ๊ธฐ์ด) (tistory.com) WebGL์ด๋ ๋ฌด์์ธ๊ฐ(+ HTML Canvas, WebGL ๊ธฐ์ด) ์ด ๊ธ์ ๋ค์ด๊ฐ๊ธฐ ์์, ํน์ ํ๋ คํ ์ ๋๋ฉ์ด์ ๋ง ๋ณด๊ณ ํฅ๋ฏธ๋ฅผ ๊ฐ์ก๋ค๋ฉด, ํ ๊ฐ์ง๋ฅผ ๋ ์๊ฐํ๋ฉด ์ข์ ๊ฑฐ ๊ฐ๋ค. ์์ํ๊ฒ ์ง๋ง ์ํ์ด๋ค. ๊ฒฐ๊ตญ 3D ๊ทธ๋ํฝ์ ์ธ ๊ฐ์ ์ขํ๋ฅผ ์ ์ผ๋ก ์ฐ๊ฒฐํด์ ์ code-masterjung.tistory.com WEB GL์ ์น์์์ ๊ทธ๋ํฝ์ ํํํ ๋ ์ฐ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ด๋ค. ์๋ฐ์คํฌ๋ฆฝํธ ์ธ์ด๋ก ์ฐ์ด๋ฉฐ 2D์ 3D ๊ทธ๋ํฝ์ ํํํ ์ ์๋ค. WEB GL์ GPU๋ฅผ ์ด์ฉํด์ ๊ทธ๋ฆผ์ ๊ทธ๋ฆฌ๊ธฐ ๋๋ฌธ์ ์ฑ๋ฅ๋ฉด์์ ์ ๋ฆฌํจ์ด ์๋ค. ํนํ ์น์์์ 3D๋ก ๊ทธ๋ ค์ง๋ ๊ฒ๋ค์ WEB GL๋ก ๊ทธ๋ ค์ก๋ค๊ณ ๋ด๋ ๋ฌด๋ฐฉํ๋ฐ, WEB GL API๋ค..
![[Html,Css] ๋ฐ์ํ ํค๋ ๋ฐ๋ผ๋ง๋ค๊ธฐ](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcfCmb3%2FbtrASwi3zLc%2FYx0tswiGKyHztQkAu650D1%2Fimg.png)
[Html,Css] ๋ฐ์ํ ํค๋ ๋ฐ๋ผ๋ง๋ค๊ธฐ
https://youtu.be/X91jsJyZofw *์ ์๋ฆฌ๋ ์์์ ๋ณด๊ณ ํ์ตํ ํฌ์คํ ์ ๋๋ค. html Two Angel Home Gallery Sale FAQ Blog css body { margin: 0; font-family: Poppins Source Sans Pro; } a { text-decoration: none; color: #fff; } .navbar { display: flex; justify-content: space-between; align-items: center; background-color: #263343; padding: 8px 12px; } .navbar__logo { font-size: 24px; color: white; } .navbar__logo i { colo..
[์๋ฐ์คํฌ๋ฆฝํธ] for๋ฌธ๊ณผ foreach ์ค์ ์์ ๋น๊ต
for๋ฌธ let tabs = document.querySelectorAll(".task-tabs div"); for (let i = 1; i menu.addEventListener("click", (event) => getNewsByTopic(event)) ); const getNewsByTopic = (event) => { console.log("ํด๋ฆผ๋จ", event.targe..
[ํ์ ์คํฌ๋ฆฝํธ] ํฉํ ๋ฆฌ ํจํด
1๋ฒ ๋ฐฉ์ interface Shoe { purpose: string; } class BalletFlat implements Shoe { purpose = "dancing"; } class Boot implements Shoe { purpose = "woodcutting"; } class Sneaker implements Shoe { purpose = "walking"; } class ShoeFactory { static create(Type: "balletFlat" | "boot" | "sneaker"): Shoe { switch (Type) { case "balletFlat": return new BalletFlat(); break; case "boot": return new Boot(); break..
[์๋ฐ์คํฌ๋ฆฝํธ] Array.from( {length} ๊ตฌ๋ฌธ์์ {length}์ ์ ์ฌ๋ฐฐ์ด?
https://velog.io/@teihong93/Array.from%EC%9D%84-%ED%86%B5%ED%95%9C-%EB%B0%B0%EC%97%B4%EC%9D%98-%EC%B4%88%EA%B8%B0%ED%99%94
[ํ์ ์คํฌ๋ฆฝํธ] ์ฐ์ต์ฉ์ผ๋ก ์์ฃผ ์ฌ์ฉํ๋ ์ธํ
์ค์น์ ๋ณํ ํ์ค ์์ฝ node.js ์ค์น → npm i -g typescript → tsconfig.json ์์ฑ → tsc -w ts๋ ๋ธ๋ผ์ฐ์ ์์๋ node์์๋ ์ฝํ์ง ์๋๋ค. ts๋ js ์ฝ๋๋ก ๋ณํํด์ฃผ์ด์ผ ํ๋ค. index.ts๋ฅผ ๋ง๋ค์๋ค๋ฉด tsc index.ts ๋ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅ main.js๋ ํ์ผ์ด ์๋ก ์์ฑ๋๋ค. ์ด ๋ณํ๋ js๋ ์ด์ ๋ธ๋ผ์ฐ์ ๋ node์์ ์ฝ์ ์ ์๋ค. ts๋ฅผ js๋ก ๋งค๋ฒ ์๋ ๋ณํ tsc ํ์ผ๋ช .ts ๋ ธ๋์์ ๊ฐํธํ๊ฒ ์คํ ts-node ์ค์น ๋ช ๋ น์ด: ๋ด๋ถ์ ์ผ๋ก ํ์ ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋๋ก ๋ณํํด์ ๋ ธ๋์์ ์คํํ๋ ๊ฒ์ ํ๋ฒ์ ํ ์ ์๋๋ก ๋์์ฃผ๋ ํด npm install -g ts-node ์ค์น ํ ๊ฐ๋ น index.ts๋ฅผ ์คํํ๊ณ ์ถ๋ค๋ฉด ts-no..
[ํ์ ์คํฌ๋ฆฝํธ] ํ์ ์คํฌ๋ฆฝํธ ์ปดํ์ผ๋ฌ(Typescript Compiler, TSC)
์ปดํ์ผ๋ฌ ํ์ ์คํฌ๋ฆฝํธ ์ปดํ์ผ๋ฌ(Typescript Compiler, TSC) ํ์ ์คํฌ๋ฆฝํธ๋ ์๋ฐ์คํฌ๋ฆฝํธ๋ ์๋ฐ ๊ฐ์ ์ฃผ์ ์ธ์ด์๋ ๋ค๋ฅธ ๋ฐฉ์์ผ๋ก ๋์ ํ๋ก๊ทธ๋จ์ ํ๋ก๊ทธ๋๋จธ๊ฐ ์์ฑํ ๋ค์์ ํ ์คํธ ํ์ผ๋ก ๊ตฌ์ฑ๋๋ค. ํ ์คํธ๋ฅผ ์ปดํ์ผ๋ฌ๊ฐ ํ์ฑํ์ฌ ์ถ์ ๋ฌธ๋ฒ ํธ๋ฆฌ(abstract syntax tree, AST)๋ผ๋ ์๋ฃ๊ตฌ์กฐ๋ก ๋ณํ ์ปดํ์ผ๋ฌ๊ฐ AST๋ฅผ ๋ฐ์ดํธ์ฝ๋๋ก ๋ณํ ๋ฐํ์ ํ๋ก๊ทธ๋จ์ 2์์ ๋ณํ๋ ๋ฐ์ดํธ์ฝ๋๋ฅผ ์ ๋ ฅ, ํ๊ฐ ํ ๊ฒฐ๊ณผ์ป์. ์ฆ, ํ๋ก๊ทธ๋จ ์คํ์ด๋, ์ปดํ์ผ๋ฌ๊ฐ ์์ค ์ฝ๋๋ฅผ ํ์ฑํด AST๋ก ๋ง๋ค๊ณ , ๋ค์ AST๋ฅผ ๋ฐ์ดํธ์ฝ๋๋ก ๋ณํํ ๊ฒ์ ๋ฐํ์์ด ํ๊ฐํ๋๋ก ์ง์ํ๋ ๊ฒ ํ์ ์คํฌ๋ฆฝํธ๋ ์ปดํ์ผ๋ฌ๊ฐ ์์ค ์ฝ๋๋ฅผ ์๋ฐ์คํฌ๋ฆฝํธ ์ฝ๋๋ก ๋ณํํ๋ค(๋ฐ์ดํธ์ฝ๋X). ํ์ ์คํฌ๋ฆฝํธ๋ ์ฝ๋๋ ์ธ์ ์์ ํด์ง๋๊ฐ. ํ์ ์คํฌ๋ฆฝ..