묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨아키텍처 패턴 with iOS - GUI Architecture Patterns(이론)
제가 이해한게 맞는지 궁금합니다.
솔직히,, MVC나 MVP나 MVVM이나 머가 그렇게 다른지 잘 이해가 안가긴합니다..모델과 뷰를 분리하고 이를 컨트롤하는 영역을 어떻게 처리하면 좋을까 하는데서 조금씩 차이가 있어서 구분하려는게 목적인 걸까요. 뷰모델이라 한다해도 처리해야할 복잡성이 올라가면 결국 복잡해지는 건 똑같아 보입니다.. 그럼에도 불구하고 UIKit을 사용할 때 NVVM을 쓸라고 하는건 테스트가 용이하다는 이유랑, 그냥 옵저버 패턴 쓰고 싶어서인 것 같습니다. Combine이 나온 것도 뭔가 너네가 옵저버 방식 좋아하는 것 같으니까 만들었어 같은 느낌인 것 같고,, SwiftUI를 공부하면서 보니까 자연스럽게 Combine 쓰게되고 쓰다보니 자연스레 아래처럼 구조가 분리되는 것 같은데 이게 NVVM이 맞는 걸까요?뷰(들어오는 데이터 대로 그려지는 뷰 구조체 모음)모델(타입 or 인터페이스 모음)로직(뷰의 로직 처리 함수모음)스토어(상태 데이터모음)
-
해결됨따라하며 배우는 리액트 A-Z[19버전 반영]
background white 문제
안녕하세요. 선생님.강의에서 보이는 페이지랑 다르게 제껀App 컴포넌트의 div 색깔이 흰색이더라구요.혹시나 싶어 강의 소스 코드를 전부 확인해봐도 검정색으로 App 컴포넌트의div background 컬러를 지정해주는 부분이 없는 것 같은데어떤 차이가 있길래 제껀 흰색 배경이고 선생님껀 검정색 배경인지 알 수 있을까요?소스코드 첨부합니다. https://github.com/edd1e-dev/react-netflix-clone요약) 배경이 흰색인데 검정색 부분으로 바꿔주는 부분을 못찾겠습니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
15강 질문 드립니다!
15강 람다식 질문 드립니다!선생님 안녕하세요!15강에서 작성해주신 람다식이 있는데람다식을 사용하지 않은 코드도 댓글로 알려주실 수 있으실까요~!자바 공부를 시작한 지 얼마 되지 않아서 혼자 해보려 해도 잘 안되네요..! 부탁 드리겠습니다!! 감사합니다!
-
해결됨디지털포렌식 입문자를 위한 디지털포렌식 전문가 2급 실기 시험대비 강의(Encase/Autopsy)
질문 있습니다.
encase 툴이 없이도 강의를 듣거나 공부할 때 지장이 업을까요?
-
미해결스프링 핵심 원리 - 기본편
appConfig.xml 파일 오류 부탁 드립니다.
discountPolicy부분에서 오류가 나는데 잡히지가 않습니다.오류메시지는 다음과 같습니다.org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'orderService' defined in class path resource [appConfig.xml]: Unsatisfied dependency expressed through constructor parameter 1: Ambiguous argument values for parameter of type [hello.core.discount.DiscountPolicy] - did you specify the correct bean references as arguments? AppConfig.java 파일입니다.빨간색 부분에 어떤 문제가 있을까요?XmlAppContext.java 파일 입니다.public class XmlAppContext { @Test void xmlAppContext() { ApplicationContext ac = new GenericXmlApplicationContext("appConfig.xml"); MemberService memberService = ac.getBean("memberService", MemberService.class); assertThat(memberService).isInstanceOf(MemberService.class); } }
-
해결됨함수형 프로그래밍과 JavaScript ES6+
강의 중 혼란스러운 부분이 생겨 질문 드립니다.
안녕하세요 강의 중 혼란스러운 부분이 생겨 질문 드립니다.const queryStr2 = pipe( Object.entries, L.map(([k, v]) => `${k}=${v}`), function(a) { log(a) return a; }, join('&'), )위 코드에서 Object.entries는 Lazy하게 구현한 것이 아니라 빌트인 객체의 메서드를 사용했다고 이해 했는데 L.map으로 인해 a값이 Object [Generator] {} 인걸 이해 못했습니다. Object.entries가 이터레이션 프로토콜을 따르는 이터레이터라는 것까진 이해 했는데 내부적으로 제너레이터로 구현이 돼 있는 걸까요?? 값을 yield로 리턴하도록 구현돼 있는 것인지 궁금합니다. 아니면 Object.entries는 이미 평가 된 상태에서 L.map 부분만 지연 평가가 돼 Generator가 된 걸까요?
-
해결됨독하게 되새기는 C 프로그래밍
declspec(dllimport) 와 extern 은 무슨차이가 있나요?
dll 을 사용하는 쪽에서__declspec(dllimport) 대신에 extern 을 써도 결과가 같던데 다른 차이가 있을까요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part7: MMO 컨텐츠 구현 (Unity + C# 서버 연동 기초)
멀티환경일때와 싱글환경일때 구현 차이 궁금증이 있습니다.
안녕하세요 선생님! 강의를 듣다 질문이 생겼는데요.전체적으로 싱글게임처럼 진행되게 하고싶은데 레벨업 시스템은 만들어 그걸 서버와DB에서 관리하고 싶을때 게임룸이나 몬스터와 관련해 질문이 생겨서요.위와 같은 경우는 몬스터, 플레이어간의 동기화 부분만 제외하고 강의에서 구현한 것처럼 똑같은 방식으로 구현하면 되는걸까요??
-
해결됨코딩은 실전이다! - Git알못을 위한 깃린이코스(Git, Github 실습위주)
Slack 초대 부탁드립니당
kseenyoung@gmail.com 입니다!좋은 강의 감사합니다
-
미해결ARM Cortex-M 프로세서 프로그래밍
libs.s 실행 관련 문의
안녕하세요~main.c의 max함수를 실행하면별다른 include 선언 없이 어떻게 libs.s에 있는 max로직을 타는지 알 수 있을까요?
-
미해결리눅스 입문 - 개념으로 탄탄히!!
vBoxVGA로 그래픽 컨트롤러를 변경하여도 전체화면 안되는 현상
안녕하세요. 우분투 전체화면 설정에 관해서 질문 드립니다.ubuntu 22.04를 사용하고 있는 그래픽 컨트롤러를 VBoxVGA로 바꿔줘도 전체화면이 되지 않고 검은 화면으로만 나와서 매우 불편한 상황입니다 ㅠㅠ 이 설정 외에 다른 설정을 해주어야 할 것이 있을까요?
-
미해결ARM Cortex-M 프로세서 프로그래밍
파일 실행 불가
안녕하세요!File -> open project from file system 으로 예제 파일 불러와서실행하려고 하는데,Unable to launchThe selection cannot be launch, and there are no recent launches라는 문구가 뜨면서 실행이 안됩니다.어떻게 하면 될까요?
-
해결됨자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide)
switch의 기능인건 코틀린에서는 없나요?
fun judgeNumber5(grade: Int) { when (grade) { 3 -> { println("A의 권한을 갖습니다") } 2 -> { println("B의 권한을 갖습니다") } else -> { println("C의 권한을 갖습니다.") } } }public static void judgeNumber5(int grade) { switch (grade) { case 3 : System.out.println("A의 권한을 갖습니다."); case 2 : System.out.println("B의 권한을 갖습니다."); default: System.out.println("C의 권한을 갖습니다."); } }이렇게 할 경우에 코틀린은 early return으로 해당 구문만 실행하고 when 절을 나가게 되는데java의 switch 기능처럼 사용하는 방법이 있을까요?
-
해결됨스프링 핵심 원리 - 고급편
로그추적기 V1적용 작은 궁금증 하나 있습니다!
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]선생님 안녕하세요 정말 별거 아닌 질문일수도있지만혹시 status를 try문이 들어가기 전에 trace.begin해주면 안되는 이유가 있을까요??강의에서는 null로 먼저 초기화를 해주셨는데 왜 이렇게 하셨는지 궁금합니다!try문으로 들어가서부터 시간을 체크하기 위함인가요??매번 좋은 강의 감사합니다!
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
for문에서 창 전환 후 에러 해결 방법 문의
from selenium import webdriver # webdriver 불러오기 from selenium.webdriver.chrome.options import Options # 브라우저 닫힘 방지 from selenium.webdriver.chrome.service import Service # 크롬드라이버 다운로드(새로운 버전 다시 받을 필요 없음) from webdriver_manager.chrome import ChromeDriverManager # 크롬드라이버 다운로드(새로운 버전 다시 받을 필요 없음) import time import pyautogui from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys options = Options() options.add_experimental_option('detach', True) # 브라우저 바로 닫힘 방지 options.add_experimental_option('excludeSwitches', ['enable-logging']) # 불필요한 메시지 제거 service = Service(ChromeDriverManager().install()) #service = Service(ChromeDriverManager().install()) 이 부분을 # ChromeDriverManager(path="원하는 경로") 이렇게 사용하면 원하는 곳에 # 크롬드라이버를 다운로드하게 됩니다. driver = webdriver.Chrome(service=service, options=options) driver.get("https://www.g2b.go.kr:8101/ep/tbid/tbidFwd.do") time.sleep(2) search_click = driver.find_element("#bidNm").click() keyword = pyautogui.prompt("<<<검색어를 입력하세요 >>>") search_keyword = driver.find_element(By.CSS_SELECTOR,"#bidNm").send_keys(keyword) output_num = driver.find_element(By.CSS_SELECTOR,"#recordCountPerPage").click() output_num_select = driver.find_element(By.CSS_SELECTOR,"#recordCountPerPage > option:nth-child(5)").click() search_btm_click = driver.find_element(By.CSS_SELECTOR,"#buttonwrap > div > a:nth-child(1)").click() bid_infors = driver.find_elements(By.CSS_SELECTOR,"tbody tr") for bid in bid_infors : title = bid.find_element(By.CSS_SELECTOR,"td:nth-child(4) > div > a").text link = bid.find_element(By.CSS_SELECTOR,"td:nth-child(4) > div > a").get_attribute('href') client = bid.find_element(By.CSS_SELECTOR,"td:nth-child(5) > div").text print("공고명 : ", title) print("주소 : ", link) print("발주처 : ",client ) print() # 사전규격 크롤링 driver.get("https://www.g2b.go.kr:8081/ep/preparation/prestd/preStdSrch.do") time.sleep(2) keyword2 = pyautogui.prompt("<<<검색어를 입력하세요 >>>") search_keyword2 = driver.find_element(By.CSS_SELECTOR,"#prodNm").send_keys(keyword2) output_num2 = driver.find_element(By.CSS_SELECTOR,"#recordCountPerPage").click() output_num2_select2 = driver.find_element(By.CSS_SELECTOR,"#recordCountPerPage > option:nth-child(5)").click() search_btm_click2 = driver.find_element(By.CSS_SELECTOR,"#frmSearch1 > div.button_wrap > div > a:nth-child(1)").click() bid_infors2 = driver.find_elements(By.CSS_SELECTOR,"tbody tr") for bid2 in bid_infors2: title2 = bid2.find_element(By.CSS_SELECTOR, "td:nth-child(4) > div > a").text client2 = bid2.find_element(By.CSS_SELECTOR, "td:nth-child(5) > div").text link_click = bid2.find_element(By.CSS_SELECTOR, "td:nth-child(4) > div > a").click() time.sleep(2) link2 = driver.current_url print("공고명 : ", title2) print("주소 : ", link2) print("발주처 : ",client2) print() driver.back() time.sleep(2) 위 코드에서 발생하는 코드는 아래와 같습니다. Traceback (most recent call last): File "c:\coding\나라장터크롤링\1.입찰공고크롤링.py", line 61, in <module> title2 = bid2.find_element(By.CSS_SELECTOR, "td:nth-child(4) > div > a").text File "C:\Users\landj\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webelement.py", line 425, in find_element return self._execute(Command.FIND_CHILD_ELEMENT, {"using": by, "value": value})["value"] File "C:\Users\landj\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webelement.py", line 403, in _execute return self._parent.execute(command, params) File "C:\Users\landj\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 440, in execute self.error_handler.check_response(response) File "C:\Users\landj\AppData\Local\Programs\Python\Python310\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 245, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.StaleElementReferenceException: Message: stale element reference: element is not attached to the page document이것 저것 다해봐도 안되네요...해결 방법을 알려주시면 감사하겠습니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
코드색깔설정관련 문의
안녕하세요! 좋은 수업을 만나 즐겁게 배우고 있습니다.선생님 코드는 명령문은 하늘색, 주석은 회색, 변수는 초록색 이런식으로 나오는 것 같은데 저는 명령문이 노란색, 주석이 초록색 으로 나와서요 혹시 각각의 색깔 설정은 어디에서 하나요?
-
해결됨
flutter doctor 문제
제가 이 강의 듣기 전에 플러터 및 다트를 다른 경로에 설치해서 발생하는 문제같은데어떻게 해결하면 좋을까요? 검색해도 못찾겠네요도와주세요
-
해결됨Vue.js 완벽 가이드 - 실습과 리팩토링으로 배우는 실전 개념
현재 해커 뉴스의 Jobs API가 동작하지 않네요.
제가 코딩 잘못했나 1시간 동안 헤맸습니다.. https://api.hnpwa.com/v0/jobs/1.json jobs의 URL이 동작하지 않네용
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
DBBind에 대한 질문입니다.
DBBind 클래스에 _paramIndex와 _columnIndex 필드가 있는데 어떤 역할을 하고 있는지 모르겠습니다.코드를 따라가 보면 ::SQLBindParameter 함수의 마지막 인자로 들어가게 되는데, 결국 모든 경우에 0을 전달하게 됩니다.그렇다면 굳이 이럴 필요 없이 0을 전달하면 되는 것 아닌가요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
이미지업로드 graphql
안녕하세요! 이미지 업로드부분 강의 듣고있는데class 폴더에서 진행하고있고 진행하는 서버에는 파일업로드 mutation이 없어요포폴 서버에는 있는데 강의는 그냥 눈으로 보기만하고 포폴만들때 실습을 해야되는건가요?검색기능 강의도 마찬가지인것 같아요,,, 그뒤 강의는 아직 안들어서 모르겠어요,,,const UPLOAD_FILE = gql` mutation uploadFile($file: Upload!) { uploadFile(file: $file) { url } } `; 이부분입니다,,,ㅠ