Archives
Recent Posts
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Today
Total
관리 메뉴

안드로이드 개발자의 창고

[개인 회고] 3주차 회고(5/16 - 5/22) 본문

개인 회고

[개인 회고] 3주차 회고(5/16 - 5/22)

Wise-99 2023. 5. 23. 09:09

🌟 이번 주 목표 🌟

  • [ V ] 코딩 테스트 입문 캘린더 완성
  • [ V ] 개인 프로젝트 디자인 수정
  • [ Δ ] 디자인패턴(MVVM / MVP) 학습
  • [ V ] 이번 주 강의 정리하여 블로그 작성

 

 

💜 Liked(좋았던 점)

Kotlin 독학에서 배우지 못한 것을 배웠다

  • 독학으로 알게 됐던건 ? 연산자와 lateinit 정도였는데 문법적으로 깊게 들어오니 모르는 부분이 많았다. 강의를 이전보다 열심히 듣고 주석을 많이 달아야겠다고 생각하게 되었다.
  • 마냥 Java와 비슷하다고 생각했는데 Kotlin에서 지원하는 것도 많고, Companion과 Static처럼 이름은 다르지만 기능이 비슷한 부분도 있어서 배우는 데 뿌듯함이 느껴졌다.

 

 

✔️ Lacked (아쉬웠던 점)

디자인 요소 집착

  • recyclerView를 사용했는데 기기 자체 메뉴바 때문에 마지막 item이 가려졌다. 그냥 진행해도 됐지만 왠지 거슬려서 계속 고치게 되었다.
  • 지금 디자인보다는 기능 구현이 먼저 돼야된다는 걸 알고 있으면서도 고치기 위해서 시간을 많이 투자했다.

한 달 집중력 소모

  • 그 동안 열심히 했는데 이번 주는 강의 정리하는 데에 시간을 많이 투자했다. 집중력이 많이 떨어진 것을 체감하고 조바심이 생겨버렸다.
  • 리프레쉬를 핑계로 느슨하게 계획을 짰는데 다른 프로젝트를 해볼 기회가 생겨서 조금 후회된다.

 

 

📚 Learned (배운 점)

kotlin 문법

  • Companion과 Static
    • Java에서는 Static을 사용하고, Kotlin에서는 Companion을 사용한다. 이름은 다르지만 이를 사용한 요소들은 객체 생성없이 사용할 수 있다는 공통점이 있다.
  • copy()를 이용한 깊은 복사와 얕은 복사
    • data class의 copy()를 이용하면 깊은 복사를 할 수 있다.
    • 깊은 복사를 하면 객체의 전체 값을 복사하여 사용하므로 멤버변수의 값을 변경했을 때 원본이 유지된다.
    • 얕은 복사는 = 연산자를 이용한다.
    • 얕은 복사를 하면 객체의 주소 값을 복사하므로 멤버변수의 값을 변경했을 때 원본이 유지되지 않는다.
  • as 와 is 를 이용한 캐스팅
    • as : 객체를 지정된 클래스 타입으로 변환하는 연산자
    • is : 형 변환이 가능하면 변환을 하고 true를 반환

 

 

👩🏻‍💻 Longed for (앞으로 바라는 점)

API를 이용하여 json 통신 앱 개발

  • rest API를 활용하여 앱을 개발한 경험을 가진 개발자를 찾는 경우가 종종 있다.
  • 이러한 이유로 API를 활용하여 json 통신을 하는 앱을 개발하는 프로젝트를 진행할 계획이다. 백엔드에서 주는 json 정보를 토대로 앱을 개발할 것이다. 디자인부터 시작해야되는데 일단 피그마를 사용하여 디자인하는 방법을 알아봐야 할 것 같다.
  • 현재 진행하고 있는 개인 프로젝트를 다음주 안에 끝내고 API 응용 프로젝트를 멋사 프로젝트 시작 전까지 마무리하여 배포할 계획이다.

디자인 패턴 공부

  • MVVM 잠깐 살펴봤는데 내가 참고했던 코드랑 비슷한거 같기도 하고 애매하다.
  • Model - View - ViewModel 순서인데 나는 recyclerView를 사용하다보니 View - Adapter - Repository - ListViewModel 순서로 흘러간다. 이게 MVVM이 맞는지 판단이 잘 서지 않는다.
  • 공식 문서를 참고해야될 것 같다.