[Java] 자바 Null과 Optional
자바를 모른채 스프링으로 개발할 때 자주 눈에 들어왔던 Optional에 대해 언젠가는 정리하고 싶었다. 여러 강의에서 굉장히 중요한 개념이라고 언급되었는데, 얘가 어떤 좋은 역할을 해낸 건지 정확히 뭐가 중요한 건지 알아보아야겠다.
자바를 모른채 스프링으로 개발할 때 자주 눈에 들어왔던 Optional에 대해 언젠가는 정리하고 싶었다. 여러 강의에서 굉장히 중요한 개념이라고 언급되었는데, 얘가 어떤 좋은 역할을 해낸 건지 정확히 뭐가 중요한 건지 알아보아야겠다.
인터넷에서 컴퓨터들이 서로 정보를 주고받을 때에는 각각의 상황에 따른 통신 규약이 필요하다. 이러한 통신 규약을 프로토콜이라고 하며, 이를 통해 네트워크 통신이 일어나는 과정을 OSI 7 계층 모델 또는 TCP/IP 4계층 모델로 설명할 수 있다.
컴퓨터들 간의 통신은 사람이 말을 뱉고, 말이 공기를 통해 전달되고, 다른 사람이 말을 듣는 대화의 과정 혹은 편지를 쓰고, 내용을 암호화한 뒤, 봉투에 넣어 우편을 보내는 과정 에 빗대어 이해할 수 있다. 이러한 하나하나의 동작이 계층을 이루게 되며, 이 계층들 간에는 상관 관계가 없다. 오로지 각 계층에서 산출된 결과만 전달할 뿐이다.