안녕하세요. 메서드 관련 질문입니다. 메서드는 공통된 기능이기 때문에 인스턴스 변수처럼 내부에 가지고 있지는 않고 메서드 영역에 있는 걸 필요할 때(호출할 때) 가져와서 쓴다. 이것과 관련하여 질문 3가지 문의 드립니다. 1. 각각의 객체에는 필드값만 가지고 있고 메서드는 아예 가지고 있지 않은거죠 ? 2. 컴파일이 될 때 메서드 영역 > 클래스 영역 이 부분에 클래스의 관련 코드들이 다 들어가 있는 걸로 이해했는데 그러면 다음의 두 경우는 어떻게 이해하면 될까요 ? (두 경우 다 추상 클래스, 인터페이스에는 메서드의 바디가 작성되어 있지 않고 나중에 작성되는 경우) -> 메서드 영역의 클래스 영역에 처음에는 바디가 없으니 관련 정보가 전혀 없을 거 같은데 이와 같이 나중에 오버라이딩을 해주었을 때 메서드 영역의 클래스 영역에서 어떻게 되는지 궁금합니다. 새로운 클래스 영역에 메서드로 정의되는 부분이 아니라 기존에 클래스 영역에서 정의가 되어야 하는데 문제는 클래스 영역의 기존 메서드를 수정하자니 다음의 두 케이스는 해당 객체를 생성할 때에만 적용되는 일회성 코드라 ... 2.1 AbstractAnimal은 추상클래스로 sound()가 추상 메서드입니다. AbstractAnimal animal = new AbstractAnimal() { @Override public void sound() { System.out.println("test"); } }; 2.2 InterfaceAnimal interface 입니다. InterfaceAnimal interfaceAnimal = new InterfaceAnimal() { @Override public void sound() { System.out.println("test"); } @Override public void move() { System.out.println("test"); } };
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요 강사님 다형성 참조를 보다가 질문합니다 Parent poly = new Child(); 부모 타입의 변수는 부모의 데이터를 사용 할 수 있으므로 자식 타입을 대입 할 수 있고 Child poly = new Parent(); 자식 타입의 변수는 자식 데이터를 사용 할 수 있지만 부모 타입이 범위가 더 커 자식이 담을 수 없는게 맞을까요?
안녕하세요 큰돌님, 언제나 좋은 강의 감사드립니다. http://boj.kr/3ec7adf276a74ad89e779cb5b1839dbd 3-d 불 문제를 풀고있는데 계속해서 메모리 초과가 발생해서요. 혹시 몰라 큰돌님 예제 소스 확인했는데 로직상 거의 유사한것같은데 계속해서 메모리 초과가 발생하고 있습니다. 검토 한 번 부탁드려도 될까요? 다시 한번 좋은 강의 감사드립니다
모니터링이란, 테스트로 잡지 못한 버그들이 발생했을 때 그 버그의 원인들을 빠르게 알게 해주는데 목적이 있다고 생각합니다. (비즈니스 지표 모니터링은 여기에선 고려하지 않겠습니다.) 그런데, 어디까지 테스트로 해결해야하고 어디서부터는 모니터링으로 해결해야 할까요? 버그를 꼼꼼히 잡겠다고 가능한 모든 루트를 테스트 하려는 것도 생산성 측면에서 옳은 방법은 아니라고 생각합니다. 또한, 서비스의 규모가 작을 때와 서비스의 규모가 클 경우 어떻게 테스트하고 모니터링 할 지 또한 바뀐다고 생각합니다. 제가 생각하는 방법은 중요하거나 복잡한 도메인 로직은 유닛테스트로 꼼꼼히 테스트한다 프레임워크 및 외부 장치들과 잘 통신하는지는 통합테스트로 happy path 정도만 테스트한다. 그 외에 못잡는 버그들은 모니터링을 통해 해결한다. 이렇게인데요, 제가 맞는 방향으로 생각하고 있는건지 궁금합니다. 또한 서비스의 규모의 차이에 따라 어떻게 테스트하고 모니터링 하는 방법이 달라지는지가 궁금합니다.
수업을 다 듣고 저 스스로 코드를 짜던중 갑자기 놓친부분이 있는 것 같아 여쭤봅니다. 혹시 <search/page.tsx> export default function Search({ searchParams }: Props) { 여기서 이 search/page.tsx의 매개변수는 누가 넘겨주는 걸까요?
안녕하세요 boto3 라이브러리를 처음 사용하는 강의에서 import한 라이브러리(boto3)와 실행하는 파이썬 파일( boto3.py )의 이름이 동일한데 어떻게 실행이 되는건가요 ?? 일반적으로 파이썬 사용할 때 라이브러리명과 파일명이 동일하면 AttributeError 에러가 발생하던데 강의에선 별 다른 제약 없이 실행이 되는거 같아 질문드립니다.
아래 코드에서 잘못된 부분은 없는지, 어느 부분을 보완하면 좋을지 알고 싶습니다 문제 : 학습용 데이터 (X_train, y_train)을 이용하여 생존 예측 모형을 만든 후, 이를 평가용 데이터(X_test)에 적용하여 얻은 예측값을 다음과 같은 형식의 CSV파일로 생성하시오(제출한 모델의 성능은 accuracy 평가지표에 따라 채점) 코드 : # 라이브러리 불러오기 import pandas as pd train = pd.read_csv("train.csv") test = pd.read_csv("test.csv") # EDA train.shape, test.shape # ((891, 12), (418, 11)) train.isnull().sum() test.isnull().sum() # 전처리(결측치, 인코딩, 스케일링, 타겟) train = train.dropna() test = test.dropna() train.shape, test.shape # ((183, 12), (87, 11)) train.describe() train = pd.get_dummies(train) test = pd.get_dummies(test) target = train.pop("Survived") # 모델링 from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split(train, target, test_size = 0.2, random_state = 2024) from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(random_state = 2024) rf.fit(X_tr, y_tr) pred = rf.predict(X_val) # 평가 from sklearn.metrics import accuracy_score accuracy = accuracy_score(y_val, pred) # 제출 result = pd.DataFrame({ "PassengerId" : X_val["PassengerId"] , "Survived" : pred }) result.to_csv("수험번호.csv", index = False)
안녕하세요. STS설치 후 파일을 만들려고 하는데 콘텐츠를 가져오는데 문제가 생겼다는 오류창이 계속 뜹니다. 처음에 jdk 17버전으로 진행했는데 gradel이 7.3버전부터 지원을 한다고 해서 21버전으로 재설치했는데도 오류가 발생합니다. Gradle이 호환 가능한 걸 찾으라는 말 같은데 어떻게 접근해야할지 모르겠습니다. 혹시 아시는 분 계실까요..? 첫번째 사진에서 OK하고 넘어가면 2번째 사진에 나온 것 처럼 폴더 생성이 강의에 나온 것과 다르게 나와서 그대로 진행해도 괜찮을지 모르겠습니다...
ASP.NET Core MVC +ASP.NET Core +REST API +.NET 8.0
안녕하세요 강사님 저 강의를 다회차 보면서 궁금한 점이 생겨서요. 기존 코드 public async Task<GetUserResponseDTO> GetUser(GetUserDTO getUserDTO) { var configuration = new MapperConfiguration(cfg => { }); //Response..DTO 생성후 Controller로 전달 // Perform mapping Mapper mapper = new Mapper(configuration); Dictionary<string, object> dc=mapper.Map<GetUserDTO,Dictionary<string, object> >(getUserDTO); dc.Remove("Password"); ProcCall procCall= new ProcCall(); DataTable dt = await procCall.RequestProcedure("sp_login", dc); GetUserResponseDTO dto = new GetUserResponseDTO(); dto.Id = (int)dt.Rows[0]["id"]; dto.Userid = dt.Rows[0]["userid"].ToString(); dto.Username = dt.Rows[0]["Username"].ToString(); dto.Point = (int)dt.Rows[0]["Point"]; return dto; } 로그인 서비스의 관련하여 dto의 담기는 오브젝트가 적고 단 건이라 이러한 방식으로 처리가 가능한 것 같습니다. 해당 부분의 활용하여 다건의 데이터를 처리하기는 어려울 것 같은데 어떤 방식이 있는지 확인 가능할까요??
http://boj.kr/12b19d28de834ea8904e1304c639f49e 안녕하세요 선생님. 해당 코드는 메모리 초과가 나오는데 어느 부분때문에 메모리 초과가 나오는지 이해가 되지 않아서 여쭤봅니다. 또한 제가 처음 이 문제를 보고 어떻게 풀지 감은 잡았는데 그때 제 생각은 bfs가 한 level씩 진행되면 6의 제곱으로 경우의 수가 늘어날텐데 그런 경우에는 60 60 60이 인풋으로 들어왔을때 시간초과가 날 수도 있다고 생각했습니다. 처음 이 문제를 읽고 bfs로 풀 생각을 했을때 시간초과가 나지 않는다는 확신은 무엇인가요??
[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core
안녕하세요. 강의 잘 듣고 있습니다. 막히는 부분에서 부분별로 강의를 들으면서 하는데, 개념 잡기에는 좋은데.. 실무에서 변형하면서 사용하려니 막히는 부분이 생기네요.. ㅡ.ㅜ; 우선 주문 데이타를 기가별로 조회를 하려고 하는데, 안되고 있습니다. 구글링과 스택쪽을 찾아봐도 딱히 잡히는것도 없고.. gpt가 알려준대로 해도 안되네요.. db는 postgreSQL로 최신버전이며.. 구성은 nest.js + prisma + swagger + graphQL로 구성되어 있으며, 버전은 최신버전으로 현재 구성된 상태입니다. // schema.prisma model Order { .... order_date DateTime? } // orders.controller.ts async getOrdersByDateRange( @Query('start_date') start_date: string, @Query('end_date') end_date: string, ): Promise<Order[]> { const startDate = new Date(start_date); const endDate = new Date(end_date); if (isNaN(startDate.getTime()) || isNaN(endDate.getTime())) { throw new BadRequestException('날짜 형식이 잘못되었습니다.'); } return this.ordersService.getOrdersByDateRange(startDate, endDate); } // orders.service.ts async getOrdersByDateRange( start_date: Date, end_date: Date, ): Promise<Order[]> { const orders = await this.prisma.order.findMany({ where: { order_date: { gte: new Date(start_date.setHours(0, 0, 0, 0)), // 시작일 00:00:00 lte: new Date(end_date.setHours(23, 59, 59, 999)), // 종료일 23:59:59.999 // gte: start_date, // 이것도 안됨 // lte: end_date, // 이것도 안됨 }, //order_date: Between(start_date, end_date), }, }); if (!orders || orders.length === 0) { throw new NotFoundException( `기간 내에 주문 데이터가 없습니다.`, ); } 디비쪽 데이타를 이와 같습니다. 입력 값은 start_date : 2024-05-01 end_date : 2024-06-05 이렇게 전달해서 조회하는데, 아무런 데이타를 못 가져오고 있습니다. request url : http://localhost:3000/orders/dateRange?start_date=2024-05-01&end_date=2024-06-05 response body: { "message": "Order with ID dateRange not found.", "error": "Not Found", "statusCode": 404 } 이처럼 출력되고 있습니다. 아무리 해 봐도 안되어서 질문 드립니다. 알려주시면 감사하겠습니다.. ㅜ.ㅜ
선생님!, 기출보고 있는데 코드 수정시 타이핑 하는 글들이 삽입이 아니라 수정으로 되는데 ... 이거는 세팅을 바꿀 수 없나요? 쉽게 설명하자면 아래한글 보면, 아래쪽에 수정/삽입 바꿀 수 있는 것 처럼요. 에러나서 코드 다시보면서 작성하는데 타이핑 하는것들이 삽입되는게 아니라 뒤에 글들을 지우면서 쳐집니다 ㅠ
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] 안녕하세요 이 강의와 이전강의를 돌려가면서보는중인데도 햇갈리는게있어서 제가 생각하는게 맞는지 궁금해서 질문드립니다. 1. 바로이전강의내용에서는 connect() 와 call()를 afterPropertiesSet()에 넣지않은상태에서 코드를 실행하면 url이 null이 뜨는상태였습니다. 그 이유가 그러면 connect() 와 call()함수가 빈 라이프사이클인 "스프링 빈 생성" 중 NetworkClient 생성자안에 있어서 url을 set하기 전 단계에 실행되서 null이 뜨는거고, null이 안뜨고 url이 제대로 나오는 상황은 빈이 완벽하게 생성이 된 이후에 connect() call()이 실행되서 인가요? 제 질문이 잘 전달이된건지 잘 모르겠네요. 빈생성이 되기 전에 connect한거랑 빈생성이완벽하게된후(url도 set된상황) 그 차이인가요? 2. 그리고 바로전강의에서 상태출력을 빈생성과정에 출력하신거라 null이 나오는거지 결국 setUrl은 결국 실행되서 url의 최후 상태는 null이 아니지않나요? 그냥 라이프사이클에 중점을두시는 강의인거맞나요?
예를 들어 남은 메모리 사이즈가 8KB, 스택 생성을 위한 요구 메모리 사이즈가 7 KB 가정하겠습니다. 8KB의 구성이 A 주소에 6KB + B 주소에 2KB로 Non-continuous 하게 분포가 되어 있어서 7KB를 Continuous 하게 할당하지 못하기 때문에 할당에 실패할 수 있다로 이해했습니다. 제가 이해한것이 맞을까요?