묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨자바스크립트 ES6+ 기초 핵심 문법
QA 자동화 테스트할 때 자바스크립트와의 연계성
안녕하세요. 현직 QA 입니다. 제가 프로젝트 끝난 이후에 QA쪽을 단순 테스트에만 그치는 것이 아니라, 자동화 테스트쪽으로 영역을 좀 더 넓히고 싶은데, 자동화 테스트를 하려면 코딩도 할 줄 알아야 한다고 들었습니다.그래서 드리는 말씀인데 QA로서 자동화 테스트를 하기 위한 용도로 이 자바스크립트 강의를 들어도 상관없나요? 그 중 저는 UI쪽으로 자동화 테스트를 하고 싶습니다. 혹시 현 자바스크립트 강의 외에도 HTML/CSS 이전 강좌도 있나요?
-
미해결쉽고 빠르게 익히는 Power BI 심화 1 (시각화와 파워 쿼리)
꺾은선형 차트에서 Y축 요약 적용 안하는 방법
파워BI의 꺽은선형 차트에서 데이터를 있는 그대로 표현하고 싶은데 .... ( 2023-06-29 20, 2023-06-30 25 .. ) 요약하기가 계속 적용이 되어서 문의 드립니다. 합계, 개수, 평균 등 적용하지 않고, 각 열이 가진 데이터를 Y축으로 표시하고 싶습니다. 요약 없음으로 하니 타입이 변경되어 Y축으로 적용이 안되더라구요 ㅠㅠ 문의드립니다ㅠ
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
rest일때만 무한 루프 도는 이유가 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)예질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)예[질문 내용]그냥 컨트롤러에서 model에 담아서 조회할떄는 무한루프가 안도는데 json으로 반환할떄는 왜 무한로프 도는지가 궁금합니다.
-
미해결Vue3 완벽 마스터: 기초부터 실전까지 - "기본편"
watchEffect()가 동작하는 시점 관련
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요,watchEffect()는 콜백함수 내에 쓰인 반응형 데이터(들)이 변화할 때마다 동작하고,watch()는 최초에 명시한 반응형 데이터의 변화를 감지하고 동작한다. 이렇게 이해하는게 맞을까요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
섹션8 | 데이터 통신 강의는 아무런 반응이없네요.
다음 수업 > 을 통해서 섹션8 | 데이터 통신 에 도달하였는데 아무 반응이 없네요.해당 페이지에서 다음 수업 > geolocation 은 정상동작하네요.
-
미해결
서비스 기획자를 위한 GA4 강의 추천 부탁드립니다.
안녕하세요,플랫폼을 기획/운영 중인 서비스 기획자입니다. 사내에 ga4를 다룰 수 있는 분이 아무도 없어서사수를 통해 배우거나 해야 할 상황이 전혀 되지 않는데요, 마케터가 아닌 기획자용 ga 강의를 어떤 것을 보면 좋을 지추천 부탁드립니다!! 데이터 분석 후 화면 기획,이미 있는 화면을 고도화 하기 위한 데이터 분석을 하고 싶습니다.
-
미해결Jenkins를 이용한 CI/CD Pipeline 구축
MAC 에서 설치할때 JDK 환경변수 설정에서 막힙니다.
MAC용 JDK를 다운받고, .bash_profile 에서 JAVA_HOME 환경변수를 설정하였는데요. 어떤 부분을 놓쳤는지, echo $JAVA_HOME 을 해보면 The operation couldn’t be completed. Unable to locate a Java Runtime. 에러가 나오네요. 백엔드 개발자가 아니다보니, JDK설치 부분에서부터 막히네요 ㅜㅜ
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
읽기전용의 의미및 객체의 참조 업데이트
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]우선 강의 초반 내용중 Team 객체의 members는 읽기전용이다. 때문에 members를 업데이트해도 JPA에서 update나 insert가 이뤄지지 않는다, 라고 하셨는데 findTeam.getMembers().get(0).setName("a");처럼 team객체의 members객체에 접근하여 값을 변경하면 update 쿼리가 실행되는 이유는 어떤걸까요?두번째로 team객체와 member객체 생성하게되면 team객체에서 참조하는 members를 JPA에서 맵핑해줄거라고 생각했는데 team객체에 members는 생성된 member 객체를 참조하지 않고 em.clear및 em.find로 DB를 통해 team객체를 받아와야 members를 참조하는 구조로 되어있더라구요.JPA에서 이부분은 지원이 되지 않는 부분일까요?
-
해결됨나도코딩의 자바 기본편 - 풀코스 (20시간)
퀴즈#10에 질문 있습니다.
안녕하세요.현재 직장과 병행하며 수업을 듣고 있는 수강생입니다. 열심히 듣고는 있지만 아직 개념이 완벽하게 잡히지 않아서 그런지, 혼자 코딩해야 하는 퀴즈가 어렵다고 느껴집니다. 제가 해본 결과는 아래와 같습니다.public class quiz_10 { public static void main(String[] args) { Customer ages = new Customer(); Object[][] age = {{"james",ages.james}, {"benjamin",ages.benjamin}, {"chandler",ages.chandler}, {"rachel",ages.rachel}, {"monica",ages.monica}}; System.out.println("미술관 입장료"); System.out.println("-----------------"); Arrays.stream(age).map(x -> (int) x[1] > 20 ? x[0] + " 5000원" : x[0] + " 무료").forEach(System.out::println); } }; class Customer { public int chandler = 50; public int rachel = 42; public int monica = 21; public int benjamin = 18; public int james = 5; };결과는 같지만 방식은 나도코딩님과 많이 달라서 이렇게 해도 되는 건지, 사고방식을 다르게 할 수 있는 방법을 찾아봐야 하는 건지 걱정이 됩니다😂제가 너무 어렵게 공부하고 있는 걸까요?충고 부탁 드립니다. 감사합니다!
-
미해결
ERD 대신 UML
ERD에 대한 글을 보다가 요즘에는 ERD를 안그리고 UML로 대체한다는 글을 봤는데프로젝트 초기에 UML을 다 그리고 시작하기에는 너무 변경 사항이 많아질 것 같은데요.ERD 대신 UML로 대체하는 회사에서 근무하시는 분들은 어느시점에 어느정도의 UML을 그리는지 궁금합니다..
-
해결됨[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
Premium 문의…!
선생님 어제 코드 감사합니다 아쉽게도 많이 배워야할것같아서 ㅠㅜ 혹시 제가 빠트린 코드가 있을까요 ? 아니면 다른부분 확인할 사항이 있을까요? 작성한 코드 올려드립니다nodebird-api -> middlewares-> index.jsconst jwt = require("jsonwebtoken"); //토큰을 검사하는 미들웨어 const rateLimit = require("express-rate-limit"); const User = require("../models/user"); const { Domain } = require("../models/"); const cors = require("cors"); exports.isLoggedIn = (req, res, next) => { if (req.isAuthenticated()) { next(); } else { res.status(403).send("로그인 필요"); } }; exports.isNotLoggedIn = (req, res, next) => { if (!req.isAuthenticated()) { // 패스포트 통해서 로그인 안했으면 next(); } else { const message = encodeURIComponent("로그인한 상태입니다."); res.redirect(`/?error=${message}`); //localhost:8001? error=메시지 } }; //토근검사 exports.verifyToken = (req, res, next) => { try { res.locals.decoded = jwt.verify( req.headers.authorization, process.env.JWT_SECRET ); return next(); } catch (error) { if (error.name === "TokenExpiredError") { return res.status(419).json({ code: 419, message: "토큰이 만료되었습니다.", }); } return res.status(401).json({ code: 401, message: "유효하지 않은 토큰입니다.", }); } }; const limiter = rateLimit({ widowMs: 60 * 1000, max: (req, res) => { if (req.user?.Domains[0]?.type === "premium") { return 10; } return 1; }, handler(req, res) { res.status(this.statusCode).json({ code: this.statusCode, message: `1분에 ${ req.user?.Domains[0]?.type === "premium" ? "열" : "한" } 번만 요청 할 수 있습니다...`, }); }, }); exports.apiLimiter = async (req, res, next) => { let user; if (res.locals.decoded) { user = await User.findOne({ where: { id: res.locals.decoded.id }, include: { model: Domain }, }); } req.user = user; limiter(req, res, next); }; exports.deprecated = (req, res) => { res.status(410).json({ code: 410, message: "새로운 버전이 나왔습니다. 새로운 버전을 사용하세요", }); }; exports.corsWhenDomainMatches = async (req, res, next) => { const domain = await Domain.findOne({ where: { host: new URL(req.get("origin")).host }, }); if (domain) { cors({ origin: true, Credential: true, })(req, res, next); //미들웨어 확장패턴 } else { next(); } }; nodebird-api -> routes -> v2.jsconst express = require("express"); const { verifyToken, apiLimiter, corsWhenDomainMatches, } = require("../middlewares"); const { createToken, tokenTest, getMyPosts, getPostsByHashtag, } = require("../controllers/v2"); const cors = require("cors"); const router = express.Router(); router.use(corsWhenDomainMatches); router.use( cors({ origin: true, credentials: true, //쿠키요청 }) ); router.post("/token", apiLimiter, createToken); router.get("/test", verifyToken, apiLimiter, tokenTest); router.get("/posts/my", verifyToken, apiLimiter, getMyPosts); // GET /v2/posts/hashtag/:title router.get("/posts/hashtag/:title", verifyToken, apiLimiter, getPostsByHashtag); module.exports = router;
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 기본편
결과값이 안뜹니다.
이런식으로 결과값이 안뜨는데 어디가 잘못된건지 궁금합니다
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
연관관계 관련 질문입니다.
@Entity @Table(name = "ORDERS") @Getter @NoArgsConstructor(access = AccessLevel.PROTECTED) public class Order { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "order_id", nullable = false) private Long id; @ManyToOne(fetch = FetchType.LAZY) //연관관계 주인 @JoinColumn(name = "user_id") private User user; @OneToMany(mappedBy = "order", cascade = CascadeType.ALL, orphanRemoval = true) private List<OrderItem> orderItems = new ArrayList<>(); @OneToOne(fetch = FetchType.LAZY) @JoinColumn(name = "delivery_id") private Delivery delivery; //배송정보 @Enumerated(EnumType.STRING) private OrderStatus status; //ORDER, CANCEL private LocalDateTime orderDate;// 주문 날짜 public Order(User user) { this.user = user; } @Builder public Order(User user, Delivery delivery, OrderStatus status, LocalDateTime orderDate) { this.user = user; this.delivery = delivery; this.status = status; this.orderDate = orderDate; } //--- 양방향 연관관계 편의 메서드 ------// 편의메서드는 컨트롤 하는 쪽에 만들어주면 됨 // 다 쪽이 연관관계 주인으로 값 의 변경사항은 주인쪽에서 함 // 다 쪽이 set // 일쪽이 add public void setUser(User user) { this.user = user; user.getOrders().add(this); } public void addOrderItem(OrderItem orderItem) { orderItems.add(orderItem); orderItem.setOrder(this); } public void SetDelivery(Delivery delivery) { this.delivery = delivery; delivery.setOrder(this); } }중 public void SetDelivery(Delivery delivery) { this.delivery = delivery; delivery.setOrder(this); } 에서 연관관계 주인은 order 이면 delivery.setOrder(this); 해도 변경사항이 데이터베이스에 반영이 안되는 것 아냐?이것도 setUser() 와 동일하게 delivery.getOrder().add(this); 해야하는 거 아닌가요?? 헷갈리는게 연관관계 주인쪽에서만 변경사항이 데이터베이스에 반영되는것으로 알고 있는데 이 말의 정확한 예시가 궁금합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-b질문입니다.
2-b질문입니다.1.2분 29초에 y가 가로이고 x가 세로라고 하셨는데 그걸 어떻게 알아요?2.사진에서 n이 10이고 m이 8로 받아져있는데요. 왜 y가 10까지 돌아야 하는데 왜 8에서 멈추나요?import sys sys.stdin = open('input.txt', 'r') from collections import deque testcase=int(input()) n,m,k=map(int,input().split()) # print(n,m,k) # grid=[list(map(int,input().split())) for _ in range(m)] grid2=[[0]*n for _ in range(m)] visited=[[0]*n for _ in range(m)] for _ in range(k): x,y=map(int,input().split()) grid2[y][x]=1 # for i in range(m): # print(grid2[i]) dxs=[-1,0,1,0] dys=[0,-1,0,1] Q=deque() def in_range(x,y): return 0<=x and 0<=y and x<n and y<n for y in range(n):#가로 for x in range(m):#세로 if grid2[y][x]==1: if visited[y][x]==0: Q.append((y,x)) visited[y][x] = 1 while Q: y,x=Q.popleft() for dx,dy in zip(dxs,dys): nx=dx+y ny=dy+x if not in_range(ny,nx): continue if visited[ny][nx]==1: continue if visited[ny][nx]==0 and grid2[ny][nx]==1: visited[ny][nx] =1 for i in range(m): print(visited[i])
-
해결됨20년 경력자의 알기쉬운 컴퓨터네트워크
엔드포인트에 아이피 할당은 어떻게 하나요
세션계층들어가니깐 엔드포인트들이 갑자기 다. 아이피가 부여되어있네요
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
섹션 5 퀴즈 질문
질문1:빨간색 부분에 width랑 background가 하얀글씨로 되어있는데적용이 된건가요? 그리고강의 중 이 부분에 예시가 없어서 레퍼런스 코드를 참고해버렸는데요질문2:transition:제일 앞에 선언할수 있는 속성이 무엇이 있는지질문3:transition-property:는 어떤식으로 사용하는지 궁금합니다
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
Recursive Feature Elimination 관련 질문드립니다.
안녕하세요. 좋은 강의 잘 듣고 있습니다.<신규> Recursive Feature Elimination과 SelectFromModel 실습 강의 부분에서svc = SVC(kernel="linear") # REFCV로 Feature들을 반복적으로 제거해가면서 학습/평가 수행. rfecv = RFECV(estimator=svc, step=1, cv=StratifiedKFold(2), scoring='accuracy', verbose=2) rfecv.fit(X, y) print("Optimal number of features : %d" % rfecv.n_features_)이 코드를 돌렸을 때 나오는 verbosity가 잘 이해되지 않아서 질문드립니다.Fitting estimator with 25 features. Fitting estimator with 24 features. Fitting estimator with 23 features. Fitting estimator with 22 features. ... Fitting estimator with 4 features. Fitting estimator with 3 features. Fitting estimator with 2 features. Fitting estimator with 25 features. Fitting estimator with 24 features. Fitting estimator with 23 features. Fitting estimator with 22 features. ... Fitting estimator with 4 features. Fitting estimator with 3 features. Fitting estimator with 2 features. Fitting estimator with 25 features. Fitting estimator with 24 features. Fitting estimator with 23 features. Fitting estimator with 22 features. ... Fitting estimator with 7 features. Fitting estimator with 6 features. Fitting estimator with 5 features. Fitting estimator with 4 features. Optimal number of features : 3cv=2라서 25~2 features로 코드가 2번 돌아가는 것 같은데그 후에 25~4(optimal number of features + 1)까지 한 번 더 돌아가는 이유가 무엇인가요? 추가적으로, plt.ylabel("Cross validation score (nb of correct classifications)") 여기 nb of correct classifications에서 nb가 number의 약자가 맞을까요? 이상입니다. 감사합니다.
-
해결됨[중급편] 코인 가격 모니터링 앱 제작 (Android Kotlin)
navigation 관련 질문 있습니다
강의 잘 듣고 있습니다! bottom navigation 파트를 들으면서 질문이 생겨 질문 올립니다. 초급강의도 들었는데 navigation을 사용하실 때 Activity 하나에 여러 개의 Fragment를 잇는 SAA 구조를 보여주시는데, 그럼 혹시 Activity 없이는 navigation을 사용할 수는 없나요? 예를 들어 코인리스트 페이지에서 또 다른 페이지들로 가기 위해서 CoinListFragment를 navHostFragment로 하는 navigation은 만들 수 없나요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
CSS 섹션3 퀴즈 질문
박스사이즈를 구하라는 문제에서 저는 div의 크기를 생각하고24*3(폰트사이즈*3em) + 20(가로세로 padding 10+10)=92 생각했는데 93이라는 약간의 오차도 있고정답은 폰트사이즈인 72네요 ㅠ 1.제가 문제를 잘못이해했는지2.div크기 구하는데 오차가 발생하는 이유위 두가지가 궁금합니다.
-
해결됨Practical Testing: 실용적인 테스트 가이드
'외부 계층으로 분리한다'는 말이 궁금합니다.
강의에서 LocalDateTime.now()를 파라미터로 받게끔 해서 분리하는 걸 예시로 들어주셨는데요.'테스트하기 어려운 영역을 외부 계층으로 분리한다'는 말씀이 위 예시처럼 파라미터로 받게끔한다는 것인가요?외부 계층이라는 말이 잘 이해되지 않아서 질문드립니다! 테스트하기 어려운 메서드를 호출하는 상위 레벨의 메서드를 외부 계층이라고 하는 것일까요?