묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-L 질문 있습니다!
코드 질문은 아니고 시간 복잡도 관련해서 질문이 있습니다.처음 문제를 봤을 때, 저도 조합을 떠올려서 이중 for문을 사용하여 문제를 풀어볼까 했었는데, 그러면 코드의 시간 복잡도가 O(n^2)이니까, n = 15000일 경우 연산 횟수가 대략 15,000 * 15,000번 이기 때문에 시간 초과가 날 거라고 생각해서 다른 방법을 계속 생각했는데요...결국 못 풀어서 문제 해설을 보니 처음 생각했던 그 방법이여서 조금 당황스러웠습니다. O(n^2)정도 시간복잡도를 가진 알고리즘이 떠올랐을 땐, 그냥 시간 초과 신경 안 쓰고 문제 풀이를 이어나가도 되는건가요?
-
해결됨스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
제가 작성한 강의 노트 링크를 블로그 등에 올려도 되나요?
공유해도 된다고는 알고는 있는데제가 이후의 유료 강의들은 메모 작성할 때 이미지도 거의 첨부 안 하고, pdf에 없는 내용만 소량 작성했는데,무료 강의 들을 땐 처음이라 그런지 의욕이 너무 앞서서 이미지도 많이 첨부하고 좀 자세히 작성했었거든요.https://www.inflearn.com/notes/49423 분량이 좀 많은데 공유하지 않는 게 나을까요? 위처럼 링크만 올리려고 합니다. 인프런 고객센터에 문의하는 게 나을까요?
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
logback mdc 관련 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]강의 마지막에 Logback MDC에 관한 내용이 나와서 적용을 해보았는데요. 설정 방법이 다양하고, 확인이 필요하여 여쭤봅니다. MDC구글링해보니 어플리케이션 요청에서 처음 만나는 filter에 설정해주는 것이 좋다하여 LogFilter doFilter 메소드 try-catch문에 아래와 같이 적용해주었구요.@Override public void doFilter(중략) { ..중략 try { log.info("REQUEST [{}][{}]", uuid, requestURI); MDC.put("requestId", uuid); //추가 chain.doFilter(request, response); MDC.clear();//추가 } catch (Exception e) { throw e; } finally { log.info("RESPONSE [{}][{}]", uuid, requestURI); } } log pattern 설정로그 패턴 설정이 logback-spring.xml, base.xml, properties 등 가이드가 여럿 있었지만,resources 밑에 logback-spring.xml 생성했습니다.<?xml version="1.0" encoding="UTF-8"?> <configuration> <appender name="consoleAppender" class="ch.qos.logback.core.ConsoleAppender"> <encoder> <pattern>[%d{yyyy.MM.dd HH:mm:ss.SSS}] - [%-5level] - [%X{requestId}] - [%logger{5}] - %msg%n</pattern> </encoder> </appender> <root level="info"> <appender-ref ref="consoleAppender"/> </root> </configuration> items/add 호출하여 error log 출력localhost:8080/items/add 호출하여 공백으로 save 시 로그 패턴 설정해준 위치에 uuid 찍히는 것 확인됐습니다. [2023.12.17 00:51:15.335] - [INFO ] - [] - [h.l.w.f.LogFilter] - REQUEST [b67de768-0ef9-49cb-a4f6-65d9d5983b6f][/items/add] [2023.12.17 00:51:15.434] - [INFO ] - [b67de768-0ef9-49cb-a4f6-65d9d5983b6f] - [h.l.w.i.ItemController] - errors=org.springframework.validation.BeanPropertyBindingResult: 3 errors Field error in object 'item' on field 'price': rejected value [null]; codes [NotNull.item.price,NotNull.price,NotNull.java.lang.Integer,NotNull]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [item.price,price]; arguments []; default message [price]]; default message [must not be null] Field error in object 'item' on field 'itemName': rejected value []; codes [NotBlank.item.itemName,NotBlank.itemName,NotBlank.java.lang.String,NotBlank]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [item.itemName,itemName]; arguments []; default message [itemName]]; default message [must not be blank] Field error in object 'item' on field 'quantity': rejected value [null]; codes [NotNull.item.quantity,NotNull.quantity,NotNull.java.lang.Integer,NotNull]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [item.quantity,quantity]; arguments []; default message [quantity]]; default message [must not be null] [2023.12.17 00:51:15.441] - [INFO ] - [] - [h.l.w.f.LogFilter] - RESPONSE [b67de768-0ef9-49cb-a4f6-65d9d5983b6f][/items/add] 질문위와 같은 설정 중 보완할 부분이 있을까요.?logback-spring.xml, base.xml, application.properties 중 어떤 방식을 주로 실무에서 많이 사용하나요? 환경에 따라 다를까요?
-
미해결애프터이펙트 마스터 시즌1 패키지(에피소드1,2,3,4통합)
자료에 자동차가 하나만 있습니다 11강 7
선생님 화면에 있는 자료가 하나만 있는것으로 확인됩니다 다시 새폴더로 다운로드후에도 파일풀기를 했지만 에피소드 2에서는 나와있지않습니다 ㅠㅠㅠ
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
3강 3번 문제. 텐트세우기 #2304
안녕하십니까 코딩센세 훗날 일본 개발자 취업을 희망하는 코린이 입니다.저번 시간에도 궁금한 점이 있어서 질문 드렸지만, 오늘도 어김없이 궁금한 점이 생겨서 이렇게 게시판에 글을 작성합니다.3번 문제는 숙제로 주셨지만, 컨셉만 도출하고 코드는 30분 이상 걸리도록 구현을 못하여 강의록의 솔루션 코드를 이해하고 있는 중입니다.서론은 이만하고 바로 본론으로 들어가겠습니다. 본론에 해당 부분은 질문의 내용입니다.솔루션 코드를 해석하는 중에 # 정답 합치기 부분에 질문이 있습니다. 그 부분은 바로 maxPoint[1] - maxPoint[0] + 1 코드가 왜 필요한지 입니다. 아마도 추정컨대 높은 기둥이 넓이를 구해서 더해주는 연산으로 보입니다만, 항상 밑변이 1이라는 문제의 가정이 있었는데도 answer += 1*maxHeight 또는 answer += maxHeight가 오답인 근거를 듣고 싶습니다!바쁘신 와중에도 답변에 신경써주셔서 감사드립니다.
-
미해결자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]
동시성과 병렬성 질문
안녕하세요. 강의를 듣다가 궁금한 점이 있습니다!CPU 코어 수보다 작업 수가 같거나 많은 경우병렬성 처리 + 동시성 처리CPU 코어 수보다 작업 수가 적은 경우병렬성 처리 이렇게 이해를 했는데요.'작업 수'라는게 정확히 어떤 작업을 말씀하시는 건가요?예를 들어, jar를 nohup으로 실행하면 프로세스 하나가 실행되는데 이 안에서 작업이라는거는 어떤 것을 말씀하시는 건지 궁금합니다. (자바 메서드를 실행하거나 그런건 아닌거 같은데..) 그리고 하나 더 궁금한 점이 있는데요.만약 java main 메서드가 실행되어 "hello world"라는 출력을 한다고 하면, CPU가 스케줄 알고리즘으로 프로세스에 할당한 커널레벨 스레드가 자바의 main 스레드를 call 해서 main 스레드가 "hello world"를 찍는 건가요? 아직 제가 강의 뒷부분을 안들어서 그런건지..ㅋㅋㅋ
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
멀티스레드 프로그래밍에서 디버깅하면서 문제 추적하려면 어떻게 해야하나요?
멀티스레드 병렬 프로그래밍은 싱글 스레드와 다르게 디버깅하기가 매우 까다롭더라구요 ㅠㅠI/O 출력을 하거나 로그 파일로 따로 빼서 로깅을 확인하는건 싱글스레드까지만 가능하고 멀티스레드에서는 별 도움이 되지 못하더라구요이 외에 다른 방법으로는 디버깅 모드로 실행 시 문제가 발생했을 때, memory를 확인하면서 역추적하면서 문제를 해결하는 방법밖에 떠오르질 않는데, 이 방법이 맞을까요?예를 들면 여러 스레드를 실행하면서 call 횟수, 작업하는 변수의 주소값, 수행 시간 등을 list에 저장한 다음에 조사식에 해당 list를 끌어와서 확인해보려고 하는데...현업에서는 멀티스레드 로깅 및 문제 역추적할 때 어떤 방법을 사용하나요..?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
java.lang.IllegalArgumentException: null
먼저 대출 기능 만들기 강의를 듣다가 문제를 2개 발견하였습니다. 유저 등록부터 'java.lang.IllegalArgumentException: null' 가 생깁니다.... 진짜 전에 잘 되던 것이 갑자기 왜 안되는지 막막합니다....그리고 대출 기능도 'java.lang.IllegalArgumentException: null' 가 생깁니다....이건 혹시 유저 부분에서 등록이 안되는 부분 때문에 생기는 오류인건지...부탁드립니다.. 똑같이 대출 기능 만들기 부분에서 생기는 건데, 위의 오류 문제를 해결하려고 형변환을 없애다 보니 아래와 같이 빨간줄이 나옵니다.. 왜 이러는 걸까요...ㅠㅠ구글 링크로 파일 업로드 했으니, 혹시나 참고해서 말씀하실 부분 있으시면 말씀 부탁드립니다.https://drive.google.com/file/d/1X9s-VjcAeBurdxOYrIOzwa0yZNNoue54/view?usp=sharinghttps://drive.google.com/drive/folders/1vB-XwaSlIKfY2Diq66g6JnQ8vyKVWQvn?usp=sharing
-
미해결스프링 핵심 원리 - 기본편
coreapplication 실행시 로그
coreapplication 실행시 콘솔창에 이렇게 debug 로그들이 많이 뜨는데 강의 영상 1:26 처럼 INFO 로그들만 나오게 하려면 어떻게 해야 하나요?
-
미해결스프링 핵심 원리 - 기본편
@Autowired 필드 명, @Qualifier, @Primary 강의중인데요
@Component //@RequiredArgsConstructor public class OrderServiceImpl implements OrderService { private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; @Autowired public OrderServiceImpl(MemberRepository memberRepository, DiscountPolicy rateDiscountPolicy) { this.memberRepository = memberRepository; this.discountPolicy = rateDiscountPolicy; } 2:50초 쯤에서 DiscountPolicy 의 변수를 rateDicountPolicy 로 변경을 하는 내용이 나오거든요 그리고 테스트를 돌리는데 성공하시더라구요 그런데 저는 여기서 아래에러가 발생해서요 org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'orderServiceImpl' defined in file [C:\Users\kkk\Downloads\core\out\production\classes\hello\core\order\OrderServiceImpl.class]: Unsatisfied dependency expressed through constructor parameter 1: No qualifying bean of type 'hello.core.discount.DiscountPolicy' available: expected single matching bean but found 2: fixDiscountPolicy,rateDiscountPolicy매칭이 안된것 같은데 어떻게 해야 할지 문의 드립니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
시퀀스 생성이 안되는거같아요
테스트 코드를 실행시키면 org.springframework.dao.InvalidDataAccessResourceUsageException: could not prepare statement [Sequence "MEMBER_SEQ" not found; SQL statement:select next value for member_seq [90036-224]] [select next value for member_seq]; SQL [select next value for member_seq]오류가 발생합니다.H2 에서 직접 CREATE SEQUENCE 쿼리로 직접 생성하고 나니까 테스트가 동작하네요 .. ddl-auto: create 확인했고 띄어쓰기 두칸 아닌것도 확인 했는데요 ,, 왜 안되는거죠?
-
해결됨홍정모의 따라하며 배우는 C언어
10.14강 11:11 질문이 있습니다.
int(*ptr_arr)[3];위 형태가 int [3] 의 배열을 가리키는 포인터라는 것은 이해했습니다. int arr[3] = { 1, 2, 3 }; int* ptr_arr_1 = arr; printf("%d\n", ptr_arr_1[1]); // 1) int (*ptr_arr_2)[3] = arr; printf("%d\n", ptr_arr_2[0]); // 2) printf("%d\n", ptr_arr_2[0][1]); // 3) printf("%d\n", (*ptr_arr_2)[1]); // 4)1)의 경우 지금까지 써왔기 때문에 왜 arr의 1번째 요소가 나오는지 이해했습니다.2)의 경우 printf 함수 인수가 int [3]이라는 경고가 나오고3), 4)의 경우 arr의 1번째 요소가 출력되는 것을 확인했습니다. int* ptr_arr_1 = arr; 은 1번의 배열 역참조 연산으로 배열 요소의 값에 접근할 수 있지만int (*ptr_arr_2)[3] = arr; 은 2번의 배열 역참조 연산으로 배열 요소의 값이 접근할 수 있는 것 같은데 가리키는 배열이 똑같은 1차원 배열인데도 왜 이런 차이가 발생하는 걸까요..??
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
set을 이용하여 풀었는데 시간초과가 뜹니다.
package hash; import java.util.ArrayList; import java.util.Collection; import java.util.HashSet; import java.util.Scanner; public class TypeOfSales { static ArrayList<Integer> solution(int n, int k, int[] arr) { Collection<Integer> set = new HashSet<>(); Collection<Integer> list = new ArrayList<>(); ArrayList<Integer> result = new ArrayList<>(); int p1 = 1; for(int i = 0; i < k; i++) { list.add(arr[i]); } set.addAll(list); result.add(set.size()); while(p1 < n-k+1) { set.clear(); list.remove(arr[p1-1]); list.add(arr[p1+k-1]); set.addAll(list); result.add(set.size()); p1++; } return result; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int k = sc.nextInt(); int[] arr = new int[n]; for(int i = 0; i < n; i++) { arr[i] = sc.nextInt(); } for(int x : TypeOfSales.solution(n, k, arr)) { System.out.print(x + " "); } } }시간 복잡도는 O(N)이 맞는거같은데 4번 5번 테스트 케이스에서 2초 가까이 뜨네용..
-
미해결스프링 핵심 원리 - 기본편
policyMap과 policies에 계속 null 값이 들어갑니다.
질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]여기에 질문 내용을 남겨주세요. public class AllBeanTest { @Test void findAllBean() { ApplicationContext ac = new AnnotationConfigApplicationContext(AutoAppConfig.class, DiscountService.class); DiscountService discountService = ac.getBean(DiscountService.class); Member member = new Member(1L, "userA", Grade.VIP); int discountPrice = discountService.discount(member, 10000, "fixDiscountPolicy"); assertThat(discountService).isInstanceOf((DiscountService.class)); assertThat(discountPrice).isEqualTo(1000); } static class DiscountService { private final Map<String, DiscountPolicy> policyMap; private final List<DiscountPolicy> policies; @Autowired public DiscountService(Map<String, DiscountPolicy> policyMap, List<DiscountPolicy> policies) { this.policyMap = policyMap; this.policies = policies; System.out.println("policyMap = " + policyMap); System.out.println("policies = " + policies); } public int discount(Member member, int price, String discountCode) { DiscountPolicy discountPolicy = policyMap.get(discountCode); return discountPolicy.discount(member, price); } } }@Component public class FixDiscountPolicy implements DiscountPolicy { private int discountFixAmount = 1000; @Override public int discount(Member member, int price) { if (member.getGrade() == Grade.VIP) { return discountFixAmount; } else { return 0; } } }@Component public class RateDiscountPolicy implements DiscountPolicy { private int discountPercent = 10; @Override public int discount(Member member, int price) { if (member.getGrade() == Grade.VIP) { return price * discountPercent / 100; } else { return 0; } } }public interface DiscountPolicy { /** * * @return 할인 대상 금액 */ int discount(Member member, int price); }@Configuration @ComponentScan( basePackages = "spring.springCoreBasic.member", excludeFilters = @ComponentScan.Filter(type = FilterType.ANNOTATION, classes = Configuration.class) ) public class AutoAppConfig { }
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
정적 데이터 조회와 동적 데이터 조회 차이
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오) : 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요, 정적 데이터 조회와 동적 데이터 조회를 써야하는 경우가 정확하게 구별되지 않아서 질문 남깁니다. 강의에서 정적 파일을 받는 경우 uri에 자원을 명시하고. 동적으로 조회하는 경우에 쿼리파라미터를 사용하는데요.정적 파일을 받는 경우에도 쿼리파라미터를 사용해도 될 거 같은데, 사용하지 않는 이유가 어떤걸까요?예를 들어 정적 파일의 경우는 응답 받은 서버에 이미 저장되어 있는 파일을 반환하고, 동적으로 조회하는 것은 db에 저장된 내용을 불러오는 차이가 있을 것도 같은데요. 요약하자면, 정적 데이터 조회이던 동적 데이터 조회이던 쿼리 파라미터를 사용하도록 해도 될 거 같은데 왜 분리가 되는건지 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
jakarta.persistence가 import 되지 않습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]제목 그대로 import가 되지 않습니다. import문을 지우고 나서 자동 임포트를 하려고 @Entity를 직접 타이핑 하여 해봐도 cannot resolve symbol이라는 메시지만 나오는데 어떡해야 할까요?
-
미해결처음 배우는 리액트 네이티브
선생님 도와주세요 ㅠㅠ (로그인, 회원가입, 콘솔 에러)
3가지의 문제가 있습니다 ㅎㅎ..섹션 9. 기능 구현 - 회원가입 에서 다 잘됐는데, 회원가입의 Input 값을 모두 입력한 후 Sign up 버튼을 누르면 어플이 꺼집니다. 파이어베이스에 회원 데이터는 잘 들어와있습니다.섹션 10. 인증과 화면전환에서 src\navigations\index.js 중 <NavigationContainer>{user.uid ? <Main /> : <Auth />}</NavigationContainer> 해당 코드를 입력하고 로그인을 시도하니 Render Error가 뜹니다 ㅠㅠ.. 이건 에러가 아니고 경고인데, 어느 순간부터 프로젝트를 실행시키면 콘솔 워닝이 뜹니다. 코딩하는데 불편은 없지만 해결할 수 있으면 해결하고 싶어요..소스코드 주소 : https://github.com/jeong0903/RN-chatting.git 답변 기다리겠습니다 ㅜㅜ!!
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
Request의 getLocale()
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]Request 객체의 getLocale()은 Accept-Language에서의 가장 높은 우선순위를 뽑는다고 이해했습니다. getLocale()의 정확한 의미가 궁금합니다.클라이언트가 보낸 요청 메시지의 Accept-Language에 써진 언어인 동시에, 서버에서 지원하는 언어들 중 가장 우선순위 높은 걸 뽑는 건가요?아니면 서버에서 지원을 하는 언어든 아니든, 요청 메시지의 Accept-Language에서 가장 우선순위가 높게 설정된 것을 선택하는 건가요? +) getLocale() 같은 건 스프링 공식 문서 가면 자세한 설명을 볼 수 있을까요? 자바 공식 문서랑 다르게 메서드 설명 찾기가 어렵네요..
-
해결됨요구분석 구현 방법: 시스템 개발 성공을 위한 요구분석 구현 방법
요구사항 상태 구분에 대해 질문합니다.
강의를 들으며 제가 이해하기로는 아래와 같습니다.상태 1 : "현행 비즈니스 프로세스를 변경없이 그대로 사용한다. "상태 2 : "현행 비즈니스 프로세스가 요구사항을 포함하고 있다."상태 3 : "요구사항이 현행 비즈니스를 포함한다."상태 4 : "현행 비즈니스 프로세스를 변경한다." 상태 2과 상태 3는 요구사항의 목표에 따라 상태가 지정 된다고 이해했습니다. 여기서 상태 2의 경우에는 상태1로 이어지는 상황이고 상태 3은 상태 4로 이어지는 상황이라고 봤을때, 상태 2과 상태3 와 같이구분을 할 필요가 있는 것인가에 대한 질문입니다. 제가 생각하는 상태는 아래와 같이 총 4가지로 판단됩니다.상태 1 : "현행 비즈니스 프로세스를 변경없이 그대로 사용한다. "상태 2 : "현행 비즈니스 프로세스를 변경한다."상태 3 : "요구사항이 현행 비즈니스 프로세스에 없다"상태 4 : "현행 비즈니스 프로세스를 사용하지 않는다" 강사님의 생각은 어떠하신지 궁금합니다.
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
ID, PW 전송시, Base64 인코딩을 사용하는 이유가 궁금합니다.
질문의 내용은 제목과 동일합니다.아래는 제가 궁금해서 찾아본 내용입니다. Base64 인코딩은 텍스트형태로 데이터를 전송할 때 사용한다고 하더군요.저희는 HTTP 통신을 하게 되는데, HTTP 통신에서는 이진데이터 전송이 불가하다고 합니다. (버전별로 다 그런지 찾아본것은 아님)그래서 pdf 나 이미지 같은 이진 바이너리 파일을 전송하기 위해 Base64 를 사용한다고 이해를 했습니다.코드 상에서 String 형태의 문자열은 이미 문자열 형태라고 하는데.. ID, PW 를 Base64 인코딩하시는 이유가 있을까요?찾아본 바로는, 있다면 시스템간의 호환성 문제일거라고 생각하는데, 호환성 문제라고 찾았본 케이스들은 너무 예전 시스템이라고하니 와닿지 않네요. 찾아본 내용들은 책이 아니라, 인터넷에서 검색한 내용들이라 틀렸을 수도 있습니다.실무에서는 일반적으로 ID/PW에 대해 Base64 인코딩을 사용하는 것인가요?