테크톡 정리 8

[CS 정리] 트랜잭션 정리

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 트랜잭션이란? 여러 쿼리를 논리적으로 하나의 작업으로 묶어주는 것 거래가 일어날 때 실행되는 쿼리 UPDATE 문 : 구매자 계좌에서 10000원 빼기 UPDATE 문 : 판매자 계좌에 10000원 더하기 하지만 중간에 오류가 나면 10000원이 빠졌지만 판매자의 계좌에는 10000원이 들어오지 않을수도 있다. 따라서 여러 개의 쿼리를 하나의 트랜잭션으로 묶고, 트랜잭션은 커밋 혹은 롤백을 수행합니다. 트랜잭션의 성질 트랜잭션이 안전하게 수행된다는 것을 보장하기 위한 성질 원자성 트랜잭션은 DB에 모두 반영되거나, 전혀 반영되지 않아야 합니다. 일관성 트랜잭션 작업처리결과는 항상 일관성 있어..

[CS 정리] 프레임워크, 라이브러리, API 정리

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 프레임워크? 개발할 때에 번번히 쓰여지는 범용 기능을 한꺼번에 제공해 개발 효율을 향상을 목표하는 소프트웨어 환경 프레임워크의 특징 공통적인 개발환경을 제공합니다. 개발할 수 있는 범위가 정해져 있습니다. 제어의 역전이 발생합니다. 프레임워크의 대표적인 예 자바의 스프링 파이썬의 장고 자바스크립트 기반의 노드JS 라이브러리? 라이브러리는 개발자가 사용할 수 있는 API들을 종류나 목적에 따라서 나누어 정의한 API 묶음 입니다. 라이브러리는 시스템에 기본적으로 설치되어 있는 기본 라이브러리와 제조사나 외부 메이커에 의해서 만들어지는 확장 라이브러리로 나뉩니다. 라이브러리 → 재사용 가능한 코..

[CS정리] RESTful 정리

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. REST 란? REpresentational : 표현 State : 상태 Transfer : 전달 자원의 표현 = HTTP URI 상태 전달 = HTTP Method 웹의 장점을 최대한 활용할 수 있는 아키텍처 RESTful? 아키텍처 스타일의 제약 조건을 모두 만족하는 시스템 REST 아키텍쳐의 제약 조건 Client - Server (클라이언트 서버 구조) Stateless (무 상태성) Cache (캐시 처리 가능) Uniform Interface(유니폼 인터페이스) Identification of Resources Manipulation of Resources through Repre..

[CS 정리] OSI 7 Layer

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. OSI 7 Layer 물데네전세표응 물리, 데이터 링크, 네트워크, 전송, 세션, 표현, 응용 계층... 물리 계층(Physical Layer) 0과 1의 나열을 아날로그 신호로 바꾸어 전선으로 흘려 보내고, 아날로그 신호가 들어오면 0과 1의 나열로 해석하여 물리적으로 연결된 두 대의 컴퓨터가 0과 1의 나열을 주고받을 수 있게 해주는 모듈 두 대의 컴퓨터가 통신하려면? 모든 파일과 프로그램은 0 과 1의 나열입니다. 즉, 0과 1만 주고받을 수 있습니다. 1을 보낼 때는 + 5V의 전기를 전선으로 흘려 보내고 0을 보낼 때는 - 5V의 전기를 전선으로 흘려 보내면 0과 1의 전송이 가능할..

[CS 정리] 교착상태(Deadlock)

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 교착상태 (Deadlock) 상호 배제에 의해 나타나는 문제점으로, 둘 이상의 프로세스들이 자원을 점유한 상태에서 서로 다른 프로세스가 점유하고 있는 자원을 요구하며 무한정 기다리는 현상을 의미합니다. 교착 상태 4가지 필요 조건 1. 상호 배제 조건 한 번에 한 개의 프로세스만이 공유 자원을 사용할 수 있어야 합니다. 2. 점유와 대기 조건 최소한 하나의 자원을 점유하고 있으면서 다른 프로세스에 할당되어 사용되고 있는 자원을 추가로 점유하기 위해 대기하는 프로세스가 있어야 합니다. 3. 비선점 조건 다른 프로세스에 할당된 자원은 사용이 끝날 때까지 강제로 빼앗을 수 없어야 합니다. 4. 순..

[CS 정리]캐시 정리

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 메모리 계층 구조 데이터를 저장하는 공간의 속도와 용량은 반비례 관계 속도가 빠른 메모리 일수록 용량이 작음 용량이 큰 저장장치는 속도가 느림 둘 다 잡기에는 비용이 많이 듬 그래서 데이터 저장 공간은 속도와 용량에 따라 특성에 맞게 역활을 나누어서 사용합니다. 데이터 저장 공간을 속도 - 용량 순서도래 쌓으면 마치 피라미드와 같은 형상이 나타납니다. 파레토의 법칙 원인 중 상위 20%가 전체 결과의 80%를 만든다는 법칙입니다. 2대 8 법칙이라고도 합니다. 데이터 지역성의 원리 자주 쓰이는 데이터는 시간적 혹은 공간적으로 한 곳에 몰려 있을 가능성이 높습니다. 시간 지역성 공간 지역성 캐..

[CS 정리]빌드 용어 정리

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크를 참고하시면 됩니다. 빌드 용어 정리 컴파일 vs 빌드 컴파일 원시 파일에서 컴퓨터가 알아들을 수 있도록 바꾸는 것이 컴파일입니다. 오브젝트 파일에 메소드, 라이브러리, 리소스 등을 연결시킨 파일이 실행 파일입니다. 빌드 Java에서의 대표적인 빌드 도구는 Maven, Gradle, ANT 있습니다. 빌드 도구란? 소스 코드로부터 실행 가능한 어플리케이션을 생성하는 것을 자동화하는 프로그램 Java의 빌드 도구들 ANT 빌드 도구 현대적인 빌드 도구 xml 절차적 유연성 스크립트를 직접 명시 Maven pom.xml 의존성 다운로드 가능 컨벤션 사용자 의도에 맞는 로직 개발이 어려움 Gradle Groovy / ..

[Spring] Spring Aop 란?

우아한 테크톡 관련된 유튜브 강의 정리 내용입니다. 정확한 내용을 학습하고 싶으면 강의 링크 를 참고하시면 됩니다. 비지니스 로직 일반적으로 데이터베이스와 사용자 인터페이스 사이의 정보 교환을 처리하는 알고리즘을 설명하는 데 사용하는 비기술적 용어입니다. 업무에 필요한 데이터처리를 수행하는 응용 프로그램의 일부를 말합니다. 하나의 프로젝트나 프로그램 중 업무와 관련된 처리를 하는 일부분을 뜻합니다. 부가 기능 시간을 잰다든지, 트랜잭션을 거는 등등 서비스 로직 외의 기능을 인프로 로직이라고 부릅니다. 인프라 로직의 특징 애플리케이션의 전 영역에서 나타날 수 있음 중복코드를 만들어낼 가능성 때문에 유지보수가 힘들어짐 비지니스 로직과 함께 있으면 비지니스 로직을 이해하기 어려워짐 횡단 관심사 AOP (Asp..