git 자동으로 깃모지 다는 방법
·
programming
https://gitmoji.dev/ gitmoji:truck: Move or rename resources (e.g.: files, paths, routes).gitmoji.dev[gitmoji 공식 사이트]  설치 방법npm i -g gitmoji-cli orbrew install gitmoji  설치확인 및 도움말설치 됐나 겸사겸사 도움을 말을 켜보자gitmoji --help 어쩌고 저쩌고 뜨면 설치가 잘 된 것이다.   사용 방법gitmoji -c  add, fix 등 자주 사용하는 컨벤션을 작성하면 아래에 추천 리스트가 있어서 편하게 쓸 수 있다  feat를 치면 우리의 암묵적 룰인 이모지 ✨가 바로 뜬다.  선택해서 원하는 타이틀과 메세지를 작성하면 완료!   ➕  VScode 유저라면 마켓플..
📕 객체지향의 사실과 오해 : 역할, 책임, 협력 관점에서 본 객체지향
·
programming/환경설정 및 팁
리뷰💡 이제 객체 지향을 설명할 수 있나요? No💡 이제 객체 지향이 무엇인지 알겠나요? Yes면접에서 객체지향이 무엇인가요? 라는 질문이 들어왔을 때 답변할 만한 명쾌한 이야기는 책에 없다.애초에 책 설명이 엄청 길고 반복되기 때문에 내가 딱 정의할 수 힘든 부분도 있다.그런데 관점을 설명하는 건 생각만 해도 힘든 과정 아닌가? 저자가 정말 최선을 다해 비유하고 은유해서 떠먹여주고 있기 때문에 마음을 열고 보면 분명 깨닫는 점이 생긴다! 객체지향이 뭔지 잘 모르겠어서 혼자 고민하고 있는 사람에게 추천하고 싶다.객체, 클래스에 대한 객체지향적 관점으로 어떻게 이해해야 하는지 바로 잡아주는 느낌이었다.객체지향이 무엇인지 개념적으로, 철학적으로 이해하기엔 좋은 책이라고 말할 수 있다.그러나 코딩 책은 아..
[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() 권유 하고 있..
비트 연산자
·
programming/환경설정 및 팁
> 연산자 (Shift) 비트를 n 만큼 왼쪽 혹은 오른쪽으로 이동시킨다. int n1 = 9; // (2진수 배열로 나열하면) 01001 int n2 = 11; // (2진수 배열로 나열하면) 01011 int n3 = n1 2 = 00010 = 2; int n3 = 28 > 2 = 00111 = 7; + 이때, shift 연산자는 곱셈, 나눗셈과 관련이 있다. 왼쪽으로 1칸 이동할때마다 정수의 값은 2배 로 커지고 (곱셈과 관련) 오른쪽으로 1칸 이동할때마다 정수의 값은 1/2배 가 된다. (나눗셈과 관련) 예제로 4/2 = 4>>1 과 동일한데, CPU 입장에서는 곱셈,나눗셈보다 비트 연산이 부담이 적어 성능 향상에도 도움이 된다. [출처] [c++] 비트 연산|작성자 YEON
[C++] Replit에서 컴파일 및 실행하는 방법
·
programming
1. .replit 수정 language = "cpp" run = "g++ -o .cpp" 2. 실행 파일 실행 ./ 매번 컴파일할 파일명 바꾸는 거 귀찮은데 다른 없나?..