목록분류 전체보기 (55)
구어체로 설명하는 다이어리

익스트림 프로그래밍이란 익스트림 프로그래밍(eXtreme Programming)이란 수시로 발생하는 고객의 요구사항을 유연하게 대응하기 위해 고객의 참여와 개발 과정의 반복을 극대화하여 개발 생산성을 향상하는 방법론입니다. 말이 어렵지만, 고객의 요구사항을 빠르게 적용하기 위해 릴리즈 단위를 나눈 것이라고 생각하면 됩니다. XP 개발 프로세스 릴리즈 계획 수립 (Release Planning)부분 혹은 전체 개발 완료 시점에 대한 일정을 수립하는 것몇 개의 스토리가 적용되어 부분적으로 기능이 완료된 제품을 제공하는 것을 릴리즈라고 함 이터레이션 (Iteration, 주기)실제 개발 작업을 진행하는 과정으로, 보통 1~3주 정도의 기간으로 진행됨 승인 검사 (Acceptance Test, 인수 테스트..

브로드캐스트란 브로드캐스트란 네트워크 통신 방식 중에 하나로, 같은 네트워크에 있는 모든 기기에 데이터를 전송하는 방식입니다. 우리는 그동안 1:1 전송인 유니캐스트, 1:다 전송인 멀티캐스트에 대해서 배웠죠? 유니캐스트가 1:1로 특정한 대상에게 데이터를 전송하고, 멀티캐스트가 특정 그룹에 한 번만 전송하는 통신 방식이었다면 브로드캐스트는 로컬 네트워크(LAN)에 연결된 모든 기기에 데이터를 전송합니다. [참고자료]오늘의 참고자료는 배경지식

유니캐스트란 유니캐스트란 단일 송신자가 단일 수신자에게 1:1로 데이터를 전송하는 방식입니다. 인터넷에서 아주 기본적으로 사용되고 있는 데이터 전송 방식인데요. 주로 어떠한 때에 사용하냐면 이메일을 전송할 때 사용합니다. 편지를 쓰는 사람 (송신자)이 편지를 받는 사람 (수신자) 에게 데이터를 1:1로 전송할 때 말이죠. 이렇게 데이터를 주고받는 상대가 명확하기 때문에 불필요한 데이터 전송을 막을 수 있습니다. 그러나 동일한 데이터를 여러 사람에게 보내야 할 경우 송신자가 수신자에게 각각 별도로 연결해야 해서 데이터 전송량이 증가할 수 있습니다. 이런 경우 저번에 배운 멀티캐스트를 이용하면 좋겠죠? [참고자료]참고자료1 [네트워크] 네트워크 통신 방식 (Unicast, Brodcast, Mult..

멀티캐스트란 멀티캐스트는 송신 측에서 여러 개의 수신 측에 데이터를 동시에 전송하는 통신 방식입니다. 멀티캐스트에서는 수신자를 특정 그룹으로 묶어 데이터를 전달합니다. TV 방송을 떠올리면 이해하기 쉬운데, 방송국 (송신자)은 시청자 (수신자) 들이 데이터를 수신하는지 확인하지 않고 데이터를 송출합니다. UDP의 특징이 떠오르지 않나요? 특정 그룹에 동일한 데이터를 한 번만 전송해도 그룹에 속한 모든 수신자가 데이터를 수신할 수 있기 때문에 효율적으로 데이터를 전송할 수 있고 네트워크 대역폭이 절약된다는 장점이 있습니다.멀티캐스트 통신에서는 IPv4의 경우 224.0.0.0 ~ 239.255.255.255 범위의 IP 주소가 사용되고, 수신자는 IGMP (Internet Group Management ..

프로토콜의 기본 3요소 오늘은 프로토콜의 기본 3요소에 대해 알아보겠습니다. 프로토콜은 인터넷에서 사용하는 통신 규약인데요. 여러 포스팅에서 설명했지만, 나와 상대방이 대화가 가능한 이유는 같은 언어 (한국어) 로 문법에 맞춰 이야기를 나누기 때문입니다. 이렇듯 사전에 어떤 방식으로 통신할 것인지 정해둔 약속이 바로 프로토콜입니다.이러한 내용을 개념적으로 설명한 것이 기본 3요소입니다. 프로토콜의 기본 3요소는 구문 (Syntax), 의미 (Semantic), 시간 (Timing) 으로 나뉘어집니다. 구문 (Syntax)구문이란 데이터 형식과 구조를 정의합니다. 전송하고자 하는 데이터의 형식 (Format), 부호화 (Coding), 신호 레벨 (Signal Level) 등을 규정합니다. 의미 (Se..

스스로 생각하는 개발자의 기준은 어느 정도인가 회고에 앞서 그동안 작성했던 후기를 살펴보니 내가 생각하는 개발자의 기준이 너무 명확해서 우스웠다. 내가 개발자의 기본으로 생각하는 것을 가볍게 적어 보자면, 아키텍처 설계를 구상하거나 이해할 줄 알아야 하고, 요구사항 분석과 문제 해결 능력이 뛰어나야 하며, 디자인 패턴 등을 적재적소에 맞게 활용할 줄 알아야 하고, 유지보수가 쉽도록 코드를 간결하게 표현할 줄 알아야 한다. 그러면서도 기술적으로 트렌디함을 잃지 않아야 하고, 커뮤니케이션에 능해야 하며, 그 일을 진정으로 즐겨야만 한다. 그 외에도 여러 가지가 있지만 대충 이렇다. 적고 보니 나는 내가 갖지 못한 것에 대한 로망과 선망으로 점철된 유니콘 개발자가 되고 싶어 하는 것이 글에서 빤히 드러나는 ..

OSI 7계층 (잠깐 사담) 당분간 블로그 글을 짧게 올릴 예정입니다. 왜냐하면 사실은 최근에 업무가 갑자기 바빠졌기 때문에 스터디를 할 시간이 여유가 나지 않아서이기도 하고, 매일매일 블로그에 기록하지 않으니까 스터디는 스터디대로 진도가 나가지 않는 것 같아서입니다. 사실 여러분은 모르시겠지만 저는 OSI 7계층을 약 2주 전부터 외우고 있었습니다만 지금도 계속 헷갈리는 상태라... 일단 포스팅을 올려둔 후 두고두고 수정하는 것이 좋을 것 같다는 생각에서였습니다. 어쨌든 사담이 길었습니다. OSI 7계층이란 통신이 일어나는 순서를 7단계로 나눈 것입니다. 이렇게 단계별로 나누는 이유는 어느 한 곳에서 문제가 생겼을 때 원인을 빠르게 찾을 수 있기 때문입니다. 보통 기사 시험에 많이 나오곤 하는데요...

IPv4 란? IP 주소에 대해 충분히 알아보았으니 오늘은 IPv4(Internet Protocol Version 4)와 IPv6 (Internet Protocol Version 6) 에 관해 알아보도록 합시다. 우선 IP 주소는 0부터 255까지의 숫자이며 3개의 점으로 구분한다고 했었죠. 조금 더 정확하게는 이 설명은 IPv4에 대한 설명입니다. 192.168.0.1 과 같은 모양으로 생긴 IP 주소는 여러분들도 컴퓨터를 다루면서 한 번 쯤 보신 적 있으시죠? 이 IPv4로는 43억개 가량의 주솟값을 표현할 수 있다고 합니다. 그런데 처음 IP 주소를 할당할 때만 해도 이 43억개 가량의 주솟값을 전부 소진하리라고는 생각하지 못했습니다. 컴퓨터 뿐만 아니라 개인 핸드폰, 노트북, 태블릿... 한 사..

IP (Internet Protocol) 란? 전에 작성한 포스팅으로 우리는 프로토콜이 무엇인지에 대해 배웠었죠? 가볍게 정리하자면 프로토콜이란 인터넷에서 사용하는 통신 규약입니다. 나와 상대방이 대화가 가능한 이유는 공통적인 언어 (한국어) 로 지정된 문법에 맞춰 이야기를 나누기 때문이며, 이 모든 것들의 사용 방법을 미리 약속해두었기에 가능한 것입니다. 이것을 바로 프로토콜이라 합니다. 그렇다면 Internet Protocol, 단어에서 어떤 의미인지 파악이 되시나요? 떠올리신 그것이 맞습니다. 바로 인터넷에서 정보를 주고받기 위해 따라야 하는 규칙입니다. 데이터를 보내는 방법과 순서 같은 것들을 정해주는 약속인 것이죠. IP 주소 란? 그럼 IP 주소란 무엇일까요? 인터넷에 연결된 기기들의 고..

오늘은 타입스크립트에서 사용하는 type과 interface에 대해 가볍게 알아보고 어떤 것을 사용하면 좋은지에 대해 이야기해보겠습니다. type과 interface는 개발자가 타입에 이름을 지정하여 타입을 부여하고 싶을 때 사용하는 문법입니다. type type Name = string;const name: Name = '씨씨상'; 프로그래밍에서 코드를 알아보기 쉽게 변수에 이름을 붙이듯이 특정 타입 (string) 에 특정 이름 (Name) 을 붙여주는 것입니다. 그런데 이렇게 쉬운 예제는 별로 없고 보통은 복잡한 데이터 타입에 이름을 붙여주고 싶을 때 사용합니다. 이를 타입 별칭을 만든다고 합니다. type Person = { name: string; age: number;};const pe..