Apple is Apple

일일 회고

 

선발대 세션이 있는 날이였다.

세션은 과제리뷰와 튜터님의 과제 구현을 위주로 진행되었다.

과제 구현을 해주시면서 중간중간 현업에서 사용되는 기술, 팁 같은 것들을 알려주셨다. 이런 것들이 모여서 큰 도움이 될 것 같다.

 

그리고 새로운 과제를 내주셨다. 과제 기능 구현은 완성하였는데, 몇가지 궁금한 점이 있어 조금 더 시행착오를 해 볼 것 같다.


오늘의 키워드

  • 알고리즘
  • 선발대 세션

 

알고리즘

 

[programmers] [Kotlin] 푸드 파이트 대회

문제 설명 수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을

aaapple.tistory.com

선발대 세션

코드 짤 때는 항상 확장성을 고려해서 코드를 짜야함

--> 구조를 잘 짜야하므로 생각, 시행착오를 많이 해봐야 됨 

 

Parcelize와 Serializable의 차이 --> 매우 중요 -> 설명이 가능해야 함!

 

타입 캐스팅

as -> as ~로 타입을 캐스팅함

as? -> ~로 타입을 캐스팅하는데 캐스팅이 안되면 null을 반환

is -> 조건문에 사용하여 타입이 맞는지를 구분함

 

 

 

fragment에서 activity의 context 가져오기

fragment에서도 Context를 사용하고 싶을 때가 생긴다.

하지만 fragment는 Activity와는 달리 Context를 상속받지 않기에 Fragment 내에서 직접적으로 Context 객체를 사용할 수 없다.

그래서  Fragment가 액티비티에 추가될 때 호출되어 액티비티를 받아오는 콜백 함수인 onAttach를 따로 오버라이딩 해야 한다.

private lateinit var mainActivity: MainActivity
    
override fun onAttach(context: Context) {
	super.onAttach(context)
	mainActivity = context as MainActivity
}

 

++ 추가

requireContext(), requireActivity() 메서드로 non-null 한 Context를 가져올 수도 있다.

getContext() == context, getActivity() == activity 메서드로 nullable 한 Context를 가져올 수도 있다.

profile

Apple is Apple

@mjjjjjj