Loading
2022. 9. 11. 22:38 - lazykuna

오래간만의 안드로이드 개발 + Kotlin 사용 후기

필요한 것이 생겼는데 앱 스토어에 없길래, 오래간만에 직접 안드로이드 앱 개발을 하면서 Kotlin을 처음 사용하게 되었습니다. 다행히 오래 걸리지 않고 추석 하루 뚝딱! 투자해서 만들 수 있었습니다.

예-전에, 12년도 쯤에 java로 개발한 적은 있는데 그 이후로 다시 앱개발에 손을 댄 건 처음이네요.

  • 언어 자체에서는 함수형 언어의 냄새가 물씬 풍겨오는데, 프로젝트의 구조에서는 java 향이 물씬 풍겨옵니다. 실제로 자바 파일이랑 호환도 되고 문법도 호환이 되어서 자동으로 변환까지 다 해줍니다 (!). 덕분에 적응하기 정말 쉽습니다. 언어 따로 공부 안하고 제 한 줌밖에 안되는 자바 기본지식으로 바로 kotlin을 쓸 수 있었습니다.
    • 전형적인 함수형 언어들 벤치마크 한 게 val , 일차 함수들 사용, select 대신 when 등이 있네요.
    • 자바의 불필요한 class 수십줄 쓸 거를 코틀린으로 개발하면 훨씬 깔끔합니다. 변수 선언, 타입 선언도 자동이라 go랑 은근 비슷한 맛도 있음. 아무튼 정말 코드 깔끔합니다. 다시 자바 쓰고 싶지 않음. 😅 코틀린 창시자님 고마워요 👍
  • jar 설치한다고 npm 똥꼬쇼했던 java와는 달리 gradle이 알아서 다 해주니까 좋습니다. 한 줄 추가하니 편하게 외부 패키지를 가져다 쓸 수 있는 요즈음의 세상이란. 요즘 언어는 패키지 관리자가 기본 소양인가…
  • 문법적으로 가장 인상깊었던 것은, 어떤 함수의 마지막 인자가 function call이면 func(args, ...) { params -> ... } 식으로 문법을 쓴다는 것이었습니다. 처음에 저 문법이 뭔가 했더니 저거였더라고요. 정말 별 거 아닌 괴상한 문법적 변화 같기도 한데, 막상 써보니까 상당히 편하고 눈에 확 잘 들어옵니다. 굉장히 과감하고 독특한 문법이라서 꽤 인상깊었는데, 저게 하루아침에 생겼을 것 같진 않고, 저거 유래가 뭘까…?
  • 이건 오래간만에 개발하면서, 그것도 맥으로, 느낀건데, M1 맥에서도 안드로이드 개발 잘 되네요? 여기까진 당연할지 모르겠는데, 요즘 안드로이드 디버깅 모드 무선으로 할 수 있더라고요? 라떼는,,, 계속 끊겨가는 usb 선 꽃아서,,, 힘겹게 앱 만들고 그랬는디,,,,!!!!
    • 아무튼, 개발 및 디버깅 상당히 편했습니다.
  • 안드로이드 파일 시스템 권한이 굉장히 많이 바뀌었더라고요. 예전의 리눅스식 파일 경로를 더 이상 알아낼 수 없고, Uri 식 (content://~~) 파일 경로를 받아서 접근해야 되더랍니다. (안드로이드 11 이상)
    • 변화 자체는 좋은 방향이라고 봅니다. 어쩐지 내장 파일 시스템 간만에 한번 열어서 보니 굉장히 깨끗해졌더라고요. 물론 개발자는 보다 더 괴롭습니다. 뭔가 점점 사과향이 나는 것 같긴 한데…
    • 절대 파일 경로를 알아내려면, termux 같은 터미널 어플리케이션 설치해서 termux-storage-setup 해주고 ls /mnt 후에 readlink /mnt/sdcard 같은걸로 경로 찾아줘야 합니다. 꽤 복잡함.

여튼 저 어플 만들어서 사진 3만장 정리하고 S21U로 갈아탔는데, 아무리 논란이 많은 AP라지만 역시 그래도 기존 쓰던 S10에 비할 바가 아니네요. 훨씬 쓸만합니다. 근데 너무 커 …

'사는 이야기' 카테고리의 다른 글

Time is running out  (0) 2022.10.10
초보운전 시절 사고날 뻔했던 순간들  (0) 2022.08.06
가난의 되물림  (0) 2022.07.31
간헐적인 유선 인터넷 끊김 (해결)  (0) 2022.07.14
강호동의 조언 (feat. 한끼줍쇼)  (0) 2022.07.06

댓글을 입력하세요