문서의 이전 판입니다!
Agile Software Development
애자일 소프트웨어 디벨롭먼트
신속하고 변화에 유연하며 적응적인 소프트웨어 개발을 목표로 하는 다양한 경량 개발 방법론 전체를 일컫는 총칭
개발 대상을 다수의 작은 기능으로 분할하여 하나의 기능을 하나의 반복 주기 내에 개발하는 개발 방법
하나의 반복 기간을 프로젝트마다 다르지만 일반적으로 1주에서 4주 정도인 경우가 많다. 이 반복 주기를 계속해 나가면 하나씩 기능을 추가 개발하는 것이다.
-
Boilerplate code
클라우드 네이티브 [Cloud Native]
단일 처리에 특화된 최소한의 서비스 단위로 개발을 하고, 이를 컨테이너 환경에서 실행하는 애플리케이션 개발 방식
수많은 컨테이너가 오케스트레이션을 통해 자동으로 관리, 운영하는 등 클라우드 네이티브는 클라우드 컴퓨팅 모델의 이점을 최대한 살린 개발방식
Dead Link
Design Pattern, 디자인 패턴
Docker
FinOps [핀옵스]
Financial Operation 파이낸셜 오퍼레이션 - 비용 최적화
분산된 여러 팀이 속도, 비용, 품질 간에 비즈니스 균형을 이룰 수 있도록 가변적 지출 클라우드 모델에 재정적 책임을 부여하는 방식. 즉, 소프트웨어 엔지니어가 솔루션 비용을 책임지는 운영 모델이다.
기업이 클라우드 소비를 위한 지출 요건을 보다 잘 계획, 편성, 예측하는데 도움을 준다.
-
Framework
Functional Programming
펑서녈 프로그래밍, 함수형 프로그래밍
자료 처리를 수학적 함수의 계산으로 취급하고, 상태와 가변 데이터를 멀리하는 프로그래밍 패러다임의 하나이다. 명령형 함수는 프로그램의 상태값을 바꾸는 부작용이 있을 수 있다. 때문에 참고 투명성이 없고 같은 코드라도 실행되는 프로그램의 상태에 따라 결과값이 다를 수 있다. 반면, 함수형 코드는 함수의 출력값은 그 함수에 입력된 인수에만 의존하므로 x에 값을 넣고 함수 f를 호출하면 항상 f(x)라는 결과가 나온다.(출처: 위키백과)
GraphQL
Graph Query Language
Server API를 통해 정보를 주고받기 위해 사용하는 Query Language
GraphQL API는 주로 하나의 Endpoint를 사용한다.
GraphQL API는 요청할 때 사용한 Query문에 따라 응답의 구조가 달라진다.
IEEE 754
In-Memory Computing
전체 데이터를 메모리에 적재하여 사용
컴퓨팅 시스템의 공식 기록 시스템(system of record)으로 하드 디스크를 사용하는 것이 아니라 메모리를 사용하는 것
데이터를 메모리에 보관,처리하고 하드디스크를 데이터의 안전하게 보관(stash)하기 위해 사용하는 구조
stash[스태쉬- : (안전한 곳에) 넣어 두다[숨기다]
-
log [로그, 운용 기록]
기계 작동에 관한 기록, 기계 상황의 변경, 스위치 선택, 입출력 장치에 대한 사항, 제어 탁자에서 입력한 자료, 기계 정지 시의 상태나 원인 등에 관한 사항의 기록 등 컴퓨터 운용에 관계되는 모든 기록, 컴퓨터에 있는 로그 파일에 자동적으로 기록되게 할 수 있다.
어떤 트랜잭션이 데이터베이스의 어떤 값을 갱신할 때 갱신 전의 값과 후의 값을 로그에 먼저 기록하는 것. 트랜잭션의 시작과 완료, 철회 등의 정보도 로그에 기록된다.
logging [로깅]
컴퓨터 동적 상태에 따른 변화를 시간에 따라 기록하는 것
Interpreter [인터프리터]
파이썬 코드를 입력한 후 엔터 키를 누르면 결과가 바로 나온다. 이처럼 코드를 한 줄 한 줄 실행하여 결과를 얻는 방식을 인터프리터(interpreter)방식이라고 부른다.
meme
Proxy Server [프록시 서버]
시스템에 방화벽을 가지고 있는 경우 외부와의 통신을 위해 만들어 놓은 서버
프록시 ( Proxy )란 원래 '대리'라는 의미를 가지고 있음
클라이언트가 프록시 서버를 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터
시스템에 방화벽을 가지고 있는 경우 외부와의 통신을위해 만들어 놓은 서버
프록시 서버는 프록시 서버에 요청된 내용들을 캐시를 이용하여 저장
-
pseudo-code[수도코드]
의사(疑 비교할 의 / 似 비슷할 사 | Pseudo : 가짜의)
컴퓨터 프로그램이나 알고리즘이 수행해야 할 내용을 우리가 사용하는 언어(한국어 또는 영어 등)로 간략히 서술해 놓은 것을 말한다.
특정 프로그래밍 언어로 구현하기 이전에 일반 언어로 작성한 간단한 버전의 프로그래밍 코드
QD, Quantum Dot [퀀텀 닷]
Refactoring [리팩터링]
REST, RESTful
REST : REpresentational State Transfer
모든 Resource(자료, User,…)들을 하나의 Endpoint에 연결해놓고, 각 Endpoint는 그 Resource와 관련된 내용만 관리하게 하자는 방법론
이런 REST의 조건을 만족하는 API를 RESTful API라고 부르고, 이런 방식으로 API를 작성하는 것을 RESTful하다고 한다.
-
Sandbox [샌드박스]
Snippet
스니핏
웹 사이트 디자인에서 정형화된 코드가 자주 사용되는데 이를 별도로 저장해 두었다가 필요할 때마다 복사하여 사용하는 것을 말한다.
재사용 가능한 소스 코드, 기계어, 텍스트의 작은 부분을 일컫는 프로그래밍 용어이다. 사용자가 루틴 편집 조작 중 반복 타이핑을 회피할 수 있게 도와준다.(위키백과)
SOLID 원칙
S : SRP [Single Responsible Principle, 단일 책임 원칙]
O : OCP [Open/Closed Principle, 개방-폐쇄 원칙]
L : LSP [Liskov-substitution Principle, 리스코프 치환 원칙]
I : ISP [Interface Segregation Principle, 인터페이스 분리 원칙]
D : DIP [Dependency Inversion Principle, 의존관계 역전 원칙]
tokenizer [토크나이저]
tokenization [토크너제이션] : 토큰화
문자열을 여러 개의 조각, 즉 여러 개의 Token(토큰)들로 쪼개는 것을 말한다.
Token은 문자열의 한 조각으로 하나의 단어가 하나의 토큰이라고 할 수 있다.
Use Case
유즈 케이스
시스템의 동작을 사용자의 입장에서 표현한 시나리오이며, 시스템에 관련한 요구사항을 알아내는 과정이며, 소프트웨어 개발 프로세스 중 개발을 위한 소프트웨어의 기능을 개략적으로 설명이 가능한 방법이다.
유즈 케이스는 시스템을 분석하는 사람과 사용할 사람이 함께 시스템의 사용 방법을 결정하는데에 도움을 준다. 작성 시 주의할 점은, 시스템을 개발하는 사람보다는 사용자의 입장에서 이해하기 쉽고, 간단하게 작성되어야 한다.
-
Upper Case, Lower Case
Wireframe