도구 및 개발 프로세스
# SDK : software development kit
- 프로그램을 개발하기 위한 도구 모음
- 계속해서 버전 업
- 소프트웨어 개발을 위한 도구 모음
# IDE : 작업장
SDK를 이용해서 편하게 개발할 수 있는 환경을 제공해주는 툴
이클립스, 인텔리제이 등
# 라이브러리 : 특정 기능을 제공해주는 프로그램
다른 사람이 이미 만들어 놓은 정보를 가져다 쓸 수 있는 것
# 프레임워크 : 개발을 잘 할 수 있도록 만들어 놓은 공정 -> 구조 + 순서 + 방식
개발 작업 순서
1. 설계 : 코딩, 실제 만들려는 프로그램 코드를 작성하는 작업
2. 조립 : 빌드, 작성된 프로그램 코드가 실행되도록 실행되도록 하는 것(독립화)
컴파일 + 링킹
사람들의 언어로 작성된 코드는 컴퓨터는 모름
번역기를 돌림(컴파일) -> 컴퓨터의 언어(class)로 변경, 작동 가능 -> 작성된 코드 연결 작업(링킹)
실행을 위해 필요한 것을 하나로 패키징함(빌딩)
3. 이상 확인 : 디버깅, 작성된 코드에 문제가 있는지 체크
작성된 프로그램이 오류가 있을 때 해결을 위해 문제를 찾고 고치는 작업
때로는 수정보다 문제가 어디인지 찾는게 더 어려움
4. 포장 : 배포, 실제로 작업 결과를 적용시키는 것
# 깃 : 고급화된 협업을 위한 형상 버전 관리 툴
버전 관리 시스템
형상관리 -> 작성된 코드의 히스토리 보관
협업지원 -> 다른 사람들과의 협업 코드 개발(가져오기, 병합하기 등)
브랜치 관리 -> 개발 중 특정 부분을 여러가지 개발 방법으로 시도하도록
# 깃허브 : 깃을 허브로 사용하는 것
프로그램 코드의 sns 개념(나누고, 공유하고, 어필하고)
git으로 관리하는 프로젝트를 올려둘 수 있는 사이트
코딩 지식
코딩 필수 요소
- 타입 : 데이터의 모양
ex) 정수, 실수, 문자, 텍스트, 날짜 등
- 변수 : 데이터를 담는 그릇
ex) int balance; (잔고를 의미하는 숫자가 들어올 곳)
- 함수 : 기능(input, output)
함수는 입력 값을 받고, 출력 값으로 반환
함수 안에서 로직을 다양한 방법으로 계
-논리 : 함수 안에서 연산, 조건, 반복, 제어
# 자료구조란?
데이터 값의 모임, 또는 데이터 간의 관계, 그리고 데이터에 적용할 수 있는 함수나 명령을 의미
- 여러 데이터 값들의 모음
- 로직을 잘 만들도록 도와주는 기능
- 특정 알고리즘에 적합하게 설계
# 알고리즘이란?
컴퓨터 과학에서 말하는 알고리즘은 보통 반복되는 문제를 풀기 위한 작은 프로시저(진행절차)를 의미
- 복잡한 로직을 잘 만들 수 있는 방법론, 절차 등을 말함
# 프로세스 vs 스레드
- 프로세스 : 한번에 이어지는 프로그램 처리, 한번에 하나의 작업
버튼을 눌렀을 때 발생하는 이벤트가 끝나기 전까지는 다른 작업을 못 하는 것
- 스레드 : 다른 일도 동시에 프로그램 처리, 동시에 여러 작업
버튼을 눌렀을 때 이벤트가 발생하더라도 다른 작업이 가능한 것
# 트랜젝션
데이터베이스 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위
데이터베이스 시스템에서 복구 및 병행 수행 시 처리되는 작업의 논리적 단위
한꺼번에 수행되어야 할 일련의 연산
- 원자성, 일관성, 독립성, 지속성
'CS공부 > IT기본지식' 카테고리의 다른 글
테스트 & 배포 & 안정화 관련 필수 지식 (0) | 2023.12.13 |
---|---|
WEB-APP 관련 필수 지식 (0) | 2023.12.13 |
외부 시스템 연계 필수 지식 (0) | 2023.12.13 |
보안 필수 지식 (0) | 2023.12.13 |
IT 전체 영역 큰 그림 보기 (0) | 2023.12.12 |