λΆ„λ₯˜ 전체보기 76

[React] λ¦¬λ•μŠ€(Redux)

λ¦¬λ•μŠ€(Redux)λ¦¬μ•‘νŠΈμ—μ„œ μ‚¬μš©λ˜λŠ” μƒνƒœ 관리 라이브러리. μ£Όμš” κ°œλ…μ€ λ‹€μŒκ³Ό κ°™λ‹€. μ½κΈ° μ „μš© μƒνƒœ λ¦¬λ•μŠ€μ—μ„œ μ „μ—­μœΌλ‘œ κ΄€λ¦¬ν•˜λŠ” 값은 읽기 μ „μš©μœΌλ‘œ, 직접 λ³€κ²½ν•  수 μ—†λ‹€. λ‹¨μΌ μŠ€ν† μ–΄ μ „체 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ—μ„œ μ ‘κ·Ό κ°€λŠ₯ν•œ μƒνƒœλ“€μ„ μ €μž₯ν•˜κ³  μžˆλŠ” ν•˜λ‚˜μ˜ 객체.μ•‘μ…˜ μƒνƒœμ˜ 변경을 μš”μ²­ν•˜κΈ° μœ„ν•œ 객체. λ¦¬λ“€μ„œ μ•‘μ…˜κ³Ό 이전 μƒνƒœλ₯Ό λ°›μ•„ μƒˆλ‘œμš΄ μƒνƒœλ₯Ό λ°˜ν™˜ν•˜λŠ” 순수 ν•¨μˆ˜. νλ¦„μ»΄ν¬λ„ŒνŠΈ - μ•‘μ…˜ 생성 - λ””μŠ€νŒ¨μΉ˜ - μŠ€ν† μ–΄ - λ¦¬λ“€μ„œ - μƒˆ μƒνƒœ - μ»΄ν¬λ„ŒνŠΈ λ¦¬λ Œλ”λ§  πŸ“Œ μƒνƒœ(State)전체 μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ–΄λ””μ„œλ“  μ ‘κ·Όν•˜κ³  κ³΅ν†΅μœΌλ‘œ μ‚¬μš©ν•  수 μžˆλ„λ‘ μ„ μ–Έλœ μ „μ—­λ³€μˆ˜μ™€ μœ μ‚¬ν•˜λ‹€. 단, λ¦¬λ•μŠ€λŠ” 단방ν–₯ 데이터 흐름을 κ°€μ§€λ―€λ‘œ μ½κΈ°λŠ” μ–΄λ””μ„œλ“  자유둭게 κ°€λŠ₯ν•˜μ§€λ§Œ μˆ˜μ •μ€ λ°˜λ“œμ‹œ μ•‘μ…˜μ„ ν†΅ν•΄μ„œλ§Œ 이루어진닀.  πŸ“Œ μŠ€ν† ..

React 2025.03.04

[JavaScript] λ¬Έμžμ—΄ 비ꡐ

λ¬Έμžμ—΄ μƒμˆ˜ ν’€(string constant pool)μžλ°”κ°€ λ¬Έμžμ—΄μ„ string poolμ—μ„œ κ΄€λ¦¬ν•˜λ“―μ΄ μžλ°”μŠ€ν¬λ¦½νŠΈλŠ” string constant poolμ—μ„œ λ¬Έμžμ—΄ λ©”λͺ¨λ¦¬λ₯Ό κ΄€λ¦¬ν•œλ‹€. λ§Œμ•½ 이미 λ©”λͺ¨λ¦¬μ— ν• λ‹Ήλœ λ¬Έμžμ—΄μ΄ μžˆλ‹€λ©΄, μƒˆ λ³€μˆ˜μ— ν•΄λ‹Ή λ¬Έμžμ—΄μ„ ν• λ‹Ήν•˜λ”λΌλ„ λ©”λͺ¨λ¦¬λ₯Ό μƒˆλ‘œ μƒμ„±ν•˜μ§€ μ•Šκ³  μ£Όμ†Œκ°’μ„ λ°˜ν™˜ν•œλ‹€.  How are strings stored in JavaScript ? - GeeksforGeeksA Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/compet..

JavaScript 2024.10.07

[JavaScript] Kakao Map API

πŸ“Œ 카카였맡 api μ‹œμž‘ν•˜κΈ° Kakao Developers카카였 APIλ₯Ό ν™œμš©ν•˜μ—¬ λ‹€μ–‘ν•œ μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ°œλ°œν•΄λ³΄μ„Έμš”. 카카였 둜그인, λ©”μ‹œμ§€ 보내기, 친ꡬ API, 인곡지λŠ₯ API 등을 μ œκ³΅ν•©λ‹ˆλ‹€.developers.kakao.com  πŸŒ 지도 λ„μš°κΈ°Kakao Map APIλ₯Ό λ°œκΈ‰ λ°›μ•˜λ‹€λ©΄ 이제 지도λ₯Ό μ‚¬μš©ν•  수 μžˆλ‹€. `html` νŒŒμΌμ— λ‹€μŒκ³Ό 같은 슀크립트λ₯Ό μΆ”κ°€ν•œλ‹€.   `html`에 `map`을 λ„μšΈ μ λ‹Ήν•œ μš”μ†Œλ₯Ό λ§Œλ“ λ‹€.   λ‹€μŒκ³Ό 같이 js μ½”λ“œλ₯Ό μž‘μ„±ν•˜λ©΄ 지도λ₯Ό λ„μšΈ 수 μžˆλ‹€. const mapContainer = document.querySelector(".map"); // 지도λ₯Ό ν‘œμ‹œν•  div const mapOption = { center: new kakao.maps.Lat..

JavaScript 2024.09.19

[C++] 슀마트 포인터

포인터가 κ°€λ¦¬ν‚€λŠ” λ©”λͺ¨λ¦¬λ₯Ό μžλ™μœΌλ‘œ ν•΄μ œν•˜λŠ” 포인터. κ°œλ°œμžλŠ” λ©”λͺ¨λ¦¬ 관리에 크게 μ‹ κ²½ μ“Έ ν•„μš”κ°€ μ—†λ‹€. C++은 객체 생성 μ‹œ μ‚¬μš©ν–ˆλ˜ 동적 λ©”λͺ¨λ¦¬ λ˜λŠ” μ‹œμŠ€ν…œ μžμ›μ„ μ†Œλ©Έ μ‹œ μžλ™μœΌλ‘œ μ†Œλ©Έμ‹œν‚€λŠ” λ§€μ»€λ‹ˆμ¦˜μ„ μ œκ³΅ν•œλ‹€. λ²”μœ„λ₯Ό λ²—μ–΄λ‚œ λ³€μˆ˜λŠ” μŠ€νƒμ—μ„œ 제거되며, 객체의 μ†Œλ©Έμžκ°€ ν˜ΈμΆœλ˜μ–΄ μžμ‹ μ΄ μ‚¬μš©ν•˜λ˜ μžμ›μ„ μ•Œμ•„μ„œ μ •λ¦¬ν•œλ‹€. `auto_ptr` λ™μ μœΌλ‘œ ν• λ‹Ήλœ λ©”λͺ¨λ¦¬λ„ μžλ™μœΌλ‘œ ν•΄μ œν•˜λŠ” 래퍼 클래슀. // deprecated. use unique_ptr instead.`template class auto_ptr`포인터가 κ°€λ¦¬ν‚€λŠ” λŒ€μƒμ˜ νƒ€μž… T λ₯Ό 인자둜 λ°›μ•„ `T*` ν˜• 포인터λ₯Ό κ΄€λ¦¬ν•œλ‹€. μƒμ„±μžλ‘œ μ „λ‹¬λœ ν¬μΈν„°λŠ” μ†Œλ©Έμžμ—μ„œ delete 둜 ν•΄μ œν•œλ‹€. unique_ptr rate(new double)..

C, C++ 2024.09.19

[C++] STL

πŸ“ŒSTL(Standard Template Library)ν‘œμ€€ ν…œν”Œλ¦Ώ 라이브러리. 자료ꡬ쑰(μ»¨ν…Œμ΄λ„ˆ, μ΄ν„°λ ˆμ΄ν„°, μ•Œκ³ λ¦¬μ¦˜)λ₯Ό λͺ¨μ•„놓은 라이브러리.μ»¨ν…Œμ΄λ„ˆ(자료ꡬ쑰), 반볡자(iterator), μ•Œκ³ λ¦¬μ¦˜, 수치기λŠ₯을 μ œκ³΅ν•˜κ³  μ†μ‰½κ²Œ κ΅¬ν˜„ν•  수 μžˆλ„λ‘ μž¬μ‚¬μš©μ„ λͺ©μ μœΌλ‘œ λ§Œλ“€μ–΄μ§„ 라이브러리. Cμ–Έμ–΄λŠ” CRT(C Runtime Library)λΌλŠ” μ΄λ¦„μ˜ 라이브러리λ₯Ό, C++은 C++ Standard Libraryλ₯Ό κ°€μ§€κ³  μžˆλ‹€. 1994λ…„ C++ ν‘œμ€€ λΌμ΄λΈŒλŸ¬λ¦¬μ— STL이 μΆ”κ°€λ˜μ—ˆλ‹€.ν‘œμ€€ ν…œν”Œλ¦Ώ λΌμ΄λΈŒλŸ¬λ¦¬λΌλŠ” 뜻 κ·ΈλŒ€λ‘œ μΌλ°˜ν™” ν”„λ‘œκ·Έλž˜λ°(Generic Programming)을 기반으둜 λ¬΄λΆ„λ³„ν•œ μ—¬λŸ¬κ°€μ§€ ν˜•νƒœμ˜ μ½”λ“œλ₯Ό μ§€μ–‘ν•˜κ³  ν‘œμ€€ν™”λœ μ½”λ“œλ₯Ό μ§€ν–₯ν•œλ‹€. ν‘œμ€€μ΄λ―€λ‘œ 이식성이 μ’‹λ‹€.각 μžλ£Œκ΅¬μ‘°λ§ˆλ‹€ μ„±λŠ₯의 차이가 있..

C, C++ 2024.09.05

[C++] ν…œν”Œλ¦Ώ(Template)

πŸ“Œν…œν”Œλ¦Ών•¨μˆ˜λ‚˜ 클래슀λ₯Ό κ°œλ³„μ μœΌλ‘œ λ‹€μ‹œ μž‘μ„±ν•˜μ§€ μ•Šμ•„λ„, μ—¬λŸ¬ μžλ£Œν˜•μœΌλ‘œ μ‚¬μš©ν•  수 μžˆλ„λ‘ λ§Œλ“€μ–΄λ†“μ€ ν‹€. μ—¬λŸ¬ νƒ€μž…μ—μ„œ λ™μž‘ν•  수 μžˆλŠ” ν•¨μˆ˜λ₯Ό μ°μ–΄λ‚΄λŠ” ν‹€. λ‹€μ–‘ν•œ νƒ€μž…μ— λŒ€ν•΄μ„œ ν•˜λ‚˜μ˜ ν•¨μˆ˜λ§Œ μ •μ˜ν•˜μ—¬ μ‚¬μš©ν•  수 μžˆλ‹€. μ΄λŸ¬ν•œ ν˜•νƒœμ˜ ν•¨μˆ˜κ°€ μžˆλ‹€λŠ” κ²ƒλ§Œ 약속해두고, ν•¨μˆ˜κ°€ ν˜ΈμΆœλ˜λŠ” μ‹œμ μ— 인자의 νƒ€μž…μ— 따라 μ‹€μ œ ν•¨μˆ˜μΈ ν…œν”Œλ¦Ώ μΈμŠ€ν„΄μŠ€ ν•¨μˆ˜λ₯Ό λ§Œλ“ λ‹€.(μ»΄νŒŒμΌλŸ¬κ°€ μ „λ‹¬λœ νƒ€μž…μ„ κ²€μ‚¬ν•˜μ—¬ 그에 ν•΄λ‹Ήν•˜λŠ” ν•¨μˆ˜λ₯Ό μƒμ„±ν•œλ‹€.) // ν•¨μˆ˜ ν…œν”Œλ¦Ώtemplate T FunctionTemplate(T a, T b) { ...}// 클래슀 ν…œν”Œλ¦Ώtemplate class MyClass {public: MyClass(T a) { this->a = a; }private : T a;}   πŸ“Œν•¨..

C, C++ 2024.08.29

[C++] 상속(Inheritance)

πŸ“Œμƒμ†μ½”λ“œμ˜ 쀑볡을 쀄이고 μž¬μ‚¬μš©μ„±μ„ 높이기 μœ„ν•΄ 클래슀 κ°„μ˜ 상속 관계λ₯Ό μ •μ˜ν•  수 μžˆλ‹€.예λ₯Ό λ“€μ–΄ `name`κ³Ό `address`λ₯Ό κ°–λŠ” `RagularEmployee`와 `TemporaryEmployee`κ°€ μžˆμ„ λ•Œ, λ‘˜μ„ ` Employee`둜 μΌλ°˜ν™”ν•˜μ—¬ μ •μ˜ν•˜κ³  상속받아 μ‚¬μš©ν•  수 μžˆλ‹€.  #include using namespace std;class Employee {public : Employee() { } Employee(const char* name, const char* address) { this->name = new char[strlen(name) + 1]; this->address = new char[strlen(address) + 1]; strcpy_s(this->nam..

C, C++ 2024.08.29

[CSS] Flex box

πŸ“ŒFlex boxν–‰κ³Ό μ—΄ ν˜•νƒœλ‘œ μžμ‹ μš”μ†Œλ₯Ό λ°°μΉ˜ν•˜λŠ” λ ˆμ΄μ•„μ›ƒ 속성. λΆ€λͺ¨ μš”μ†Œ 내뢀에 ν¬ν•¨λœ μžμ‹ μš”μ†Œλ“€μ„ μ„Έλ‘œ, κ°€λ‘œ 쀑심뢀에 μ •λ ¬ν•˜κ±°λ‚˜, μžμ‹ μš”μ†Œμ˜ λ„ˆλΉ„λ₯Ό λ™μΌν•˜κ²Œ μ„€μ •ν•  수 μžˆλ‹€. πŸ“Œμ†μ„± html, body{ margin : 0; padding: 0;}.parent{ width: 500px; height: 600px; background-color: pink; display: flex; flex-direction: column; align-items: center; }.child{ width: 100px; height: 100px..

HTML, CSS 2024.08.28

[C++] 객체 μ§€ν–₯

객체지ν–₯의 근간이 λ˜λŠ” μ–Έμ–΄. κΈ°λ³Έ λ‹¨μœ„λ₯Ό 객체둜 ν•œλ‹€.좔상화, μΊ‘μŠν™”, λ‹€ν˜•μ„±, 상속상속과 λ‹€ν˜•μ„±μ„ μ‚¬μš©ν•΄ μž¬μ‚¬μš©μ„±μ„ λ†’μž„μœΌλ‘œμ¨ μ½”λ“œλ₯Ό 쀄일 수 있음.객체: Object. 사물을 λ‚˜νƒ€λ‚΄λŠ” 좔상적인 κ°œλ….μ ˆμ°¨ν˜• ν”„λ‘œκ·Έλž˜λ°: κΈ°λŠ₯ λ‹¨μœ„ ⇒ ν•¨μˆ˜κ°μ²΄μ§€ν–₯ ν”„λ‘œκ·Έλž˜λ°: κΈ°λŠ₯ λ‹¨μœ„ ⇒ 객체(클래슀. λ³€μˆ˜+ν•¨μˆ˜) πŸ“Œν΄λž˜μŠ€(Class)연관이 μžˆλŠ” 데이터와 κ·Έ 데이터λ₯Ό λ‹€λ£¨λŠ” ν•¨μˆ˜λ₯Ό ν•˜λ‚˜λ‘œ λ¬Άμ–΄ 놓은 좔상적 λ°μ΄ν„°ν˜•(μ‚¬μš©μž μ •μ˜ νƒ€μž…). 멀버 λ³€μˆ˜μ™€ 멀버 ν•¨μˆ˜λ₯Ό κ°€μ§„λ‹€.μƒμ„±μž, μ†Œλ©Έμž(C#, Java, JavaScriptμ—μ„œλŠ” μ‚¬μš©ν•˜μ§€ μ•ŠμŒ), 멀버 λ³€μˆ˜, λ©”μ„œλ“œ. κ°μ²΄ μƒμ„±μŠ€νƒ λ©”λͺ¨λ¦¬μ—μ„œ 객체λ₯Ό μƒμ„±ν•˜λŠ” 방법: λ³€μˆ˜ μ„ μ–Έ void exampleFunction() { TV myTV; // μŠ€νƒ λ©”λͺ¨λ¦¬μ— 생성 ..

C, C++ 2024.08.19