마토의 세상

MATO WORLD

Daily 일상 기록/인강 기록

컴퓨터 개론 03. 프로그래머의 세계 이해하기 (2)

jy-agnes-lee 2021. 7. 28. 13:43

프로그래밍의 다양한 분야

05. 테스트 프로세스

- 버그 : 프로그램에서 잘못 실행되는 동작, 의도하지 않은 에러 

-> 버그를 방지하기 위해 테스트 필요

기본적인 테스트는 개발자가 직접 개발하면서 함께 진행함.

테스트는 대부분 똑같은 작업을 반복하는 것이기 때문에

자동화 테스트 도구를 활용하거나 테스트 코드를 개발하여 직접 자동화하기도 한다.

하지만 개발 단계에서 발견하지 못하거나 특정 상황에서만 발생하는 문제가 있기 때문에

추가 테스트를 하거나 테스트 부서가 따로 있기도 하다.

* Tip : 신뢰성이 중요한 제품일 경우 추가 테스트를 여러 차례 거치기도 한다.

테스트 과정에서 버그를 발견하면 담당 개발자에게 알려 고쳐야 한다.

- 버그를 처리할 때 고려해야 할 점

1. 얼마나 시급한지

2. 담당자가 누구인지

3. 빼먹은 버그가 있는지

4. 버그가 잘 고쳐졌는지

=> 버그관리 툴 활용 ( Jira, asana, Trello 등 )

* Tip : 이슈 트래킹 툴이라고도 한다.

버그 기록 공간이 따로 있다. 이 곳에 버그를 기록한 것을 이슈(Issue)라고 한다.

- 이슈(Issue)

: 누군가 버그를 발견하게 되면, 1. 어떤 상황에서 버그가 나타나는지, 2. 본인이 생각하기에 얼마나 시급한 버그인 를 기록한 것

- 이슈의 상태

Open(생성/미해결) -> In-progress(진행중) -> Resolved(해결) -> Closed(해결확인) -> Reopen(추가문제발생) -> Open(반복)

Assigned : 담당자 지정 

* Tip : 이슈가 많아지게 되면 빼먹거나, 몰리거나, 순서가 뒤죽박죽이 될 수 있기 때문에 관리자인 프로젝트 매니저가 생기기도 한다 !

06. 버전 관리

프로그래밍을 하다보면 코드수정이 잦고, 협업을 진행하다 보면 수정 이력이나 버전관리를 하는 것이 매우 어렵다.

따라서 문제 파악 및 원활한 협업, 코드 이해를 위해 버전 관리가 필요하다.

- 깃(git) : 버전관리를 하는 소프트웨어

- 깃허브(GitHub) : git을 이용해 코드를 저장하는 온라인 저장 공간

- 깃 저장 방식 : 브랜치(branch)로 구분하여 다양한 버전의 프로그램을 효율적으로 관리할 수 있다.

1. 기존의 코드에서 수정된 코드만 저장한다.

2. 누가, 왜, 어떻게 수정했는지를 기록하고 코멘트를 통해 서로 소통한다.

08. 개발자의 필수 프로그램 IDE

개발자가 항상 활용하고 있는 것 = IDE !

- IDE 통합 개발 환경 (Intergrated Development Environment) 

:  개발자들이 코딩할 때 필요한, 도움이 되는 기능들을 모아둔 프로그램

예 ) IntelliJ, Eclipse, VSCode

- IDE의 장점

1. 자동 들여쓰기

2. 추천 및 자동완성

3. 검색 없이도 설명해줌

4. 에러가 나는 부분을 찾아줌

5. 간편한 변수명 변경

6. 화면 분할

=> 코딩 속도가 빨라진다.

* Tip : 스택쉐어에서 개발자 혹은 개발 팀에서 사용하는 다양한 툴을 찾아 볼 수 있다! https://stackshare.io

 

Software and technology stacks used by top companies

All the best Open Source & Software as a Service (SaaS) tools in one place, ranked by developers and companies using them. Compare and browse tech stacks from thousands of companies and software developers from around the world.

stackshare.io

추천 1. 프로젝트 관리툴 : 지라, 아사나, 트렐로 2. 메신저 : 슬랙 3. 디자인 : 스케치https://www.sketch.com/