전체 글 56

[Network] 사설 IP와 공용 IP, IPv4와 IPv6

2024.02.10 - [Web/Network] - [Web] 프로토콜(Protocol) : HTTP, TCP, UDP, IP + Port(포트번호) 그리고 OSI 7 Layer [Web] 프로토콜(Protocol) : HTTP, TCP, UDP, IP + Port(포트번호) 그리고 OSI 7 Layer 먼저, 프로토콜이란 무엇일까? 프로토콜이란? 클라이언트와 서버가 서로 통신하기 위해서는 통신방법에 대한 약속이 필요한데, 이때 이 약속이 프로토콜이다. "통신규약"이라고 말한다. 웹 통신 bio-logisch.tistory.com 사설 IP와 공인 IP 이론적으로 존재 가능한 IP주소는 약 43억개 정도 되지만 전 세계에서 사용한다고 생각하면 그리 넉넉한 양은 아닐 것이다. IPv4 체계에서도 IP주소를..

Web/Network 2024.02.22

[JAVA] 객체지향 프로그래밍의 특징 : 캡슐화, 추상화, 다형성, 상속 개념 + 접근 제한자

객체 간의 관계 : 집합, 사용, 상속 관계 객체는 개별적으로 사용되기도 하지만 대부분 다른 객체와 관계를 맺고 있다. 이 관계에는 집합 관계, 사용 관계, 상속 관계가 있다. 집합 관계에 있는 객체는 하나의 부품이고 하나는 완성품에 해당한다. 예를 들어 엔진, 타이어, 핸들, 기어 등으로 구성된 부품들과 완성품인 자동차를 집합 관계로 볼 수 있다. 사용 관계는 객체 간의 상호작용을 말한다. 객체는 다른 객체의 메소드를 호출하여 원하는 결과를 얻어낸다. 예를 들어 사람은 자동차를 사용하므로 사람과 자동차는 사용 관계에 있다고 할 수 있다. 사람은 자동차를 사용할 때 '전진한다', '멈춘다'와 같은 동작에 대한 메소드를 호출한다. 상속 관계는 상위(부모) 객체를 기반으로 하위(자식) 객체를 생성하는 관계를..

[JAVA] 객체지향 프로그래밍에서의 객체와 메소드

현실 세계에서 자동차를 만들 때 부품을 먼저 개발하고 이 부품들을 하나씩 조립해서 완성해 나가듯이, 소프트웨어를 개발할 때에도 부품에 해당하는 객체들을 먼저 만들고, 이것들을 하나씩 조립해서 완성된 프로그램을 만든다. 바로 이러한 기법을 객체 지향 프로그래밍 (OOP; Object Oriented Programming)이라고 한다. 객체와 객체 모델링 객체란 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 속성을 가지고 있고, 다른 것과 구별 가능한 것을 말한다. 앞서 언급한 자동차 외에도 자전거, 책과 같은 제품, 사람, 동물과 같은 생물, 강의, 주문과 같은 서비스 등 모두 객체가 될 수 있다. 객체는 속성과 동작으로 구성된다. 예를 들어 '자동차'라는 객체에 대해서는 '색상', '디자인'..

[OS] 운영체제 기본 명령어 모음 (2) 리눅스(Linux) + 파일명 분석

리눅스의 명령어들은 터미널이나 콘솔 창에서 사용된다. window의 help 명령어와 마찬가지로 매뉴얼 페이지를 확인하려면 man 명령어를 사용해서 보다 많은 명령어에 대한 정보를 얻을 수도 있다. (예 : man ls) 리눅스 기본 명령어 모음 구분 명령어 예시 현재 위치의 파일목록(디렉터리) 조회 ls ls 파일목록(디렉터리) 상세 조회 ls -l ls -l 결과 ) -rw-r--r-- 1 user group 4096 Feb 20 10:15 file.txt 디렉터리 이동 cd cd /home/user/Documents 부모(상위) 디렉터리로 이동 cd .. 현재 디렉터리 : "/home/user/Documents" cd .. 실행 후 이동 부모 디렉터리로 이동 : "/home/user" 파일 복사 c..

OS 2024.02.20

[OS] 운영체제 기본 명령어 모음 (1) 윈도우(Window) CMD + IP주소 확인 + 명령어 사용법 바로 검색하는 방법

윈도우 CMD 명령어 종류 검색 : help 윈도우 명령어 모음을 한 번에 보고 싶다면, CMD(명령 프롬프트)창에서 바로 조회할 수도 있다. 윈도우 CMD 창에서 help라고 입력하면 된다. 꽤 많은 명령어를 안내해주고 있다. 세세한 사용법은 해당 명령어를 토대로 다시 검색해서 사용해야 겠지만 적어도 어떤 기능이 있는지 살펴볼 수 있어서 유용한 방법이라 생각한다. 바로 간편하게 사용법을 확인하려면 아래와 같이 ?를 이용하면 된다. 궁금한 명령어를 입력한 후 꼭 띄어쓰기를 하고 /? 를 입력해주면 된다. 예시로 ipconfig /? 를 실행해보았는데 사용법 외에도 결과에 대한 설명까지 굉장히 세세하게 알려주고 있다!! 모든 명령어에 대해 쭉 보고 싶다면, 아래 링크를 통해 접속하면 A4용지 1894장 분..

OS 2024.02.20

[DB] ERD(개체관계 다이어그램)과 논리적 데이터 모델

개체관계 다이어그램(ERD)이란, Entity Relationship Diagram의 약어로 각 업무 분석에서 도출된 개체 간의 관계를 이해하기 쉽게 도식화한 다이어그램을 말한다. ERD는 개체-관계(E-R) 모델을 다이어그램으로 나타낸 것인데, 여기서 개체-관계 모델이란 현실 세계에 존재하는 데이터와 그 데이터들 간의 관계를 사람이 이해할 수 있는 형태로 명확하게 표현하기 위한 모델을 의미한다. 개체-관계(E-R) 모델의 구성요소 : 개체, 속성, 관계 구성요소 설명 특징 개체(Entity) 사물, 사람 등 유무형의 정보를 가지고 있는 요소 물리적 설계 단계에서 테이블로 변환 속성(Attribute) 개체가 갖는 속성을 의미 물리적 설계 단계에서 컬럼으로 변환 관계(Relationship) 두 개 이상..

DB/Data modeling 2024.02.19

[생각] NULL 에 대한 고찰

NULL은 사실 독일어로 숫자 '0'을 의미한다. 처음에 다들 NULL을 '널'이라고 발음해서 살짝 충격을 받았었다. 내 세계에서는 NULL은 늘 '눌'이라고 발음하고 그 외에는 생각해본 적이 없었는데... 다른 곳에서는 '널'로 불리고 쓰인다는 게 별거 아닌데 되게 재밌었던 기억이 있다. 아무튼 독일어를 오랫동안 써온 나로서는 발음도 그렇지만 사실은 NULL의 의미와 개념에 대해서도 오래전부터 0으로 각인된 지 오래라 맨 처음에 NULL이 0과 다르다는 말에 "도대체 이게 무슨 말이지?" 했던 기억이 있다. 이제는 아주 자주 쓰는 개념이라 더 이상 헷갈리지는 않지만 NULL을 두고 (다들 별 생각 없어 보였는데...) 혼자만 혼란스러워했던 기억이 새록새록 떠오른다. 갑자기 NULL에 대한 이런저런 생각..

[SQL] 날짜 데이터 타입 - date, timestamp

오라클에서 제공하는 날짜 데이터 타입 중 자주 사용하는 타입은 DATE와 TIMESTAMP이다. 보통 날짜 데이터의 경우 사용자가 직접 입력하기 보단 특정 시점에 데이터를 저장할 때 그 시점을 자동으로 저장하는 용도로 많이 사용한다. 그래서 INSERT문으로 데이터를 입력할 때 날짜와 관련된 값은 디폴트값으로 저장하는 경우가 많다. 얼마나 세밀한 데이터가 필요한 지에 따라, 상황에 따라 DATE나 TIMESTAMP를 선택할 수 있다. 사실 이 두 타입 말고도 날짜형 데이터 타입이 더 있긴 하다. 예를 들면, INTERVAL_DAY TO SECOND, TIMESTAMP WITH TIME ZONE, TIMESTAMP WITH LOCAL TIME ZONE 등이 있다. DATE DATE 는 연,월,일,시,분,초..

DB/SQL - Oracle 2024.02.19

[DB] 관계 데이터 모델(Relation Data Model)

관계 데이터 모델(Relation Data Model)은 실제 세계의 데이터가 테이블 형태로 구성된 데이터 모델을 의미한다. 관계 데이터 모델의 구성요소 구성요소 설명 릴레이션 (Relation) 행(Row)과 열(Column)로 구성된 테이블 튜플 (Tuple) 릴레이션의 행(Row)에 해당하는 요소 속성 (Attribute) 릴레이션의 열(Column)에 해당하는 요소 카디널리티 (Cardinality) 튜플(Row)의 수 차수 (Degree) 애트리뷰트(속성, Column)의 수 스키마 (Schema) 데이터베이스의 구조, 제약조건 등의 정보를 담고 있는 기본적인 구조 인스턴스 (Instance) 정의된 스키마에 따라 생성된 테이블에 실제 저장된 데이터의 집합(값의 집합) 식별자 (Identifie..

DB/Data modeling 2024.02.18

[DB] 데이터 모델링(Data Modeling) 및 DB 설계 절차

데이터베이스 상에서 데이터 모델(Data Model)은 현실 세계의 정보를 인간과 컴퓨터가 이해할 수 있도록 추상화하여 표현한 모델이다. 데이터 모델링(Data Modeling)이란, 조직의 정보 수집과 관리 시스템을 정의하는 시각적 표현 또는 청사진을 생성하는 프로세스를 말한다. 이 청사진 또는 데이터 모델은 데이터 분석자, 과학자, 엔지니어와 같은 다양한 이해관계자들이 조직의 데이터에 대한 통일된 개념을 생성할 수 있게 돕는다. 이 모델은 해당 비즈니스가 수집하는 데이터, 서로 다른 데이터 세트 사이의 관계, 데이터를 저장하고 분석하는 데 사용되는 방식을 설명한다. 출처 : https://aws.amazon.com/ko/what-is/data-modeling/ 다시 말해 데이터 모델링은 데이터베이스 ..

DB/Data modeling 2024.02.18