diff --git a/Aug/article/React:mount-vs-render?.md b/Aug/article/React:mount-vs-render?.md
new file mode 100644
index 0000000..eabcfd7
--- /dev/null
+++ b/Aug/article/React:mount-vs-render?.md
@@ -0,0 +1,101 @@
+# [React: "mount" vs "render"?](https://reacttraining.com/blog/mount-vs-render)
+
+### ๐๏ธ ๋ฒ์ญ ๋ ์ง: 2024.08.19
+
+### ๐ง ๋ฒ์ญํ ํฌ๋ฃจ: ๋ง์คํฐ์(๋ช
์ฌ์)
+
+---
+
+## React: "mount" vs "render" ?
+
+Brad Westfall
+Updated On Jan 31, 2020
+Keyword : **React**
+
+์๋ก์ด ๊ฒ์ ๋ฐฐ์ฐ๋ ๊ฒ์ ์ข
์ข
๋ง์ ์๋ก์ด ์ฉ์ด์ ํจ๊ป ์ต๋๋ค. ๊ทธ๋ ๋ค๋ฉด React์์ "mounting"๊ณผ "rendering"์ ์ฐจ์ด์ ์ ๋ฌด์์ผ๊น์?
+
+### tldr;
+
+- "Rendering"์ ํจ์ํ ์ปดํฌ๋ํธ๊ฐ ํธ์ถ๋๊ฑฐ๋ ํด๋์ค ๊ธฐ๋ฐ์ render ๋ฉ์๋๊ฐ ํธ์ถ๋์ด DOM์ ์์ฑํ๋ ์ผ๋ จ์ ๋ช
๋ น์ ๋ฐํํ๋ ๋ชจ๋ ์๊ฐ์ ์๋ฏธํฉ๋๋ค.
+- "Mounting"์ React๊ฐ ์ปดํฌ๋ํธ๋ฅผ ์ฒ์ "๋ ๋๋ง"ํ๊ณ , ์ด๋ฌํ ๋ช
๋ น์ ์ฌ์ฉํ์ฌ ์ด๊ธฐ DOM์ ์ค์ ๋ก ๊ตฌ์ถํ๋ ๊ณผ์ ์ ์๋ฏธํฉ๋๋ค.
+
+"์ฌ๋ ๋๋ง(re-render)"์ React๊ฐ ์ด๋ฏธ ๋ง์ดํธ๋ ์ปดํฌ๋ํธ์์ ์๋ก์ด ๋ช
๋ น ์ธํธ๋ฅผ ์ป๊ธฐ ์ํด ํจ์ํ ์ปดํฌ๋ํธ๋ฅผ ๋ค์ ํธ์ถํ๋ ๊ฒ์
๋๋ค.
+
+ํจ์ํ ์ปดํฌ๋ํธ๋ฅผ ๊ฐ๋ฅด์น๋ฉด์ "๋ง์ดํ
(mounting)"๊ณผ "๋ ๋๋ง(rendering)"์ ๋ํ ์ง๋ฌธ์ ํด๋์ค ๊ธฐ๋ฐ ์ปดํฌ๋ํธ๋ฅผ ๊ฐ๋ฅด์น ๋๋ณด๋ค ๋ ์์ฃผ ๋ฐ๊ธฐ ์์ํ์ต๋๋ค. ์ ๊ทธ๋ฐ์ง ์ดํดํ ๊ฒ ๊ฐ์ต๋๋ค. ๋จผ์ ํด๋์ค ๊ธฐ๋ฐ ์ปดํฌ๋ํธ์์ "๋ง์ดํ
"๊ณผ "๋ ๋๋ง"์ ์ฐจ์ด๋ฅผ ์ค๋ช
ํ๊ณ , ๊ทธ ํ ๋์ผํ ๊ฐ๋
์ ํจ์ํ ์ปดํฌ๋ํธ์ ๋น๊ตํด ๋ณด๊ฒ ์ต๋๋ค.
+
+React๊ฐ ์ฒ์์ผ๋ก ๋ง๋๋ ์ปดํฌ๋ํธ๊ฐ `App`์ด๋ผ๊ณ ๊ฐ์ ํด๋ณด๊ฒ ์ต๋๋ค. ์ด ์ปดํฌ๋ํธ๋ฅผ `ReactDOM.render`์ ์ ๋ฌํฉ๋๋ค.
+
+```tsx
+class App extends React.Component {
+ state = {
+ showUser: false,
+ };
+
+ render() {
+ return (
+
+ {this.state.showUser && }
+
+
+
+ );
+ }
+}
+
+ReactDOM.render(, document.getElementById('root'));
+```
+
+React๋ ๋ด๋ถ์ ์ผ๋ก `App`์ ์ธ์คํด์ค๋ฅผ ์์ฑํ๊ณ , ์ด๊ธฐ DOM์ ๊ตฌ์ฑํ๊ธฐ ์ํ ์ฒซ ๋ฒ์งธ ๋ช
๋ น ์ธํธ๋ฅผ ์ป๊ธฐ ์ํด `render` ๋ฉ์๋๋ฅผ ํธ์ถํฉ๋๋ค. ํด๋์ค ๊ธฐ๋ฐ ์ปดํฌ๋ํธ์์ render ๋ฉ์๋๊ฐ ํธ์ถ๋ ๋๋ง๋ค ์ด๋ฅผ "๋ ๋๋ง"์ด๋ผ๊ณ ํฉ๋๋ค. ์ฒซ ๋ฒ์งธ ๋ ๋๋ง์์๋ ์ปดํฌ๋ํธ๊ฐ "๋ง์ดํ
"๋๋ค๊ณ ํ๋ฉฐ, React๊ฐ DOM์ ๋ช
๋ น์ ์ ์ฉํ๊ณ ์ด์ ์ ์กด์ฌํ์ง ์์๋ DOM์ ์์ฑํ๋ ๊ฒ์
๋๋ค.
+
+์ฌ์ฉ์๊ฐ `Show User` ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค. ์ํ๊ฐ ๋ณ๊ฒฝ๋ ๋๋ง๋ค React๋ ์ปดํฌ๋ํธ๋ฅผ "์ฌ๋ ๋๋ง"ํฉ๋๋ค. ์ด๋ ์ํ ๋ณ๊ฒฝ์ ๋ฐ๋ผ ์๋ก์ด ๋ช
๋ น์ ์ป๊ธฐ ์ํด render ๋ฉ์๋๋ฅผ ๋ค์ ํธ์ถํ๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ์์ ์ปดํฌ๋ํธ์ ๊ฒฝ์ฐ, ์ด ์ฌ๋ ๋๋ง์์ `showUser` ๊ฐ์ด `true`๊ฐ ๋ฉ๋๋ค. ์ด ๊ฐ์ด `true`๊ฐ ๋๋ฉด, ์ปดํฌ๋ํธ์์ ๋ฐํ๋ ๋ช
๋ น์ React์๊ฒ DOM ์
๋ฐ์ดํธ๊ฐ ํ์ํจ์ ์๋ ค์ค๋๋ค. ๋ง์ดํ
๋จ๊ณ๋ ์ฒซ ๋ฒ์งธ ๋ ๋๋ง์์๋ง ๋ฐ์ํ๋ฏ๋ก ๋ ๋ฒ์งธ ๋ ๋๋ง์ ๋ง์ดํ
์ด ์๋๋ฉฐ, DOM์์ ์ด๋ค ๋ถ๋ถ์ด ์
๋ฐ์ดํธ๋์ด์ผ ํ๋์ง๋ฅผ ํ์
ํด์ผ ํฉ๋๋ค. React๋ ๋ด๋ถ์ ์ผ๋ก ์ด์ ๋ช
๋ น๊ณผ ์๋ก์ด ๋ช
๋ น์ ๋น๊ตํ์ฌ DOM์์ ์ค์ ๋ก ์
๋ฐ์ดํธ๊ฐ ํ์ํ ๋ถ๋ถ์ ํ์ธํ๋๋ฐ, ์ด๋ฅผ "[์กฐ์ (reconciliation)](https://legacy.reactjs.org/docs/reconciliation.html)"์ด๋ผ๊ณ ํฉ๋๋ค.
+
+์ค์ํ ์ ์ ์ฒซ ๋ฒ์งธ "๋ ๋๋ง"์ด React๊ฐ DOM์ ํญ๋ชฉ์ "๋ง์ดํ
"ํ๋ ๊ฒ์ผ๋ก ์ด์ด์ง๋ฉฐ, ์ฌ๋ ๋๋ง์ DOM์ ์
๋ฐ์ดํธํ์ง๋ง ๋ง์ดํ
์ ํ ๋ฒ๋ง ๋ฐ์ํ๋ค๋ ๊ฒ์
๋๋ค.
+
+์ด์ ์์ ๊ฐ์ ์ฝ๋๋ฅผ ๋ค์ ์จ๋ด
์๋ค. ๋์ ํจ์ ์ปดํฌ๋ํธ์ ํ
๊ณผ ํจ๊ป ์๋๋ค:
+
+```tsx
+function App() {
+ const [showUser, setShowUser] = useState(false);
+
+ return (
+
+ {showUser && }
+
+
+
+ );
+}
+```
+
+ํจ์ํ ์ปดํฌ๋ํธ๋ ๋ ๋์ ๋ง์ดํธ ๊ณผ์ ์ ๊ฐ์ง๊ณ ์์ต๋๋ค. React๊ฐ ํจ์ํ ์ปดํฌ๋ํธ๋ฅผ ์ฌ์ฉํ ๋, ํจ์๊ฐ ํธ์ถ(๋ ๋๋ง)๋๊ณ ๋ฐํ๋ ๋ช
๋ น์ด ๋ง์ดํธ์ ์ฌ์ฉ๋ฉ๋๋ค. ๊ทธ๋์ ํจ์ํ ์ปดํฌ๋ํธ๋ ์ ์ฒด ํจ์๊ฐ ํด๋์ค ์ปดํฌ๋ํธ์ render ๋ฉ์๋์ ์ ์ฌํ๋ค๊ณ ํ ์ ์์ต๋๋ค. ์ฝ๋์์ "render"๋ผ๋ ๋จ์ด๋ฅผ ๋ช
์์ ์ผ๋ก ๋ณด์ง ์๋๋ผ๋ ๋ง์
๋๋ค.
+
+ํจ์ํ ์ปดํฌ๋ํธ๊ฐ ์ด์ ์ํ๋ฅผ ๊ฐ์ง ์ ์๊ธฐ ๋๋ฌธ์, ์ํ๊ฐ ๋ณ๊ฒฝ๋ ๋๋ง๋ค ์ปดํฌ๋ํธ๋ ์ด์ ๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ์ฌ๋ ๋๋ง์ด ํ์ํฉ๋๋ค.
+
+```tsx
+// ๋ฆฌ์กํธ๊ฐ ์ฐ๋ฆฌ์ ์ปดํฌ๋ํธ๋ฅผ renderํ๊ธฐ ์์ํ๊ณ ์ด๊ฒ์ด ์ฒซ๋ฒ์งธ render์ด๊ธฐ ๋๋ฌธ์, ์ด๊ฒ์ด DOM์ ์ปดํฌ๋ํธ๋ฅผ "mounts'์
๋๋ค.
+App();
+
+// ์ํ๊ฐ ๋ฐ๋๊ณ ๋ฆฌ์กํธ๋ ์ด์ ์๋ก์ด ์ํ๊ฐ ๋์ ์ปดํฌ๋ํธ ์ฌ๋ ๋๋ง์ด ํ์ํฉ๋๋ค.
+App();
+
+// ์ํ๊ฐ ๋ค์ ๋ฐ๋๊ณ ๋ฆฌ์กํธ์ ์ฌ๋ ๋๋ง์ด ๋ค์ ์ผ์ด๋ฉ๋๋ค.
+App();
+```
+
+์ด๊ธฐ ๋ ๋๋ง์ ๋ง์ดํ
์ ์ ๋ํ๋ฉฐ, ์ฌ๋ ๋๋ง์ ๋จ์ํ ํจ์๋ฅผ ๋ค์ ํธ์ถํ๋ ๊ณผ์ ์
๋๋ค.
+
+์ด์ ๋ ์ปดํฌ๋ํธ, `User`์ `App`์ ์๋ก ๋ค์ด๋ณด๊ฒ ์ต๋๋ค.
+
+React๋ ์ฒ์์ App์ ๋ ๋๋งํ์ง๋ง User๊ฐ ๋ฐํ๋์ง ์๊ธฐ ๋๋ฌธ์ User๋ React์๊ฒ ์๋ ค์ง์ง ์์ต๋๋ค. ์ด ์์ ์์ App์ ๋ง์ดํธ๋์ง๋ง User๋ ๋ง์ดํธ๋์ง ์์ต๋๋ค.
+
+๊ทธ ํ showUser๊ฐ true๋ก ์ค์ ๋๋ฉด `App`์ด ์ฌ๋ ๋๋ง๋๊ณ , `User`๋ฅผ ํฌํจํ ๋ช
๋ น์ด ๋ฐํ๋์ด `User`๊ฐ ์ฒ์ ๋ ๋๋ง๋๊ณ ๋ง์ดํธ๋ฉ๋๋ค.
+
+์ฌ์ฉ์๊ฐ `Hide User` ๋ฒํผ์ ํด๋ฆญํ๋ฉด ์ํ๊ฐ ๋ณ๊ฒฝ๋์ด `App`์ด ๋ค์ ์ฌ๋ ๋๋ง๋ฉ๋๋ค. ์๋ก์ด ๋ช
๋ น๊ณผ ์ด์ ๋ ๋๋ง์์ ๋ฐํ๋ ๋ช
๋ น์ด ๋น๊ต๋๊ณ , React๋ `User`๊ฐ ๋ ์ด์ `App`์์ ๋ฐํ๋์ง ์์์ ๊ฐ์งํ์ฌ `User`๋ฅผ DOM์์ "์ธ๋ง์ดํธ"ํฉ๋๋ค.
+
+์ปดํฌ๋ํธ ์ํคํ
์ฒ์์ ๋ถ๋ชจ ๋
ธ๋๋ ์์ ๋
ธ๋๋ฅผ ์ธ์ํ์ง๋ง ์์ ๋
ธ๋๋ ๋ถ๋ชจ ๋
ธ๋๋ฅผ ์ธ์ํ์ง ์๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. React๋ ๋ถ๋ชจ ์ปดํฌ๋ํธ๊ฐ ์ฌ๋ ๋๋ง๋ ๋๋ง๋ค ์์ ๋
ธ๋๋ ์ฌ๋ ๋๋งํ๋ ๊ฒ์ด ์์ฐ์ค๋ฌ์ด ํน์ฑ์
๋๋ค.
+
+๊ฐ ์ปดํฌ๋ํธ๊ฐ ์์ฒด์ ์ธ ๋ง์ดํ
๋ฐ ๋ ๋๋ง "์ค์ผ์ค"์ ๊ฐ์ง๋๋ผ๋, ์์ ์ปดํฌ๋ํธ๋ ๋ถ๋ชจ๊ฐ ๋ง์ดํธ๋ ๊ฒฝ์ฐ์๋ง ๋ ๋๋ง ๋ฐ ๋ง์ดํธ๋ ์ ์์ต๋๋ค. ๋ถ๋ชจ ์ปดํฌ๋ํธ๊ฐ ์ธ๋ง์ดํธ๋๋ฉด, ๊ทธ ์์๋ค๋ ์ธ๋ง์ดํธ๋ฉ๋๋ค.