• Super 주니어 개발자! 컨퍼런스 후기

    거리두기 해제가 되면서, 오프라인 컨퍼런스에 대한 갈증이 있었는데 (렛 어스고 티켓팅 실패.. 흑흑) 좋은 에너지를 얻을 수 있는 컨퍼런스를 경험했다. 이번 컨퍼런스는 주니어분들의 성장기와 노하우, 경험을 들을 수 있었다. 인상 깊었던 섹션 위주로 바로 본론으로 들어가려고 한다 ! '이직 잘하기' 면접, 기술 이러한 이직 스킬이 아닌 어떻게 보면 더 중요한 어떠한 '나'만의 기준으로 개발자가 될 것이고, 진정 '내'가 원하는 서비스 및 개발환경이 무엇일지 끊임 없이 고민해보게 되는 세션이었다. 문득, 내가 왜 개발자가 되기로 했지? 나는 어떠한 개발 환경을 좋아 했지? 내가 열심히 개발한 서비스가, 어떠한 형태로 유저들에게 편리함과 즐거움을 제공하지? 나는 그러한 환경에서 어떤 것에 성취감을 느끼지? 나..

  • 객체지향 사실과 오해 - 1,2장

    요즘 재밌게 읽고 있는 '객체지향 사실과 오해' 를 정리해볼려고 합니다. 보통 학교 수업에서 java 나 C++ 수업을 듣게 된다면, 교재나 강의 자료에서 항상 강조되는 언어들이 있었습니다. 그 중 하나가 바로 '클래스' 였습니다. 올바른 클래스 설계가 마치, 올바른 객체지향과 연결된다는 설명이 많았습니다. 저 또한 이러한 고정적인 관념으로 코딩을 하는 실수를 많이 저질렀던 것 같습니다. 그도 그럴 것이, 대부분의 자료가 '클래스' 관점에서 쉽게 객체지향을 풀어내려고 했기에 다소 틀린 관점도 내포했다고 생각이 듭니다. 책에 저자는, 1장에서 강조하는 것이 객체의 역할, 책임, 협력에 집중해야 한다고 말합니다. 또한 '객체간의 협력의 관점' 에서 '설계'를 진행하라고 합니다. 2장에 해당 내용이 나옵니다 ..

  • 우아한 Model Data 처리 (1)

    우아한 Model Data 처리 (1)

    Struct와 Codable 프로토콜을 통해 주로 Server Response Data를 받습니다. 하지만, API 수정 및 신규 배포 등 의 문제로 인해 예상치 못한 String Key 값이 오거나, 자료형이 다른 Response Data가 올 수 있습니다. 보통, 이런 Decoding Error가 발생하게 되면 해당 데이터 전체를 쓸수가 없게됩니다. 즉 10개의 프로퍼티가 있는 Model 에서 유저가 몰라도 되는 프로퍼티의 자료형이 다르게 온다면, 해당 데이터 전체에 대한 Decoding Error가 발생하게 됩니다. 그렇다면, 좀 더 유연해질 순 없을까요? 물론, 쉽고 편하게 가능합니다 ! 나아가, String Key 값을 보통 enum으로 처리하게 되는데요. (String으로 값을 받은 후, en..