본문 바로가기

전체 글53

[CS] RDBMS / NoSQL RDBMS정의데이터를 테이블 형식으로 관리하는 데이터베이스 관리 시스템테이블은 Row(tuple), Column(attribute)으로 구성되어 있으며, 각 테이블 간 관계가 설정되어 데이터를 효율적으로 관리할 수 있다.SQL문을 통해 데이터의 CRUD(Create, Read, Update, Delete) 작업이 가능하다.Oracle DB, MySQL, PostgreSQL, MariaDB 등이 대표적인 RDBMS이다. 특징데이터 저장 구조데이터를 테이블 형태로 저장, 테이블은 행과 열로 구성된다.관계 설정각 테이블 간 외래키(Foreign Key)를 통해 관계를 설정하여 데이터의 무결성을 유지한다.데이터 무결성 보장데이터의 정확성과 일관성의 보장을 위해 Primary Key, Foreign Key, Un.. 2025. 1. 14.
[CS] Query String / Path Variable Query String“?” 기호 뒤에 key-value 쌍으로 데이터를 전달하는 방식주로 선택적인 파라미터나 필터링, 검색 조건을 전송할 때 사용한다.여러 개의 파라미터를 사용할 경우, &으로 연결한다.URL 형태https://example.com/products?page=2&category=foodpage가 2이고, 카테고리가 food인 상품을 필터링하여 응답 요청특징순서가 중요하지 않다.쿼리 파라미터는 필수 값이 아니기 때문에 선택적으로 사용 가능하다.RESTful 설계에서는 주로 필터링에 사용된다. Path VariableURL 경로의 일부로 사용되는 변수리소스를 특정하거나 고유 식별자(ID 등)를 지정할 때 주로 사용한다.주로 특정 리소스의 CRUD 작업에서 사용한다.URL 형태https://e.. 2025. 1. 13.
[CS] 서버 개발을 위한 기초 지식 Network여러 대의 컴퓨터 또는 장비가 서로 연결되어 정보를 주고 받을 수 있게 도와주는 기술클라이언트가 요청하면, 서버가 요청에 대한 응답을 수행한다. Client & Server사용자는 브라우저 등(Client)을 이용해 서버(Server)에 정보(Data)를 요청(Request)하고 응답(Response)를 받는다.서버 또한 클라이언트가 될 수 있다. (외부 서버에 API 요청하는 경우 등)요청이 서버에 도달하기 위해서는 IP 주소, 포트 번호가 필요하다. Web Server & Web Application ServerWeb Server클라이언트로부터 HTTP 요청을 받아 정적인 콘텐츠를 사용자에게 전달하는 역할Web Application Server게시물 조회나 정렬처럼 다양한 동적 로직을 수.. 2025. 1. 13.
[서평] 한병철 <피로사회> 제목 피로사회 (2012)저자 한병철 출판 문학과지성사 장르 인문/사회, 심리 기간 2025.01.12 평점 4 / 5 계기 대학교 1학년 시절 교양 수업 중 교수님이 추천해 주신 책이다.70페이지 가량의 짧은 분량에도 불구하고 이해가 어려운 한자어가 많고, 문장 구조가 복잡하여 쉽사리 읽지 못하고 한동안 포기했었다.많은 배경 지식을 필요로 한다는 점 또한 진입 장벽이 되었다.이후 책장에서 우연히 발견했는데, 다시 읽어보고 싶은 마음이 생겨 책을 다시 펼쳐보게 되었다.요약 20세기는 두 차례의 세계 대전과 냉전 시대를 거치며, 금지·강제·규율·의무 등 부정적인 키워드가 주도하는 면역학적 부정성 패러다임 시대였다.하지만 냉전 종식 이후 맞이한 21세기는 능력·성과·자기주도·과잉 등 긍정성의 패러.. 2025. 1. 12.
[Git] Basic Git Operation git init현재 디렉토리를 git으로 관리함을 설정 git status변경사항(추가, 수정, 제거) 확인 git log (--oneline)커밋 이력 확인 git add변경사항을 Local의 Staging Area에 저장 git commit변경사항을 Local Repository에 저장 git push변경사항을 Remote(원격) Repository에 저장 git pull원격 코드를 작업 영역에 동기화 git branch현재 생성되어 있는 브랜치 조회 git branch "abc"브랜치명이 "abc"인 브랜치 생성 git checkout -b "abc"브랜치명이 "abc"인 브랜치를 생성하는 동시에 전환 git checkout "abc""abc" 브랜치로 전환git switch "abc"도 같은 기능.. 2025. 1. 9.
[CS] 도메인 접속 시, Server-Client 간 흐름 사용자가 브라우저를 통해 URL 주소(e.g. www.naver.com)를 입력한다.브라우저가 로컬 DNS Cache에서 도메인에 대한 IP 주소를 검색한다.해당하는 IP 주소가 없는 경우, 브라우저는 DNS 서버에 IP 주소를 요청한다.IP 주소를 획득 후 TCP 연결을 수행한다. (3-way Handshake)브라우저가 서버에 HTTP(S) 요청을 전송한다.서버는 HTML, CSS, JS 등 리소스를 반환한다.브라우저는 리소스를 파싱 및 렌더링하여 콘텐츠를 출력한다.모든 데이터 수신이 완료되면 TCP 연결을 해제한다. (4-way Handshake) 2025. 1. 9.
[CS] 객체 지향 프로그래밍(OOP) 5원칙 1. Single Responsibility Principle [단일 책임 원칙]하나의 클래스는 하나의 기능(책임)만을 가져야 한다.클래스를 수정할 때는 그 이유가 하나여야 한다. (다른 코드에 영향을 미치기 때문) 2. Open-Closed Principle [개방 폐쇄 원칙]소프트웨어 요소는 확장에는 개방되어 있어야 하지만, 변경에는 폐쇄적이어야 한다.즉, 기존 코드를 변경하지 않고 기능을 수정하거나 추가할 수 있도록 설계해야 한다.인터페이스를 구현한 새로운 클래스를 하나 만들어서 새로운 기능을 구현한다.기존 코드를 수정하게 된다면 재사용성, 유지보수성 등의 활용이 힘들어지기 때문이다. 3. Liskov Substitution Principle [리스코프 치환 원칙]하위 타입 객체는 상위 타입 객체에.. 2025. 1. 9.
[CS] 클래스와 인스턴스 클래스는 속성과 메서드를 정의한 구조이고, 동일한 형식의 객체를 만들기 위한 설계도이다.인스턴스는 클래스의 정의에 따라 실제로 생성된 객체로, 메모리에 할당된 상태이다.즉, 클래스는 객체를 만들기 위한 설계도이고, 인스턴스는 그 설계도를 따라 생성된 구체적인 실체이다. 예시 실행 결과 2025. 1. 9.
[서평] 보후밀 흐라발 <너무 시끄러운 고독> 제목  너무 시끄러운 고독 (1975)저자  보후밀 흐라발 (체코)출판  문학동네장르  소설기간  2024.05.22 - 2024.05.23평점  3 / 5 요약이 책은 삼십 오 년째 폐지 압착 일을 하고 있는 한탸의 독백으로 전개된다. 그도 젊었을 때는 다른 사람들과 다를 바 없이 꿈, 사랑 등의 야망이 있는 사람이었지만, 폐지 압착일을 시작한 후에 책에 빠지게 되었다.한탸는 다른 노동자들처럼 단순히 폐지를 압착하는 일만을 하지 않는다. 그는 압착한 폐지 더미를 "꾸러미"라 칭한다. 그 꾸러미에 잡지 속 명화, 딸려 온 쓰레기 장식 등을 붙여주며 자신만의 의미를 부여한다. 또한 그는 기계는 하지 못하는 ㅡ사람만이 해낼 수 있는ㅡ 가치 있는 책들을 추려내어 집에 산더미만큼 쌓아놓기도 한다. 한탸는 자신이.. 2024. 7. 28.