*SSL
Netsacpe사가 1990년대 초반 웹 보안을 위해서 처음 개발하였고, 보안 기능으로 기밀성, 상호인증, 메시지 무결성 등을 제공한다.
* 선언형 언어의 기능
- 순수함수 : 어느 순간에 호출해도 동일한 값을 반환
- 익명함수 : 이름이 없는 함수
- 고계함수 : 함수를 또 하나의 값으로 간주하여 함수의 인자 혹은 반환값으로 사용할 수 있는 함수
* SELECT 학번, 이름, 학년 FROM 학생 WHERE 이름 LIKE '%JOHN%';
* 기술리뷰
정의된 계획 및 명세를 준수하고 있는지에 대한 검토를 수행하는 리뷰 변경 사항이 적절하게 구현되었는지를 평가하고,
여러 대안을 추천하거나 대안을 검토
대표 엔지니어가 주재하며 경우에 따라서 관리자도 참가 가능
* 비지터(Visitor) 패턴
각 클래스 데이터 구조로부터 처리 기능을 분리하여 별도의 클래스를 만들어 놓고 해당 클래스의 메서드가 각 클래스를 돌아다니며 특정 작업을 수행하도록 만드는 패턴으로, 객체의 구조는 변경하지 않으면서 기능만 따로 추가하거나 확장 할 때 사용하는 디자인 패턴
특정 구조를 이루는 복합 객체의 원소 특성에 따라 동작을 수행할 수 있도록 지원하는 행위
* 리팩토링
리팩토링은 유지보수 생산성 향상을 목적으로 기능을 변경하지 않고, 복잡한 소스 코드를 수정, 보완하여 가용성 및 가독성을 높이는 기법이다.
* 선택정렬(Selection Sort)
선택정렬은 정렬되지 않은 데이터들에 대해 가장 작은 데이터를 찾아 정렬되지 않은 부분의 가장 앞의 데이터와 교환해나가는 방식으로 주어진 리스트 중에서 최솟값(또는 최댓값)을 찾고 그 값을 맨 앞에 위치한 값과 교체함으로써 정렬을 완성하는 알고리즘이다.
* SELECT B.상품코드 AS 상품코드, A.상품명 AS 상품명, B.상품가격 AS 상품가격
FROM 상품 A RIGHT OUTER JOIN 가격 B ON A.상품코드 = B.상품코드;
오른쪽 테이블의 모든 데이터와 왼쪽 테이블의 동일 데이터를 추출
* 양자 키 분배(QKD: Quantum Key Distriburion)
양자 통신을 위해 비밀키를 분배하여 관리하는 기술로 키 분배를 위해 얽힘 상태 광자 또는
단일 광자를 이용하는 기술이다.
* NoSQL의 유형
- Key-Value Store
키 기반 Get/put/Delete 제공, 메모리 기반에서 성능 우선 시스템 및 빅데이터 처리 가능 DB
Unique한 Key에 하나의 Value를 가지고 있는 형태
ex) Redis, DynamoDB
- Column Family Data Store
Key 안에 조합으로 된 여러 개의 필드를 갖는 DB
테이블 기반, 조인 미지원, 컬럼 기반으로 구글의 Bigtable 기반으로 구현
ex) HBase, Cassandra
- Document Store
Value의 데이터 타입이 Document라는 타입을 사용하는 DB
테이블 기반, 조인 미지원, 컬럼 기반으로 구글의 Bigtable 기반으로 구현
ex) MongoDB, Couchbase
- Graph Store
시맨틱 웹과 온톨로지 분야에서 활용되는 그래프로 데이터를 표현하는 DB
ex) Neo4j, AllegroGraph
* ATAM
아키텍처 품질 속성을 만족시키는지 판단 및 품질 속성들의 이해 상충관계 까지 평가하는 모델
* CBAM
ATAM 바탕의 시스템 아키텍처 분석 중심으로 경제적 의사결정에 대한 요구를 충족하는 비용 평가 모델
* ADR
소프트웨어 아키텍처 구성요소 간 응집도를 평가하는 모델