[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] https://www.inflearn.com/questions/781242/%EC%8A%A4%ED%94%84%EB%A7%81-%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8 정확하게 궁금증이 풀리지 않아 다시 질문드립니다. 다시 한번 질문드리자면, 제가 배우고 있는게 정확히 스프링인지 스프링 프레임워크인지 감이 안와요. 말씀에 따르면, 본 강의 내에서 설정한 환경은 스프링 부트환경인거고, 이 안에서 제가 현재 학습하고 있는 모든 내용은 스프링 내용이 맞는거죠? 또한 인텔리제이에서 단순히 ctrl shift f10을 이용해서 코드를 실행하는 것은 단순히 스프링을 사용하고 있는 것이고, 인텔리제이에서 CoreApplication 을 실행하는 것은 스프링 부트를 사용하는 것인가요? 그렇다면 여기서 스프링 부트를 실행한 것은 스프링 부트로 스프링 프레임워크를 실행한 것으로 이해해도 무방할까요?
@mixin 파트 시청중 궁금점이 생겨서요! 첫번째 이미지 처럼 hover를 저렇게주고 css 컴파일하면은 두번째이미지처럼 3개의 hover를 가진 css로 컴파일 되어서 보여지는데요. 저러면은 괜히 css만 지저분해져보이는데 저렇게 hover를 주는 이유가 있었을까여?. 그리고 css 컴파일 된것을 보면은 ex) .complete.complete:hover -> 이렇게 되어있으면은 제가 알고 있는 css개념으로는 .complete 클래스를 가지면서 .complete를가진 요소에 hover를 줘라라고 알고있기때문에 hover가 먹지 않을꺼라고 생각이들었는데요. 먹어지는 이유가 있을까요?..
처음에는 태그 자동완성도 되고 리로드도 정상적으로 실행됐습니다. 그런데 수강 중 실습하면서 코딩 작성하다가 알림창이 떠서 확인도 안하고 클릭했더니 다음부턴 태그 자동완성도 안되고, 웹브라우저로 리로드하면 원본 코드 그대로 나타납니다... visual studio code 삭제 이후 재설치해봤는데도 똑같은 상태라서 어떻게 해야할지 모르겠습니다.
안녕하세요 mvc 2편 코드를 따라하며 프로젝트를 실행시키고 확인하다가, mvc 1편에 특정 부분을 확인하고자 1편에서 썼던 프로젝트를 실행시켰습니다 분명 2편 프로젝트를 실행중지하고, 1편 프로젝트를 실행했는데 localhost:8080 을 통해 나온 welcome page가 2편 프로젝트의 index.html 입니다 왜 1편 프로젝트의 index.html이 welcome page로 뜨지 않는 것일까요? 감사합니다!
안녕하세요 아래 링크의 문의글과 같은 상황이라 문의드립니다. build 생성 오류 질문드립니다...(윈도우) https://www.inflearn.com/questions/268449/build-%EC%83%9D%EC%84%B1-%EC%98%A4%EB%A5%98-%EC%A7%88%EB%AC%B8%EB%93%9C%EB%A6%BD%EB%8B%88%EB%8B%A4-%EC%9C%88%EB%8F%84%EC%9A%B0 인텔리제이에서는 정상적으로 컴파일 되는 상태입니다. 인텔리제이를 종료 한 상태에서 CMD를 통해 gradle을 build하면 아래와 같은 오류 메세지가 나오는 상태입니다. 댓글에 안내해주신 대로 프로젝트를 새로 생성 후 바로 CMD에서 컴파일을 했는데도 오류 메세지가 동일해서 문의드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. started 링크가 finished 피그마로 연결되어 있어서 피그마 네이티브가 이미다 지정이 되어있는 것 같습니다.
안녕하세요. 좋은 강의 감사합니다. entity 구현 1:1 강의에서 npm i 후 package: '@angular-devkit/core@15.1.4', Unsupported engine 이라고 나오는데, 이렇게 터미널에 찍히는 이유가 무엇인가요? 계속 사용할 경우 어떤 문제가 발생하나요? npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@angular-devkit/core@15.1.4', npm WARN EBADENGINE required: { npm WARN EBADENGINE node: '^14.20.0 || ^16.13.0 || >=18.10.0', npm WARN EBADENGINE npm: '^6.11.0 || ^7.5.6 || >=8.0.0', npm WARN EBADENGINE yarn: '>= 1.13.0' npm WARN EBADENGINE }, npm WARN EBADENGINE current: { node: 'v16.12.0', npm: '8.1.0' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@angular-devkit/schematics@15.1.4', npm WARN EBADENGINE required: { npm WARN EBADENGINE node: '^14.20.0 || ^16.13.0 || >=18.10.0', npm WARN EBADENGINE npm: '^6.11.0 || ^7.5.6 || >=8.0.0', npm WARN EBADENGINE yarn: '>= 1.13.0' npm WARN EBADENGINE }, npm WARN EBADENGINE current: { node: 'v16.12.0', npm: '8.1.0' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@angular-devkit/schematics-cli@15.1.4', npm WARN EBADENGINE required: { npm WARN EBADENGINE node: '^14.20.0 || ^16.13.0 || >=18.10.0', npm WARN EBADENGINE npm: '^6.11.0 || ^7.5.6 || >=8.0.0', npm WARN EBADENGINE yarn: '>= 1.13.0' npm WARN EBADENGINE }, npm WARN EBADENGINE current: { node: 'v16.12.0', npm: '8.1.0' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@angular-devkit/core@15.0.4', npm WARN EBADENGINE required: { npm WARN EBADENGINE node: '^14.20.0 || ^16.13.0 || >=18.10.0', npm WARN EBADENGINE npm: '^6.11.0 || ^7.5.6 || >=8.0.0', npm WARN EBADENGINE yarn: '>= 1.13.0' npm WARN EBADENGINE }, npm WARN EBADENGINE current: { node: 'v16.12.0', npm: '8.1.0' } npm WARN EBADENGINE } npm WARN EBADENGINE Unsupported engine { npm WARN EBADENGINE package: '@angular-devkit/schematics@15.0.4', npm WARN EBADENGINE required: { npm WARN EBADENGINE node: '^14.20.0 || ^16.13.0 || >=18.10.0', npm WARN EBADENGINE npm: '^6.11.0 || ^7.5.6 || >=8.0.0', npm WARN EBADENGINE yarn: '>= 1.13.0' npm WARN EBADENGINE }, npm WARN EBADENGINE current: { node: 'v16.12.0', npm: '8.1.0' } npm WARN EBADENGINE } npm WARN deprecated apollo-datasource@3.3.2: The `apollo-datasource` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. npm WARN deprecated apollo-server-errors@3.3.1: The `apollo-server-errors` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. npm WARN deprecated apollo-server-plugin-base@3.7.1: The `apollo-server-plugin-base` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. npm WARN deprecated apollo-server-types@3.7.1: The `apollo-server-types` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. npm WARN deprecated sourcemap-codec@1.4.8: Please use @jridgewell/sourcemap-codec instead npm WARN deprecated apollo-server-express@3.11.1: The `apollo-server-express` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. npm WARN deprecated apollo-reporting-protobuf@3.3.3: The `apollo-reporting-protobuf` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/usage-reporting-protobuf` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. npm WARN deprecated apollo-server-env@4.2.1: The `apollo-server-env` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/utils.fetcher` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. npm WARN deprecated subscriptions-transport-ws@0.11.0: The `subscriptions-transport-ws` package is no longer maintained. We recommend you use `graphql-ws` instead. For help migrating Apollo software to `graphql-ws`, see https://www.apollographql.com/docs/apollo-server/data/subscriptions/#switching-from-subscriptions-transport-ws For general help using `graphql-ws`, see https://github.com/enisdenjo/graphql-ws/blob/master/README.md npm WARN deprecated apollo-server-core@3.11.1: The `apollo-server-core` package is part of Apollo Server v2 and v3, which are now deprecated (end-of-life October 22nd 2023). This package's functionality is now found in the `@apollo/server` package. See https://www.apollographql.com/docs/apollo-server/previous-versions/ for more details. added 806 packages, and audited 807 packages in 21s 98 packages are looking for funding run `npm fund` for details found 0 vulnerabilities
안녕하세요... 아래 강의를 듣고 있는데요.. 현재 강의내용을 대략적으로 반영한 교재가 있는지 궁금합니다. 제가 검색해 본 교재들은 모두 기본 이론(블렌더 기본조작방법)을 간단히만 소개하고, 예제만들어보는 데 지면을 많이 활용해서 실제 전체적인 블렌더 기본조작방법을 배우기 어렵습니다. 그래서 현재 강의 내용을 요약식이라도 반영한 교재나 자료가 있으면 구하고 싶습니다. Blender(블렌더) 3.0 3D 그래픽의 입문 Part. 2
안녕하세요 김영한 강사님의 강의를 듣고 개인 프로젝트에 JPA를 정말 잘 사용하고 있습니다. JPA를 사용해서 개발을 하다 보니 JPA를 사용하기 전과 다르게 확실히 객체의 역할을 분리해서 만들 수 있었고 동일 트랜잭션 내에서 영속성 엔티티 객체를 활용하여 DB 통신을 최소화할 수 있었습니다. 그러나 동일한 트랜잭션 내에서 모든 비즈니스 로직을 끝내도록 설계를 하다 보니 서비스 클래스 내에서 다른 서비스 클래스를 사용해야 하는 상황이 빈번히 생겼습니다. 그렇게 무턱대고 서비스 클래스에서 DI를 남용하다 하여 서비스 클래스 간 순환 참조 상황이 벌어지게 되었습니다. 문제를 해결하기 위해 spirng DI 대해서 공부를 하였고 설계가 잘못되었다는 걸 알게 되어 2가지 해결 방법을 생각해 봤습니다. 첫번째 해결방법: 컨트롤러를 거쳐서 순차적으로 서비스 로직을 수행하는 방식이었지만 JPA를 사용하기 때문에 동일한 트랜잭션 내에서 처리하지 않으면 영속성이 해제되어 다시 DB를 참조해야 하는 상황일뿐더러 컨트롤러는 http 파라미터를 검증하고 사용자에게 원하는 정보만 전달한다는 컨트롤러 객체 역할의 기준이 모호해질 것 같았습니다. 컨트롤러에서 트랜잭션을 걸 수 있도록 설정하는 방법을 알아봤지만 위험성이 존재한다고 들었습니다. 두번째 해결방법 : 조회만 하는 Service 클래스, 현재 데이터를 검증하여 저장, 변경하는 객체를 실행하는 클래스 등 입출력을 동시에 하는 서비스 객체를 분리하거나 검증하는 과정의 로직을 따로 분리하여 단 방향으로 흐르게 재설계 했습니다. 분리하게 되면서 검증 클래스 같은 경우 추후에 여러 서비스에서 다양한 검증 로직이 필요하게 되면 인터페이스화하여 공통 검증 기능으로 사용할 수 있는 다형성까지 생각해 볼 수 있게 될 것 같아서 현재 이 방법으로 리팩토링하였습니다. 아직 실무를 겪어 보지 못한 취준생이라 제가 해결 한 두번째 방법이 맞는 건지 불안합니다. 아니면 에초에 설계가 잘못되어 다시 구성을 해야 하는 상황일까요??
============================== [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 스프링 부트에서 정적 파일 관리를 제공하는 것이 그래들, 메이븐 모두에게 해당되는 개념인지 아니면 그래들에만 해당되는 얘기인지 궁금합니다. 메이븐 방식일 경우 webapp 하위에 resources와 WEB-INF로 나뉘는데 정적파일이 resources에 저장되는걸로 알고있습니다. 스프링프레임워크에서는 뷰리졸버의 prefix가 기본적으로 /WEB-INF/views/ 이렇게 세팅해두고 하는것으로 알고있거든요...
젠킨슨 도커를 원도우 서버 위에 설치 했습니다. 설치 후 젠킨슨 도커와 연동하여 pytest 및 python를 사용하고 싶은 데 도커에 설치해야 하는 지 아니면 원도우 서버에 설치해도 되는 지 궁금해서 문의합니다. 해당 강의를 통해 jenckins + github + python selenium grid 연동 환경을 구성하려고 합니다. 원도우 서버에 jenckins _docker 설치 후 원도우 서버에 python 및 selenium 을 설치 했는 데 실행이 원활하지 않아 문의합니다.
안녕하세요. 알고리즘 공부를 위해 강의를 구매했고 C++ 알고리즘 교안을 통해 공부 중입니다. 교안을 보다보면 제 머리가 조금 부족해서 내용 이해가 정확히 안가는 부분도 있고, 내용이 적지 않다 보니 1주일 공부하다보면 앞에 내용이 기억나지않아 뒷 부분에서 이게 무슨 소리인가라는 생각이 자주 듭니다. 이럴 때, 기억나지않아도 적당히 이해하면서 교안을 뒤로 넘기며 계속 공부를 이어나가야 할지 앞에 내용을 다시 공부하고 진행해야 할 지 모르겠습니다. 교안을 완벽하게 숙지(이해, 암기)하고 강의를 듣고 공부를 해 나가야할지, 아니면 모든 내용이 기억나지 않고 완벽하게 숙지되지 않더라도 앞으로 나아가야할지 어느 방법을 추천하시는지 조언해주시면 감사하겠습니다. 감사합니다!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. let input = `7 128 460 603 40 521 137 123`.split("\n"); let num = Number(input[0]); let arr = input[1].split(" "); function solution(arr) { let answer; let sum; let sumMax = 0; let maxNum = 0; for (let i = 0; i < num; i++) { sum = arr[i].split("").reduce((acc, cur) => { return Number(acc) + Number(cur); }, 0); if (sum > sumMax) { sumMax = sum; maxNum = arr[i]; answer = arr[i]; } if (sum === sumMax) { answer = Math.max(maxNum, arr[i]); } } return answer; } console.log(solution(arr)); 이런식으로 한번 풀어봤는데 이런 풀이도 괜찮을걸까요..!?