inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

Glide gradle implementation 관련 질문

미해결

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

안녕하세요. Glide를 사용하려다 gradle 문법이 달라서 질문 드립니다. 제가 쓰는 안드로이드 스튜디오는 Iguana 2023.2.1 입니다 저의 소스는 implementation(libs....) 이런 식인데, 가이드는 implementation 'com.github.bumptech.glide:glide:4.16.0' 이렇습니다. 어떻게 하면 될까요? 관련 내용을 알려면 어떻게 어디를 찾아 보면 될까요?

  • android
  • kotlin
  • firebase
댓글 2 좋아요 0 조회수 459

intelliJ 최신버전과 kotlin 1.6버전 충돌. 빌드 오류

미해결

실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)

안녕하세요! 혹시 사용하고 계시는 intelliJ의 버전 알수 있을까요? 저는 최신버전 2024.1을 사용중이었는데요 해당 버전으로 강사님의 build.gradle 스펙과 동일하게 하여 빌드를 하니 Downloading kotlinc-dist? 라는 말이 뜨면서 무한 로딩이 걸리며 빌드가 5분이 지나도 끝나지 않습니다 ㅜㅜ 테스트도 실행이 안되구요 kotlin버전 1.6이 최신 intelliJ 버전에서 지원하지 않는다는?? 답변을 보고 kotlin을 1.7버전으로 업그레이드 해봐도 되지 않았고, 사용중인 intelliJ 버전을 2023.1 로 다운그레이드 하여 실행하니 정상적으로 동작하긴 합니다... IDE 버전에 따라 언어 버전 호환성 문제가 있는거 같습니다 ㅜㅜ 참고로 최신 intelliJ를 사용했을땐 "org.jetbrains.kotlin.plugin.jpa" 플러그인슬 설치하지 않아도 12강에 말씀하신것 처럼 Book.kt 에서 오류가 나지 않았습니다! 2023.1로 다운그레이드 하니 오류가 나네요 ㅎㅎ

  • spring
  • kotlin
  • spring-boot
  • 버전
돗토리묵 댓글 2 좋아요 1 조회수 1042

@Component

해결됨

입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기

안녕하세요 또 이렇게 질문을 드리네요 공통 개발 - 인터셉터에서 AdminInterceptor은 @Component을 사용합니다. 제가 자료를 찾아봤는데 개념 이해가 어렵더라구요 개발자가 직접 작성한 class를 Bean으로 등록하기 위한 어노테이션이라고 정의 되어 있던데 그럼 Bean은 또 뭔지 찾아봤어요 자바 객체를 스프링에서는 Bean이라고 한다. 라고 정의 되었더라구요. 객체는 뭐 재료를 합쳐서 사용자가 사용할 수 있겠끔 만들어진 거가 객체인건 알고 있고 .... 다시 정리하면 직접 작성한 class를 객체화 시키려는건가라고 좀 애매하게 이해했는데 이건 또 아닌거 같고.. 예제를 본다면 class InlineExamConsole { @Autowired public void setExam(Exam exam) { this.exam = exam; } } 이 클레스면 xml은 <context:annotation-config/> <bean id = "exam" class="entity.NewlecExam" /> <bean id = "console" class="ui.InlineExamConsole"> </bean> 로 되어야 하고... IoC 컨테이너의 상황은 exam: Exam<---- console:InlineExamCode 처럼 플로우가 될꺼구... 그런데 <context:annotation-config/> <bean id = "exam" class="entity.NewlecExam" /> <!-- <bean id = "console" class="ui.InlineExamConsole"> </bean>-> 를 해서 삭제.... bean을 삭제 하면 IoC 컨테이너의 상황은 아래처럼 될듯 한데 exam: Exam<---- console:InlineExamCode console는 또 사용해야겠으니 아래처럼 @Componet를 등장시키고, @Componet class InlineExamConsole { @Autowired public void setExam(Exam exam) { this.exam = exam; } } IoC 컨테이너에서 console:InlineExamCode를 부활 exam: Exam<---- console:InlineExamCode 그런데 부활만 했지 그냥 좀비 상태가 되어 버린 console:InlineExamCode... console:InlineExamCode은 어떻게 찾는건지.. 그럼 xml를 변경 <context:component-scan base-package = "spring.di.ui"/> <context:annotation-config/> <bean id = "exam" class="entity.NewlecExam" /> 위 테그로 spring.di.ui에 컴포넌트가 있으니 다른곳에 찾지 말고 위 테그에서 컴포넌트 찾고 그 컴포넌트를 Bean에 등록해서 객채화 해~~~ 라는거같은데 코드상으로는 이렇게 이해를 했어요 하지만 강의에서는 context:component-scan base-package 를 못본거 같은데 ....(뭐 제가 바빠서 꼼꼼하게 못본것일 수도 있고 ) 저 컴포넌트의 이해를 좀 도와주시면 안될까요?? 컴포넌트 활용이나 @Component를 사용안하면 얼마나 불편해지길래 저 이노테이션을 사용한건지 ... (사실 저 이노테이션을 안써도 잘 활용할 수 있을거 같은데 ...)

  • kotlin
  • mysql
  • docker
  • spring-boot
  • jpa
just kim 댓글 1 좋아요 1 조회수 213

[실습]Thymeleaf- 부트스트랩 템플릿 - 자료가 달라요 ...

해결됨

입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기

안녕하세요 틈틈히 공부 하고 있는데 여기까지 왔네요.. 이해를 못하는 부분이 좀있어서 첨 부터 다시 보고 여기 까지 왔는데 모르는부분은 인터넷에서 확인하고 알아갔는데 강의 내용에서 알려주신 자료와 강의 하신 자료가 다른거 같아서 이렇게 글 남기네요 Personal - Free Bootstrap Template - Start Bootstrap 에서 받은 자료을 받아서 압축 풀면 ===================== =================== 위처럼 나타납니다. 강의 내용에서 자료를 받은 내용은 이렇더라구요 ============================= 제자료는 강사님의 자료 처럼 Vendor이 없어요... 강의 노트를 확인하면 [링크에서 템플릿 파일 다운로드 후 압축을 해제하고, 파일과 폴더를 각각 아래 경로에 추가합니다. 디렉토리가 없다면 만듭니다] 라고 적혀 있어서 위 처럼 폴더를 만들긴 했지만 vendor폴더가 없어요 강사님의 git에 있는 벤드를 가져와서 붙여도 되나요?? 그러면 강의 내용을 앞서 가는거 같아서 하다가 말았어요... Vendor 폴더 그냥 폴더만 만들고 계속 강의 들어도 되나요?

  • kotlin
  • mysql
  • docker
  • spring-boot
  • jpa
댓글 2 좋아요 1 조회수 526

Open 키워드를 사용해야 하는 이유

해결됨

실전! 코틀린과 스프링 부트로 도서관리 애플리케이션 개발하기 (Java 프로젝트 리팩토링)

안녕하세요 강사님 덕분에 편히 배우고 있습니다. 다름이 아니라 이번 강의 초반에 @Transactional 어노테이션을 사용할 시 open 키워드를 클래스와 매서드에 다 사용해주어야 하고, 만약 이게 싫다면 플러그인을 적용해야 한다고 말씀하셨는데요, 찾아보니 코틀린에서는 기본적으로 모든 클래스가 최종 클래스고, 그렇기 때문에 상속이 되지 않아 open 키워드를 사용해 상속 가능성을 열어두어야 한다는 것 같더라구요. 그런데 왜 이게 @Transactional 어노테이션을 사용할 때도 해당되는 내용인지 잘 모르겠습니다. 프록시 객체가 생성되기 때문인 걸까요? 제가 코틀린 기본 강의를 들었음에도 잘 기억이 나질 않아 질문드립니다. 항상 감사드립니다.

  • java
  • spring
  • kotlin
  • spring-boot
  • 리팩토링
foodsmith96 댓글 2 좋아요 1 조회수 351

spring에서 Entity작성 후 [Table ' ' doesn't exist] 오류

해결됨

영화 예매 관련 Entity를 작성 후 DB확인차 실행했는데 다른 Entity는 테이블이 잘 만들어진 것을 확인할 수 있었지만 이상하게 Seat Entity만 테이블이 만들어지지 않았습니다. WARN 3508 --- [Movie Ticketing] [ restartedMain] o.m.jdbc.message.server.ErrorPacket : Error: 1146-42S02: Table 'ticketing.seat' doesn't exist WARN 3508 --- [Movie Ticketing] [ restartedMain] o.h.t.s.i.ExceptionHandlerLoggedImpl : GenerationTarget encountered exception accepting command : Error executing DDL " alter table seat add constraint FKgik5885qsff01sxe7v3kqjrhx foreign key (theater_id) references theater (theater_id)" via JDBC [(conn=216) Table 'ticketing.seat' doesn't exist] org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL " alter table seat add constraint FKgik5885qsff01sxe7v3kqjrhx foreign key (theater_id) references theater (theater_id)" via JDBC [(conn=216) Table 'ticketing.seat' doesn't exist] at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:94) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] at org.hibernate.tool.schema.internal.Helper.applySqlString(Helper.java:233) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] at org.hibernate.tool.schema.internal.Helper.applySqlStrings(Helper.java:217) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] at org.hibernate.tool.schema.internal.SchemaCreatorImpl.createForeignKeys(SchemaCreatorImpl.java:303) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] at org.hibernate.tool.schema.internal.SchemaCreatorImpl.createFromMetadata(SchemaCreatorImpl.java:250) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:172) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:142) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:118) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:256) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.lambda$process$5(SchemaManagementToolCoordinator.java:145) ~[hibernate-core-6.4.4.Final.jar:6.4.4.Final] application.yml은 ddl-auto.create 입니다. 대소문자 구분이 문제인가 싶어 @Table(name = "seat")도 추가하고 lower_case_table_names = 1 인 것도 확인했는데 똑같이 에러가 발생하더라구요 하루종일 찾아봐도 이유를 잘 모르겠습니다 왜그런걸까요 ㅠㅠㅠ Seat Entity 코드는 아래와 같습니다. @Entity @Table(name = "seat") class Seat { val row : String? = null val column : Int? = null //좌석 선택 @Enumerated(EnumType.STRING) val selectStatus : SelectStatus? = null // POSSIBLE, IMPOSSIBLE @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "theater_id") val theater : Theater? = null @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "seat_id") val id : Long = 0L }

  • spring
  • kotlin
  • mysql
  • mariadb
juhyeonbt861 댓글 1 좋아요 0 조회수 647

실습리포지토리 테스트 코드 작성 강의 오류

해결됨

입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기

안녕하세요 또 이렇게 질문하게 되네요 먼저 코드는 틀린거 없이 Git 내용과 강의 내용코드 그대로 작성하였습니다. 하지만 왜 일까요?? 에러가 나네요 이부분이 에러 납니다. al experience = experienceRepository.findAll() ====================== @Test fun testFindAll() { println("---- findAll 테스트 시작 ----") val experience = experienceRepository.findAll() assertThat(experience).hasSize(DATA_SIZE) println("experiences.size: ${experience.size}") for (experience in experience) { assertThat(experience.details).hasSize(experience.title.toInt()) println("experience.details.size: ${experience.details.size}") } println("---- findAll 테스트 종료 ----") } ==================================== 이부분도요 findAllByIsActive(true) @Test fun testFindAllByIsActive() { println("----- findAllByIsActive 테스트 시작 -----") val experiences = experienceRepository.findAllByIsActive(true) assertThat(experiences).hasSize(DATA_SIZE) println("experiences.size: ${experiences.size}") for (experience in experiences) { assertThat(experience.details).hasSize(experience.title.toInt()) println("experience.details.size: ${experience.details.size}") } println("----- findAllByIsActive 테스트 종료 -----") } 에러 코드는 기니깐 핵심 부분만 올려 드리면 Hibernate: select e1_0.experience_id,e1_0.created_date_time,e1_0.description,d1_0.experience_id,d1_0.experience_detail_id,d1_0.content,d1_0.created_date_time,d1_ 0.is _active,d1_0.update_date_time,e1_0.end_month,e1_0.end_year,e1_ 0.is _active,e1_0.start_month,e1_0.start_year,e1_0.title,e1_0.update_date_time from experience e1_0 left join experience_detail d1_0 on e1_0.experience_id=d1_0.experience_id where e1_ 0.is _active=? org.springframework.orm.jpa.JpaSystemException: No default constructor for entity 'com.justkim.portfolio.domain.entity.ExperienceDetail' at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException( HibernateJpaDialect.java:341 ) 이이쿠 한줄만 적는데도 기네요 ExperienceDetail.kt 코드는 @Entity class ExperienceDetail(content: String, isActive: Boolean) : BaseEntity() { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "experience_detail_id") var id:Long? = null var content: String = content var isActive: Boolean = isActive fun update(content: String, isActive: Boolean) { this.content = content this.isActive = isActive } } 이런데 ExperienceDetail( 가 계속 경고를 때리네요 Class 'ExperienceDetail' should have [public, protected] no-arg constructor https://github.com/justkjy/portfolio-justkim 깃 주소입니다 구글에서 위 에러를 검색하니깐 인프런 오류 질문이 올라 와 있던데 봐도 모르겠네요 https://www.inflearn.com/questions/931371/test-%EC%98%A4%EB%A5%98 감사합니다.

  • kotlin
  • mysql
  • docker
  • spring-boot
  • jpa
just kim 댓글 2 좋아요 1 조회수 367

Sequence vs Stream

미해결

코틀린 고급편

안녕하세요 Sequence와 Stream의 차이점에 대해서 질문드립니다. Sequence가 지연연산의 이점을 통해서 대용량 처리를 해야할 때 이점을 줄 수 있다고 이해를 했고, Java의Stream과 유사하다는 생각이 들었습니다. 찾아보니, java8 이전의 Kotlin의 경우 Stream을 사용할 수 없으니, Sequence를 사용했었다 라는 글을 발견했습니다. 위 설명이 맞을까요? 혹시 맞다면 어떠한 기준으로 둘중에서 선택을 하는게 좋을까요?

  • kotlin
  • 함수형-프로그래밍
  • 객체지향
김태준 댓글 1 좋아요 1 조회수 269

안드로이드 스튜디오 스크래치 파일

미해결

[2023 코틀린 강의 무료제공] 기초에서 수익 창출까지, 안드로이드 프로그래밍 A-Z

import kotlin.system.exitProcess val mutableMap = mutableMapOf("name" to "Joyce", "age" to 100, "height" to 180) println(mutableMap) mutableMap.put("hobby", "coding") 코드마지막 "coding" 부분에 빨간줄 쳐지면서 Type mismatch: inferred type is String but Nothing was expected 라고 합니다 똑같이 했는데 왜안될까요

  • android
  • kotlin
  • 클론코딩
준호 댓글 1 좋아요 0 조회수 311

인터페이스에 대한 질문입니다

미해결

[입문편] 안드로이드를 위한 코틀린(Kotlin) 문법

인터페이스가 이해가 잘 되지않습니다 추상클래스를 이용해서도 상속을 하는데 왜 더 작게 상속을 해야하나요? 아니면 여러개 상속할 것을 인터페이스를 이용하여 하나로 묶어 다중상속 하는건가요? 일반적으로 추상클래스를 이용하거나 open을 이용해도 상속이 되는데 꼭 interface를 사용해야하나요??

  • kotlin
  • 코딩-테스트
shin8877123 댓글 1 좋아요 0 조회수 282

xml 파일 디자인 부분

미해결

[초급편] 안드로이드 커뮤니티 앱 만들기(Android Kotlin)

안녕하세요 선생님 섹션 4 - 팁 페이지 만들기 - 첫번째 강의(레이아웃 설정 및 아이콘 넣기)를 수강중입니다. 제가 중간에 어디 부분을 놓쳐서 이해를 못하고 있는지 잘 모르겠습니다. 4:04 부분에 보이는 꿀팁화면(fragment_tip.xml) 디자인 (안드로이드 스튜디오 우측 그림)에는 상단에 내용 부분(사진 3개)만 있고 지붕 디자인이 없는데 애뮬레이터를 실행하는 부분(4:17) 에서는 지붕 디자인(자취생으로 살아남기 글자랑 그림, 우측에 막대기 3개 표시)이 나오는데 윗부분 디자인은 어디서 가지고 오는 건가요? main xml에서 지붕부분을 만든 것은 알겠는데 꿀팁 tip xml 에서는 지붕에 대한 코드가 없습니다 코드상으로는 지붕에 대한 코드가 없는데 애뮬레이터를 실행하면 지붕이 나오게 되는데 왜 그런 것인지 모르겠습니다. 아래는 애뮬레이터 실행한 부분입니다.

  • android
  • kotlin
  • firebase
댓글 1 좋아요 0 조회수 247

참고할 프로젝트 찾는 방법(kotlin, spring)

미해결

안녕하세요! go언어를 하다가 현재 kotlin, spring 을 공부하는 중입니다 좋은 프로젝트 샘플을 보면서 어떤 구조로 어떻게 구현되어 있는지 전체적인 코드를 보고싶은데, 다들 샘플 프로젝트는 어떻게 찾으시나요? 기본 CRUD프로젝트라도 좋아요 Github에서 검색해서 찾으시는지, 오픈소스를 찾아보시는지 궁금합니다 꿀팁 알려주세요! 혹시 괜찮은 코프링 프로젝트를 아신다면 알려주시면 더 감사하겠습니다!

  • 코프링
  • kotlin
  • spring
  • 프로젝트
  • 프로젝트샘플
  • 프로젝트예시
sooutt 댓글 1 좋아요 0 조회수 485

에뮬레이터 실행 에러

미해결

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

안녕하세요. 강의를 듣다가 에뮬레이터를 실행하려는데 실행이 되지 않습니다. 해결방안을 찾아보다 SDK Tools를 보는데 필수 도구들 중에 intel x86 Emulator (HAXM installer)가 없는 것을 알게 되었습니다. 이게 없어서 에뮬레이터 실행이 안 되는 것일까요? 해결방안을 아무리 찾아도 모르겠습니다... 위의 사진이 계속해서 뜨는 에러입니다. 기존에 이미 있는 에뮬레이터 말고 다른 것을 실행시켜도 같은 에러가 뜹니다.

  • android
  • kotlin
  • firebase
장민정 댓글 2 좋아요 0 조회수 563

파이어베이스 익명로그인 - 코드는 소문자인데 대문자로 표시되는 이유

미해결

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

안녕하세요 강사님 다이어트 메모앱에서- 2번째 강의인 “파이어베이스 익명로그인” 7:13 부분을 듣고 있습니다. 강의 흐름상 중요한 건 아니지만 궁금해서 여쭤봅니다 코드에서 버튼을 만들고 버튼의 텍스트를 소문자로 login 이라고 입력하셨는데 어떻게 하면 오른쪽 split 탭(파란화면) 에서는 글씨가 대문자로 LOGIN 이라고 뜨는 건거가요? 저는 오른쪽 파란화면도 당연히 소문자로 떠서요 아래 화면은 강의를 캡처한 사진입니다

  • android
  • kotlin
  • firebase
댓글 1 좋아요 0 조회수 215

엠티프로젝트 만드는 것 관련해서 질문 있습니다.

미해결

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

안녕하세요? 오랜만에 수업을 들으며 프로그램을 켰는데 예전과 달리 이런 창이 떠서요, 수업에 나오는 엠티프로젝트를 만들려면 어떻게 설정해야 하는지 알려주시면 감사하겠습니다. 감사합니다.

  • android
  • kotlin
  • firebase
댓글 1 좋아요 0 조회수 219

트와이스 앱 - splash 화면 manifest 파일 수정

미해결

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

트와이스 앱 만들기- 강의 소개 및 스플래시 화면 4분 33초를 듣고 있습니다. mainfest 파일 수정하는 과정에서 계속 에러가 나는데 어떻게 해야 하나요? 검색해봐도 해결이 안되어서 질문 드려요 앞에 첨부해주신 자료에 따라 exported를 true로 하고, intent filter를 splash 안에 들어가게 했는데 무엇이 문제인지 모르겠습니다. 다음처럼 에러가 나요 Unable to find Gradle tasks to build: [:app]. Build mode: ASSEMBLE. Tests: None

  • android
  • kotlin
  • firebase
댓글 1 좋아요 0 조회수 304

avd 띄웠을 때 파일명이 안 나와요

미해결

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

섹션 0 . 강의소개 및 개발환경 세팅에서 4번째 강의 "안드로이드 스튜디오 살펴보기" 를 듣고있습니다. 영상 13분 28초 강의에서는 myfirstfile 이라는 파일명이 avd에 뜨는데 , 저는 왜 안 뜨는건가요? ( 저도 파일명을 똑같이 myfirstfile로 앞에서 설정했었는데 아예 이름이 보이질 않습니다)

  • android
  • kotlin
  • firebase
댓글 1 좋아요 0 조회수 243

int, string?

미해결

[입문편] 안드로이드를 위한 코틀린(Kotlin) 문법

안녕하세요! 타입과 형변환을 보고있는데요, 제가 아예 쌩초보라 벌써 헷갈려서요..! fun main() { val test1 = "1234" val test2 = 1234 println(test1 + 1) println(test2 + 1) } 강의에서 test1은 문자니까 문자열이 합쳐지는 것이고, test2는 숫자니까 더해지는 거라고 말씀해 주셨는데, println(test1 + 1)에서 뒤에 더해주는 1은 (""없어도) string 타입이고, println(test2 + 1)에서 뒤에 더해주는 1은 int 타입인 건가요??

  • kotlin
  • 자료형
찹쌀약과 댓글 2 좋아요 0 조회수 303

databinding 오류 관련해서 문의드립니다

미해결

[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)

안녕하세요? 명언앱 만들기에서 데이터바인딩할 때부터 오류가 나서 무시하고 메인 액티비티에서 <layout>으로 감싸 주었는데 그뒤 private lateinit var binding = ActivityMainBinding에서 또 오류가 나서 진행을 못하게 되었습니다. 해결 방법을 말씀해 주시면 감사하겠습니다. 감사합니다.

  • android
  • kotlin
  • firebase
댓글 1 좋아요 0 조회수 350

인기 태그

인프런 TOP Writers

주간 인기글