All Pages
03 [Ubuntu] SQLite 설치
03 [Ubuntu] SQLite 설치
2024.01.13sqlite3 읽는법 (시퀄라이트, 에스큐엘라이트) 1. SQLite3 설치 sudo - Super User DO, 최고 관리자 권한으로 명령을 실행시킨다. apt - Advance Packging Tools update - 설치 가능한 패키지 리스트를 최신화한다 참고 - 우분투 패키지 sudo apt-get update sudo apt-get install sqlite3 2. SQLite3 설치 확인 터미널에 sqlite3 --version 입력하면, 하단의 이미지와 같이 보여진다면 정상적으로 설치된 것이다. sqlite3 --version 3. SQLite3 실행 확인 3.1 SQLite3 실행 sqlite3 3.2 SQLite3 종료 만약 .(콤마) 없이 quit를 입력했다면, ; (세미콜론)을 입..
02 SQLite
02 SQLite
2024.01.13일반적인 DBMS 사용 구조와 SQLite 을 비교하고 이해해봅시다. 일반적인 DB 학습관점 1. 첫 번째 학습 관점, DBMS 데이터베이스 관리자(DBA)와 응용 소프트웨어 개발자(ASD)는 이미지 같이 서버 컴퓨터에 실행중인 DBMS 프로그램에 접근하여 SQL을 이용해서 Database에 Table 형태로 Data를 다루는 법을 학습합니다. 2. 두 번째 학습 관점, Dev. 일반적으로 DBMS는 서버 컴퓨터에서 동작하는 하나의 소프트웨어 입니다. 사용자 컴퓨터의 소프트웨어는 Internet을 통해 서버 컴퓨터의 소프트웨어로 연결됩니다. 서버 컴퓨터의 소프트웨어는 필요한 경우에, 동작중인 DBMS 소프트웨어에 SQL을 전달하여 Database를 처리합니다. 서버단의 소프트웨어를 개발할 때 DBMS가 ..
01 DBMS
01 DBMS
2024.01.13개발자 관점에서 Database와 DBMS 개념을 이해합니다. Program의 구성요소 Prgram 은 Data와 Logic 단, 두 가지 요소로 이루어진다. 모든 프로그래밍 언어는 Data를 저장하는 기술과 Data를 처리하는 로직만 존재한다. File System vs Database System File System 프로그램이 실행되기 이전의 Data는 어떻게 관리되어야 할까요? C/C++ 프로그래밍 언어에서는 Data를 File 형태로 처리하는 방식을 먼저 배웁니다. 하지만, File 입출력으로 데이터를 다룬다면, 중복된 데이터를 관리하는 로직이 필요합니다. 만약 데이터를 공유한다면, 접근 계정을 관리하고, 동시 접속 문제를 해결 할 로직도 필요합니다. 그리고 각종 보안, 백업, 복구 등의 문제를..
8. branch, merge, rebase
8. branch, merge, rebase
2024.01.04프로젝트는 하나의 구성 단위 이상으로 관리되는게 일반적이다. 일반적으로 프로젝트는 1)로컬, 2)테스트, 3)적용, 4)배포 4단계로 관리된다. 기존의 프로젝트 소스코드를 수정하지 않고, 새로운 기능을 적용시키는 테스트를 진행하려면 어떻게 해야 할까? Branch 는 하나의 프로젝트에서 하나 이상의 구성 묶음을 관리하는 단위(폴더, 파일 묶음)이다. 1. branch 추가 생성, 변경, 삭제 현재 브랜치 목록 확인 git branch 브랜치 추가 git branch 브랜치 변경 git swtich 브랜치 삭제 git branch -d 브랜치명 변경 git branch -m 2. branch 1개 추가, 확인, 변경, 삭제 Branch 는 관리 단위이다. 3. branch 1개 추가 후, 각자 작업하기 브..
7. revert, reset
7. revert, reset
2024.01.031. revert 과거의 commit 실행 시점으로 복원하기 * commit 이 완료된 시점으로 돌아가는 것이 아니라, 해당 시점의 commit 동작을 다시 실행하는 것. ① commits 로그 확인 터미널은 vi 에디터로 열리게 되면, k, j 로 이동하고, :wq 명령어로 저장 종료 가능하다. commit 키워드 뒤의 16진수는 복원 작업 식별에 필요한 해시 코드이다. git log ② 두번째 "commit 2" 시점으로 복원하기 revert 명령어는, 과거의 특정 커밋 시점으로 추가 커밋(저장)됩니다. 커밋의 뜻인 "~를 적어 두다" 를 기반으로 해석하면, 과거의 특정 커밋 시점으로 다시 작성되는 것입니다. git revert ③ 충돌 문제 파악 ④ 병합 ⑦ revert 마무리 ⑧ GitKraken..
6. GitKraken
6. GitKraken
2024.01.031. git 준비 ① VSCode, workspace 에서 문서를 작성합니다. ② git 으로 관리를 시작합니다. ③ 몇 번의 commit을 진행합니다. 2. GitKraken 연동 ① GitKraken 을 실행하고, Open a repo 클릭 ② Open a Repository 클릭 ③ VScode 의 workspace 경로 선택 ④ 작업중인 git 저장소가 GitKraken 에 연동된 상태를 확인 할 수 있다. workspace: 프로젝트가 진행되는 작업 공간 repository: 프로젝트가 git 으로 관리되었을 때, 변경사항이 저장되는 저장소 branch: git 저장소에 저장되는 변경사항들의 묶음을 식별하는 이름 graph: git 관리 상태를 그래프로 확인 할 수 있다. commit messa..
5. gitignore
5. gitignore
2024.01.031. git 관리에서 특정 파일/폴더를 제외 하는 방법 ① .gitignore 파일을 생성합니다. ② 제외시킬 파일/폴더명을 입력합니다. ③ 제외된 파일/폴더는 변경사항이 있더라도, git 에 반영되지 않습니다. 2. 제외 패턴 공식 문서 Git - gitignore 문서 (git-scm.com) 를 참고하여 학습합니다. # 이렇게 #를 사용해서 주석 # 모든 file.c file.c # 최상위 폴더의 file.c /file.c # 모든 .c 확장자 파일 *.c # .c 확장자지만 무시하지 않을 파일 !not_ignore_this.c # logs란 이름의 파일 또는 폴더와 그 내용들 logs # logs란 이름의 폴더와 그 내용들 logs/ # logs 폴더 바로 안의 debug.log와 .c 파일들 l..
4. git status, add, commit
4. git status, add, commit
2024.01.03요약 0. 변경된 파일 저장하기 파일을 저장하는 것은, git 에 저장하는 것이 아니다. 하지만 git 을 사용하기 위해서 우선 파일이 저장되어야 한다. 1. 변경사항 확인하기 git status 2. 파일과 변경사항 추가하기 git add 3. 저장하기 git commit -m 1. git status git 으로 관리되는 프로젝트의 변경된 사항을 확인합니다 ① workspace에 문서를 작성한다. ② git init 명령어를 통해, workspace 를 git 이 관리할 수 있도록 설정한다. git init ③ git status 명령어를 통해, 작업 변경사항을 확인한다. git status 2. git add . ④ 변경 사항이 있는 파일을 하나씩 git branch 에 add git add ⑤ 변..
3. git init
3. git init
2024.01.021. git 으로 프로젝트 관리 시작 ① workspace(작업공간) 생성합니다. ② 텍스트 문서(title.txt) 파일 하나를 만들고, 아무 문장이나 작성합니다. ③ Ctrl + ` 단축키를 눌러서 터미널을 띄웁니다. ④ 터미널에 명령어 "git init" 을 입력합니다. VSCode 는 git 관련 편의 기능을 제공합니다. git 이 동작하면, VSCode 에서 U(Update) 아이콘과 파일명의 색을 변경하여 알려줍니다. git init 2. git 실행의 이해 ⑤ Files 탐색기를 이용해, workspace(작업공간) 폴더 로 이동합니다. ⑥ 숨긴 파일 보기를 체크합니다. ⑦ 📂.git 폴더가 생성되어 있는 것을 확인할 수 있습니다. 이 폴더는 git init 명령어로 생성된 .git 폴더입니..
2. git, branch 개념 이해
2. git, branch 개념 이해
2024.01.02VS Code & git Setup더보기① VS Code 설정https://basiclike.tistory.com/223 VS Code, C/C++ 환경설정" data-og-description="패키지 시스템, VSCode 공식문서Step 1. Ubuntu에 GCC(C/C++ 컴파일러)설치 더보기우분투에 C/C++ 프로그래밍 언어를 사용하기 위해 GCC 컴파일러와 GDB 디버거를 설치합니다. 개발에 필요한 필수 패키" data-og-host="basiclike.tistory.com" data-og-source-url="https://basiclike.tistory.com/223" data-og-url="https://basiclike.tistory.com/223" data-og-image="https..
3.4 IP 초기화
3.4 IP 초기화
2023.12.01문자열 IP 주소를 네트워크 바이트 순서(빅 엔디안)로 변환 inet_addr( ) vs inet_aton( ) 사용 sockaddr _in struct sockaddr_in { sa_family_t sin_family; // 주소체계(Address Family) uint16_t sin_port; // 16 비트 Port 번호 struct in_addr sin_addr; // 32 비트 IP주소, 빅 엔디안 char sin_zero[8]; // 사용되지 않음 } IP주소 211.214.107.99와 같은 ‘십진수 표현방식(Dotted Decimal Notation)'을 네트워크 바이트 순서의 IP가 변환한다. 방법 1) inet_addr( ) #include in_addr_t inet_addr(cons..
3.3 Network Byte Order (&엔디안)
3.3 Network Byte Order (&엔디안)
2023.12.01Network 네트워크란, : "물리적으로연결되어 있는" 서로 다른 두 컴퓨터가 데이터를 주고 받는 것이다. 주고 받는 데이터는 Byte 단위로 처리되고, bit 단위로 송수신다. bit & Byte 비트란, : 컴퓨터가 데이터를 구성하는 최소 단위는 bit(binary digit)라는 0과 1을 저장하는 2진수 한자리 단위이다. 바이트란, : 컴퓨터가 데이터를 처리하는 최소 단위는 Byte 라는 8bit, 즉 1Byte 단위다. Endianness 엔디안이란, : 컴퓨터의 메모리와 같은 1차원의 공간에 여러 개의 연속된 대상(Byte)이 저장되는 순서(Byte order) 리틀 엔디언 & 빅 엔디언 개념 정리 링크 1 리틀 엔디언 & 빅 엔디언 개념 정리 링크 2 예시1. Decimal to Binar..