이번엔 저번 IP 글에 이어서 Port에 관해서 간단히 정리해보겠다. Port란 네트워크 서비스나 특정 프로세스를 식별하기 위한 것이다. 예를 들어, 한 컴퓨터에서 게임이나 음악을 동시에 실행했을 때 둘다 통신을 위한 정보가 필요할 것이다. 요청을 보내고 돌아올 때, 각각의 정보가 어느 포트로 가야될 지 정해져있지 않다면 정보가 잘못 전달되는 일이 발생할 것이다. 이런 것을 방지하기 위해서 포트를 특정 구역을 나누어 두어서 통신을 원할하게 할 수 있게끔 하는 것이다. 총 0 ~ 65535까지 할당이 가능하며, 0 ~ 1023 까지는 잘 알려진 포트이기에 사용하지 않는 것이 좋고, 다른 번호들이 보통 사용된다. 흔히 들어본 포트로는 FTP - 20, 21 TELNET - 23 HTTP - 80 ..
오늘은 통신할 때 사용되는 프로토콜에 대해 알아보려고 한다. 컴퓨터 끼리의 데이터 전송을 위해서는 목적지에 대한 정보가 필요한데, 이번에 설명할 IP (Internet Protocol) 가 바로 목적지의 주소라고 생각하면 된다. IP Adress 에 패킷(통신 단위)을 통해 데이터를 전송하면 비로소 통신을 하게되는 것이다. IP 패킷 안에 데이터들을 담는데, 그 값들로는 출발지 IP, 목적지 IP 등의 정보들과 데이터를 담아서 함께 전송하게되는 방식이다. 하지만 이런 IP 통신에는 한계가 있다. 목적지의 PC가 꺼져있으면 패킷이 소실되며, 패킷이 꼬여버린다면 정상적인 데이터 전달이 이루어지지 않을 수 있다. 이를 위해 만들어진 것이 TCP/IP와 UDP/IP 이다 먼저 TCP/IP 에 ..
이번에는 DAO와 DTO, VO 그리고 Entity에 대해서 알아보려고한다. 개발을 하다보면 DB를 거의 사용해야하다보니까 생각보다 많이 들어보게 되는 주제이다. 실제로 옛날에 개발을 해보긴 했는데 잘 기억은 안나기도 하고, 이번 기회에 자세히 알아보도록 하자. 먼저 DAO에 대해서 알아보도록 하자. DAO(Data Access Object, 데이터 접근 객체) DAO는 말 그대로 데이터에 접근하기 위해서 만들어지 객체를 말하는데, 주로 비즈니스 로직과 데이터 접근 로직을 분리하기 위해서 주로 쓰인다. DB에 접근하기 위해서는 연결을 해야하는데, 이러한 연결은 한 두번만 일어나는 것도 아니고 여러 번 일어날 수 있다. 비즈니스 로직에서 많은 연결과 로직을 다 처리하기엔 무리가 있으므로 DB에 접근..
오늘은 API라는 것에 대해서 알아보려고한다. API는 개발을 하다보면 어디선가 한 번쯤은 들어봤을 법한 단어이다. API? 프로그래밍 할 때 편하게 짤 수 있게끔 도와주는 거 아닌가? 그렇다면 라이브러리는 뭐지? 라고 생각하면서 점점 복잡해지게 되는 것이다. 이러한 개념을 확실하게 정리해보도록 하자. API(Application Programming Interface, 응용프로그램 프로그래밍 인터페이스) API는 말 뜻대로, 응용프로그램에서 사용하기 위한 목적으로 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있도록 하는 인터페이스를 말한다. 예를 들어, 우리가 흔히 이용하는 유튜브에서 데이터를 가져오려면 유튜브 API를 통해서 원하는 데이터들을 가져오거나 기능을 실행할 수 있는 것..