이번 5기 모집에서 불합격하였다.
처음에는 매우 아쉬운 마음이 크게 들었다.
스스로가 열심했다고 생각했지만,
다른 사람이 보았을 때는 아직 부족한 점이 많은 것 같다.
다음 6기를 목표로 삼고 다시 열심히 성장할 생각이다.
이번 우 테코를 통해 정말 많은 것을 배웠다.
최종 준비를 위해 4기와 3기 문제를 풀었었는데,
이러한 과정 속에서 내가 부족한 점이 무엇인지 알게 되었다.
뿐만 아니라 다른 사람들의 코드를 보고 배울 점이 무엇인지 생각해보았다.
1. 일급 컬렉션
가장 처음 배운 점은 일급 컬렉션이다.
일급 컬 렌셔의 규칙을 적용하는 것은 간단하다.
컬렉션을 포함한 클래스는 반드시 다른 멤버 변수가 없어야 한다.
각 콜렌션은 그 자체로 포장돼 있으므로 이제 컬렉션과 관련된 동작은 근거지가 마련된 셈이다.
- 비즈니스에 종속적인 자료구조
- 상태와 행위를 한 곳에서 관리
- 이름이 있는 컬렉션
2. Enum의 사용
이전까지 enum을 단순히 상수화 처리를 하려는 목적으로만 사용하였다.
하지만 우 테코를 통해 enum을 적극적으로 활용하였다.
enum을 통해서 if문 사용을 줄일 수 있었고, 이로 인해 가독성이 좋아졌다.
또한 상태와 행위를 한 곳에서 관리할 수 있어 편리하였다.
또한 연관된 데이터를 그룹별로 관리할 수 있었다.
3. 정적 메서드
이전까지 static 메서드는 객체지향에서 멀어지기 때문에,
단순하게 지양하려 하였다.
또한 stactic 메서드는 프로그램이 끝날 때까지 메모리에서 내릴 수 없기 때문에 큰 단점을 가지고 있다.
하지만 속도가 빨라지고 반복적인 사용에는 효율적이기 때문에,
이를 적절하게 잘 사용하는 법을 알게 되었다.
4. 원시 타입의 포장
만약 User클래스에 이름, 나이, 이메일 등등 여러 가지 변수가 있다고 하자.
이러한 변수에 대한 예외처리를 전부 User에서 하면 너무 많은 책임을 지고, 클래스가 커지게 된다.
하지만 나이는 Age, 이름은 Name 등등 기존에 int, String의 원시 타입을 포장하면,
그에 따른 책임을 각자가 지니게 된다.
- 코드의 유지보수에 도움이 된다.
- 자료형에 구애받지 않는다.
5. getter를 사용하는 대신 객체에 메시지를 보낸다.
기존에는 단순하게 get을 사용하였던 것 같다.
get으로 값을 가지고 와서 그 값을 가지고 계산을 하거나, 비교하였다.
하지만 getter를 쓰지 않고, 즉 해당 데이터가 있는 곳에 메서드를 불러
그 값을 사용하였다.
단순하게 getter를 사용하면, 객체 스스로 상태 값을 변경하는 것이 아니고,
외부에서 상태 값을 변경할 수 있는 위험성도 생길 수 있다.
6. 인터페이스의 활용
기존에는 인터페이스의 중요성을 모르고, 어디에 적용할지에 대한 개념만 있고,
제대로 적용해본 적이 없었다.
이번에 우 테코를 진행하는 동안, 랜덤 값과 같은 테스트하기 어려운 코드를
인터페이스를 활용하여 테스트하기 쉬운 코드로 변경할 수 있었다.
후기
나는 살면서 큰 욕심 없이 살아온 것 같다.
가지고 싶은 것도 없고, 하고 싶은 것도 없었다.
하지만 개발 공부를 하며, 내가 모르는 부분에 대해
알고 싶어 하고, 내 것으로 만들고 싶어 하는 욕심이 있다는 것을 깨달았다.
이러한 욕심 때문에 좋은 경험과 지식을 얻을 수 있는 우 테코의 불합격 소식이 더욱 안타깝게 다가왔지만,
어느 정도 예상도 하였다.
그때 당시에는 코드를 잘 작성하였다고 생각했는데,
지금 보니 부족한 점이 너무 많이 보였다.
이러한 차이가 보이는 것 자체가 스스로 노력했고, 발전했다는 증거라 생각한다.
오늘부로 학교도 종강을 하였다.
방학 동안 정말 개발 공부만 미친 듯이 할 예정이다.
방학이 끝나는 시점에 내가 얼마나 성장했을지 궁금하고,
이번 방학이 얼마나 중요한지 알기 때문에
나는 최선을 다할 것이다.
'활동' 카테고리의 다른 글
[알고리즘랩스]수료 및 후기 (3) | 2023.01.16 |
---|---|
[삼성전자 DX] 알고리즘 특강 (4) | 2023.01.13 |
우아한테크코스 5기 - 4주차 후기 (1) | 2022.11.23 |
우아한테크코스 5기 - 3주차 후기 (0) | 2022.11.16 |
우아한테크코스 5기 - 2주차 후기 (0) | 2022.11.08 |