묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
entity 객체에 기본생성자를 넣어주는 이유
안녕하세요User객체에 기본생성자를 넣어야 작동하는 이유가 궁금합니다혹시 필드에 아무값도 넣지않을때를 대비해서 기본생성자를 사용하는건가요?
-
해결됨아키텍처 패턴 with iOS - GUI Architecture Patterns(이론)
MVVM in iOS - 리액티브 프로그래밍, 자동바인딩과 수동바인딩에서 질문이있습니다
안녕하세요강사님WPF에서는 자동바인딩이 제공되기때문에 MVVM을 사용하는데있어서 이점이있다고 말씀을해주셨고 iOS에서는 자동바인딩을 시스템레벨에서 제공해주지않기때문에 그런점에서 iOS의 MVVM패턴은 등장배경에서의 이유로 쓰이고있는지 고민해봐야한다고 말씀을 해주셨는데 여기서 궁금한점이 combine의 published는 uikit에서도 사용이가능하고 이는 combine이라는 도구를 시스템레벨에서 제공해주기때문에 combine의 등장으로 자동바인딩이 iOS에서도 제공된다고 할수있는게 아닌가라는 생각이들었습니다결국 $를 통해 binding변수로 만들어주면 해당 published변수의 변화에따라 view가 업데이트되니까 이런점에서는 uikit도 시스템레벨에서 자동바인딩을 지원한다라고 말할수있는게아닌가라는 생각이들었습니다 혹시 이부분에대해서 강사님의 생각이 궁금합니다!
-
해결됨앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
LoginProject에서 경고문이 뜹니다.
안녕하세요 좋은 강의 덕분에 공부하고 싶었던 ios에 대해서 잘 알아가고 있습니다 !로그인프로젝트를 만들다가 보니 사진과 같은 경고문이 뜨는데 해석해보니 ViewController.self를 쓰라고 하는거 같더라구요그래서 self대신 ViewController.self로 바꾸면 경고문은 없어지는데 이런 에러가 뜨면서 앱이 꺼집니다. 저 경고문은 그냥 무시하면 되는걸까요?? tf.addTarget(self, action: #selector(textFieldEditingChanged(_:)), for: .editingChanged)그리고 이 줄에서 self는 ViewController를 가르키는게 아니라 텍스트필드를 가르킨다고 생각하는게 맞을까요??
-
해결됨실전! Redis 활용
Stable Cache Invalidation 해결방안
캐싱을 위해 redis를 사용할 경우 db에 값이 변경되었다면 redis에 있는 값과 일치하지 않는 정합성 문제가 일어날수 있다는 것은 알았습니다. 그러면 이걸 해결하기 위한 대표적인 방법들이 무엇이 있을까요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
라이브러리 및 데이터 불러오기 그리고 EDA 수업내용중에
라이브러리 및 데이터 불러오기 그리고 EDA 수업내용중에15분 36초 경에 보면 남성과 여성의 수를 확인하는데, 그때 남성의 수를 cond_male이라는 변수에 담았기 때문에 len(cond_male) 이렇게만 하면 안되나요? 왜 train[cond_male]이렇게 해주어야 하는지가 궁금합니다. 보통 데이터 프레임 안에서 컬럼을 선택할때 데이터프레임명['컬럼명'] 이런식으로 할때나 사용하는데, 변수로 지정후에도 왜 train으로 감싸나요??
-
미해결UIKit - iOS14 실무 가이드 <iOS앱 진짜 개발자 되기>
키보드 떠 있는 상태 만들기
저는 검색창을 눌러도 키보드가 아예 뜨지 않는데 어떤 코드를 추가해야 할까요? extension ViewController: UISearchBarDelegate { func searchBarSearchButtonClicked(_ searchBar: UISearchBar) { term = searchBar.text requestMovieAPI() } }
-
미해결실전! 스프링 데이터 JPA
쿼리 메서드 @Query시 limit
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요, 강의 듣는 도중 궁금증이 생겨 질문드립니다.만약 쿼리 메서드를 사용하여 특정 조건에 의해 게시물 10개만 가져오고 싶을 때List<Board> findTop10ByWriteDatetimeGreaterThanOrderByCommentCountDescViewCountDescWriteDatetimeDesc(String writeDatetime);과 같이 지저분하게 코드를 작성할 수 있었는데 메서드 이름이 너무 길어져 @Query를 사용해서 코드 양을 줄이고 싶었습니다. 하지만, jpql에 limit를 사용할 수 없는데 이 경우 어떻게 jpql을 작성해야 하는지 궁금합니다.
-
해결됨PM을 위한 데이터 리터러시(프로덕트 데이터 분석)
6-6. 만약 카트 내 추가 버튼 클릭에 스크린 이름을 추가한다면
안녕하세요! 로그를 설계할 때,click_recommend_food 이벤트의 파라미터에 화면 정보(cart)를 넣게되면 분자/분모로 계산하지 않아도 되는걸지 궁금합니다!강의 예제에서는 '최소 주문금액을 넘지 않은' 부분을 나타내기 위해서 해당 페이지를 본 수와 클릭수를 따로 해야할 것 같은데 만약 해당 조건이 없는 경우 위처럼 'screen : cart'와 같은 파라미터로도 카트 내에서 일어나는 버튼 클릭 수를 볼 수 있을까요?
-
미해결Angular 기본과 간단한 To-Do 어플리케이션 만들기
컴포넌트 커뮤니케이션 강의 질문
해당 강의 예제를 똑같이 따라한것같은데 결과가 달라서 질문드립니다.@input 예제까지는 잘 따라왔는데 @output 예제에서 <app-add-todo>를 추가하면 처음로딩시 <app-todo> 태그 데이터가 아래 이미지와 같이 나오고 클릭시 하나씩 데이터가 보여집니다.
-
미해결실리콘밸리 엔지니어에게 배우는 쿠버네티스 for SWE
yaml 작성법 문의
yaml 작성 중 리스트는 들여쓰기를 꼭 해야 하는지 아니면같은 줄에 사용해도 무방한지 궁금합니다.예제apiVersion: apps/v1kind: ReplicaSetmetadata: name: frontend labels: app: guestbook tier: frontendspec: replicas: 4 selector: matchLabels: tier: frontend template: metadata: labels: tier: frontend spec: containers: - name: php-redis(들여쓰기 안함) image: gcr.io/google_samples/gb-frontend:v3
-
미해결실리콘밸리 엔지니어에게 배우는 쿠버네티스 for SWE
kubectl command apply create 차이점
안녕하세요 이해가 잘 안되어서 여러번 보고 있습니다.Pod을 생성할때 kubectl apply ~~~kubectl create ~~~둘다 pod이 생성되는데 차이점이 있나요?
-
해결됨[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter
샘플 소스 전체 다운받아볼 수 있을까요?
안녕하세요?현재 7장까지 잘 따라하다가, 프로필 이미지가 정상 업로드 된거 같은데 홈화면에서 제대로 표시가 안되어 무엇이 문제인지 찾고 있습니다.샘플소스가 있다면 관련 부분 비교해 보고 싶은데 개남님 github 찾아봐도 bookreview 프로젝트가 안보이드라고요. 전체 full 소스 받아볼수 있다면 관련 부분 비교해 보고 싶습니다.
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
vivado 2023.2.2 schematic 오류
안녕하세요, 맛비님!vivado schemetic을 실행하는 과정에서 오류가 생겨 오래 잡고있다 해결이 안되서 질문 남깁니다.vivado를 이용해서 zybo-z7-20 led점등하는 코드를 입력하고 Schematic을 누르니 로딩이 되다가 vivado창이 닫혀버립니다.windows 11에서 vivado 버전은 2023.2.2를 사용중이고 관리자 권한으로도 실행해본 상태입니다. 사용하는 pc 스펙은 아래와 같습니다.감사합니다.
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 기본편
이런오류는 어떤 오류인가요
[24532:15216:0226/173731.184:ERROR:policy_logger.cc(157)] :components\enterprise\browser\controller\chrome_browser_cloud_management_controller.cc(161) Cloud management controller initialization aborted as CBCM is not enabled. Please use the --enable-chrome-browser-cloud-management command line flag to enable it if you are not using the official Google Chrome build.DevTools listening on ws://127.0.0.1:58547/devtools/browser/ef895699-d3de-47d1-8fbc-d77db72d47e1
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
프로세스 관련입니다
안녕하세요! 프로세스가 올라가고 내려가는 원리 등의 메커니즘과 cpu를 스케줄링할 때 application(제 3의 프로세스)에서 하는 방식을 공부하려고 하는데, 운영체제 부분만 봐도 무관할까요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
상품 수정이 되지 않는데 이유를 모르겠습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]상품 수정페이지 에서 상품에 대한 값 변경 시 데이터베이스에 반영이 되지 않는데 이유를 모르겠습니다. 다음은 코드입니다.ItemController.javapackage jpabook.jpashop.Contorller; import jpabook.jpashop.domain.item.Book; import jpabook.jpashop.domain.item.Item; import jpabook.jpashop.service.ItemService; import lombok.Getter; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import java.util.List; @Controller @RequiredArgsConstructor public class ItemController { private final ItemService itemService; @GetMapping("/items/new") public String createForm(Model model) { model.addAttribute("form", new BookForm()); return "items/createItemForm"; } @PostMapping("/items/new") public String create(BookForm form) { Book book = new Book(); //set안쓰고 Book생성자의 파라미터로 넣는게 더 좋은 설계임 book.setName(form.getName()); book.setPrice(form.getPrice()); book.setStockQuantity(form.getStockQuantity()); book.setAuthor(form.getAuthor()); book.setIsbn(form.getIsbn()); itemService.saveItem(book); return "redirect:/"; } @GetMapping("/items") public String list(Model model) { List<Item> items = itemService.findItems(); model.addAttribute("items", items); return "items/itemList"; } @GetMapping("items/{itemId}/edit") public String updateItemForm(@PathVariable("itemId") Long itemId, Model model) { Book item = (Book) itemService.findById(itemId); // 캐스팅이 별로 좋진 않음 BookForm form = new BookForm(); form.setId(item.getId()); form.setName(item.getName()); form.setPrice(item.getPrice()); form.setStockQuantity(item.getStockQuantity()); form.setAuthor(item.getAuthor()); form.setIsbn(item.getIsbn()); model.addAttribute("form", form); return "items/updateItemForm"; } @PostMapping("items/{itemId}/edit") public String updateItem(@PathVariable("itemId") Long itemId, @ModelAttribute("form") BookForm form) { // Book book = new Book(); 컨트롤러에서 어설프게 엔티티 생성하지 말기 // book.setId(form.getId()); // book.setName(form.getName()); // book.setPrice(form.getPrice()); // book.setStockQuantity(form.getStockQuantity()); // book.setAuthor(form.getAuthor()); // book.setIsbn(form.getIsbn()); // // itemService.saveItem(book); itemService.updateItem(itemId, form.getPrice(), form.getName(), form.getStockQuantity()); return "redirect:/items"; } }ItemService.javapackage jpabook.jpashop.service; import jpabook.jpashop.domain.item.Item; import jpabook.jpashop.repository.ItemRepository; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; @Service @Transactional(readOnly = true) @RequiredArgsConstructor public class ItemService { private final ItemRepository itemRepository; @Transactional public void saveItem(Item item) { itemRepository.save(item); } public List<Item> findItems() { return itemRepository.findAll(); } public Item findById(Long itemId) { return itemRepository.findOne(itemId); } public void updateItem(Long itemId, int price, String name, int stockQuantity) { Item findItem = itemRepository.findOne(itemId); findItem.setPrice(price); findItem.setName(name); findItem.setStockQuantity(stockQuantity); } } HTML파일은 모두 복사붙여넣기 하였습니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
JPQL JOIN강의 수강 중 에러 발생
package jpql; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.OneToMany; import java.util.ArrayList; import java.util.List; @Entity public class Team { @Id @GeneratedValue private Long id; private String name; @OneToMany(mappedBy = "team") private List<Member> members = new ArrayList<>(); private Member member; public List<Member> getMembers() { return members; } public void setMembers(List<Member> members) { this.members = members; } public Member getMember() { return member; } public void setMember(Member member) { this.member = member; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } JPQL 조인 강의를 따라하고 있는데 이런 에러가 납니다.'Basic' attribute type should not be 'Persistence Entity' package jpql; import javax.persistence.*; @Entity @Table(name = "MEMBER") public class Member { @Id @GeneratedValue private Long id; private String username; private int age; @ManyToOne @JoinColumn(name = "TEAM_ID") private Team team; public void changeTeam(Team team){ this.team = team; team.getMembers().add(this); } public Team getTeam() { return team; } public void setTeam(Team team) { this.team = team; } public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } @Override public String toString() { return "Member{" + "id=" + id + ", username='" + username + '\'' + ", age=" + age + ", age=" + age + '}'; } }어떻게 해결하면 좋을지 알 수 있을까요?
-
미해결한 입 크기로 잘라먹는 타입스크립트(TypeScript)
map 구현 중 에러가 발생합니다.
안녕하세요.5분 25초 경의 코드를 똑같이 작성했습니다.그런데 callback(arr[i])부분에서'T' 형식의 인수는 'never' 형식의 매개 변수에 할당될 수 없습니다.ts(2345)라는 에러가 발생하는데 정상적인가요...?const arr = [1, 2, 3]; const newArr = arr.map((it) => it * 2); function map<T>(arr: T[], callback: (item: T) => T) { let result = []; for (let i = 0; i < arr.length; i++) { result.push(callback(arr[i])); } return result; }
-
해결됨개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제
CISC, RISC 질문있습니다(섹션5)
CISC,RISC에 대해서 헷갈리는게 있습니다 ISA 즉, 명령어 집합(구조)는 CPU의 언어라고 하셧는데요ex) ARM, x86 등등 ====================================그럼 CISC와RISC는 명령어 집합인건가요?아니면 ISA(ARM, x86)를 활용하는 CPU의 종류인가요? 영상에서는 x86,x86-64는 CISC 기반에 명령어 집합이라고 얘기 해주셧는데 그럼 CISC는 명령어 집합인걸로 생각이되는데 또 막상 CISC는 복잡한 명령어 집합을 활용하는 컴퓨터(CPU)라고 얘기해주시니 그럼 이게 CPU의 대표적인 종류인건지 헷갈려서 글 남겨드립니다.
-
해결됨Next + React Query로 SNS 서비스 만들기
로그인시에 response의 성공 유무를 떠나 await되는 이유
안녕하세요 제로초님 강의 수강중에 질문이 있어서요강의에 10분08초를 확인해보시면 response가 성공 실패 유무를 떠나서 await되버려서 catch로 넘어가지 않는 이유는 무엇일까요 ?로그인모달은 클라이언트에서 처리하고 회원가입은 서버액션으로 처리한다는 설명을 영상 후반부에 해주셨는데 이러한 경우와 연관이 있는 걸까요 ? 구글링해도 잘 확인이 안되어서요! 항상 감사합니다.