일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 |
- JetpackCompose
- Clean Architecture
- 안드로이드컴포즈
- 안드로이드
- HTTP
- RecyclerView
- 애드몹배너
- 안드로이드 카카오 지도
- android kakao map
- 안드로이드 라이브러리
- Firebase
- 선언형UI
- 클린 아키텍처
- 동적 링크
- 젯팩컴포즈
- component
- 컴포넌트
- 애드몹광고
- Android
- ImageView
- 파이어베이스
- Android 애드몹
- android daum map
- 아키텍처
- 다이나믹 링크
- 안드로이드광고
- glide
- dynamiclink
- thread
- android 지도
- Today
- Total
목록2022/02 (5)
코딩스토리
좋은 아키텍처는 다음을 지원해야 한다. 시스템의 유스케이스 시스템의 운영 시스템의 개발 시스템의 배포 유스케이스 시스템의 아키텍처는 시스템의 의도를 지원해야 한다는 뜻이다. 좋은 아키텍처가 행위를 지원하기 위해 할 수 있는 일 중에서 가장 중요한 사항은 행위를 명확히 하고 외부로 드러내며, 이를 통해 시스템이 지닌 의도를 아키텍처 수준에서 알아볼 수 있게 만드는 것이다. 운영 시스템의 운영 지원 관점에서 볼 때 아키텍처는 더 실질적이며 덜 피상적인 역할을 맡는다. 각 컴포넌트를 적절히 격리하여 유지하고 컴포넌트 간 통신 방식을 특정 형태로 제한하지 않는다면, 시간이 지나 운영에 필요한 요구사항이 바뀌더라도 스레드, 프로세스, 서비스로 구성된 기술 스펙트럼 사이를 전환하는 일이 훨씬 쉬어질 것이다. 개발 ..
아키텍처의 주 목적 시스템의 생명주기를 지원 좋은 아키텍처는 시스템을 쉽게 이해하고, 쉽게 개발하며, 쉽게 유지보수하고, 쉽게 배포하게 해준다. 시스템의 수명과 관련된 비용은 최소화 하고, 프로그래머의 생산성은 최대화 하는 데 있다. 개발 개발하기 힘든 시스템이라면 수명이 길지도 않고 건강하지도 않을 것이다. 시스템 아키텍처는 개발팀이 시스템을 쉽게 개발할 수 있는 구조여야 한다. 배포 소프트웨어 시스템이 사용될 수 있으려면 반드시 배포할 수 있어야 한다. 배포 비용이 높을수록 시스템의 유용성은 떨어진다. 소프트웨어 아키텍처는 시스템을 단 한 번에 쉽게 배포할 수 있도록 만드는 데 목표를 두어야 한다. 운영 아키텍처가 시스템 운영에 미치는 영향은 개발, 배포, 유지보수에 미치는 영향보다는 덜 극적이다. ..
컴포넌트 결합 컴포넌트 결합은 컴포넌트 사이의 관계를 설명한다. ADP: 의존성 비순환 원칙 컴포넌트 의존성 그래프에 순환이 있어서는 안 된다. 숙취 증후군 많은 개발자가 동일한 소스 파일을 수정하는 환경에서 발생한다. 보통 프로젝트가 커지면서 누군가 마지막으로 수정한 코드 때문에 망가진 부분을 수정하고, 또 수정하는 작업을 반복하면서 발생된다. 해결법 주 단위 빌드 의존선 비순환 원칙 주 단위 빌드(Weekly Build) 중간규모 프로젝트에서 흔하게 사용한다. 정해진 기간동안 각자 신경쓰지 않고 개발을 하다가, 날 잡고 통합하여 시스템 빌드하는 방법이다. 프로젝트가 커지며 통합하는 시간이 길어지며, 개발하는 시간을 침범하게 되어 효율성이 점점 떨어지게됨. 순환 의존성 제거 이 문제의 해결책은 개발 환..
컴포넌트란? 컴포넌트는 배포할 수 있는 가장 작은 단위 흔히 .jar(java archive resource)이 컴포넌트에 해당 여러 컴포넌트를 서로 링크하여 실행 가능한 파일이나 .war파일과 같은 단일 아카이브 파일로도 만듦 잘 설계된 컴포넌트는 독립적으로 배포, 개발이 가능해야 함 REP 재사용/릴리즈 등가 원칙 "재사용단위는 릴리즈 단위와 같다." dependencies { ... //Lottie implementation 'com.airbnb.android:lottie:4.2.0' } 개발자는 Maven, Gradle와 같은 모듈 관리 도구를 사용하여 다음과 같이 다른사람들이 만들어 놓은 라이브러리를 적용해 재사용을 한다. 만약, Maven이나 Gradle를 통해 라이브러리를 가져오는데, 릴리스..
컴포넌트 컴포넌트 : 시스템의 구성 요소로 배포할 수 있는 가장 작은 단위 자바 - jar 루비 - gem 닷넷 - dll 컴파일형 언어 - 바이너리 파일의 결합체 인터프리터형 언어 - 소스파일의 결합체 여러 컴포넌트를 서로 링크하여 실행 가능한 단일 파일로 생성 여러 컴포넌트를 서로 묶어서 .war 파일과 같은 단일 아카이브로 만들 수도 있다. 컴포넌트 각각을 .jar나 .dll 같이 동적으로 로드할 수 있는 플러그인이나 .exe 파일로 만들어서 독립적으로 배포할 수도 있다. 잘 설계된 컴포넌트라면 반드시 독립적으로 배포 가능한, 따라서 독릭적으로 개발 가능한 능력을 갖춰야 한다. 컴포넌트의 간략한 역사