서론 지난 11월에 E2E 프로젝트가 한창 진행되고 있었던 즈음에 자바자기님이 Kernel360 1기에 특강 연사로 다녀가셨습니다. 개인적으로 이후에 기회가 된다면 현재 자바지기님이 속해계신 NEXTSTEP에서 TDD 특강을 듣고 싶을 정도로 궁금했었는데 이번 기회를 통해서 평소에 강의를 진행하는 방식에 대해 살짝 엿볼 수 있었습니다. 또한, 이 특강을 통해 앞으로 개발을 배움에 있어서 어떤 스탠스를 취하는게 좋을지, 테스트 코드는 어떻게 짜야할지, TDD는 어떤 식으로 진행하는지에 대한 감을 잡을 수 있었습니다. E2E 프로젝트 진행 중에 페어 프로그래밍을 약 2주간 짝을 바꾸어가며 진행했었는데, 페어 프로그래밍을 진행할 때는 잘 이해가 가지 않았지만 특강 이후에 깨닫게 된 점들에 대해 이번 후기를 통..
메시지 지향 미들웨어란 ? 메시지 지향 미들웨어(Message-Oriented Middleware) 는 시스템과 시스템간의 데이터 통신을 위한 소프트웨어, 즉 메시지라는 정보의 단위를 주고 받을 수 있게 하는 중간의 매개체 시스템입니다. 여기서 메시지 지향 미들웨어는 메시지 브로커와 같은 것들을 포함하는 매우 큰 단위로 메시지 브로커로 잘 알려진 Apache Kafka, RabbitMQ, ActiveMQ를 가지고 있습니다. 위에서 소개한 메시지 브로커들을 이해하려면 해당 브로커들에서 사용 중인 메시지 모델에 대한 이해가 필요합니다. 메시지 모델 메시지 모델에는 크게 두 가지로 나눌 수 있습니다. Message Queue (메시지 큐)와 Pub / Sub (게시 / 구독) 입니다. 두 모델 다 어플리케이션..
개요 앞서 Boot-Up 과정에서는 기획을 중심으로 효율적으로 협업하는 방법에 대해서 배웠습니다. 이번에는 과정 중 다음으로 진행된 해커톤 프로젝트에 대해 소개하고자 합니다. 해커톤 프로젝트도 이전에 진행한 프로젝트와 유사하게 3일 차에 팀을 바꾸고 새로운 팀원들과 진행하는 형태였습니다. 이번에는 팀원이 되어 4일이라는 기간동안 다른 두 팀에 속해서 실제로 개발과 코드 리뷰를 진행하면서 이전 프로젝트보다 배운 점이 많았습니다. 이틀 동안은 ministory라는 나만의 게시글 사이트를 이후 이틀 동안은 Orury라는 클라이밍 커뮤니티 서비스에서 기획과 개발을 진행했습니다. 아래의 Notion과 Github 링크에서 프로젝트에 대한 더 자세한 문서와 결과물의 세부 내용들을 확인하실 수 있습니다. minist..
개요 Kernel360 과정에 합격하여 진행하며 처음 진행했던 Boot-Up project인 TwoStar에 대해 소개하고자 합니다. Boot-Up project는 실제로 개발을 진행하는 것보다 기획 과정 중 일어나는 협업에 초점을 둔 프로젝트입니다. 3일 차에 팀장을 제외한 나머지 팀원들이 랜덤으로 다른 프로젝트에 배정되기 때문에 더 많은 사람과의 기획간 협업을 진행할 수 있었습니다. TwoStar는 Instagram과 같은 사진 / 영상 미디어 기반의 소셜 미디어 플랫폼을 기획하고자 하는 의도를 갖고 기획을 진행하였습니다. 이렇게 진행한 프로젝트 기획 및 협업 방식을 통해서 앞으로 과정 중 진행 될 프로젝트에서 어떤 방식을 통해 기획을 하고 개발을 진행하는 것이 좋을지 배울 수 있었습니다. 아래의 N..
객체란? 어떤 프로그래밍 언어를 먼저 공부하더라도 항상 배우는 주제가 있습니다. 바로 자료형입니다. 처음에는 기초적인 자료형과 변수 몇개로 프로그램을 작성했었습니다. 그러나 점점 프로그래밍이 발전하면서 하나의 변수에 여러가지를 담기는 어려운 일이였고 이에 따라서 하나의 구조에 여러 가지 정보를 담은 자료형이 필요하게 되었습니다. 따라서, 서로 연관된 정보를 묶어서 하나의 구조에 담은 객체가 만들어지게 됩니다. 여러분이 음악 학원을 운영하고 있고 다음과 같은 회원 정보를 저장하고 싶다고 해봅시다. 이름 악기 나이 레벨 Daniel piano 25 1 Daniel guitar 27 2 Alvin piano 25 2 여러분은 자바를 배운지 얼마 안된 상태이고 위의 정보를 다음과 같이 배열에 정리하려고 합니다...
네트워크 참조 모델이란 ? 네트워크 참조 모델이란 각 형태의 통신망들이 네트워크 구조와 각 계층별로 쉬운 참조와 이해를 돕기위해 기능적으로 구분해놓은 다이어그램입니다. 데이터를 송신할때는 높은 계층에서 낮은 계층으로 데이터를 수신할때는 낮은 계층으로 높은 계층으로 전달합니다. 인터넷 프로토콜 스위트 (Internet Protocol Suite)는 인터넷에서 컴퓨터들이 서로 정보를 주고 받는데 쓰이는 프로토콜의 집합입니다. 이를 설명하기 위해 네트워크 참조 모델인 OSI 7계층 모델이나 TCP/IP 4계층 모델을 사용합니다. OSI 7계층 모델 응용 계층 (Application Layer) 응용 프로세스가 실제로 동작하는 계층으로 일반적인 응용 서비스를 수행합니다. (HTTP) 표현 계층 (Presenta..