[Bloc 응용] 실전 앱 만들기 (책 리뷰 앱) : SNS 로그인, Firebase 적용, Bloc 상태 관리, GoRouter
안녕하세요? 현재 7장까지 잘 따라하다가, 프로필 이미지가 정상 업로드 된거 같은데 홈화면에서 제대로 표시가 안되어 무엇이 문제인지 찾고 있습니다. 샘플소스가 있다면 관련 부분 비교해 보고 싶은데 개남님 github 찾아봐도 bookreview 프로젝트가 안보이드라고요. 전체 full 소스 받아볼수 있다면 관련 부분 비교해 보고 싶습니다.
설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
안녕하세요, 맛비님! 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. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 상품 수정페이지 에서 상품에 대한 값 변경 시 데이터베이스에 반영이 되지 않는데 이유를 모르겠습니다. 다음은 코드입니다. ItemController.java package 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.java package 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파일은 모두 복사붙여넣기 하였습니다.
안녕하세요. 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; }
CISC,RISC에 대해서 헷갈리는게 있습니다 ISA 즉, 명령어 집합(구조)는 CPU의 언어라고 하셧는데요 ex) ARM, x86 등등 ==================================== 그럼 CISC와RISC는 명령어 집합인건가요? 아니면 ISA(ARM, x86)를 활용하는 CPU의 종류인가요? 영상에서는 x86,x86-64는 CISC 기반에 명령어 집합이라고 얘기 해주셧는데 그럼 CISC는 명령어 집합인걸로 생각이되는데 또 막상 CISC는 복잡한 명령어 집합을 활용하는 컴퓨터(CPU)라고 얘기해주시니 그럼 이게 CPU의 대표적인 종류인건지 헷갈려서 글 남겨드립니다.
안녕하세요 제로초님 강의 수강중에 질문이 있어서요 강의에 10분08초를 확인해보시면 response가 성공 실패 유무를 떠나서 await되버려서 catch로 넘어가지 않는 이유는 무엇일까요 ? 로그인모달은 클라이언트에서 처리하고 회원가입은 서버액션으로 처리한다는 설명을 영상 후반부에 해주셨는데 이러한 경우와 연관이 있는 걸까요 ? 구글링해도 잘 확인이 안되어서요! 항상 감사합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의를 듣다가 순간 애매해서 질문드립니다. V2config에서 해당 코드를 @Bean public ItemService itemService() { return new ItemServiceV2(itemRepositoryV2, itemQueryRepositoryV2()); } @Bean public ItemQueryRepositoryV2 itemQueryRepositoryV2(){ return new ItemQueryRepositoryV2(em); } @Bean public ItemService itemService() { return new ItemServiceV2(itemRepositoryV2, new ItemQueryRepositoryV2(em)); } /** @Bean public ItemQueryRepositoryV2 itemQueryRepositoryV2(){ return new ItemQueryRepositoryV2(em); } **/ 처럼 ItemQueryRepositoryV2부분은 주석처리 해서 @Bean으로 등록을 하지 않으면 작동이 안돼야 할까요?? 변경하고 작동해봤는데 문제가 없어서 질문드립니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 종료 메서드 추론에 대해서 강의해주실 때, @Bean 의 destoryMethod 의 기본값이 inferred 추론으로 등록되어 있는데, 이 추론 기능이 close, shutdown이라는 이름의 메서드를 자동 호출해준다. "직접 스프링 빈으로 등록하면, 종료 메서드는 따로 적어주지 않아도 잘 동작한다" 라는 말이 이해가 되지 않아서 질문을 남깁니다. 혹시 쉽게 설명이 가능할까요?
안녕하세요. 강의 잘 듣고 있습니다. 지금까지 강의해주신 내용대로 잘 따라했는데, Knight를 배치하고 이동시킬 때 아래 사진 2개와 같이 정상적인 카메라 화면과, 이상한 카메라 화면이 반짝거리며 등장하는 현상이 발생하는데, 혹시 이 문제는 왜 생기는걸까요? Play 했을때도 간헐적으로 아래 사진처럼 비정상적인 카메라 화면으로 플레이되곤 합니다.. Knight를 지웠다가 다시 배치하면 정상 동작하긴 하는데, 너무 번거롭네요 ㅜㅜ
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 안녕하세요? 시계열 자료 강의에서 년월일 등을 추출하는 강의가 있는데요.. 여기서 dt가 갑자기 나와서요.. 이것도 그냥 함수인가요.. 아님 뭐 datetime의 약자 뭐 그런건지요? dt관련해서 이거 뭐하는 함수인지 궁긍합니다.
앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
안녕하세요 강의를 듣다가 코드를 짜는 부분에서 공통으로 사용하는 부분이 있어서 이를 따로 View로 만들어서 이를 viewController에 적용시키려고 합니다. 이 때 1개의 ViewController에 여러 개의 View를 담을 수 있나요? 가능하다면 ViewController에 넣을 때 위치는 frame으로 하면 되나요? 아니면 간략하게라도 1개의 ViewController에 여러 View를 넣을 수 있을지 가이드라도 알려주시면 정말 감사합니다.. 어찌보면 강의와 상관없는 얘기일 수도 있는데.. 부탁드립니다.
안녕하세요 제로초님! 로그인 관련하여 질문드립니다! 1) 백엔드에서 response로 넘겨주는 access token이 있어서 이걸 session에 넣어 api 요청할 때마다 헤더에 담아 인증 하려고 하는데요, 로그인 후 next-auth signIn함수를 통해 자동으로 authjs.session-token이 생성되는데 그럼 이 토큰은 언제 쓰이는 건가요? 백엔드에서 넘겨주는 토큰이 있어도 next-auth를 사용해도 되는 건가요? 2) 로그인 기능과 관련해서 https://next-auth.js.org/v3/tutorials/refresh-token-rotation 를 참고해 토큰 갱신 로직을 jwt callbacks 안에 구현을 해보았습니다. client 에서 session을 호출할 때마다 jwt callback이 실행되기 때문에 로그인 시 저장해 놓은 토큰(accesstoken)이 만료되었는지를 확인할 수 있다고 생각했고 위처럼 구현했습니다. 토큰이 만료가 되면 retun token대신 refreshAccessToken(token) 함수를 호출해 새로운 토큰을 return 해주었고, response도 정상적으로 옵니다. 다만 jwt callback이 동시간대에 한번만 실행되는 것이 아니라 여러번 실행이 되고 있고, session callback에서도 업데이트된 token이 확인될거라 생각했지만, session callback에서는 예전 토큰이 조회가 되는 상황입니다. next-auth callbacks가 jwt -> session 순으로 호출되는 것으로 알고 있어서 jwt에서 업데이트된 token을 리턴해주면 session에서 이를 받을 거라고 생각했는데.. 왜 업데이트가 되지 않는 건지 궁금합니다.