[node.js] axios와 fetch의 비교
·
programming/개념 정리
'왜 axios가 아니라 fetch를 쓰세요?' 팀플을 하다가 질문을 받았다.    나는 개발할 때 정말 이 기능이 우리 프로젝트에 필요한가 많이 잰 후에 도입하는 편이다. 그래서 그러게영..??? 뭐가 더 좋은지 아세요?했더니 우리 팀원들 모두 모른대서 이렇게 직접 알아보게 되었다 😀피드백 수용이 굉장히 빠른 편!ㅎ  ✅ fetch와 axios 차이점1.JSON 처리2. 자동 문자열 변환(stringify)3. Error 처리 4. 성능 => 아주 작은 차이  1. JSON 처리 보통 개발을 할 때 requestDto, responseDto를 만들기 때문에 response를 json으로 파싱해 사용한다.  fetch문을 보자. 2개의 then()이 필요하다.그런데 response.json도 비동기 처..
[C++] NULL vs nullptr, 포인터에서 nullptr을 사용해야 하는 이유
·
programming/개념 정리
🤔 C++ 11에 추가된 nullptr과 NULL은 어떻게 다를까?결론 : 간단히 말하면 NULL은 정수타입의 0, nullptr은 가르키는 것이 없는 포인터 타입이다. `NULL`NULL은 포인터일까? 답은 아니다. NULL은 전처리단계에서  0 으로 치환되는 #define 지시어일 뿐이다. 일종의 매크로로 정수 0일 뿐이다.   💭 여기서 이것이 무엇이 문제인지 생각해보자. NULL이 정수 0인게 왜? 따라갈 포인터도없으니 댕글링 현상도 없고 괜찮지 않을까?  ✔️ 함수 오버로딩에서 NULL을 사용하면, 정수와 포인터를 구분하지 못해 혼란을 일으킬 수 있다. `nullptr` 그래서 nulptr이라는게 생겼다. nullptr는 C++11에서 도입된 키워드로, 포인터 타입을 명확하게 나타낸다. nu..
[C++] #define과 const 그리고 constexpr
·
programming/개념 정리
코드를 보다보면 세가지가 잘 쓰이는데 정확한 차이가 무엇인가 확실히 짚기 위해 쓴다 ✅ 결론 : 컴파일 타임에 타입까지 확인하는 constexpr를 쓰는 것을 권장한다.   `#define`전처리기 지시어: 컴파일 전에 코드에서 사용됩니다.매크로 정의: 단순한 텍스트 치환으로, 타입이 없고, 컴파일 타임 검사가 없습니다.#define PI 3.14  `const`변수 선언: 변수를 상수로 선언하여 값을 변경할 수 없다.타입 지정: 타입이 있으며, 컴파일 타임과 런타임에서 사용될 수 있다. const double pi = 3.14;  `constexpr`컴파일 타임 상수: 컴파일 타임에 값을 계산할 수 있는 상수를 정의한다. 타입 지정: const와 비슷하지만, 반드시 컴파일 타임에 평가될 수 있는 표현식..
[Javs SE 8] Function<T, R> 과 apply()
·
programming/개념 정리
Function 과 apply() T : input type R : return type background 기본적으로 자바는 타입이 ‘기본형’과 ‘객체형’이 있다. 그냥 기본형이 아닌건 다 객체다. 📌 기본형 (Primitive Type) - 논리 : boolean - 문자 : char - 정수 : byte, short, int, long - 실수 : float, double 함수가 객체라면 다른 객체들처럼 컨테이너에 저장할 수 있어야 하는게 아닐까? 그런데 클래스 안에서 선언하는거 이외에 함수를 객체로써 사용을 하시나요? C++에서는 함수 객체 개념을 위해 std::function, std::find가 있는데 Java는 어떨까?! Function (java.util.function) Function ..
[OS] LRU 알고리즘이란? 정의부터 구현까지 알아보자!
·
programming/개념 정리
LRU 알고리즘이 어디에 쓰이는 무엇인지 그리고 어떻게 구현하는지 개괄 정리해보겠습니다. background 운영체제라는 강의나 관련 서적을 읽었으면 절대 빠지지 않고 나오는 이 알고리즘은 자주 나오는 만큼 중요한 알고리즘이다. 어떤 공간에 여러 요소들이 꽉 차있다고 생각해보자. 근데 더 이상 자리가 없는데 그 공간에 새로운 것을 넣어야 한다면? 공간을 차지하는 무엇인가를 빼서 자리를 만든 후 넣어야 되지 않겠어요? 한정된 공간에 빼야할 요소를 정하는 알고리즘을 replace algorithm이라고 하며, 컴퓨터에서는 한정된 공간이 {메모리, 캐시, 저장공간}이 되며 요소들이 {스레드, 프로세스, 자원}이 될 수 있다. 운영체제에서는 저 한정된 공간을 알뜰하게 쓰는게 바로 효율성이기 때문에 굉장히 이 r..
[C++] memset(), fill(), fill_n() (메모리 초기화 함수, 사용 방법)
·
programming/개념 정리
memset() https://en.cppreference.com/w/cpp/string/byte/memset std::memset - cppreference.com Copies the value static_cast (ch) into each of the first count characters of the object pointed to by dest. If the object is a potentially-overlapping subobject or is not TriviallyCopyable (e.g., scalar, C-compatible struct, or an array of trivially copyab en.cppreference.com - 메모리 변화가 있는건 fill() 권유 하고 있..