일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- javascript #js #math #자바스크립트 #랜덤 #랜덤정수
- QT Event
- 서캠
- yarnpkg
- 서버개발캠프
- 스마일게이트
- NODE_ENV
- opencv #python
- qt signal slot
- quadcore
- stringtoken
- apt-key list
- 몽구스스키마
- mern
- Lambda Architecture
- binary #opencv
- mongoose schema
- mysql grant
- 스마일게이트 서버개발캠프
- 정보처리기사 #정처기 #정처기가답안 #가답안 #2019년2회차 #2회차 #자격증 #기사 #정보처리산업기사 #큐넷
- tweet deck
- dev-ops
- production mode
- serverDevCamp
- 비기능적요구사항 #요구사항 #SRS #소프트웨어공학
- yarnpkg update
- DFD #ERD #usecase #유스케이스 #다이어그램 #UML #모델링 #모델링언어
- QT SIgnal
- devlopment mode
- Signal Slot
- Today
- Total
목록Development (17)
Ziks
Signal ↔ Slot은 객체간의 통신을 위한 기능 QT에서는 이벤트를 처리할 때 관찰자 패턴인 Signal& Slot을 사용한다. 객체를 클릭하거나 잡는 등의 여러가지 이벤트들을 캐치하고 각 이벤트들에 맞는 함수를 실행한다. 기본적으로 QT에서 제공되는 위젯들은 여러가지 Signal이 제공된다. 하나의 Signal은 다수의 Slot과 연결하여 사용할 수 있다. 하나의 Signal에 여러개의 Slot을 등록하여 여러개의 핸들러를 실행할 수 있다. 또한, Signal 과 Slot은 GUI 이벤트 루프와 완전히 독립적으로 수행된다. QT는 타입 안정성을 가지고 있으며 OOP를 사용하는 언어들에서 주로 쓰이는 인터페이스를 사용하면 객체와 객체의 커플링으로 상호 참조 및 강한 커플링이 생기는 것을 방지하기 위..
개발을 완료하고 서비스를 배포하거나 오픈소스로서 깃 허브에 배포되지 말아야하는 정보들이 있습니다. DB의 Password나 외부 API의 Key값, 클라이언트에게 보이지 말아야 할 에러 메시지등 이러한 정보들은 배포시에 함께 배포되면 안되기에 NODE_ENV 환경변수를 설정하고 Development 모드와 Production 모드로 나누고 이를 활용해야 합니다. 1 2 3 4 config/ ├── development.js ├── key.js └── production.js cs 먼저, Project 내에 config폴더를 만들고 다음과 같이 구성해주세요. 모듈명에서 이미 들어나듯 deveopment와 production모드를 나누고 key.js에서 환경을 파악한 후에 맞는 모듈을 찾아 Export 하는..
개발팀 vs 운영팀 (Dev-Ops) 개발의 Dev + 운영의 Ops 개발팀과 운영팀의 서로 추구하는 목표가 다르기에, 개발과 운영의 조화를 위함 개발팀 개발자의 언어, 프레임워크, 신기술들을 적용해보고 싶은 갈구하는 마음 추구! 운영팀 안정적인 Infra 추구! 즉 DevOps는 개발 및 배포환경을 개발팀과 운영팀의 작업을 수월하게 진행할 수 있게 함을 목적으로 함. VMware vs Docker ? VMware HostOS 위로 Hypervisor 기술을 활용하여 가상의 H/W 구현 후 실제 OS (Guest OS)를 쌓아 올려 만든다 H/W 를 구현하고 실제 OS를 올리기에 굉장히 무거움 용량이 크고 무겁다! 이미지를 생성하고 실행하는 기능 존재 하지만, 배포 / 관리 기능이 부족하다. Docker..
여러 오픈소스들을 조합하여 실시간 처리를 할 수 있는 구조 효율적인 방식으로 대량의 데이터를 처리할 수 있는 데이터 처리 기술 폴리글랏 프로세싱이라고도 함 Speed Layer + Batch Layer + Serving Layer의 3계층으로 구성된 실시간 아키텍쳐 장점 지연 시간 감소 높은 처리량, 낮은 대기 시간 (= 실시간) Batch Layer 데이터를 단위(시간, 크기 등) 만큼 잘라 처리한다. immutable data set의 성질을 갖는다. 모든 새로운 Data Stream은 Data Lake 위에서 처리됨 메모리 데이터베이스(ex. Redis)나 NoSQL기반 데이터베이스를 사용하여 Data Lake에 저장하는 경우 MapReduce / Machine Learning 을 사용, 데이터 처..
12345678910import randomclass shortener: token_size = 5 def __init__(self, token_size = None): self.token_size = token_size if token_size is not None else 5 def issue_token(self): letters = string.ascii_letters return ''.join(random.choice(letters) for i in range(self.token_size))cs token_size ⇒ 우리가 사용할 랜덤 스트링 토큰의 사이즈 issue_token(self) string.ascii_letters [A-Z],[a-z] 까지의 String 전체를 끌어오고 '&#..
딥러닝 학습에 필요한 이미지 데이터를 모으기위해 시도했다. BeautifulSoup4와 Selenium으로 시도했지만, 구글은 이미지 검색시에 20개정도를 보여주고 스크롤하여 내려야 새로운 데이터들이 업로드 되었다. 이는 너무 불편했기에 ㅠㅠ.. iCrawl Docs : https://icrawler.readthedocs.io/en/latest/builtin.html#search-engine-crawlers 찾아보니 iCrawler API 를 이용하기로했다. iCrawl API는 사용방법이랄것도 없이 간단하기에 코드를 내가 사용할 목적에 맞게 검색엔진을 import해와 수정하면 끝! 다만, 단순히 단어로 검색되다보니 데이터의 100번째 인덱스까지는 어느정도 맞지만 그 후의 파일을 확인하면 엉망진창 ㅠㅠ ..
Math.abs(x); // x의 절댓값 리턴 console.log(Math.abs(-50)); // 50 console.log(Math.abs(50)); // 50 Math.max(x); // x 내의 최댓값 리턴 console.log(Math.max(3, -5, 4, -100, 99)); // 99 Math.min(x); // x 내의 최솟값 리턴 console.log(Math.min(3, -5, 4, -100, 99)); // -100 Math.pow(x, y); // x**y 리턴 console.log(Math.pow(2,2)); // 4 Math.sqrt(x); // x의 제곱근 리턴 console.log(Math.pow(25)); // 5 Math.round(x.y); // x.y를 반올림하여..
import cv2 src = cv2.imread("Image/zikx.jpg", cv2.IMREAD_COLOR) # read image gray = cv2.cvtColor(src, cv2.COLOR_RGB2GRAY) ret, dst = cv2.threshold(gray, 100, 255, cv2.THRESH_BINARY) #ret = 임계값 #threshold(gray image, 임계값, 최대값, 임계값종류) #임계값 : 이미지의 흑백을 나눌 기준 # ret 100 : 255 #임계값의 종류를 사용하여 이진화 방법 설정함 cv2.imshow("dst", dst) cv2.waitKey(0) cv2.destroyAllWindows() 출처 : https://076923.github.io/posts/Pyt..
import cv2 capture = cv2.VideoCapture(0) # 0번째 카메라에서 프레임을 받아옴 capture.set(cv2.CAP_PROP_FRAME_WIDTH, 640) capture.set(cv2.CAP_PROP_FRAME_HEIGHT, 480) # 640 x 480 while True: # 영상출력반복부 ret, frame = capture.read() # ret = 카메라 상태 정상일경우 True, # frame 현재프레임 저장 cv2.imshow("Video", frame) # imshow("윈도우 창 제목", 이미지) if cv2.waitKey(1) > 0: break #키입력할때까지 반복함 capture.release() # 카메라에서 받아온 메모리 해제 cv2.destroy..
요구 분석 명세서의 정의 요구 분석 과정의 최종 산출물 사용자 - 개발자를 연결시키는 중요한 문서 및 계약서! 설계 및 구현에서 참조할 사항, 전반적으로 알아야 할 사항을 포함하는 문서 이해당사자 관점의 요구 분석 명세서 사용자 입장 사용자와 의사소통하는 도구, 그리고 계약서로 사용 개발이 완료 시 이 문서의 내용이 판단 기준으로 사용 개발된 소프트웨어의 수용 여부를 결정 개발자 입장 요구 분석 명세서를 읽고 개발에 대한 이해 기술된 기능적/비기능적 요구 사항 -> 분석,설계,코딩 제대로 개발이 됐는지 점검 항목으로 사용 사용자 가이드 초안 작성용으로 사용 주의사항 사용자가 읽기 쉽고 이해할 수 있게 개발자가 설계와 코딩에 효과적으로 사용 할 수 있도록 비기능적 요구를 명확히 작성 테스트 기준 용도로 사..