ios 5

[iOS] RxSwift + Reactorkit 을 사용해서 프로젝트를 구성해보자 - Project Template

플라워로드 기술 블로그 : http://blog.flowerroad.ai 해당 글은 2021년 5월 24일에 작성되었습니다. 아래 글에서 설명하고 있는 FLo는 현재 서비스 중인 플라워로드 앱을 의미하지만, 이 글은 해당 앱의 기능적인 특징보다 RxSwift + Reactorkit을 이용해서 프로젝트의 SW architecture를 어떻게 구성 하는가에 초점을 두고 있습니다. 배경 iOS - FLo(플라워로드 앱) 1.0의 경우 서비스 초기 MVP를 target으로 개발되었기 때문에 개발 당시 구조를 생각하지 않고 최대한 빠르게 simple한 기능만을 가지는 output를 만드는것이 목표였습니다. 이후 기능들이 많아지고, 시나리오가 복잡해져감에 따라 코드의 복잡도는 더욱 심각하게 복잡해지고 읽기 힘든코드..

개발/ios 2022.02.27

[ios/Android] RIBs에 대해서 알아보자 (Design Pattern)

플라워로드 기술 블로그 : http://blog.flowerroad.ai Notion Link : https://flyingcorp.notion.site/Design-Pattern-RIBs-e523ddcba2a2479b905b195179a49846 💡 이글은 2021년 2월 27일에 작성되었습니다. 이 페이지는 RIB에 대한 배경, 내용등 이론적인 부분이 정리되어 있고, 모든 내용은 RIBs 공식 페이지에서 발췌,참고,번역해서 본인의 생각을 조금 덧붙여서 작성되었습니다. RIBs? 정의 R(router) I(interacter) B(builder) 공식 GitHub에서 정의 한 바에 따르면 Cross-Platform architecture Framework이라고 정의 하고 있다. 이 말은 ios이건 an..

개발/common 2022.02.25

[iOS] UI Test 를 자동화 해보자. - Basic 사용법

개요 UI Test 는 시뮬레이터 상에서 실제 앱을 구동시켜서 가상 컨트롤러를 이용해서 정해진 시나리오 대로 조작 후 해당 시나리오에 대한 결과를expected result와 비교하여 테스트의 성공/실패를 결정한다. UI Test는 개발자들사이에서는 많이 사용되지 않는 기능이기는 하나 개발 리소스 혹은 QC에 따로 리소스를 투입하기 힘든 스타트업과 같은 회사에서는 릴리즈시 테스트에 들어가는 비용을 줄여줄 수 있다. 다만 UI Test 또한 적지 않은 단점이 존재 하는데 이중 가장 큰것은 UI/UX가 바뀔때마다 테스트 또한 다시 작성하거나 수정을 해야하는 단점이 있다. UI Test는 화면상에 보여지는 글자, 문자열, 버튼, 아이콘 등 현재의 element를 기준으로 작성이 되고 tap, input tex..

개발/ios 2022.02.20

[iOS] NaverMap build error - Undefined symbols for architecture

ld: warning: ignoring file /User/xxx/.../Pods/NapsMap/framework/NMapsMap.framework/NMapsMap, building for iOS Simulator-x86_64 but attempting to link with file build for unknown-unsupported file format (... Undefined symbols for architecture x86_64 1. 증상 naver map SDK를 pod로 설치 후 빌드시 발생하는 build error 2. 원인 naver map을 SDK로 설치 할때에 대용량 파일을 git에서 정상적으로 받아 오지 못해서 발생하는 현상 이는 git-lfs를 적용함으로 해결 할 수 있다. 3..

TroubleShooting/ios 2022.02.16

[iOS] DI(Dependency Inject) with SwInject

플라워로드 기술 블로그 : http://blog.flowerroad.ai Notion Link : https://flyingcorp.notion.site/iOS-Dependency-Inject-with-SwInject-4cd49754024e46939eeed7cbcebeeba6 개요 Dependency Injection? Clean Architecture에서도 자주 언급되는 용어이고, Software Engineering 에서도 자주 언급되는 단어 입니다. 직역을 하자면 의존성 주입이라고 하는데 사실 직역을 했을때 용어를 보고 어떤 의미인지 이해 하기에는 조금 힘든면이 있습니다. 해당 포스팅은 DI에 대한 내용이 아니기 때문에 간략하게 설명하자면 객체간의 의존관계를 줄여서 수정에 대한 유연성을 높이고, 확..

개발/ios 2022.01.28