📘 4주차 미션을 시작하면서 이번 주차 미션은 “다리 건너기” 미션이었습니다. 처음에 문제를 읽었을 때는 한번에 이해가 안 됐었는데, 오징어게임의 다리 건너기 게임과 유사하다는 얘기를 듣고 찾아보니 한번에 이해가 갔습니다. 마지막 미션에서는 기본적인 클래스의 분리는 우테코에서 이미 만들어놓았고, 각 클래스마다 요구조건이 달려있었습니다. 2, 3주차 미션의 모든 요구 조건을 포함하면서 새롭게 추가된 요구조건을 만족하며 작업을 해야 했기 때문에 요구 사항 정리(README.md)만 엄청 오래 걸렸다는… 이번 미션에서는 ‘View와 Domain의 완벽한 분리”, “메소드의 길이는 10줄 이하”에 많은 집중을 하며 기능을 구현했습니다. 📖 BridgeGame 내부에서 View를 사용할 수 없는 요구조건 이번에 ..
📘 3주차 미션을 시작하면서3주차 미션을 받은 순간... 추가 요구사항이 더욱 디테일해졌다는 것을 느꼈고, 할 수 있겠지라는 걱정부터 시작되기 시작했었다.자바를 스스로 공부하기 시작하면서 기본적인 자료형, 문법 등에 대해서는 사용도 해보고 했지만 이번 미션에서는 enum(열거형)을 사용하라는 요구사항이 있었다. 2주차 미션을 하면서 '상수'를 적절하게 사용하면 가독성을 높일 수 있구나라는 것을 느꼈고, 다음 미션에는 꼭 사용해봐야지라는 생각을 하고 있었다. 우테코는 정말 신기한게 마치 내가 하고 있는 생각을 알고 있는 것처럼 새로운 미션에 귀신같이 '열거형'을 사용하라는 요구사항이 있었다. 😦 📖 열거형이 무엇인가?열거형은 자바에 대해서 공부하면서 들어본적은 많았지만 실제로 코드 개발에서 사용해..
2주차 미션의 추가 요구 사항2주차 미션이 마무리되었다. 온보딩 미션에서와는 다르게 추가적인 요구사항들이 존재했던 미션이었습니다.추가적인 요구사항은 다음과 같습니다.indent(인덴트, 들여쓰기) depth를 3이 넘지 않도록 구현한다. 2까지만 허용한다.3항 연산자를 쓰지 않는다.함수(또는 메서드)가 한 가지 일만 하도록 최대한 작게 만들어라.JUnit 5와 AssertJ를 이용하여 본인이 정리한 기능 목록이 정상 동작함을 테스트 코드로 확인한다.자바 코드 컨벤션을 참고하여 코드를 작성커밋 메시지 컨벤션을 참고하여 깃허브 커밋 메시지 작성 구현 기능 목록 정리이때부터 확실히 뭔가 배워간다는 것을 느꼈습니다. 1주차 때는 기능을 구현하면서 기능목록을 명세했었습니다. 하지만 이번 2주차 미션 때는 구현..
우아한 테크코스 5기졸업을 앞두고 계속해서 프로그래밍 공부를 학습하고 싶다는 생각이 들었고, 이왕이면 열정이 확인된 사람들과 함께 해보고 싶다는 생각을 해서 우아한 테크코스 5기에 지원하게 되었습니다. 이번 우아한 테크코스 5기는 지난 기수와는 다르게 선발 과정에 변화가 있었습니다. 이전에는 코딩 테스트를 진행한 후 프리코스를 진행할 수 있었지만, 이번 기수는 서류만 제출했다면 모두가 프리코스를 진행해 볼 수 있다는 특이점이 있었습니다. 많은 후기 자료들을 봤었는데 프리코스에서도 배우는 것이 많다고 해서 경험해 보고 싶은 마음에 바로 지원해서 지금은 프리코스를 진행 중입니다. 🤔 회고를 작성하기로 한 이유이번 기수에서부터 우아한 테크코스 커뮤니티인 “Github Discussions”를 진행하고 있고..
스스로 공부하고 개인적으로 기록해보는 공간입니다. 틀린 부분이 있다면 알려주시면 바로 수정하겠습니다. 감사합니다. 😄 📘 운영체제란 무엇인가? 📖 운영체제(Operating System)가 무엇인가? 컴퓨터를 이용하는 사용자가 컴퓨터 하드웨어와 상호작용할 수 있도록 도와주는 소프트웨어를 말한다. 사용자가 직접 하드웨어에 접근하여 정보를 처리하는 것은 어렵기 때문에 그 역할을 운영체제가 도와준다. 하나의 예시를 들어보면 컴퓨터는 0과 1로 데이터를 표현하는데, 만약 운영체제가 없다면 사용자는 직접 0과 1로 구성된 데이터를 이용하여 직접 컴퓨터와 상호작용해야하는 어려움이 있다. 대표적인 운영체제로는 Windows, MacOS, Linux, IOS 등이 있다. 📖 Bootstrap Program이 무엇인가?..
📘 스택과 큐 (Stack / Queue) 📖 Stack (스택) 스택 자료구조는 마지막에 들어간 데이터가 제일 먼저 나오는 LIFO(Last In First Out) 구조입니다. 자바에서는 스택을 Stack class로 구현하여 제공하고 있어서 아래와 같이 사용할 수 있습니다. Stack stack = new Stack(); 스택 활용의 간단한 예시로는 홈페이지의 뒤로가기, 앞으로가기 버튼의 기능과 같습니다. 초기 상태 (현재 있는 페이지는 "구글") BackStack ["네이버", "다음", "구글"] ForwardStack [] 뒤로가기 버튼을 눌렀을 때 (현재 있는 페이지는 "다음") BackStack ["네이버", "다음"] ForwardStack ["구글"] 뒤로가기 버튼을 다시 한번 눌렀을 ..