전체 글

문득 constructor가 붙은 코드가 뭔지 헷갈렸다. 이러는김에 전체적으로 어떤 것인지 정리해보려고 한다. 왜 보조 생성자를 사용할까? - 다양한 초기화 방법 제공: 동일한 클래스에 여러 가지 초기화 방법을 제공하고 싶을 때 보조 생성자를 사용합니다. 이는 Java에서 오버로딩된 생성자를 제공하는 것과 유사합니다. - 상속과 관련된 작업: 서브클래스에서 슈퍼클래스의 특정 생성자를 호출해야 할 경우 보조 생성자를 활용합니다. 주의할 점 : - 주 생성자와 보조 생성자를 혼합하여 사용할 때는, 보조 생성자가 항상 주 생성자를 호출해야 합니다. - init 블록은 주 생성자와 함께 실행됩니다. 따라서 보조 생성자를 통해 객체를 생성할 경우, 보조 생성자가 호출되기 전에 주 생성자와 init 블록이 먼저 실..
이전에 작성했던 코인 API불러오는 방법에 이 해당 코인을 ROOM DB에 저장하도록 하겠다. https://jejublog94.tistory.com/29 빗썸 코인 리스트 가져오기 API 불러오기 통신하기 해도해도 헷갈리는 API통신 오늘이야 말로 정리하고야 말겠다. 가져온 API 링크 https://api.bithumb.com/public/ticker/ALL_KRW 총 파일은 아래 이미지와 같이 필요하다. 원래는 뷰모델도 사용하지 않고 냅다 jejublog94.tistory.com 앞서 코드는 아래 링크에 있다. https://github.com/AnMyungwoo94/API_test GitHub - AnMyungwoo94/API_test Contribute to AnMyungwoo94/API_tes..
1. 람다식 또는 람다란? 람다식 또는 람다는 기본적으로 다름 함수에 넘길 수 있는 작은 코드 조각을 뜻한다. 람다를 사용하면 쉽게 공통 코드 구조를 라이브러리 함수로 뽑아낼 수 있다. 코틀린 람다식은 항상 중괄호로 둘러싸여 있다. 인자 목록 주변에는 괄호가 없다는 사실을 꼭 기억하라. 화살표 -> 가 인자목록과 람다 본문을 구분해준다. 로컬변수처럼 컴파일러는 람다 파라미터의 타입도 추론이 가능하다. 파라미터 타입을 명시할 필요가 없다. People.maxBy{ p:People -> p.age } p.age } p.age } 람다가 여러줄로 이뤄진 경우 본문의 맨 마지막에 있는 식이 람다의 결과값이 된다. 다양하게 사용가능 2. 람다에서 사용하기 좋은 함수 filter 와 map 필터와 맵은 컬렉션을 활..
해도해도 헷갈리는 API통신 오늘이야 말로 정리하고야 말겠다. 가져온 API 링크 https://api.bithumb.com/public/ticker/ALL_KRW 총 파일은 아래 이미지와 같이 필요하다. 원래는 뷰모델도 사용하지 않고 냅다 선언했는데 최근에 뷰 모델을 공부하고 있어서 사용해보려고 한다. 빌드 그레들에는 아래와 같이 추가했다. //뷰모델 스코프 오류났을 때 해결 implementation 'androidx.fragment:fragment-ktx:1.5.7' implementation 'androidx.activity:activity-ktx:1.7.1' // retrofit implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementa..
1. 코틀린 인터페이스 코틀린 인터페이스 안에는 추상 메서드뿐 아니라 구현이 있는 메서드도 정의할 수 있다. 다만 인터페이스 안에는 아무런 상태도 들어갈 수 없다. 자바에서는 extends와 implements 키워드를 사용하지만, 코틀린에서는 클래스 이름 뒤에 콜론(:)을 붙이고 인터페이스와 클래스 이름을 적는것으로 클래스 확장과 인터페이스 구현을 모두 처리한다. 인터페이스 멤버의 경우 항상 열려있으며 final로 변경할 수 없다. 구현된것은 아무것도 없는 밑그림만 있는 설계도. 인터페이스는 표준, 약속, 규칙이라고 생각하면 된다. 인터페이스 참고 링크 https://enjoyplaying.tistory.com/33 2. 가시성 변경 자바에서는 같은 패기지 안에서 protected 멤버에 접근할 수 있..
1. 컬렉션 이란? 코틀린(Kotlin)도 자바와 마찬가지로 컬렉션 프레임워크를 제공합니다. 하지만 코틀린의 컬렉션 프레임워크는 자바의 것과는 약간 다르며, 더 간결하고 표현력이 풍부하도록 설계되었습니다. 코틀린의 컬렉션은 크게 두 가지 주요 카테고리로 나누어집니다: 읽기 전용(immutable)과 수정 가능한(mutable) 컬렉션입니다. 읽기 전용 컬렉션 (Immutable) List: 순서가 있는 요소의 집합입니다. (예: listOf()) Set: 중복을 허용하지 않는 요소의 집합입니다. (예: setOf()) Map: 키와 값 쌍으로 이루어진 요소의 집합입니다. (예: mapOf()) 수정 가능한 컬렉션 (Mutable) MutableList: 순서가 있는 요소의 집합으로, 요소의 추가 및 제거..
해당 경고가 발생하였다. 구글링을 해서 방법을 찾았다. 우선 아래와 같은 경로로 들어가서 lib파일에 있는 모든 파일을 압축해준다. 압축을 진행한 파일을 아래와 구글 플레이 콘솔에 같은 경로로 업데이트를 해준다. 이렇게 하면 경로가 해결된당!
오랜만에 배포된 앱을 업데이트 해보려고 했다.그런데 오잉? 전에는 보이지 않았던 경고가 떴다. 기존파일이 아닌 새로 만든 복붙한 파일로 업로드 하려고 해서 그런듯하다. 해결법이 쉬워서 다행이었다. " 이 App Bundle 유형과 연결된 가독화 파일이 없습니다. 난독화된 코드(R8/proguard)를 사용하는 경우 가독화 파일을 업로드하면 비정상 종료 및 ANR을 더 쉽게 분석하고 디버그할 수 있습니다. R8/proguard를 사용하면 앱 크기를 줄이는 데 도움이 됩니다. " 라고 한다. 찾아보니 해당 경고는 소비자가 사용하는데에는 불편함이 없으나 앱에서 문제가 발생 했을때 개발자가 문제를 더 빠르고 정확하게 파악 및 수정하는데 도움을 준다고 한다. 오류를 더 잘 파악 할 수 있게 도와주니 나도 한번 해..
개발자 취준생활 거의 3개월차! 리드미를 예쁘게 꾸며보려고 한다. 예전에는 동영상 하나를 넣었지만 gif로 넣어보고 싶어서 해보았다. 결과물은 아래와 같다. 원래 3*3을 해보았지만 옆이 잘려서 어쩔 수 없이 2*2로 바꾸었다. 이렇게 해도 나름 괜찮은듯해서 그냥 놔두었다. 첫번째 칸에는 제목, 두번째 칸에는 gif을 넣고, 세번째 칸에 설명을 넣었다. 우선 gif를 만들기 위해서는 동영상 촬영을 해야 하는데 나는 picpick 프로그램을 사용한다. 몇년전부터 너무 잘사용해온 프로그램이다. 스크롤캡쳐, 사각캡쳐, 동영상 촬영 등등 내가 필요한 모든 기능이 되니 한번도 사용해보지 않은 분들은 꼭 사용해보셨으면 좋겠다. 그리고 깃허브 리드미는 10mb이하의 영상만 올라간다. 우선 녹화된 mp3파일을 gif로..
재개
재주있는 개발이