CS 학습 정리 (14) 썸네일형 리스트형 SoftWare TEST 4레벨 / Javascript 유닛 테스트 라이브러리 vs 모듈 vs 클래스 라이브러리 : 기능의 집합, 여러 모듈들이 이루어져 있다.모듈 : 함수와 클래스들의 집합으로 하나의 역하을 해낸다.클래스 : 하나의 책임을 위한 필드와 메소드들이 모인 집합 정규 표현식 정규표현식에서 사용되는 기호를 Meta문자라고 표현한다. 표현식에서 내부적으로 특정 의미를 가지는 문자를 말한다. 표현식의미^x문자열의 시작을 표현하며 x로 시작됨을 의미한다.x$문자열 종료를 의미하며 x문자로 종료됨을 의미한다..x임의의 한 문자의 자리수를 표현하며 x문자가 한 번 이상 반복됨을 의미한다.x?x문자가 존재할수도 안할수도 있다.x*반복 여부를 표현하며 x문자가 0번 또는 그 이상 반복된다.x|yor를 표현하며 x또는 y문자가 존재함을 의미한다.(x)그룹을 표현하며 x를 그.. 객체지향 5원칙 SOLID 분석 1. S : Single Responsibility : 단일 책임 원칙클래스는 단 한개의 책임을 가져야 함클래스를 변경하는 이유는 단 하나여야 함이를 지키지 않으면, 한 책임의 변경에 의해 다른 책임과 관련된 코드에 영향을 미칠 수 있음→ 이렇게 되면 유지보수가 매우 비효율적-> 그러나, "책임" 이란 뭘까? 세상엔 많은 책임이 존재하지만 막상 뭐라고 정의하기 어렵다. SRP 에서 이야기하는 책임이란, '기능' 정도로 생각하면 된다. 만약 한 클래스가 수행할 수 있는 기능 (책임) 이 여러 개라면, 클래스 내부의 함수끼리 강한 결합을 발생할 가능성이 높아진다. 응집도는 높고 결합도는 낮은 프로그램을 설계하는 것이 비로소 객체지향 설계의 핵심인데, 이것이 위반되는 것이다. 새로운 요구사항이나 프로그램 변경.. 프로세스 메모리 구조 (Stack, Heap, Text 세션) , Node.js에서 가상 메모리 관리, 가비지 콜랙션(GC) 동작 방식 프로세스 메모리 구조와 각 세션의 역할 Java의 메모리 관리 구조 Spring의 메모리 관리 구조 Node.js에서 가상 메모리 관리, 가비지 콜랙션(GC) 동작 방식 리눅스 운영체제를 기준으로 가상 메모리 관리 방식 힙 메모리의 메모리 단편화를 방지할 수 있는 방법 Process 노드 모듈이란? Parser와 웹 브라우저의 HTML분석 방식 및 정규표현식에 대하여 https://ko.wikipedia.org/wiki/%EA%B5%AC%EB%AC%B8_%EB%B6%84%EC%84%9D 구문 분석 - 위키백과, 우리 모두의 백과사전위키백과, 우리 모두의 백과사전.ko.wikipedia.org 컴퓨터 과학에서 파싱((syntactic) parsing)은 일련의 문자열을 의미있는 토큰(token)으로 분해하고 이들로 이루어진 파스 트리(parse tree)를 만드는 과정을 말한다. tokenizer, lexer, parser 역할과 책임1. 토크나이저 (Tokenizer)역할:입력 텍스트를 의미 있는 단위인 토큰(token)으로 분할합니다.책임:텍스트 스트림을 공백, 구두점, 특수 기호 등을 기준으로 나누어 개별 토큰을 생성합니다.언어에 따라 다를 수 있는 토큰화 규.. 쉘 스크립트 자동화와 리눅스 환경설정 1. 로컬 컴퓨터와 리모트 컴퓨터- 로컬 컴퓨터는 본인의 물리적 컴퓨터를 의미한다. 리모트 컴퓨터는 가상 컴퓨터나 클라우드 컴퓨터 등 원격으로 접속하여 지금 접속한 물리 컴퓨터의 리소스가 아닌 리소스를 사용할 수 있다. 로컬 컴퓨터에서 작업하여 리모트 컴퓨터에서 배포하는 일은 매우 흔한 일이다. 이 개념은 깃을 관리하며 많이 겪었던 원격저장소와 로컬저장소의 개념과 유사하다. 그리고 이 원격 컴퓨터(자원)에 접속할 때 가장 많이 쓰이는 프로토콜이 바로 SSH이다.SSH보안: SSH는 데이터 전송 과정에서 암호화를 사용하여 데이터의 기밀성을 보호합니다. 이는 네트워크를 통해 전송되는 정보가 노출되지 않도록 합니다.원격 접속: SSH를 사용하여 원격 서버나 컴퓨터에 접속할 수 있습니다. 사용자는 SSH 클라이.. Git의 작동원리와 기본 사용법, rebase 와 merge, fork의 사용이유 Git 이란?- 어렵게 생각할 필요 없이 많은 개발자들이 특정한 코드들을 함께 관리하고, 버전관리를 쉽게 할 수 있도록 만든 프로그램이다. Git 용어 정리add : 작업 디렉토리에서 변경된 파일들을 스테이징 영역에 추가. 커밋의 전 단계라고 보면 된다.commit : 스테이징 영역에 있는 변경 사항을 실제 로컬 저장소에 기록한다.branch : 독립적으로 작업 가능한 브랜치를 생성한다. 예를들어 만약 A기능을 실험하고 싶다면 실험A 브랜치를 만들어 실험할 수 있다.checkout (또는 switch) : A 브랜치에서 B로 이동하여 작업하고 싶을 때 사용한다.push : 위에서 커밋한 내용을 실제 원격 저장소에 내보내기 위해 사용한다.pull : 원격 저장소의 변경 사항을 로컬 저장소로 가져온다. p.. 이전 1 2 다음