묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨비전공자도 이해할 수 있는 AWS 입문/실전
서버 인프라 관련 질문 (1)
안녕하세요!항상 좋은 강의 잘 듣고 있습니다! 서버 인프라를 어떻게 설계해야할 지 판단이 잘 안서서 이렇게 질문드립니다.제가 개념이 미숙하다보니 제 생각에 대한 설명이 뭔가 중구난방할 수 있다는 점 양해부탁드립니다. 일단 첫번째로 생각하고 있는건 ELB, Nginx에 대한 고민입니다. 내용이 길어서 질문은 나눠서 올리려고 합니다.제 머릿 속에 있는 걸 그냥 그대로 끄집어낼게요. ELB로 EC2에 직접 접근 (Client -> ELB -> Spring Boot) ELB를 80/443 으로 열고, http에 대한 타겟그룹을 8080로 설정한 후 EC2 쪽 인바운드는 8080만 열어야 하는가?ELB는 WAS가 아니라서 Nginx처럼 리액트 빌드 결과물 (정적파일)을 서빙 못하지 않을까?그럼 S3 파트에서 배웠던 내용대로 S3 + Cloud Front 방식으로 리액트 결과물 내보내야 할까?https 설정은 Nginx 대비 이게 더 편한거같음 Nginx만 사용 (Client -> WAS (Nginx) -> Spring Boot & React)ELB 대비 https 인증이 경험 상 상당히 까다로웠음 (자동 인증사 만료 처리도 해야하고...)EC2 안에서 React까지 처리하기 좋았음이 경우는 인바운드를 80/443 열고 nginx 에서 reverse proxy ELB + Nginx 사용 (Client -> ELB -> Nginx -> Spring Boot & React)ELB는 로드밸런서 역할과 https 인증 담당용 (로드밸런싱은 추후 확장가능성 염두, https 인증은 elb가 더 쉬우니까)Nginx는 내부에서 리버스 프록시 적용https 처리는 elb가 쉬우니까 이거 쓰고, 리버스프록시와 정적 파일 서빙은 nginx에게 위임하겠다는 취지만약 이럴 경우, ELB는 80/443 열고 EC2는 80만 허용하면 되는건가? 그러면 80->443 리다이렉션하고 443은 타겟그룹 80을 향해 들어가면, EC2에서 80으로 들어온 요청을 nginx가 리버스 프록시어떤게 적절한 선택일지 고민중입니다.서버 인프라를 구성하기 위해 참조할 만한 자료로 깃헙을 찾아보니, 다른 프로젝트 아키텍처 보면 다 2번처럼 하는 것 같았습니다. 근데 실습을 했을 때 ELB가 https 인증이 너무 쉽게 되었던게 매력적이었어서 차마 2번 방식에는 손이 잘 안갑니다. 근데 1번만 하자니, 과연 1번만으로 충분할까? 라는 의문이 들었습니다. 그래서 ELB랑 Nginx를 혼합해서 쓸까라는 생각까지 이어진건데요. 3번은 저 생각대로면 각자의 편의를 챙겨가기는 하지만 좀 더 복잡한 아키텍처같은 생각도 들어요. 우선 각각의 생각에 오류가 있는지, 그리고 전문가의 식견으로 봤을 때 어떤게 더 나은 접근인지 여쭤보고싶습니다. 어려운게 있으면 항상 박재성님 강의부터 찾습니다. 늘 도움받아갑니다. 감사합니다.
-
해결됨비전공자도 이해할 수 있는 AWS 입문/실전
서버 인프라 관련 질문 (2)
안녕하세요!항상 좋은 강의 잘 듣고 있습니다! 서버 인프라를 어떻게 설계해야할 지 판단이 잘 안서서 이렇게 질문드립니다.제가 개념이 미숙하다보니 제 생각에 대한 설명이 뭔가 중구난방할 수 있다는 점 양해부탁드립니다. 고민하고 있는건 EC2 등 모델 선정입니다. 그리고 RDS, ElastiCache 도입여부 또한 고민중입니다.제 프로젝트는 거의 싸이월드 같은 사이트를 만들어야 하는 상황입니다.알림, 조회수, 좋아요 기능, 파일 업로드, 스트리밍, 게시판, 댓글 등이 주된 기능입니다.(이때 파일 업로드는 multipart/form-data 업로드와, 동영상과 같은 대용량 파일 처리를 위한 AWS Multipart Upload 방식으로 나뉩니다.) 한번 AWS 강의에서 배운걸 다 써먹어보고 싶어서 EC2, RDS, S3, ElastiCache 도입을 상정해봤습니다. 초기 단계 모델을 먼저 결정한 후 K6 등으로 동시접속자 수 100명 200명 300명 순으로 테스트를 진행해서 스케일업을 고려중입니다. (데모 시연도 하고, 실제로 한달 간 출시도 해봐야해서요)구상중인건 다음과 같습니다. 1단계 (개발 중) ::CI/CD용 : t4g.small (EBS 있으니까 여기 안에서 Redis랑 DB, 서버 다 돌림) + S3 2단계 (개발 완료 후 배포) ::실제 운영 테스트용 :Case 1. t4g.small + S3 (CI/CD용 그대로)Case 2. t4g.small + RDS + S3 (Redis는 EC2 안) (RDS는 EC2모델과 같은 사양으로)Case 3. t4g.small + RDS + S3 + ElastiCacheCase 4. t4g.medium + RDS + S3 + ElastiCache 근데 Case 3까지만 가도 AWS 계산기 돌려보니 월 10만원이 조금 넘더라구요. RDS에서 프록시나 Insights 설정 빼고 SingleAZ로 변경한게 저 수준이었습니다. 너무 비싸더라구요. Case 4는 한 17만 7천원 나오더라구요... RDS가 많이 비싼 것 같습니다.비용이 비정상적인게 아니라면, 그대로 진행해도 전 좋습니다. 배움에 돈아끼면 안된다고 생각하거든요.근데 그게 오버스펙이나 비정상적인 설계로 비용이 많이 나오는건 별개의 문제잖아요. 그래서 결국 어떻게 서버 인프라를 구축할지에 대한 고민이 많습니다.비용이 제 기준에서는 높지만 남들 기준에선 높은게 아닐 수도 있고, 아니면 정말로 너무 높게 나온걸 수도 있어서 정상적으로 프로젝트에 맞게 아키텍처를 구축한게 맞는지, 잘못되었다면 어떻게 조정해야할지에 대한 판단이 어렵습니다. 실례가 안된다면, 지금 제가 어떤 문제가 있는지, 제 상황에선 어떤 아키텍처가 적절한지 설명부탁드려도 될까요? 이건 저 생각이 들기까지의 내용들을 정리한 노션 페이지입니다.https://hooby.notion.site/Server-Infra-Setup-28af6c063f3e80b7a8c3d653add0c068
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
원하는 값이 없을 때
안녕하세요 강의 잘 수강하고 있습니다.현재 subject, link, content, press, date를 추출하는데 만약 해당 값들 중 하나가 없다면 검증은 어떤 식으로 하시나요??제가 생각한 방법은 pydantic으로 검증하여 해결할 수 있지 않을까 생각하는데 너무 오버엔지니어링인지 강사님은 어떻게 유연하게 처리하는지 궁금합니다. 예시를 들기 위해 pydantic으로 한 코드 첨부합니다. from typing import Annotated import requests from bs4 import BeautifulSoup from urllib.parse import urljoin, urlencode from datetime import datetime from pydantic import AfterValidator, BaseModel, HttpUrl, field_validator def non_empty_str(v: str) -> str: s = (v or "").strip() if not s: raise ValueError("빈 문자열입니다.") return s def valid_url(url: str) -> str: try: response = requests.get(url) # throw error if status 4xx, 5xx response.raise_for_status() return url except Exception as _: raise ValueError("유효하지 않은 URL입니다.") def valid_date(date: str) -> str: v = (date or "").strip() if not v: raise ValueError("빈 문자열입니다.") try: datetime.strptime(v, "%Y-%m-%d %H:%M:%S") return date except ValueError: raise ValueError("유효하지 않은 날짜 형식입니다.") class NewsItem(BaseModel): subject: Annotated[str, AfterValidator(non_empty_str)] detail_article_url: Annotated[str, AfterValidator(valid_url)] content: Annotated[str, AfterValidator(non_empty_str)] press: Annotated[str, AfterValidator(non_empty_str)] article_date: Annotated[str, AfterValidator(valid_date)] ROOT = "https://finance.naver.com/" PATH = "news/mainnews.naver" def get_news_page_url(page: int, date: str): base_url = urljoin(ROOT, PATH) query_string = urlencode({"date": date, "page": page}) return f"{base_url}?{query_string}" def get_detail_news_url(path): return urljoin(ROOT, path) def get_current_date(format: str ="%Y-%m-%d") -> str: now = datetime.now() return now.strftime(format) def crawl_news_per_page(soup: BeautifulSoup): result = [] news_per_page = soup.select(".block1") for article_card in news_per_page: # subject subject = article_card.select_one(".articleSubject > a").text # detail article link detail_article_url = get_detail_news_url(article_card.select_one(".articleSubject > a").get("href")) # content content_tag = article_card.select_one(".articleSummary") content = content_tag.contents[0].strip() press = content_tag.select_one(".press").text.strip() article_date = content_tag.select_one(".wdate").text.strip() new_item = NewsItem(subject=subject, detail_article_url=detail_article_url, content=content, press=press, article_date=article_date) result.append( new_item.model_dump() ) return result def crawl_all_news(page_total_count: int, date: str): result = [] for page in range(1, page_total_count + 1): request_url = get_news_page_url(page, date) response = requests.get(request_url) soup = BeautifulSoup(response.text, "html.parser") result.extend(crawl_news_per_page(soup)) # 마지막 페이지 검증 if (not soup.select_one(".pgRR")): break return result all_news = crawl_all_news(20, get_current_date()) print(all_news)
-
미해결자격취득과 실무! 한 방에 경영정보시각화(실기) 태블로
A형 1차시 작업준비 2번문제는 왜 건너뛰시나요?
난이도가 쉬워서 다루지 않아도 된다고 생각하셔서 강의에서 다루지 않는건지, 무슨 이유인지는 모르지만 시험 문제로 다루고 있는 부분을 왜 건너뛰시는지 이해가 안가네요? 다른 차시도 그렇고 편집에 문제가 있는 강의네요. 수정을 하든 왜 건너뛰셨는지 설명 부탁드립니다.
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 데이터 코랩에서 불러오기
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요 캐글에 있는 문제들 코랩에서 풀어보려고하는데 데이터를 어떻게 불러와야하는지 모르겠어요ㅜ깃허브 URL이나 이런건 없나요? import pandas as pd import numpy as np df = pd.read_csv('../input/titanic/train.csv')
-
미해결[AI 리터러시 저자직강] 모든 직장인이 활용할 수 있는 올인원 AI 활용법
강의 업로드 완료 시기 문의드립니다.
강의 이수증이 필요한데요..ㅠㅠ강의 업로드 완료 시기가 언제쯤일까요?
-
미해결구현하며 배우는 Transformer
Q, K, V 초기 임베딩
안녕하십니까, 강사님.트랜스포머에 대한 세심하고 깊이 있는 강의를 준비해주셔서 감사합니다. 강의 정말 유익하게 잘 듣고 있습니다. Self-Attention의 learnable parameter 단계로 넘어가면서 몇 가지 궁금한 점이 생겨 질문드립니다.초기 token embedding은 어떤 방식으로 설정되는 것인가요?Query, Key, Value를 구하기 위해 초기 token embedding에 (3, 3) 형태의 nn.Linear를 곱하여 각각 (6, 3)으로 변환하는 과정의 의미가 궁금합니다.기존 token embedding을 그대로 사용하지 않고 이렇게 변환하는 이유가 무엇인지 알고 싶습니다.조금 더 구체적으로는, 이렇게 선형 변환을 적용하면 기존 임베딩의 의미가 무시되거나 손실되는 것은 아닌지 의문이 있습니다.
-
해결됨eks를 활용한 spring 운영서버 배포(feat. devops의 모든것)
S3 업로드 역할 부여 질문 드려요
안녕하세요, 강의 잘 듣고 있습니다.강의를 듣는 중 궁금한 점이 있어 문의드립니다. 현재까지는 EC2에 Spring Boot를 배포하고, EC2 인스턴스에 S3 접근 권한을 가진 IAM 역할을 부여해 S3 업로드 기능을 구현해 왔습니다.이번에 처음으로 EKS를 사용해보려고 하는데요,EKS에서도 EC2 워커 노드에 IAM 역할을 부여해 S3 접근 권한을 줄 수 있는지 궁금합니다.또는 일반적으로는 어떤 방식으로 S3 접근 권한을 설정하는지 알고 싶습니다.
-
미해결구글 애널리틱스 GA4 완전 정복 실무 마스터 클래스
세션소스에서 4번째에 (not set)이라고 되어있는데 왜 그렇게 나오는지, not set은 어떤 것을 의미하는지 궁금합니다
세션소스에서 4번째에 (not set)이라고 되어있는데 왜 그렇게 나오는지, not set은 어떤 것을 의미하는지 궁금합니다
-
미해결Verilog ZYNQ Program 1 (Zynq mini 7020)
8-interrupt 질문
궁금한게 있습니다.교안에서 axi_gpio0를 all Input으로 설정하고 GPIO Width를 1로 설정했습니다.그리고 .xdc 역시 스위치 M20, 하나만 지정해서 입력을 넣구요. 그러면 6-4예제와 같이 k2버튼을 눌러서 로직이겠죠. 그런데 교안 156P를 보면 "K 1 버튼을 누르면 D0 가 Toggling 되고 K 2 버튼을 누르면 D1~D4 On, 떼면 O ff 됩니다 또한 터미널 창에 메시지가 나타납니다" 라고 되어있습니다. 어떻게 xdc와 system에서 입력 하나만을 설정했는데 K1버튼이 동작 로직에 추가되는거죠? vitis 소스코드 상에서는 IntGpioFlag가 k1버튼에 해당하는 로직 변수인거 같은데 이해가 안가서 질문드립니다.
-
미해결향로와 함께하는 '향로윈' 완강 챌린지
라이브 미참여 시 녹화 대체 가능 여부
안녕하세요?개인 사정으로 오전 라이브에 참여하지 못해 녹화된 강의를 수강하였습니다. 녹화 강의 수강으로 라이브 시청을 대체할 수 있는지 궁금합니다.
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
API 관련 이슈
코드팩토리 디스코드에 질문하면 더욱 빠르게 질문을 받아 볼 수 있습니다![코드팩토리 디스코드]https://bit.ly/3HzRzUM 안녕하세요. 미세먼지 강의 듣는 중인데 9월에 발생한 대전 국정자원 관리원 화재의 여파로 10월 22일부터 공공데이터 포털 내에 일부 api 기능이 정상적으로 동작하지 않는 상태이며, 언제 해결될지 알 수 없는 상태라고 합니다. api 호출 없이 강의를 진행해도 될지 문의 드립니다.
-
미해결프로그래밍 시작하기 : 도전! 45가지 파이썬 기초 문법 실습 (Inflearn Original)
기초적인 질문입니다.
x = ["grapes", "mango", "orange", "peach", "apple", "lime", "banana", "cherry", "tomato", "kiwi", "blueberry", "watermelon"] 라고 되어 있을때, for문과 if 문을 사용하여 apple, kiwi를 찾고 대문자로 변경하는 수업을 듣다가 궁금한 점이 생겨 질문을 드립니다.컴퓨터에서 위와 같이 리스트된 x가 있을때, for문과 if 문을 통해 특정 단어 (apple, kiwi)를 찾게 명령하면, 컴퓨터는 apple, kiwi 라는 단어의 스펠링 모양이 일치하는지 아닌지를 가지고 찾는건가요? 아니면 x 내부에 각 각의 요소들에 고유한 값을 부여하여, 일치하는 값을 찾는 건가요?즉, x 안에 apple = 10322, kiwi = 10323으로 값이 이미 부여되어 있고, 사용자가 apple 이라는 단어를 찾는 명령어를 코딩하는 경우 컴퓨터가 알아서 사용자가 입력한 apple을 10322로 변환후 x 내부에서 찾는지 궁금합니다.그리고 만약 그렇다면, 이미 입력된 apple과 사용자가 새롭게 입력한 apple 사이의 고유값이 왜 같아지는지 이유도 궁금합니다. 즉, 누군가 apple을 입력해 놨을 때 10322로 지정되지만 새로운 사용자가 apple을 입력했을땐 10932로 될 수 있지 않을까 해서입니다. 누군가 apple 이라는 단어의 고유값을 지정했으면 컴퓨터가 눈이 달린것도 아닌데 무엇을 보고 apple의 고유값을 찾아내는지 궁금하네요. 기초과학 실험하는 연구자 이다보니 컴퓨터의 작동 원리가 이해가 안돼서 질문을 드립니다.
-
해결됨유니티 시스템 프로그래밍 Pt.2 - 상용 게임 구현을 위한 핵심 시스템 올인원 패키지
구글 플레이 콘솔 사전 예약 등록에 대해.
안녕하세요. 강의 잘 듣고 있습니다. 🙂 일부 특정 국가에 먼저 서비스를 진행중인 상태(프로덕션)이고요 그외 서비스하지 않은 나머지 국가에는 사전등록을 진행해볼려고 합니다. 구글 플레이 콘솔이 업데이트 되어서 그런지 모르겠지만 사전 등록 트랙을 활성화 시키는 방법을 모르겠습니다. 위 스크린샷에서 사전 등록 트랙을 활성화 시켜볼려고 빌드 파일도 올려보고 나라도 선택하고 다른것들도 해 보았으나 트랙 요약이 계속 비활성화 된 상태입니다. 혹시 사전 등록을 어떤 순서로 진행하는건지 알려주시면 감사하겠습니다~!!
-
미해결프론트엔드 개발환경의 이해와 실습 (webpack, babel, eslint..)
지금 시점에서 해당 강의를 듣는 것에 대하여
다른 QnA 글들이나 정한님 답변 글도 다 읽어봤습니다.현재 강의를 들을때에 개발 환경을 구축하는 것에 대해서 어려움을 많이 토로하는것 같은데요그래서 해당 강의를 강의만 들으면서 현재 시점의 빌드 도구(ex vite, rollup.js , parcel, etc...)들과 달라진 점이 무엇인지 AI와 학습하는 정도로만 한다면 배움을 적게 가져갈까요 ? 추후에 해당 강의 업데이트라던지 혹은 다른 강의를 올리실 예정이 있는지도 궁금합니다. 감사합니다 정한님
-
해결됨비개발자 4주만에 수익화 서비스 만들기: AI 바이브코딩 웹 + 앱 ALL IN ONE
Lovabe - supabese 연동이 노베이스 비개발자에겐 너무 어렵습니다.
💬 좋은 질문 예시[진도] 1주차 5강 웹사이트 만들기[질문] Lovable 에 자체 클라우드가 생기면서 supabase를 연동하기 힘들어 졌습니다.Lovable유료결제 까지 하면서 원인을 찾아보려고 했는데 일주일 동안 찾지 못 했습니다.전에 같은 질문을 하신분의 답변에 다른 분의 영상을 봤는데도, 그것으로는 해결이 되지 않는 상황입니다.아예 베이스가 없기 때문에 supabase가 뭔지도 모르는 상황이고 이 둘을 어떻게 연결해야 할지도 모르는 상황입니다. 현재 바뀐 상황을 들여다 본 후 답변 주셨으면 좋겠습니다.혹은, supabase 연동 없이 Lovable 자체 클라우드를 활용해서 강의를 진행해도 괜찮을지 알려주시면 supabese 없이 Lovable 클라우드로 진행해 보겠습니다.제가 변화에 대처하질 못하는 상황이지만, 항상 질 높은 강의 감사드립니다.
-
미해결Verilog ZYNQ Program 1 (Zynq mini 7020)
P127~129 교안내용
6-4내용 교안에서함수 IntcInitFunction, InterruptSystemSetup에 대해서 정의를 안해줘서 코드가 안돌아갑니다.그리고 KeyIntrHandler 함수에서 if (keyVal == 0)으로 주면 버튼을 눌러야 off처리 되고 때면 on처리가 됩니다. 제 생각에는 if (keyVal)로 해야 교안 방향처럼 버튼을 누르면 on이 되고 떼면 off가 되는 로직이 되는거 같습니다. 맞나요?총 코드는 아래와 같이 작성했습니다. 그러니까 잘 동작하네요:) #include <stdio.h> #include "platform.h" #include "xparameters.h" #include "xscugic.h" #include "xil_exception.h" #include "xgpio.h" #include <unistd.h> #define INTC_DEVICE_ID XPAR_PS7_SCUGIC_0_DEVICE_ID #define KEY_DEVICE_ID XPAR_AXI_GPIO_0_DEVICE_ID #define LED_DEVICE_ID XPAR_AXI_GPIO_1_DEVICE_ID #define INTC_GPIO_INTERRUPT_ID XPAR_FABRIC_AXI_GPIO_0_IP2INTC_IRPT_INTR #define KEY_INT_MASK XGPIO_IR_CH1_MASK XGpio LEDInst; XGpio KEYInst; XScuGic INTCInst; u32 KeyIntRisingFlag = 0; u32 KeyIntFallingFlag = 0; static void KeyIntrHandler(void * InstancePtr); static int IntcInitFunction(u16 DeviceId, XGpio * GpioInstancePtr); static int InterruptSystemSetup(XScuGic * XScuGicInstancePtr); int main() { init_platform(); int status; status = XGpio_Initialize(&KEYInst, KEY_DEVICE_ID); // initial KEY if(status != XST_SUCCESS) return XST_FAILURE; status = XGpio_Initialize(&LEDInst, LED_DEVICE_ID); // initial LED if(status != XST_SUCCESS)return XST_FAILURE; XGpio_SetDataDirection(&KEYInst, 1, 0xFF); XGpio_SetDataDirection(&LEDInst, 1, 0); // set LED IO direction as out XGpio_DiscreteWrite(&LEDInst, 1, 0x00);// at initial, all LED turn off printf(">>Press PL KEY1, and check the PL LED1 \n"); status = IntcInitFunction(INTC_DEVICE_ID, &KEYInst); if(status != XST_SUCCESS)return XST_FAILURE; while (1) { if (KeyIntFallingFlag == 1) { KeyIntFallingFlag = 0; printf(" - interrupt falling occur, led on \r\n"); XGpio_DiscreteWrite(&LEDInst, 1, 0xFF); } if (KeyIntRisingFlag == 1) { KeyIntRisingFlag = 0; printf(" - interrupt rising occur, led off \r\n"); XGpio_DiscreteWrite(&LEDInst, 1, 0); } } cleanup_platform(); return 0; } static void KeyIntrHandler(void * InstancePtr) { u8 keyVal; usleep(10000); // 0.1s sleep, to debounce, in common, the meta-state will sustain no more than 20ms keyVal = XGpio_DiscreteRead(&KEYInst, 1) & 0x0f; if (keyval) KeyIntFallingFlag = 1; else KeyIntRisingFlag = 1; XGpio_InterruptClear(&KEYInst, KEY_INT_MASK); XGpio_InterruptEnable(&KEYInst, KEY_INT_MASK); // Enable GPIO interrupts } static int IntcInitFunction(u16 DeviceId, XGpio * GpioInstancePtr) { XScuGic_Config * IntcConfig; int status; // Interrupt controller initialization IntcConfig = XScuGic_LookupConfig(DeviceId); status = XScuGic_CfgInitialize(&INTCInst, IntcConfig, IntcConfig->CpuBaseAddress); if(status != XST_SUCCESS)return XST_FAILURE; // Call interrupt setup function status = InterruptSystemSetup(&INTCInst); if(status != XST_SUCCESS) return XST_FAILURE; // Register GPIO interrupt handler status = XScuGic_Connect(&INTCInst, INTC_GPIO_INTERRUPT_ID, (Xil_ExceptionHandler)KeyIntrHandler, (void*)GpioInstancePtr); if(status != XST_SUCCESS)return XST_FAILURE; // Enable GPIO interrupts XGpio_InterruptEnable(GpioInstancePtr, 1); XGpio_InterruptGlobalEnable(GpioInstancePtr); // Enable GPIO interrupts in the controller XScuGic_Enable(&INTCInst, INTC_GPIO_INTERRUPT_ID); return XST_SUCCESS; } //---------------------------------------------------------------------------- // Interrupt system setup //---------------------------------------------------------------------------- static int InterruptSystemSetup(XScuGic * XScuGicInstancePtr) { // Register GIC interrupt handler Xil_ExceptionRegisterHandler(XIL_EXCEPTION_ID_INT, (Xil_ExceptionHandler)XScuGic_InterruptHandler, XScuGicInstancePtr); Xil_ExceptionEnable(); return XST_SUCCESS; }
-
해결됨제미니의 개발실무 - 지속 성장 가능한 소프트웨어를 만들어가는 방법
테스트 관련 질문드립니다.
위 구조에서 테스트를 작성 시 의존성을 주입하는 방법에 대해 고민해보았습니다.테스트 코드 작성 시 Data Access Layer의 의존성에 대해서 구현 코드에서 사용하는 의존성을 그대로 사용하는지, 아니면 뒤에 나오는 모듈 개념을 활용하여 테스트 전용 모듈을 사용해서 의존성을 주입하면 괜찮을지 질문드립니다!
-
해결됨제미니의 개발실무 - 지속 성장 가능한 소프트웨어를 만들어가는 방법
"규칙 4. 동일 레이어 간 참조 금지" 관련 질문
제미니 선생님, 안녕하세요. 이해가 잘 되도록 설명해주셔서 감사드립니다.다름이 아니라 비즈니스 레이어에서도 동일 레이어 간 참조 금지 규칙이 적용되는 것으로 보입니다.담당자들이 특정 업무 A, B, C를 진행할 때는 공통적으로 특정 업무 절차 D를 따라야 하는 상황을 생각해보았습니다. 가장 단순하게 구현하면 비즈니스 레이어에 A -> D, B -> D, C -> D의 의 존성이 생길 것 같은데, 이를 어떤 식으로 해결하면 좋을지와 그 이유가 궁금했습니다.감사합니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
독립성검정에서 correction 옵션과 관련하여 문의드립니다.
안녕하세요.제목과 같이 독립성검정의 경우 chi2_contingency 함수를 사용하는데 공부하다 보니 chi2_contingency(table, correction = True) 이렇게 되어있는 글을 보게 되어서 검색하여보니 correction 옵션은 자유도와 관련된 부분이라고 해서 자유도가 1인 경우에는 True이고 , True가 기본값이긴 하지만 1보다 클 경우에는 False를 사용해야 한다고 하는데 예시 문제를 살펴보면 ddof = 1인 경우에만 있었는데 혹시 실기에서도 해당 부분을 고려해야 할까요 ? 감사합니다 :)