묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨한 번에 끝내는 자바스크립트: 바닐라 자바스크립트로 SPA 개발까지
template 질문 있습니다.
template = [] template = ""문자열로 초기화 안하고 배열로 초기화 하는 이유가 뭔가요?
-
미해결간단하게 만들어 보는 iOS 설정앱
@ViewBuilder 사용 질문입니다
안녕하세요! 다름이 아니라 강의를 보면 @ViewBuilder 어노테이션을 사용하시는데 강사님이 쓰신 블로그인지는 모르겠지만https://dev200ok.blogspot.com/2022/05/swiftui.html(블로그 주인 이름이 강사님과 동일)위 링크에 따르면SwiftUI에서 UI를 그리다 보면, 뷰를 따로 떼어내서 작업을 해야하는 경우들이 발생@ViewBuilder 어노테이션을 붙여 뷰를 만들어 주는 메소드를 만들어 줄 수 있습니다. 뷰를 코드와 분리하기 때문에 코드의 가독성을 높여주며 다른 뷰를 독립적으로 보기 좋음@ViewBuilder를 붙여서 만든다면 암시적으로 해당 뷰 안에서만들어 사용하겠다는 뜻위와 같은 이유로 @ViewBuilder를 사용한다고 되어 있습니다 근데 제 코드를 보시면import SwiftUI struct ContentView: View { @State private var airplaneMode: Bool = false func Profile() -> some View{ NavigationLink{ Text("프로필 화면") } label: { HStack{ Image(systemName: "person.fill") .resizable() .aspectRatio(contentMode: .fit) .frame(width: 40, height: 40) .padding(.all, 10) .background(.green) .clipShape(Circle()) VStack(alignment: .leading, spacing: 3){ Text("홍길동") .font(.system(size: 24)) .fontWeight(.regular) Text("Apple ID, iCloud, 미디어 및 구입") .font(.system(size: 14)) } .padding(.leading, 6) } .padding(.vertical, 10) } } func ImageDesign(sysName: String, imgColor: Color) -> some View{ Image(systemName: sysName) .resizable() .aspectRatio(contentMode: .fit) .frame(width: 20, height: 20) .padding(.all, 4) .background(imgColor) .foregroundColor(.white) .cornerRadius(6) } func ListMenuLetter(sysName: String, NaviLinkText: String, imgColor: Color) -> some View{ HStack{ NavigationLink{ switch NaviLinkText{ case "WI-FI": Text("WI-FI 화면") case "Bluetooth": Text("Bluetooth 화면") default: EmptyView() // 빈 뷰를 반환 } } label: { switch NaviLinkText{ case "WI-FI": ImageDesign(sysName: sysName, imgColor: imgColor) HStack{ Text("WI-FI") Spacer() Text("IPTIME") .foregroundColor(.gray) } case "Bluetooth": ImageDesign(sysName: sysName, imgColor: imgColor) HStack{ Text("Bluetooth") Spacer() Text("켬") .foregroundColor(.gray) } default: EmptyView() // 빈 뷰를 반환 } } } } func ListMenu(sysName: String, NaviLinkText: String, imgColor: Color) -> some View{ HStack{ ImageDesign(sysName: sysName, imgColor: imgColor) if NaviLinkText != "에어플레인 모드"{ NavigationLink(NaviLinkText){ // 여기에 지금 label이 따로 지정되어 있지 않은데 이럴 경우 괄호 안에 있는 NaviLinkText가 label 역할을 함 switch NaviLinkText{ case "셀룰러": Text("셀룰러 화면") case "개인용 핫스팟": Text("개인용 핫스팟 화면") case "스크린 타임": Text("스크린 타임 화면") case "일반": Text("일반 화면") case "손쉬운 사용": Text("손쉬운 사용 화면") case "개인 정보 보호": Text("개인 정보 보호 화면") case "암호": Text("암호 화면") default: EmptyView() // 빈 뷰를 반환 } } } else{ Toggle("에어플레인 모드", isOn: $airplaneMode) } } } var body: some View { NavigationView { List{ Section{ Profile() } Section{ ListMenu(sysName: "airplane", NaviLinkText: "에어플레인 모드", imgColor: .orange) ListMenuLetter(sysName: "wifi", NaviLinkText: "WI-FI", imgColor: .blue) ListMenuLetter(sysName: "b.circle", NaviLinkText: "Bluetooth", imgColor: .blue) ListMenu(sysName: "antenna.radiowaves.left.and.right", NaviLinkText: "셀룰러", imgColor: .green) ListMenu(sysName: "personalhotspot", NaviLinkText: "개인용 핫스팟", imgColor: .green) } Section{ ListMenu(sysName: "hourglass", NaviLinkText: "스크린 타임", imgColor: .blue) } Section{ ListMenu(sysName: "gear", NaviLinkText: "일반", imgColor: .gray) ListMenu(sysName: "person.crop.circle", NaviLinkText: "손쉬운 사용", imgColor: .blue) ListMenu(sysName: "hand.raised.fill", NaviLinkText: "개인 정보 보호", imgColor: .blue) } Section{ ListMenu(sysName: "key.fill", NaviLinkText: "암호", imgColor: .gray) } } .navigationTitle(Text("설정")) // 타이틀 위치 코드가 맨 위가 아닌데 정상 동작하는 이유는 무엇인가 } } } struct ContentView_Previews: PreviewProvider { static var previews: some View { ContentView() } }Profile 함수나 ImageDesign 등 뷰를 함수로 따로 빼서 독립적인 코드를 구성했는데 @ViewBuilder를 사용하지 않고도 아무런 문제가 없이 정상적으로 동작합니다. 사용하지 않아도 문제가 없는데 강의에서 @ViewBulider를 사용하시는 이유가 궁금합니다 답변 주시면 감사하겠습니다!
-
해결됨Kevin의 알기 쉬운 Spring Reactive Web Applications: Reactor 1부
Backpressure Drop 전략에서 다시 버퍼가 채워지는 시점에 대한 질문입니다.
안녕하세요 강사님. 오늘 Backpressure Example 코드 강의 수강 후 Backpressure Drop 전략에 대해 궁금했던 부분은 다른 분의 질문을 통해서 해결을 할 수 있었습니다.(질문 글 Link) 해당 글에서 강사님의 답변을 보면Drop 전략의 경우, 버퍼 안의 데이터가 Subscriber에게 한개 전달되면, 버퍼 공간이 한개 비니까 한개의 데이터가 채워지는것이 아니라 전체 버퍼 중에 70-80 퍼센트 정도(정확한 비율은 나중에 확인 후 말씀드릴게요)가 한번에 비워진다고 보시면 될것 같습니다.즉, 데이터 한개가 버퍼에서 비워지는 것이 아니라 버퍼가 가득찬 상태에서 Downstream이 데이터를 처리할 수 있는 상태가 될 때까지 Upstream에서 emit된 데이터는 Drop이 된다고 생각하시면 될것 같습니다.이런 부분이 있는데 혹시 어떤 파일의 어떤 메서드를 보면 해당 내용을 알 수 있을까요 ? ※제가 혼자서 디버그를 통해서 찾아보려고 했는데 잘 찾아지지가 않아서 여쭤봅니다. 😢
-
해결됨김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성
main 스레드와 생성한 스레드 관계에 대해 질문 있습니다.
자바 실행 시 main 스레드가 생성되고 실행이 되다가 중간에 아래와 같이 스레드를 하나 생성한다고 하겠습니다.MyRunnable runnable = new MyRunnable(); Thread thread = new Thread(runnable); thread.start();이럴 경우 생성한 스레드가 종료 상태가 될때 까지 main 스레드가 기다리는지 아니면 main 스레드는 생성한 스레드의 상태와 아무 관련없이 종료 상태가 되는지 궁금합니다.
-
미해결[하루 10분|C++] 누구나 쉽게 배우는 C++ 프로그래밍 입문
#include <iostream> 중복
그 전 강의에서 헤더파일을 중복으로 불러오면 에러가 난다고 배웠습니다.하지만 이번 강의대로 분할 컴파일 하게 되면 헤더파일 stock.h와 main 함수에서 <iostream>을 두 번 포함하게 되는데 <iostream>은 사용자가 만든 헤더파일이 아니라서 중복으로 include해도 상관이 없는 것일까요?
-
미해결[리뉴얼] 타입스크립트 올인원 : Part1. 기본 문법편
enum이 javascript로 트랜스파일링될때 사라진다하셨는데요
"enum, keyof, typeof" 강의 2분 20초경 enum이 javascript로 transpiling될 때 사라진다하셨는데요.이렇게 된다면 enum 사용한 코드들은 런타임에서 모두 에러가 발생해야하는것 아닌가요?enum의 경우 자바스크립트 코드로 transpiling 될 때 객체로 변환되는게 아닌가해서 질문드립니다.
-
해결됨파이썬 알고리즘 트레이딩 파트1: 알고리즘 트레이딩을 위한 파이썬 데이터 분석
PairsTrading_EDA 실습 과정중 오류가 발생합니다.
실습중에 오류가 발생하여 질문드립니다.아래 이미지 캡쳐하였습니다.
-
미해결실무에 바로 적용하는 프런트엔드 테스트 - 1부. 테스트 기초: 단위・통합 테스트
ProductFilter test 어떤 방식이 더 선호되는 방식일까요?
it('최소 가격 또는 최대 가격을 수정하면 setMinPrice과 setMaxPrice 액션이 호출된다.', async () => { const { user } = await render(<ProductFilter />); const minPriceInput = screen.getByPlaceholderText('최소 금액'); const maxPriceInput = screen.getByPlaceholderText('최대 금액'); await user.type(minPriceInput, '10'); await user.type(maxPriceInput, '10000'); expect(setMinPriceFn).toHaveBeenCalledWith('10'); expect(setMaxPriceFn).toHaveBeenCalledWith('10000'); }); 전 이런식으로 작성했습니다.단위 테스트에서 알려주신 AAA패턴을 해당 통합테스트에서도 적용하면 깔끔할 것 같아서 이렇게 작성했어요.어차피 검증할건 setMaxPriceFn & setMinPriceFn이 호출됐는지 여부라 최소금액 및 최대금액 인풋을 연속적으로 조작하게 했습니다.혹시 이렇게 하면 문제가 있는지 궁금합니다
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
포인터의 개념과 활용
15:25 예시 세번째 질문입니다.문자열의 길이 계산에서length는 0으로 선언되었는데str[length]는 위에있는 Hello, World! 문자의 길이에 맞춰서 length 값을 1씩 증가하되 시작점이 0이라는 걸까요?널값을 어떻게 만난다는건지 잘 이해가 안가서요. 문자열 길이계산부분만 다시 설명 부탁드립니다.
-
해결됨[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
Sending 'onAnimatedValueUpdate with no listeners registered. 오류
안녕하세요 강사님아래 같이 오류가 발생하는데 해결방법이 있을까요..?감사합니다
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
에러 처리 방법
9강에서는 대체로 console.error(err); next(err);이런 식으로 에러를 처리했고 10강에서는 res.json으로 에러 코드, 메세지를 반환하고 있는데 이 둘의 차이가 뭔가요?에러 처리 미들웨어를 사용할 때와 json을 반환할 때를 어떻게 정할 수 있는지(?) 기준이 궁금합니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
배열과 문자열
10:11초 정도질문입니다.[]대괄호안에 숫자가 들어가면, 문자배열의 공간수로 이해하였는데, 공란은 무슨의미인가요?공란이있거나 숫자가 았거나 똑같이 풀이가되어 헷갈립니다.그리고 %s 변수는 널값 ‘\0’ 이 나올때까지 문자 배열대로 쭉 출력하여야 하는데, 이게 항상 생략되는건가요? 생략되는 경우가 따로있나요?
-
미해결버그헌팅과 시나리오 모의해킹 전문가 되기
실습 환경에 대하여
안녕하세요 강사님 제가 맥북이라 utm으로 윈도우를 사용하고 vmware로 칼리를 사용할려고하는데 이렇게 세팅해도 괜찮을까요 ?
-
미해결선형대수학개론
Row Reduction and Echelon Form에서 Echelon form의 1번조건에 대한 질문입니다.
강의에서 제시해주신 2번 예시에서 조건이 1. All nonzero rows are above "any" rows of all zeros라고했는데, 여기 조건에서 "any"이기 때문에 모든 nonzero row가 존재할 경우 zero row가 있으면 그때 nonzero row아래에 있어야한다는 걸 말씀하신거지요? 만약에 all zero row가 없다면 2번예시처럼 all zero row가 없어도 Echelon form을 만족한다고 이해하면 될까요?감사합니다.
-
해결됨대용량 채팅 TPS 처리를 위한 웹소켓 통신 만들며 학습하기
데이터 불러오기
만약에, 채팅방에서 나눈 메시지들을 DB에 저장하고 불러온다고 하면, chan에 밀어 넣어야 하나요?
-
해결됨대용량 채팅 TPS 처리를 위한 웹소켓 통신 만들며 학습하기
panic 사용
Go의 document를 살펴보면, Don't Panic 을 언급하는데, Panic - Recovery 를 사용하는 규칙이나 Best Practice가 있을까요?
-
해결됨대용량 채팅 TPS 처리를 위한 웹소켓 통신 만들며 학습하기
defer 사용
defer의 사용이 자원 반환(Resource Return)의 목적으로 사용되는데, 혹시 defer 가 이뤄질 때, 현재까지 이뤄진 채팅 메시지를 저장하는 DB insert를 넣는 것은 bad practice일까요? go 명령어가 멀티 스레드를 사용할 수 있게 도와주는 키워드인데, 채팅 기능이 확장되어서 (e.g., 카카오톡) 이미지, 동영상, 이모티콘 같은 텍스트 데이터(Text Data)가 아닌 것들을 채팅서비스에서 주고받게 된다면...?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3주차 #1 완전탐색과 백트래킹
첫번째 문제는 아래와 같고 return go(idx + 1, sum + v[idx]) + go(idx + 1, sum)두번째 문제는 아래와 같이 병렬로 실행하는데go(idx + 1, sum + v[idx]) go(idx + 1, sum)어떨 때는 더하고 어떨때는 각각 실행하는데 이유를 모르겠어요. 첫번째는 경우의 수를 구하고 두번째는 최대값을 구해서 그런건지.. 근데 이해가 잘 안갑니다.
-
미해결배달앱 클론코딩 [with React Native]
foreground 상태일 떄 push alert notification 질문
안녕하세요, 강의를 듣다 궁금한 점이 생겨 질문드립니다. foreground 상태 인 경우에도 Push Alert가 위에서 발생하는 앱들이 있는데 이 같은 경우는 따로, 해당 데이터가 왔을 떄 뭔가 Alert창이나, 위에서 아래로 알림창 같은게 내려오는 컴포넌트같은 것을 따로 구현하여 보여주는 것인가요??Toast와 같은 컴포넌트를 만들어서 보여주는 것인지, React-native-push-notification에서 따로 할 수 있는 방법이 있는지 궁금합니다!그리고 Channel 같은 경우는 프론트에서 먼저 구성한 후, 백엔드와 맞추어야 하는건지 궁금합니다!!!
-
해결됨[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
환경 설정 및 프로젝트 생성에서 오류가 납니다.
구글링해서 찾은 방법과 GPT에서 찾은 방법으로는 해결이 안되고 있어요.brew update를 해도 안되고 watchman으로 하는 해결방법도 안됩니다. Gpt는 파일이 많아서 제한 수를 늘리는 해결방안을 주는데 그것도 안되고 있습니다!어떻게 해야할까요? 참고로 처음에 강사님이 말씀하신 버전대로 깔아서 셋팅했을 때 저 오류가 계속 떠서이번에는 다 최신 버전으로 바꿔서 해보았는데도 똑같은 오류가 발생합니다.