본문 바로가기
반응형

분류 전체보기1305

[Git 깃] 유용한 config 설정 목록 유용한 Git Config 목록git config에서 기본적인 설정을 살펴 보았다.이외 어떤 유용한 Git Config 설정들이 있을까? [Git 깃] git config💻 설정된 config 목록 확인 git config --list git config -l 더보기 전체 목록 확인 global 설정만 확인 git config --global --list local 설정만 확인 git config --local --list 💻 특정 항목 config 확인 git config {항목명}zoosso.tistory.com에디터 지정Commit log, Rebase 작업 등 Editor 지정할 수 있다.vim이 가장 무난한 편이다.git config --global core.editor vim  색상 강조C.. 2024. 11. 18.
[애자일/스크럼] 칸반 보드(Kanban Board) 칸반 보드란?칸반(Kanban)은 일본어로 "간판" 또는 "표지판"을 뜻하는데최초로 1940년대 일본의 도요타에서 개발한 생산 과정 방법 스크럼(Scrum)이나 애자일(Agile) 개발 방법론에서 작업의 시각적 관리 도구로 사용된다. 업무의 진행 상황을 명확히 보여주기 때문에 팀의 작업 흐름을 이해하고 개선할 수 있도록 돕는다.  📌 애자일과 워터폴 애자일과 워터폴프로젝트 수행에 있어서 개발환경, 비용, 기간, 규모, 숙련도, Risk 등 다양한 요인을 고려해서 최적의 개발 모델을 선택해야 합니다. : 요구사항 분석 → 설계 → 구현 → 테스트 → 유지보수 ※ SWzoosso.tistory.com 📌 Scrum 프레임워크란? 스크럼(Scrum) 프레임워크란?스크럼(Scrum)이란?• 제품과 서비스를 .. 2024. 11. 17.
[C/C++] packed 키워드 packed란구조체, 공용체, 클래스 메모리 정렬 방식을 제어하기 위해 사용 일반적으로 구조체 멤버들은 컴파일러에 의해 정렬된다. (alignment)= CPU 성능 최적화 위해 메모리 주소를 특정 크기(4 Byte, 8 Byte 등)로 맞추는 것 이러한 정렬은 메모리 사용량을 증가시킬 수 있다.이 경우 packed 속성으로 컴파일러에게 정렬을 무시하고멤버들을 바로 이어서 저장하도록 지시할 수 있다. 즉, 메모리 접근이나 공간적 측면에서 효율을 높일 수 있지만성능 손실이나 CPU 비정렬 데이터 접근 문제 초래할 수도 있다. [예시 코드 1]__attribute__((packed)) 또는 #pragma pack 사용하여 구조체를 packed로 설정할 수 있다.#include struct A { cha.. 2024. 11. 16.
[VS Code] 마크다운(Markdown) 설치해보기 VS Code Extension에서Markdown All in One 설치아래와 같은 형태로 [Install]오른쪽에 미리보기 창으로는 Ctrl + K 누르고 V 누르면 된다. 화면이 분할되면서 실시간 반영된다.Markdownlint같이 설치해주면 좋은 Extension으로 markdownlint는 문법적인 오류를 잡아주는 기능으로 생각하면 된다.예를들어 마크다운에서 링크 사용시 [] 이후 ()에 링크 주소를 적어야 하는데 아래와 같이 형태를 알려준다.[CTRL] + [SPACE]로 이미지나 링크 같은 여러 문법을 불러오는 것도 가능하다.  📌 마크다운(Markdown) 문법 마크다운(Markdown) 문법마크다운(Markdown) 이란? • 일반 텍스트 기반의 경량 마크업 언어이다. • 일반 마크업 .. 2024. 11. 13.
[디자인 패턴] GRASP 객체지향 GRASP 란• General Responsibility Assignment Software Patterns• 객체 지향은 책임 역할 각 객체에 부여하는 것 1) Information Expert2)Creator3)Controller4) Low Coupling5) High Cohesion6) Polymorphism7) Pure Fabrication8) Indirection9) Protected VariationsInformation Expert• 정보를 가지고 있는 객체에 역할을 부여하자 .• 객체는 데이터와 처리 로직을 함께 관리• 데이터를 감추고자 하면 내부에서만 로직을 처리하고 외부에는 기능만 제공  Creator• 객체의 context 알고 있는 다른 객체가 있다면 해당 객체에 생성 부여→ A 객.. 2024. 11. 12.
[운영체제] 스핀락 / 뮤텍스 / 세마포어 동기화 관리 필요성멀티 코어 시스템에서는 여러 프로세스가동시 실행하여 성능 향상 시킬 수 있다. 하나의 공유 자원을 여러 프로세스가 동시에 사용하면 문제가 발생할 수 있다. ex) 다른 한 개가 읽는 중간에 다른 하나가 값을 바꾸어 오류가 발생할 수 있다.  크리티컬 섹션'임계 영역(= Critical Section)' 으로 프로세스 동시 접근하는데 문제가 발생하지 않도록 한 번에 하나의 프로세스만 이용하도록 하는 것이다. 즉, 점유 하는 동안 다른 프로세스 접근을 제한한다.스핀 락 (Spin Lock)임계구역(critical section)에 진입 불가능할 때진입 가능할 때까지 루프(Loop) 돌며 재시도하는 방식 (Busy Waiting) Lock 걸려있다고바로 Context Switching 하지 .. 2024. 11. 11.
[C++] likely, unlikey 키워드 구문 [C++] likely, unlikey 키워드likely, unlikey는 컴파일러 최적화와 연관된 키워드 • likely | 컴파일러에게 참인 경우가 더 많을 것이라는 정보 제공하여 최적화• unlikely | 컴파일러에게 거짓인 경우가 더 많을 것#include int main(){ if (num == 1) { // ... } else { // ... }}  컴파일러 num 값이 "1"일 확률 그 외의 값일 확률에 대한정보가 없기 때문에 이를 최적화 하지 않는다.if문 성능 최적화를 위해서는 가장 많이 해당하는 분기조건을 상단에 두는 것이다.  이와 같은 방식으로number 값이 "1" 확률이 높다면 컴파일러에게 힌트를 줄 수 있다.#inclu.. 2024. 11. 10.
[C/C++] 패딩 비트 (Padding Bit) 패딩비트 (Padding Bit) 패딩비트란 사용하지 않는 비트 의미한다.구조체에서 가장 큰 자료형 크기를 따라간다.typedef struct{ int power; // 4 B int level; // 4 B char status; // 1 B} User;  int 4바이트, char 1바이트user구조체 크기는 9바이트 예상 된다.자료형 크기는 sizeof(자료형)로 알 수 있다.#includetypedef struct{ int power; int level; char status;} User;int main(){ User user; printf("power 크기 = %d \n", sizeof(user.power)); printf("level 크기 = %.. 2024. 11. 9.
[C/C++] struct 차이 비교 C++에서는 Class가 있지만 stuct 형태도 사용 가능하다. C에서 사용하던 형태와 C++ 차이가 존재한다.  [C] StructC언어 구조체 안에는 변수만 둘 수 있다.그래서 구조체 함수를 외부에 두어야 한다. [C style 예시 코드]#include struct st{ int no; char ch;};void InitStruct(struct st* t, int n, char c);void PrintStruct(const struct st* t);int main(){ struct st harbang; InitStruct(&harbang, 2024, 'B'); PrintStruct(&harbang);}void PrintStruct(const struct st* t){ .. 2024. 11. 8.
[VS Code] 괄호 한번에 여닫기 단축키 설정 Visual Studio Code 괄호 한번에 여닫기VS Code로 작업하다보면중괄호를 한번에 닫고, 열고 싶은 경우가 있다.단축키로는 아래와 같다. • 모든 블럭 접기 : Ctrl + K 누른 후 Ctrl + 0 (숫자 0, Ctrl은 누르고 있어도 무방) • 모든 블럭 펼치기 : Ctrl + K 누른 후 Ctrl + j📌 VS Code 단축키 [VS Code] VS Code 단축키현재 디렉토리의 파일 목록 열기 : Ctrl + P (좌측) 사이드바 열어서 커서 Focus : Ctrl + Shift + E (좌측) 사이드바 열기/숨기기: Ctrl + B (하단) 터미널 창 토글 : Ctrl + J 구문 단위 이동: Ctrl + ← 혹은 → 새zoosso.tistory.com단축키 조합 변경개인적으로는.. 2024. 11. 5.
반응형