개발용어 정리

Shaun·2022년 4월 26일
1

개발용어

목록 보기
1/1

인프라
IT 리소스, 시스템, 플랫폼, 환경을 제어하는 인력으로 대부분 하드웨어나 CI/CD 관리를 한다.

DevOps
Development + Operation 개발과 운영을 결합해 탄생한 개발 방법론으로 개발 운영 둘다 하란 뜻이다.

CI/CD
애플리케이션 개발 단계를 자동화하여 애플리케이션을 보다 짧은 주기로 릴리즈하는 방법으로 기본 개념은 지속적인 통합, 지속적인 서비스 제공, 지속적인 배포다. 그니까 개발 이후에 똥꼬쇼할 필요없이 웹 서버 안내리고 자동화된 배포와 파일 병합등을 제공하는 것을 말한다.

NAC/NAT/NAS
다 네트워크와 관련있는 개념이다. NAC과 NAT은 보안에 해당하고 NAS는 네트워크 스토리지를 뜻한다.

NAC (Network Access Control) : 엔드포인트 보안 기술, 사용자 또는 시스템 인증 및 네트워크 보안을 통합하는 보안 접근 방식
NAT (Network Address Translation) : 사설 IP를 공인 IP로 변환해주는 서비스
NAS (Network Attched Storage) : 네트워크 환경 데이터 스토리지
VPN
가설사설망으로 VPN 네트워크에 접속하게 되면, 외부에 있는 컴퓨터라도 내부 네트워크에 접속해 있는것처럼 이용할 수 있다. 그니까 외부에서 내부 인트라넷 네트워크에 접근하려면 이 VPN을 사용해야된단 얘기다.

이씨투
아마존 AWS Elastic Compute Cloud의 약자 EC2를 말하는 것. 그냥 AWS에서 제공하는 클라우드 가상 컴퓨팅 시스템을 말하는 것이다.

개발
프론트 엔드
HTML, CSS 및 JavaScript를 사용하여 웹 사이트의 그래픽 사용자 인터페이스를 구현하는 개발이다.

백 엔드
프론트 엔드에 있는 사용자들이 하고자 하는 행동을 처리하는 것으로 로그인, DB 작업 등 뒷단 기능을 구현하는 개발이다.

풀스택
프론트 엔드 + 백 엔드 둘다 가능한 스펙

CRUD
씨알유디라고 불리는 데 우리가 게시판을 만들어도 CRUD 기능을 전부 포함하고 있다. C는 create, R은 read, U는 update, D는 delete를 뜻한다.

스냅샷
스냅샷은 여러 방면에서 살짝 다른 의미를 갖고 있는데 특정 시간에 데이터 저장 장치의 상태를 별도의 파일로 저장하는 것을 말하며 스냅샷 기능을 이용하여 데이터를 저장하면 유실된 데이터 복원과 일정 시점의 상태로 데이터를 복원 가능하다.


연결 오류가 뜨는 경우 네트워크가 연결됐는지 확인해야 될 때가 있는데 그때 '해당 서버로 핑날려봐' 라는 멘트를 듣게된다. cmd창에서 ping 대상IP 명령어를 입력해 트래픽 송신 정보가 정상적으로 찍히면 연결된 것이다.

런타임
특정 프로그램의 구동환경을 말하는 것이다. Javascript의 nodeJS와 같은 개념이라고 생각하면 된다.

프레임워크와 라이브러리
먼저 프레임워크는 다양한 의미에서 해석될 수 있는데 크게 정리해보면 프로젝트의 구조, 즉 뼈대에 해당하는 녀석으로 프로젝트를 구축함에 있어 많은 기능을 포함하고 있다.
라이브러리는 특정 기능 함수 집합으로 특정 기능을 구현할 때 그 기능에 해당하는 라이브러리를 추가해 개발 시간을 줄일 수 있다.
! 프레임워크와 라이브러리의 차이는 프로젝트나 기능을 구축함에 있어 제어권이 어디에 있느냐의 차이다. 라이브러리는 참조하여 개발자가 객체를 만들고 제어하지만 프레임워크는 객체에 대한 정보만 설정해놓으면 프레임워크가 알아서 처리하는 구조를 띈다. 부트스트랩, react, vue, angular와 같은 녀석들은 프레임워크로 분류되고 Jquery, D3, PDF 등등 솔루션을 더 풍부해지게 도와주는 짜바리들을 라이브러리로 분류된다.

여기서 하나 대두되는 이슈가 react는 라이브러리인가 프레임워크인가다. react 공홈에 가보면 라이브러리라고 못박혀있다. 컴포넌트의 호출이나 정의 방식이 지정되있지 않기 떄문에 라이브러리라 하는 사람이 있고 어찌됐건 react가 우리가 작성한 컴포넌트를 호출하고 state, props 같은 규칙이 존재하기 떄문에 프레임워크라 말하는 사람이 있다고 한다. 난 프레임워크에 가깝다고 생각햇는데 공홈에서 라이브러리라니까... 할말이 없다 ㅎㅎ 만든 애들 말이 맞겠징 ㅎㅎ
서드파티
하드웨어나 소프트웨어 등의 제품을 제조하고 있는 주요 기업이나 그 계열 회사 또는 기술 제휴를 하고 있는 기업이 아닌 제3자 기업을 부르는 말이다.

하드코딩
상수나 변수에 들어가는 값을 소스코드에 직접 쓰는 방식을 말한다. 보통 개발할 때는 입력 값을 받던지 전달받는 구조를 많이 띄는데 그냥 "" 형태로 코드에 대놓고 쳐박는걸 말한다. 이게 많을 수록 프로그램은 유연하지 못한 구조를 띄게되는데 필요한 상황이 꼭 생긴다.

마크업
우리가 일상적으로 보는 태그로 시작해서 끝나는 형태를 말하는데 HTML, XML의 뒤에 ML이 마크업 랭귀지의 약자다.

마스킹
프로그래밍에서는 개인정보 보호를 위한 하나의 보안과정을 의미하는데 예를 들어 주민등록번호의 뒷자리를 * 문자로 치환하는 것을 마스킹이라 한다.

파싱
이것도 많은 의미로 사용될 수 있는데 쉽게 말해서 2가지 정도로 구분하여 설명할 수 있겠다.

데이터 형 변환 (String > int)
A형태의 데이터를 재조립하여 B형태 데이터로 변환 (A > B)

비즈니스 로직
어떤 기능을 수행하는 실질적인 코드를 말한다. 자바 스프링으로 예를 들어보면 컨트롤러에 비즈니스 로직을 구현하는 것은 바람직하지 않다. 이런 멘트를 본적이 있을 것이다. 이것은 컨트롤러는 클라이언트와의 연결점 역할만 하고 실제 실행하는 코드는 서비스에 구현하라는 얘긴데 말그대로 실제 실행하는 코드를 비즈니스 로직이라 칭한다.

크로스브라우징
웹 서비스 프로그램이 최대한 많은 종류의 웹 브라우저에서 정상적으로 작동하게 구현하는 방법론이다. 보통 구형 IE에서 가장 많은 문제가 나타나는데 이런 구석기 브라우저도 지원 가능하게 개발 방법론이다.

프로젝트
PL/PM
PL은 Project Leader를 말하고 PM은 Project Manager를 말한다. 보기엔 PL이 더 높아보이지만 PL은 특정 파트의 리더 역할로 하나의 프로젝트의 수많은 PL이 있다. 개발 PL, UI/UX PL.. 뭐 등등 PM은 총괄자인데 프로젝트 일정이나 인원 배분 등 프로젝트의 결정자 역할을 한다. 한마디로 PL은 골목대장, PM은 지역구 짱이다.

SI (System Integration)
SI는 기업이 필요로 하는 서비스 시스템을 기획부터 개발, 구축 등 모든 서비스를 제공하는 사업 형태로 쉽게 말해 그냥 외주나가서 갑질당하고 줘뺑이치는걸 말한다.

SM (System Maintenance)
SI 프로젝트가 끝난 뒤 해당 시스템에 대한 유지 보수 사업으로 SI보단 윤탄한 삶을 보장받을 수 있지만 이후 이력서 포트폴리오에 쓸게 없어진다.

AS-IS, TO-BE
AS-IS는 변경되기 전, 현 상황이고 TO-BE는 어떻게 바뀌겠다 지향점을 말한다. 그니깐 AS-IS는 이래서 문젠데~ TO-BE 어떻게 개선할 것이다~ 라는 건데 한마디로 판타지다.

TFT
Task Force Team의 약자로 특정 프로젝트 진행시 임시로 구성된 팀을 말한다. 말이 좋아서 TFT지 회사에 노는 인력 끌어다가 프로젝트하는 인력사무소 느낌이라 보면 된다.

WBS
Work Breakdown Structure, 직역하면 작업 분할 구조로 개발 일정, 업무 사항을 분류하여 일정을 관리하기 위한 문서다. 각 담당자들은 자신의 업무가 전체적으로 나아가는 방향에 대해서 스스로 일정을 확인할 수 있고 전체적인 업무 파악에도 도움을 준다. 이것도 그냥 성과 책임제를 위한 장치다. '몇일까지 하기로 햇는데 해냈다/못했다' 를 한눈에 볼 수 있기 때문에 성과 분석에 있어 아주 유용한 녀석이니 조심하자

스토리 보드
기획자가 구성해놓은 화면 설계서로 이 버튼 누르면 어디 페이지로 이동하고 이 버튼 누르면 로그인되고 이런걸 명시해 놓은 문서다. 스토리 보드를 토대로 프로젝트를 구현한다.

UI/UX
UI는 User Interface 즉 우리가 보는 화면이고 UX는 User eXperience 사용자의 경험 정보를 말한다. 즉 어떤 버튼을 눌렀을 때 어떻게 작동해야 사람들이 가시적으로 이해하고 넘어가겠는가가 UX다.

GUI
Graphic User Interface 말그대로 그래픽 기반 UI다. 우리 눈알에 들어오는 그거

Man-Month
Man-Month란 월간 인력 투입 규모 비용을 산정하는 단위로 어떤 개발을 함에 있어 몇 맨먼스가 든다. 이런식으로 표현하는데 그냥 머릿수, 개월수 세서 얼마나 걸리는지 간지나게 표현하기 위해 사용한다.

CRM
소비자들을 자신의 고객으로 만들고, 이를 장기간 유지하고자 하는 경영방식이며 기업들이 고객과의 관계를 관리, 고객 확보, 그리고 고객, 판매인, 협력자와 내부 정보를 분석하고 저장하는데 사용하는 광대한 분야를 아우르는 방법이다. 솔직히 이전 회사에서 연차쓸때 말고 들어가본 적이없음

ERP
경영 정보 시스템의 한 종류로 전사적 자원 관리는 회사의 모든 정보 뿐만 아니라, 공급 사슬관리, 고객의 주문정보까지 포함하여 통합적으로 관리하는 시스템이다. 그니까 회사에 경영정보라던지 자원을 모니터링하는 솔루션이라고 보면 된다.

ESM
통합보안관리(ESM)는 방화벽, 침입탐지시스템(IDS), 침입방지시스템(IPS), 가상사설망(VPN) 등의 보안 솔루션을 하나로 모은 통합보안 시스템을 말한다.

SIEM
조직 애플리케이션, 보안 장치와 호스트 시스템에 의해 생성되는 로그 및 이벤트 데이터를 수집하고, 그 데이터를 하나의 중앙 집중식 플랫폼으로 통합하는 방식으로 ESM에서 확장된 방식이다.

마이그레이션
이것도 어떤 상황에 사용되냐에 따라 의미가 조금 상이한데 그냥 기존 운영환경 A에서 B로 옮기는 작업이라고 생각하면 된다. 보통 운영 환경이나 플랫폼, 데이터 마이그레이션등이 있다.

페일오버/페일백
페일 오버는 서버나 시스템, 네트워크 문제가 발생했을 때 예비 시스템을 자동 전환되는 기능을 말함. 이 때 사람이 수동으로 전환하면 '스위치 오버'라고 함.
페일 백은 페일 오버로 자동 전환된 시스템을 기존 상태로 돌려 놓는 것을 뜻함.
헬스체크
서버나 네트워크가 정상 작동하는지 모니터링하는 것을 뜻함. 그냥 인간 건강검진정도로 생각하면 쉬울 듯?

출처

profile
호주쉐프에서 개발자까지..

0개의 댓글