본문 바로가기

IT_Developers1149

OSI 7계층 - "데이터 링크 계층" 이란? / Data Link Layer / L2 l2 데이터 링크 단계를 알아보자 안녕하세요. 고코더 입니다. 이번 시간에는 데이터 링크를 배워보겠습니다. 데이터 링크 계층은 물리적인 전송을 담당합니다. 그리고 물리 계층에서는 무시된 에러를 검출하고 흐름을 제어합니다. 비트의 모음인 프레임(Frame)을 전달하는 역할을 합니다. 전송될 컴퓨터의 MAC 주소를 참조하여 정확하게 정보를 전달 합니다. - 오류 없는 데이터 전달을 하는 계층 - 시작(header)과 끝(trailer)에 비트를 추가 프레임(Frame) - 물리계층에서 받은 이진 신호를 점검 - 오류체크와 복구기능을 수행 ● 1. L2가 하는 역할 3가지 1. 프레임화 (Framing) 데이터 배열에 Data, Header, Trailer 등을 넣어서 캡슐화(Encapsulate)를 하는 작.. 2020. 3. 17.
OSI 7계층 - "물리 계층" 이란? / Physical Layer / L1 Physical Layer 계층을 알아보자 안녕하세요. 고코더 입니다. OSI 7계층에서 가장 낮은 물리 계층을 알아봅니다. 이름에서도 느껴지는 거처럼 실제 장치들을 연결하기 위한 물리적 세부사항을 말합니다. 이 계층은 하드웨어 기술이 접목된 분야이고 가장 복잡한 계층이기도 합니다. 데이터를 물리적으로 전송하는 계층이지만 전달 이외에 에러나 효율은 신경쓰지 않는 레이어입니다. 이 부분에서는 0과 1 bit로 2계층에 전송합니다. - 장치들을 연결하기 위한 사항 - 하드웨어 기술 접목 - 물리적인 정보 전달 연결 및 종료 - 통신자원 배분 - 통신 채널을 디지털 데이터로 변환 하는 부분도 속함 - 비트(bit)를 전송한다. 사용장비 1.트랜시버 - 일반적으로 전송기,수신기를 하나로 합친 장치 일명 송수신기.. 2020. 3. 17.
OSI 7 계층을 알아보자! - OSI 7 Layer 상세한 설명 OSI 7단계를 알아보자 안녕하세요. 고코더 입니다. OSI 7계층은 학교에서도 배우고 각종 자격증에서도 배우고 면접에서도 물어보고 맨날 외우지만 까먹는 유명한 놈입니다. 게다가 실무에서는 필요성을 느끼지 못하는 이론이지만 알아두면 써먹을 을데가 많은 이론입니니다. ● 1. 한마디로 요약하면? "컴퓨터가 어떻게 데이터를 전송할 것인가에 대한 국제 표준 기구(ISO)에서 모델" ● 2. 왜 필요한가? 이 방식은 네트워크에서 통신이 일어나는 7단계로 나누는 방식을 말합니다. 이렇게 계층을 나눈 이유는 간단합니다. 통인이 일어나는 단계를 파악하여 문제를 빠르고 이해 하기 쉽게 이야기 하기 위해서 입니다. 예를 들면 스마트폰이 인터넷에 접속되지 않는다. 그렇다면 7계층 어플리케이션 계층부터 문제를 파악하여 하나.. 2020. 3. 17.
JAVA - 싱글톤(Singleton) 패턴이란? / 예제소스 싱글톤을 알아보자 안녕하세요. 고코더 입니다. 싱글톤(Singleton) 패턴을 알아보려고 합니다. 싱글톤은 최초에 한번만 실행합니다. 애플리케이션이 시작될때 최초 한번만 메모리를 할당하는 방법입니다. 동일 인스턴스를 사용하게 하는 특징이 있습니다. 다시 말해서 인스턴스가 프로그램 안에서 하나만을 생성되게 하고 이 인스턴스를 접근하게 만든 패턴입니다. ● 1. 싱글톤 비유 결혼 안한 사람을 우린 싱글이라고 합니다. 싱글남은 소개팅을 하러 나갑니다. 매번 나간 소개팅에서 옷이랑 머리 스타일은 변하지만 사람은 그대로 입니다. 소개팅을 주선하는 주선자는 매번 똑같은 사람인 이 싱글남을 소개합니다. 싱글남은 언제나 준비되어 있고요. 항상 소개팅을 나갈 준비가 되어 있습니다. 싱글톤도 이와 같습니다. 최초에 소개.. 2020. 3. 17.
JAVA - null 과 ""(빈값)의 차이는 무엇일까? / 메모리상의 차이 자바에서 공백 값과 널(Null) 값의 차이는? 안녕하세요. 고코더 입니다. 자바에서 null 값과 ""(빈 공백)은 어떻게 다른지 알아보려고 합니다. 얼핏보면 비슷해보이지만 완전히 다른 개념을 가지고 있습니다. ● 1. null 널(null)은 어떠한 값으로도 초기화 되지 않은 것입니다. 이렇게 초기화된 데이터는 내가 사용할 예정이다 정도로 컴파일러는 생각합니다. 그래서 참조형이지만 힙메모리상에 데이터를 만들어 내지 않습니다. 1String a = null; cs ● 2. ""(공백) 공백 값은 사실 하나의 스트링입니다. 예를 들면 "gocoder"로 변수를 선언한거처럼 빈 값을 메모리에 할당한 행동입니다. 1String b = "";cs ● 3. 차이점 다시 정리 null은 사용하겠다고 예고만 해놓은.. 2020. 3. 17.
JAVA - 옵저버 패턴(Observer Pattern) 이론만 쉽게 설명 자바 옵저버 패턴을 분석 해보자 안녕하세요. 고코더 입니다. 오늘은 옵저버 패턴에 대해 알아봅니다. 좋은 글들이 많지만 조금은 어려운게 많아 최대한 쉽게 설명해보겠습니다. ● 1. 옵저버 패턴이란? 옵저버 패턴(Observer Pattern)을 이해 할때 좋은 이미지가 있습니다. 바로 스타크래프트에 옵저버 입니다. 프로게이머는 이 유닛들에게 명령을 내립니다. 예를 들면 "모두 본부로 귀환하라" 그럼 통지 받은 옵저버들은 본부로 이동합니다. 그러다 중간에 옵저버가 파괴 되기도 하고 대열에 이탈하기도 합니다. 그렇지만 다른 옵저버들은 각자 할일을 합니다. 느슨한 관계입니다. 마우스가 주체이고 옵저버들이 객체 입니다. 마우스가 많은 옵저버에게 명령을 내리는 1:N (1대다) 관계입니다. 이 와 같은 모습이 옵.. 2020. 3. 17.
JAVA - "equals"와 "==" 차이점을 알아봅시다. 이퀄과 == 두 개의 비교 기능 뭐가 다를까? 안녕하세요. 고코더 입니다. 자바에서는 대표적인 두 가지 데이터 비교 방법이 존재합니다. 바로 "equals"와 "==" 입니다. ● 1. 공통점 우선 공통점 부터 다뤄보려고 합니다. 이 둘은 데이터를 비교하는 기능을 합니다. 비교한 데이터를 논리형으로 리턴합니다. 즉 true 아니면 false 겠죠. 이런 기능을 통해 두 개의 데이터를 비교하여서 로직을 완성합니다. ● 2. 형태의 차이점 이 둘은 근본적으로 형태가 다른 점이 존재합니다. equals() 는 메소드입니다. 열기 닫기를 같이 쓰는걸 보면 메소드 이란걸 알 수 있습니다. == 는 비교 연산자입니다. 비교를 위한 연산자 입니다. ● 3. 비교 방식 이제 진짜 다른 점을 다루겠습니다. equals .. 2020. 3. 16.
JAVA - 참조형(Reference)이란? / 대표적인 예시 참조형을 알아보자 안녕하세요. 고코더 입니다. 오늘은 참조형을 알아보려고 합니다. 이전에 알아본 기본형이랑 다른 속성이라고 생각하면 됩니다. 참조형은 객체의 저장 공간을 주소를 저장합니다. 기본형 8가지 이외에는 모두 참조형이라고 생각하면 쉽습니니다. 참조형 변수는 null 값을 기본으로 가지고 있고 정의된 생성자를 통해 생성 됩니다. 힙 메모리 공간에 저장 됩니다. - 기본형을 제외한 자료형 - 참조 값을 가진다. - 클래스를 자료형으로 선언할때 - 배열, 스트링등 - 힙(heap)의 할당 된다.Reference type(참조형) 대표적인 참조형 ● 배열 1int[] gocoder_arry = {1, 2, 3};cs ● 열거 1Enumeration e = g.elements();cs ● 클래스 1Goc.. 2020. 3. 16.
JAVA - 스태틱(Static) 이란? / 예제소스 스태틱이란 무엇일까요? 안녕하세요. 고코더 입니다. 스태틱이 붙은 변수나 메소드는 동적으로 생성할 필요 없이 바로 꺼내쓸수 있습니다. 전역변수 입니다. 프로젝트 어디에서든 쉽게 접근이 가능합니다. 공통으로 자주 꺼내어 사용해야 할 데이터들을 관리할때 좋습니다. 메모리 종류에 대한 글을 한번 더 확인해보세요. -> JAVA 메모리 - 스태틱(static), 스택(stack), 힙(heap) 이란? - static은 변수나 메소드에 키워드로 사용 - static 키워드를 사용하면 클래스가 메모리에 올라갈 때 자동으로 생성 후 고정 - 인스턴스 생성 없이 사용가능 ● 1. 어떤 상황에서 사용할까요? 자주 사용하지만 프로그램마다 공통으로 써야 하는 부분에서 사용해야 합니다. 실무에서는 보통 로그인한 고유키를 저.. 2020. 3. 16.