안드로이드

개발/스크랩

[안드로이드] Medium 포스팅 스크랩 - 7월 1주차

6월에 3주간 매주 스크랩 글을 적어봤는데, 미디움에서 Daily digest 메일이 매일 오전 07:40에 와서 일주일에만 해도 40개를 읽어야하고 이걸 또 정리해서 글로 적기에는 퀄리티가 점점 낮아질 것 같아서 앞으로는 한달에 1-2개 정도 포스팅하려고 한다. 대신 정말 도움이 되는 포스팅들로만 추렸다. 🎈 UI/UX 버튼 스타일 가이드 여러 플랫폼들을 예시로 들어 버튼 스타일 케이스 스터디를 하는 느낌으로 작성된 글이다. 버튼 스타일도 스타일인데, 각 유명 플랫폼들이 간단하게 색만 이용해서 어떻게 사용자들의 반응을 이끌어내는지 보여서 좋았다. User interface — button styles The style of UI buttons is the result of a careful balanc..

개발/Kotlin

[Kotlin] 테스트 코드 (1) - 테스트 코드란?

오늘 포스팅할 내용은 "테스트 코드 작성"에 관한 이야기이다. 안드로이드 단톡방에서 사람들이 메서드 하나 추가될 때마다 적는다던 테스트 코드, 정보처리기사 공부하다 봤던 TDD, 여러 채용 공고들에 숱하게 적혀있던 "테스트 코드 작성 경험이 있으신 분" 등 안드로이드 진영에서의 테스트 코드 작성의 중요성은 날이 갈수록 커지고 있다. "테스트 코드"를 실무에서 작성해 본 경험이 없어 이에 대한 지식이 전무한 사람들도 꽤 많을 것이라 생각되는데, 이번 "테스트 코드" 시리즈 포스팅을 읽은 뒤에는 테스트 코드 작성의 중요성과 작성 방법, 다른 여러 정보들을 알고 갈 수 있었으면 좋겠다. 테스트 코드란? 소프트웨어의 기능과 동작을 테스트하는데 사용되는 코드 테스트 코드는 비단 spring, android에서만 ..

개발/Kotlin

[안드로이드] 테스트 코드 - JUnit의 예외 처리 (expected, assertThrows, doThrow)

우리가 작성해야 하는 테스트 코드 비단 성공하는 케이스뿐만이 아니다. 실패하는 케이스와 발생할 수 있는 여러 예외들에 대한 처리 또한 테스트가 분명 중요한 부분인데, 오늘은 JUnit와 Mockito를 사용한 테스트 코드 작성 시에 사용 가능한 예외 처리 기법에 대해 비교해보고자 한다. ✔️ @Test @Test(expected = NumberFormatException.class) public void CalculateValues_test() { . . . } Test 어노테이션의 expected를 사용한 예외 처리는 JUnit 프레임워크 자체에서 지원하는 예외 테스트 방법이다. 어노테이션에 미리 지정해둔 예외가 해당 테스트 메서드에서 발생하면 테스트가 성공한 것으로 간주하는데, 여기서 문제가 발생한다..

개발/스크랩

[안드로이드] Medium 포스팅 스크랩 - 6월 3주차

원래 하던 방식이 아니라 새로운 방식으로 주말에 읽지 못해서 밀린 포스팅들까지 올리려고 정리해뒀는데, 좋은 것 같고 이러면 다른 잉여 내용을 줄여야겠다 생각해서 앞으로 스크랩 포스팅의 초입부는 짧게, 이후 내용들은 짧고 간결하게 적기로 결정하였습니다. 🎈 UI/UX 관련 0) UI 디자인에서의 황금 비율 오늘 스크랩한 포스팅들 중에서 가장 유익하다고 생각하는 포스팅이다. 황금 비율은 익히 들어 알고 있겠지만, 의외로 굉장히 많은 소프트웨어 회사의 디자인 팀에서도 황금 비율을 적재적소에 사용하고 있다는 사실을 알게 되었다. Golden Ratio in UI design In the world of design, aesthetics and visual appeal play a crucial role in c..

개발/UI & UX

[안드로이드] UI/UX - 사용자의 인지 부하를 고려하라!

이번 포스팅은 앞에 "안드로이드"라고 태그가 달려있지만, 사실 모든 분야에서의 UI/UX에 적용할 수 있는 내용입니다. 보시다시피 "사용자의 인지 부하를 고려하라"는 것이 이번 포스팅의 주제인데, 이 인지부하에 대해 알아보기 전에 우선 UI/UX 설계 시에 가장 중요한 4가지 항목들에 대해 알아보겠습니다. 🎈 UI/UX 설계 원칙 사용자 인터페이스는 사용자 경험을 기반으로 설계해야 합니다. 이 부분에 있어서는 모바일이 PC와 차이가 있는데, 일반적으로 사용자들은 PC를 사용할 때보다 휴대폰을 사용할 때 더 짧고 간결한 UX를 기대한다는 점입니다. 따라서 모바일에서는 웹보다 사용자가 더 쉽고 빠르게 사용할 수 있도록 설계하는 것이 중요합니다. 긴 로딩 시간과 수많은 광고처럼 지나친 비용을 요구하는 작업은 ..

개발/스크랩

[안드로이드] Medium 포스팅 스크랩 - 6월 2주차

개인앱을 위한 공부라서 UI/UX에 관한 포스팅을 주로 스크랩하는데, 그 중에서도 MidJourney의 활용에 대한 포스팅은 UI/UX에 대한 고민이 많은 개인앱 개발자들에게 큰 도움이 될 것 같습니다. 실제로 제 주변에 많은 분들도 MidJourney를 사용하여 개인앱을 많이들 출시하고 있구요 다음주에는 좀 더 알찬 포스팅들을 스크랩해보도록 하겠습니다 🙏 🎈 UI/UX1. 클린 코드의 모범적인 사례들 Best practices for Clean CodeClean code is a set of programming practices that emphasize the readability, maintainability, and simplicity of code. Writing clean code is…me..

개발/Android

[안드로이드] 클린 아키텍처 - (3) 멀티 모듈 패키지 구조

이번 포스팅에서는 안드로이드 스튜디오에서 클린 아키텍처 구조를 적용한 멀티모듈 프로젝트를 생성하는 예제를 설명하도록 하겠습니다.계층별, 클래스별 세부적인 코드들은 들어있지 않으니 우선 전체적인 구조를 이해한다는 마음으로 읽어주시면 감사하겠습니다.다음 포스팅에서는 간단한 실습 앱을 만들면서 각 클래스별 역할/세부 코드와 전체적인 플로우에 대해 알아보겠습니다. 프로젝트 설정우선 전체적인 구조로 보면 기본으로 있는 app 모듈은 Application 클래스가 위치하며, 사용하는 DI에 따라 모든 Module들이 이곳에 존재할 수도, 또는 각 계층에 존재할 수도 있습니다. ✔️ 좌측 상단 File - New - New Module을 선택합니다. ✔️ 좌측 메뉴들 중에서 Android Library를 선택한 뒤,..

개발/Android

[안드로이드] 클린 아키텍처 - (1) 개념

오늘의 주제는 로버튼 마틴 형님의 "클린 아키텍처"라는 개념이다.많은 기업들이 해당 아키텍처 구조를 사용하고 있으며, 비즈니스 로직 덩어리가 클수록 장점이 부각되는 구조이다.하지만 기존의 "클린 아키텍처"라는 개념은 분야에 구애받지 않는 개념이라 안드로이드에서는 완벽하게 호환되지 않는다.그래서 오늘은 안드로이드에서의 클린 아키텍처에 대해 설명하고자 한다. 구조도를 보면 컴포넌트나 의존성 구조가 조금 다르니 그 부분을 유의해서 보면 이해가 쉬울 것이다. 클린 아키텍처의 핵심적인 역할을 하는 SOLID에 대해 궁금하다면 이 포스팅을 참고하면 도움이 될 것이다. 클린 아키텍처와 SOLID클린 아키텍처는 이제 안드로이드 진영의 많은 기업들이 선호하는(?) 아키텍처가 되었다.내가 이 책을 읽었던 작년 이 맘 때와..

개발/Android

[안드로이드] 오픈소스 라이선스 고지

개발자들은 다양한 오픈소스 라이브러리들을 사용한다.오늘은 그 중에서 내가 사용하는 여러 라이브러리들의 라이선스에 대해 알아보고, 상업적인 목적으로 사용하는 경우에 어떤 방식으로 표기하는 것이 올바른 라이브러리 사용법인지 알아보고자 한다.대부분의 라이브러리는 프로젝트의 라이선스 고지를 요구하는 경우가 많기 때문에, 이를 정확히 알아야 앱을 출시하고 운영하는데에 있어서 문제가 발생하지 않을 것이다.1. RxJava- 라이선스: Apache License 2.0- 고지 방법: 라이선스 텍스트를 포함한 복사본을 프로젝트의 라이선스 고지 문서에 포함해야 한다. 2. Retrofit- 라이선스: Apache License 2.0- 고지 방법: 라이선스 텍스트를 포함한 복사본을 프로젝트의 라이선스 고지 문서에 포함해..

개발/Android

[안드로이드] ViewModel에서 context를 사용하는 방법

우리는 보통 ViewModel을 생성할 때 ViewModel()을 상속받아 사용한다. 그래서 일반적으로 ViewModel에서는 Context에 직접 접근하지 않는다. ViewModel의 주요 목적이 UI와 비즈니스 로직을 분리하기 위한 것이기 때문이다. 이를 통해서 UI의 생명주기에 영향을 받지 않고 독립적으로 데이터를 유지할 수 있게 된다. 하지만 특정 상황에서는 ViewModel에서 Context에 접근해야하는 경우가 발생하다. 이 때 생성자 파라미터로 받거나 객체를 생성해서 받는 것은 올바른 방법이 아니다. AndroidViewModel 클래스를 사용해서 해결이 가능한데, 이는 Application Context를 파라미터로 받고 이것을 통해 리소스나 시스템 서비스를 사용할 수 있게 된다. clas..

최선의 최선
'안드로이드' 태그의 글 목록 (2 Page)