# VIPER
[Secrets Manager] HashiCorp Viper
설치 방법 > ## Viper는 무엇인가? 12-Factor-apps을 포함한 완벽한 설정 관리 솔루션이다. 애플리케이션 내에서 작동하도록 설계되어있다. 기본값 설정 JSON, TOML, YAML, HCL, envfile 및 Java 속성 구성파일을 읽기 실시간 감시 및 구성 파일 다시 읽기 환경 변수에서 읽기 원격 구성시스템에서 읽기 및 변경 사항 관찰 명령줄 플래그에서 읽기 버퍼에서 읽기 명시적 값 설정 > ## 왜 Viper인가? 최신 애플리케이션을 구축할 때에 구성 파일 형식에 대해 Viper가 모두 지원하기 때문에 사용자는 소프트웨어를 구성하는데 집중할 수 있다. Viper는 다음을 수행한다. JSON, TOML, YAML, envfile 등의 형식의 구성 파일을 찾고, 로드하고, 결집시킨다. 다양한 구성옵션에 대한 디폴트 값을 설정하는 매커니즘을 제공한다. 커맨드라인 플래그를 통해 지정된 옵션에 대한

[realm] 아키텍쳐와 디자인 패턴
⚠️ 본 게시글은 realm의 영상 게시글과 해당 강의자의 블로그를 보고 정리한 글 입니다. 따라서 글쓴이의 주관이 매우 많이 포함되어 있음을 밝힙니다. 1. 디자인 패턴? 디자인 패턴은 은탄환이 아니며, 용도에 맞게 사용하지 않으면 아키텍쳐는 엉망이 된다. 따라서 그 '용도'에 대한 이해가 잡혀있지 않다면 실용성, 효율성, 협업탄력성 등이 저하된다. 1.1. 싱글톤 싱글톤은 태생적으로 좋은 의도를 갖고 있으나, 대체로 남용되는 경향이 있다. 데이터베이스에 접근하거나 하나의 인터페이스만 허락되는 상황이라면 싱글톤은 권장할 만하다. 그

내가 보기 위한 Architecture(MVC, MVP, MVVM, MVI, VIPER, VIP) 간단 개요
MVC 좌: 오리지널 MVC, 우: Apple MVC 장점 설계가 단순하기 때문에 가장 쉽고 빠르게 개발이 가능하다. 애플에서 MVC를 지향하고 있기 때문에 기본 Life Cycle에 맞는 개발이 가능하다. 단점 View와 Model이 서로 의존적이다. Controller의 역할이 방대해져서 모듈화하는 부분이 무의미해질 수 있다. 위의 이유로 대규모 프로젝트에는 비적합하다. View가 독립적이지 않기 때문에 테스트 용이성이 떨어진다. MVP Presenter의 역할: UIKit 독립

RIBs
Uber의 RIBS Architecture를 공식 문서 Tutorial을 보고 느꼈던 것들을 정리해본다. RIBs란? > 많은 수의 엔지니어와 nested states를 관리하기 위한 mobile app Cross-platform Architecture RIBs의 이름은 Router, Interactor, Builder의 약자이다. 공식 github에서는 다음의 것들을 장점으로 내세우고 있다. Android와 iOS의 아키텍쳐를 공유할 수 있다. 비슷한 아키텍쳐를 가질 수 있어 business logic에 대해 cross review가 가능하다. Test가능하며, 격리되어 있다. 개별적인 RIB은 각각의 책임을 가지고 있다. 거기다가 Child RIB 로직과도 분리되어 있다. 이러한 점에서 독립적으로 존재할 수 있다. 개발자의 생산성을 위한 도구이다. RIBs에는 코드 생성, 정적 분석 및 runtime integrations에 대한

[iOS][DesignPatterns] 디자인 패턴를 공부하는 이유
(이미지출처:https://unsplash.com/photos/P_qvsF7Yodw) 디자인패턴을 배워야하는 이유 돈을 벌도록 도와줍니다. → 왜냐하면, 개발자의 시간을 아껴주고 일을 덜하도록 도와주기 때문입니다. 코드를 작성하는 시작점이 되어줍니다. → 프로젝트를 시작할 때, 어떤식으로 구체화할지 그림을 그리는데 최초 시작점이 되어줍니다. 디자인 패턴은 개발자들의 언어입니다. → 개발자들끼리 협업하고 소통할 때, 디자인 패턴을 기반으로 이야기 합니다. 의사소통을 위해 중요한 도구입니다. 디자인패턴을 사용하다보면 얻는 이점으로, 코드 간의 반복성을 찾기 쉽습니다. → 반복성을 발견하기 쉽도록 구현되어 있다면, 코드를 줄일 수도 있고 효율성을