정적 메서드 사용 시 public 여부
미해결
김영한의 실전 자바 - 중급 2편
private 으로 사용하는 경우는 명확히 붙여주는거같은데 public 의 경우 붙이는 경우도 있고 안 붙이는 경우도 있는 것 같아서 질문드립니다. 혹시 기준이 있을까요?
- java
- 객체지향
- 코딩-테스트
- 알고리즘
172만명의 커뮤니티!! 함께 토론해봐요.
미해결
김영한의 실전 자바 - 중급 2편
private 으로 사용하는 경우는 명확히 붙여주는거같은데 public 의 경우 붙이는 경우도 있고 안 붙이는 경우도 있는 것 같아서 질문드립니다. 혹시 기준이 있을까요?
미해결
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
안녕하세요. 스레드 강의를 듣던 중에 만들고 싶은 프로그램이 생겨서 질문 드립니다. 스크랩 데몬 프로그램을 만들려고 하는데 DB에서 url 리스트를 조회하고 리스트를 스레드 갯수만큼 분할한 뒤 멀티 스레드를 활용해서 각 스레드에서 스크랩을 하고 DB에 저장 한 뒤 잠시 sleep 위를 무한 반복하는 역할을 합니다. lombok, logging, dev, prod.yml config 등 springboot의 편리함을 사용하고 싶고 gradle을 활용하여 멀티 모듈로 작성할 계획인데 (DAC: JPA를 사용하는 역할은 따로 분리, infra mailling 등 분리) spring-boot-starter만 web 없이 사용해서 구현하려고 했더니 마땅히 작성할 위치가 보이지 않아 일단 ApplicationRunner를 구현하고 작성하였는데 문제는 build 시에 ApplicationRunner를 springboot가 실행하여서 무한 반복에 빠져서 빌드가 완료가 안됩니다. 이를 환경변 수 등을 이용해서 피할 수는 있겠으나 이러다보니 springboot에 작성하는게 잘못된건가 싶기도하고 그냥 쌩 자바 프로그램으로 하는게 맞을까요? 선생님이시라면 어떻게 구현을 하실지 의견 부탁드립니다.
미해결
실전! 스프링 데이터 JPA
Annotation의 순서에 따라 실행 결과가 바뀌진 않겠지만 실무에서 관행으로 쓰이는 순서가 있을까요? 중요도에 따라 혹은 포괄적인 것을 상위 배치하는 등 선호되는 배치 순서가 궁금합니다!
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. gradlew build 라고 안치고 gradlew만 입력했을때 BUILD SUCCESSFUL 이라고 나왔습니다 이 문구 뜨고 gradlew build 입력하면 위와 같은 에러가 뜹니다.. 이 에러가 뜨긴 했는데 디렉토리는 생성이 되었고 java -jar () 하면 위처럼 잘 빌드된것처럼 spring이 나옵니다.. 그냥 계속 실습 진행해도 괜찮은걸까요?
미해결
자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
강사님께서 코틀린으로 서버를 만드실 때 object로 싱글톤 만드는 방법을 사용하지는 않는다고 하셨는데 실제 현업에서 이러한 방식으로 싱글톤을 많이 안만드나요? 혹시 이러한 방식을 사용하는 현업에서의 예제가 있다면 어떤게 있나요?
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) 계속 빌드 오류가 나서 아래처럼 뜹니다.. 프로젝트를 지웠다가 다시 생성해봐도 똑같이 뜨는데 어떻게 해결할수있을까요ㅜ Starting a Gradle Daemon, 1 incompatible Daemon could not be reused, use --status for details > Task :test HelloSpringApplicationTests > contextLoads() FAILED java.lang.IllegalStateException at PluginLoader.java:85 Caused by: java.lang.IllegalStateException at DefaultMockitoPlugins.java:105 Caused by: java.lang.reflect.InvocationTargetException at Constructor.java:499 Caused by: org.mockito.exceptions.base.MockitoInitializationException at InlineDelegateByteBuddyMockMaker.java:260 Caused by: java.lang.IllegalArgumentException at InstrumentationImpl.java:-2 1 test completed, 1 failed > Task :test FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':test'. > There were failing tests. See the report at: file:///C:/Users/%EB%AC%B8%EC%9D%B4%ED%98%84/Desktop/study/hello-spring/build/reports/tests/test/index.html * Try: > Run with --scan to get full insights. BUILD FAILED in 55s 7 actionable tasks: 7 executed ////////////////////////// 참고로 자바 버전은 17입니다 인텔리제이 내에서 자바 버전도 17로 동일하고 gradle 설정도 인텔리제이로 다 맞춰놨습니다
미해결
Vue 3 & Firebase 10 커뮤니티 만들기 풀스택 - "활용편" (with Pinia, Quasar, Tiptap, VueUse)
비동기상태(loading,error)관리 24:40 제가 수업에서 놓친건진 모르겠는데요. 타입에 String, Number는 알겠지만 negative가 뭔지 모르겠네요. 검색해도 못찾겠구요.
미해결
김영한의 실전 자바 - 중급 1편
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] DiscountService에서 작성한 if문, swich문 변경 가능하다고 하여 작성해보았는데, 이렇게 사용하는게 맞는지 맞다면 좋은 코드인지 궁금합니다.
미해결
Vue 3 & Firebase 10 커뮤니티 만들기 풀스택 - "활용편" (with Pinia, Quasar, Tiptap, VueUse)
여러군데 검색해도 나오지 않기에, 이곳에 올려봅니다. 항상 좋은 강의 감사드립니다!
미해결
Flutter로 SNS 앱 만들기
안녕하세요. flutter 프로젝트를 만든 후에 실행하면 안드로이드 에뮬로 실행이 잘 됩니다. 이후 따라서 firebase cli를 설치하고 로그인 코드 minsdk 수정까지 다 한 후에 실행하면 실행이 안됩니다. Chatgpt로 kotlin 버전 명시, 프로젝트 경로/앱 경로 build.gradle 수정이랑 다 해봐도 에러가 나서 하루 종일 다음 강의로 못 넘어가고 있습니다 ㅠㅠ. 강의가 만들어진지 시간이 좀 되서 혹시 설정을 다르게 해야하는게 있을까요? 메세지: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:checkDebugAarMetadata'. > A failure occurred while executing c om.android.build. gradle.internal.tasks.CheckAarMetadataWorkAction > /Users/ak/.gradle/caches/transforms-3/385e60e1c81cd166a8ad3c908ae54a0f/transformed/jetified-firebase-firestore-25.0.0/META-INF/com/android/build/gradle/a ar-metadata.properties (No such file or directory) * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. * Get more help at h ttps://help.gradle.org
해결됨
김영한의 실전 자바 - 중급 2편
5:20 즈음에 AnimalMethod.bigger(cat, dog) 가 타입 추론이 불가능해 문제가 된다고 하셨는데, Cat과 Dog의 공통 조상인 Animal로 타입 추론이 되는 것 같아서 이게 맞는지 확인차 질문드립니다. Animal animal = AnimalMethod.bigger(cat, dog);
해결됨
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
join()시에 스레드는 CPU를 점유한 상태에서 대기하는 건가요? 아니면 스레드 큐에 들어가있나요?
미해결
김영한의 실전 자바 - 기본편
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 강의의 10분51초에서 참조형 객체는 함수로 매개변수를 불러들일경우, 주소값을 가져와서 함수내에서 값이 변경되면 주소값의 값이 바뀐다고 들었습니다. 다만, Integer 객체의 경우, 참조객체인것으로 알고있는데, 아래와 같이 Data 가 아닌 Integer 객체를 전달하니 두 결과가 모두 10이 나옵니다. Integer 값은 왜 바뀌지 않는것인가요? public class Ref { public static void main(String[] arg){ Integer a = 10; System.out.println(a); change(a); System.out.println(a); } private static void change(Integer x){ x =20; } }
미해결
김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
궁금합니다!
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] Wrong user name or password 에러가 뜨는데 어떻게 해야되나요? org.h2.jdbc.JdbcSQLInvalidAuthorizationSpecException: Wrong user name or password [28000-224] 이 오류가 떠요
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 이렇게 해서 접속을 했는데 거부합니다. 홈화면에 test.mv .db까지 완성한 단계입니다.
해결됨
BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)
Weekly Retention은 diff_of_week 을 활용하여, 시간의 경과에 따른 리텐션 변화를 구합니다. 따라서, 제가 생각했을 때, Weekly Retention을 구하는 쿼리에서는 다음과 같은 가정을 하고 진행한 것이 아닐까? 라는 생각이 들었습니다. 주차별로(시간에 따라) 활동 중인 사용자 수는 달라질 것이다. user_type에 따라 활동 중인 사용자 수는 차이가 있을 것이다. 2.의 경우는 만약의 신규/복귀... 유저를 구분한다면, 해당 가설을 기반으로, Weekly Retention을 구하는 행위를 한 것이 아닐까? 라는 생각이 들었습니다. (추가 궁금증) Retention에 영향을 주는 인자를 분석하는 경우도 있을까요? (실무에서) 저는 Retention을 분석하기 전에, Retention과 관련이 높은 것이 무엇일지, 가설을 세우고 검정을 해보았습니다. 가설 : 방문일수는 Retention에 높은 상관관계를 가진다. 데이터 범위: 2022-08-01 ~ 2022-11-01 D7_retention : (bool) 사용자의 첫번째 이벤트 시점 ~ 7일 이후에도 활동을 하면, 1 아니면 0 D30_retention : (bool) 사용자의 첫번째 이벤트 시점 ~ 30일 이후에도 활동을 하면, 1아니면 0 import os from google.cloud import bigquery from google.oauth2 import service_account import pandas as pd import statsmodels.api as sm from scipy.stats import pointbiserialr import numpy as np os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = './service_account.json' key_path = './service_account.json' credentials = service_account.Credentials.from_service_account_file( key_path, scopes = ["https://www.googleapis.com/auth/cloud-platform"], ) client = bigquery.Client(credentials=credentials, project=credentials.project_id, location="US") query = """ WITH user_visits AS ( SELECT user_pseudo_id, COUNT(DISTINCT event_date) AS visit_days FROM advanced.app_logs WHERE event_date BETWEEN '2022-08-01' AND '2022-11-01' GROUP BY user_pseudo_id ), retention_data AS ( SELECT user_pseudo_id, MIN(event_date) AS first_event_date, MAX(event_date) AS last_event_date, CASE WHEN MAX(event_date) >= DATE_ADD(MIN(event_date), INTERVAL 7 DAY) THEN 1 ELSE 0 END AS D7_retention, CASE WHEN MAX(event_date) >= DATE_ADD(MIN(event_date), INTERVAL 30 DAY) THEN 1 ELSE 0 END AS D30_retention FROM advanced.app_logs WHERE event_date BETWEEN '2022-08-01' AND '2022-11-01' GROUP BY user_pseudo_id ), combined_data AS ( SELECT v.user_pseudo_id, v.visit_days, r.D7_retention, r.D30_retention FROM user_visits v JOIN retention_data r ON v.user_pseudo_id = r.user_pseudo_id ) SELECT * FROM combined_data; """ df = client.query(query).to_dataframe() df['visit_days'] = pd.to_numeric(df['visit_days'], errors='coerce').astype(np.float64) df['D7_retention'] = pd.to_numeric(df['D7_retention'], errors='coerce').astype(np.float64) df['D30_retention'] = pd.to_numeric(df['D30_retention'], errors='coerce').astype(np.float64) # 결측치가 있는지 확인하고 제거 df = df.dropna(subset=['visit_days', 'D7_retention', 'D30_retention']) # 상수항 추가 X = sm.add_constant(df[['visit_days']]) # D7_retention에 대한 로지스틱 회귀 모델 적합 y_D7 = df['D7_retention'] logit_model_D7 = sm.Logit(y_D7, X).fit() print(logit_model_D7.summary()) # D30_retention에 대한 로지스틱 회귀 모델 적합 y_D30 = df['D30_retention'] logit_model_D30 = sm.Logit(y_D30, X).fit() print(logit_model_D30.summary()) visit_days_range = np.linspace(df['visit_days'].min(), df['visit_days'].max(), 100) prob_D7 = logit_model_D7.predict(sm.add_constant(visit_days_range)) prob_D30 = logit_model_D30.predict(sm.add_constant(visit_days_range)) plt.plot(visit_days_range, prob_D7, label='D7 Retention Probability') plt.plot(visit_days_range, prob_D30, label='D30 Retention Probability', linestyle='--') plt.xlabel('Visit Days') plt.ylabel('Retention Probability') plt.title('Retention Probability vs Visit Days') plt.legend() plt.show() 따라서, 방문일수는 Retention과 상관성을 보인다. 가설2. 방문일 수는 user_type에 따라 각기 다른 상관성을 보일 것이다. 결론: user_type은 new_user, current_user는 통계적으로 유의하며, 높은 상관성을 가지나, 휴면 유저, 복귀 유저는 통계적으로 유의미하지 않으며, 낮은 상관성을 띈다. 이렇게 결론을 내놓는 방식이, 적합한 방식인지 궁금합니다.
해결됨
[풀스택 완성] Supabase로 웹사이트 3개 클론하기 (Next.js 14)
안녕하세요 로펀님 tanstackquery에서 최근에 isPending이 생겨서 어느 블로그에선가 봤는데 이제 isPending을 사용하면 된다고 했던 것 같은데 혹시 둘의 차이가 있을까요? 어느 시점에서는 이것을 사용해야 한다라는 가이드가 있을까요?
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 빌드하고 실행하기 부분에서 명령프롬프터를 사용하신것 같은데 윈도우 파워쉘로 사용해도 되나요??
미해결
[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
안녕하세요. 사진처럼 AVD가 보이지 않아요.. ...ㅠ 최신 버전이여서 안보이는걸까요..?