시간복잡도란?- 문제를 해결하는데 걸리는 시간과 입력의 함수 관계- 시간복잡도를 이용하는 알고리즘 분석은 알고리즘의 성능이 얼마나 효율적인지 알 수 있는 가장 일반적인 방법이다.- 어떠한 알고리즘의 로직이 얼마나 오랜시간이 걸리는지 를 나타내는데 쓰인다.- 알고리즘의 로직이 최악의 경우 걸리는 실행시간을 나타내며 이것을 보통 빅오 표기법으로 나타낸다.더보기빅오 표기법이란?• 입력 범위 n을기준으로 해서 로직이 몇번 반복되는지 나타내는 것• 가장 영향을 많이 끼치는 항의 상수인자를 빼고 나머지 항을 없앤것 빅오 표기법을 쉽게 적용할 수 있는 규칙- 덧셈, 뺼셈, 곱셈, 나눗셈과 같은 산수는 상수이다, 상수시간에 포함된다. • n의 값이 상관이 없다. 10이들어오든 100이 들어오든 1억이 들어오든 컴..
JavaScript는 다양한 환경에서 사용할수가 있습니다. 웹브라우저에서는 DOM(document object model)을 통해 웹 페이지의 요소에 접근하고 조작할 수 있습니다.이를 통해 사용자의 상호작용에 따라 화면에서 보여지는 부분을 동적으로 처리하고 웹 클라이언트 애플리케이션을 개발할수가 있습니다. 또한 서버 측에서는 Node.js를 사용하여 JavaScript를 실핼할 수 있습니다.Node.js는 비동기적이고 이벤트 기반의 서버 측 애플리케이션을 개발할 수 있도록 지원합니다.이를 통해 JavaScript로 데이터를 처리하고 서버 애플리케이션을 개발할 수 있습니다.따라서 클라이언트와 서버간에 동일한 언어를 사용하여 애플리케이션을 개발할수 있어서 개발 생산성을 높일수가 있습니다. 동적타이핑과 함수..
정규식을 사용하다 보니 단순히 /[0-5]/ 이런것이거나 /a/ig 이런식으로 간단하게 숫자를 찾거나 a를 찾는것은 가능했다.하지만 더 자세하게 /s , /w 이런 유형들을 보니 얕게 사용해왔던거 같아 공부하기 위해 여러 방법으로 사용해 보았다.테스트는 MDN에 자료를 보면서 직접 해보았다. 일단 문자열을 하나 준비했다.const str = `Hello, I'm StartCoriny. Nice to meet you.My cell phone number is 010-1234-5678 and my home phone number is 02-1234-5678.If anything happens, please contact me here!!among the numbers 0 to 9, I like 3456 th..
Stateful (상태 유지) - 클라이언트와 서버 관계에서 서버가 클라이언트의 상태를 보존하는것이다. - 보존을 하기 위한 클라이언트의 정보는 세션 또는 쿠키에 저장하여 상태를 유지한다. - Stateful 구조를 따르는 프로토콜로 TCP의 3-way handshaking과정이 있다. • 클라이언트가 서버에게 통신을 시작하려는 의도를 알리기 위해 SYN 패킷을 보낸다. • 서버는 클라이언트의 SYN패킷을 받고 통신을 수락할 준비가 되었다는 신호로 SYN-ACK패킷을 보낸다. • 클라이언트는 SYN-ACK를 받고 응답을 위해 ACK패킷을 보낸다. • 이 과정은 클라이언트와 서버간의 TCP연결 설정이며 데이터를 전송 가능하게 하는 과정이다. • 웹 브라우징, 파일전송, 원격전송과 같은 인터넷을 통한 거의 ..
AOP - 관점(관심) 지향 프로그래밍 ■ Aspect Oriented Programming의 축약어이다. ■ 핵심 로직과 부가 기능을 분리하여 애플리케이션 전체에 걸쳐 사용되는 부가 기능을 모듈화 하여 재사용 할수 있도록 지원. ■ OOP에서 바라보던 관점을 다르게 하여 부가기능적인 측면에서 보았을때 공통된 요소를 추출. ■ 가로(횡단)영역의 공통된 부분을 잘라냈다고 하여, 크로스컷팅(Cross-Cutting)이라고도 부름. 역할 - 인프라, 부가기능의 모듈화 ° 모니터링, 로깅, 동기화, 오류검사 및 처리, 성능 최적화(캐싱)에 사용됨. ° 그 외의 각각 모듈들의 주 목적 외에 필요한 부가적인 기능에 사용. aop를 사용하는 이유 → oop에선 공통된 기능을 재사용하는 방법으로 상속이나 위임을 사용하..
공간데이터란? • 지구 표면에 위치와 관련된 정보를 포함하는 데이터( 객체와 사건, 현상 ) • 실세계에서 객체, 사건, 현상이 위치 정보(좌표, 주소 등)을 포함한 형태로 존재 • 지정된 기간 동안 위치 정보를 다른 비즈니스 데이터 세트의 특성 또는 속성과 결합한다. • 지리 정보 시스템(GIS)를 활용하면 공간 데이터를 표현하고 분석할 수 있다. • 공간 데이터를 사용하여 패턴을 식별하고, 새로운 추세를 평가하고, 잠재적인 위협과 위험을 식별하고, 데이터 기반 의사 결정을 내릴 수 있다. • 비상 대응과 환경 관리에 매우 중요 하다. 공간 데이터의 이점 - 위치 기반 서비스 • 공간데이터를 활용하여 위치 기반 서비스를 제공하여 사용자에게 해당위치에 대한 정보를 제공하고, 주변을 안내할 수 있다. - ..
TypeORM이란? ■ NodeJS와 같은 환경에서 실행할수 있는 ORM이며 TypeScript및 JavaScript와 함께 사용할수 있다. ■ 항상 최신 JavaScript기능을 지원하고 몇 개의 테이블이 있는 작은 응용 프로그램에서 여러 데이터베이스가 있는 대규모 엔터프라이즈 응용 프로그램에 이르기 까지 데이터베이스를 사용하는 모든 종류의 응용프로그램을 개발하는데 도움이 되는 추가 기능을 제공한다. ■ 현재 존재하는 다른 모든 JavaScript ORM 과 달리 Active Record 및 Data Mapper패턴을 모두 지원한다. ■ 고품질의 느슨하게 결합된 확장 가능하고 유지 관리 가능한 애플리케이션을 가장 생산적인 방식으로 작성 가능. dataMapper • 유지관리에서 도움이 되며, 이는 대규..
준비 - Node.js 및 TypeScript가 설치되어 있어야 한다. 노드 설치 - 공식홈페이지 타입 스크립트 설치 - TypeScript 기초 다지기 참고 nest.js 설치 cmd에서 다운받기 npm i -g @nestjs/cli nest프로젝트 생성 프로젝트를 생성하고자 하는 위치에 명령어 입력 nest new nest1 // nest로 nest1이라는 이름의 프로젝트를 새로 생성하겠다 ? Which package manager would you ❤️ to use? (Use arrow keys) ❯ npm yarn pnpm 위 명령어를 입력하면 어떤 패키지 매니저를 선택할것인지 나오는데 npm과 가장 호환이 잘되므로 npm선택필수. 폴더 구조 📦nest1 ┣ 📂node_modules ┣ 📂src ..