개발/최적화(11)
-
안드로이드 아키텍쳐
패스트캠퍼스의 강의를 요약한 버전...올린다 아키텍쳐가 왜~~~중요하게 한 번만 말한다 안드로이드는 웹처럼 이슈에 대해 바로바로 대응이 안됨..큰 일 터지면 좃대는것..! 성공한 앱을 더 빨리 확장시키기위해서(모듈화, 실험 기반 시스템 필요) 더 깊은 사용자화 필요..!(유연한 구조가 필요) 나중에 바꾸려면 아주아주 많은 시행착오가 필요 → 엄청난 cost 모듈화는 가능한 빨리 해야됨…(ㅎㅎ….ㅅ ㅂ) 복잡성 제거 ; 좋은 설계를 위한 첫걸음 복잡성 → 시스템을 이해 및 수정하기 어렵게하는, 소프트웨어 구조에 관련된 모든것. (단순히 코드 줄 수를 말하는것은 아님). 변경증폭 (작은 변경인데, 다른 많은 부분을 편집해야됨) 인지적 부하 (작은 변경인데 많은 선수지식을 알아야함) 알 수 없는 무지 (작은 ..
2023.05.03 -
firebase app distribution + fastlane을 이용한 앱 배포 자동화(window)(2) - 배포 완료시 슬랙 알람 추가하기
현재 내 lane은...자동 빌드 / 배포 정도만 수행하고 있다. 근데 로그를 계속 보면서 언제 끝나는지 기다리는게........개 에바라고 생각함. 그래서 webhook을 통해, 배포 완료시 슬랙 알림을 보내 보기로 했다. 필요한건 일단 슬랙의 incoming webhook이다. 세팅은 저번에 다 했으니 넘어가고..... 슬랙의 왼쪽 상단 메뉴에서 앱으로 들어가준다. 그리고 incoming webhook이라고 검색하면 요렇게 뜰것임. 쟤를 slack에 추가해줍시다. 대충 어느 채널에 알릴지 채널을 선택하고 추가한다고 하면 이런 설정 화면이 뜬다. 설정은..뭐 하고싶은거 하고, 여기서 필요한건 웹후크 url이다. 복사해둔다. 그리고 fastlane의 fastfile에다가 # This file contai..
2022.10.07 -
case를 효과적으로 다루는 방법
시간이 난 김에 정리를 해본다. 개발자라면 거의 매일 마주하게 되는 고민......바로 case를 분기하는 시점을 어떻게 다룰것이냐 하는 것. 가장 베이직한 if/else도 있고, when, switch 등등...... 오늘은 이걸 효과적으로 다루는 방법 중 하나인 다형성에 대해서 정리해봤다. 참고 글은 이거 Avoid Using “when” Expression as Much as Possible. Use Polymorphism Instead A tip for Android developers betterprogramming.pub 윗 글 내용을 내가 쓴것처럼..막 써보겠다. 아래와 같은 케이스를 가정해보자 sealed class ButtonSize { object Small : ButtonSize() ..
2022.10.07 -
GitLab Runner 사용하기 (1) - 빌드 자동화
삽질 오지게 함ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ ㅋ ㅋ .. 하..................... 일단 까먹기 전에 쓴다. 일단 깃랩은 CI/CD를 위한 프로세스를 지원한다. 이쯤에서 다시 짚어보는 ci / cd의 개념,,,, 지속적 통합(Continuous Integration, CI) 리포지토리에 푸시할 때마다 스크립트 세트를 생성하여 애플리케이션을 자동으로 빌드하고 테스트하는것을 말함. 애플리케이션에 제출된 각 변경사항은 개발 브랜치에도 자동으로 지속적으로 빌드되고 테스트됨. 이러한 테스트는 변경사항이 애플리케이션에 대해 설정한 모든 테스트, 지침 및 코드 준수 표준을 통과하도록 보장한다. 지속적 전달(Continuous Delivery, CD) 지속적 전달은 지속적 통합을 넘어서는 단계..
2022.09.15 -
firebase app distribution + fastlane을 이용한 앱 배포 자동화(window)
안쓸라그랬는데말이지 아무리 구글링해도 윈도우 기반으로 FASTLANE 써먹는 자료가 부족해서 쓴다. 까먹기전에 기록한다. CI / CD의 필요성은 알지만 난 지식이 부족해서.... 일단 감이라도 잡기 위해 테스트 앱 배포 자동화를 WINDOW기반으로 해봤다. 귀찮으니까;;핵심만 쓴다. 1. 루비부터 설치한다. Downloads Which version to download? If you don’t know what version to install and you’re getting started with Ruby, we recommend that you use the Ruby+Devkit 3.1.X (x64) installer. It provides the biggest number of compatib..
2022.08.26