CS 지식/[codeit] 컴퓨터개론 (완)

[ codeit ] 컴퓨터개론 - 프로그래머의 세계 이해하기

web_seul 2021. 5. 7. 20:15
반응형

 프로그래밍의 다양한 분야 

1강. 컴퓨터 사이언스의 기본기

객체지향 프로그래밍, 알고리즘, 자료구조

컴퓨터 구조, 운영체제, 컴파일러, 웹개발, 데이터베이스, 네트워크

 

2강. 소프트웨어 공학

: 소프트웨어로 제품, 서비스를 만드는 방법에 대한 학문

기획: 어떤 것을 만들지 정하는 단계

개발: 기획한 것을 만드는 단계

테스트: 개발이 기획대로 잘 되었는지 확인하는 단계

배포(출시): 개발된 제품, 서비스를 사용자가 사용하는 단계

유지, 보수: 출시된 서비스를 변화시키는 단계

 

3강. 프로세스 관리

폭포수(waterfall) 방식 : 각 단계를 완료하고 다음단계로 넘어가는 방식, 각 단계를 한번에 완벽히 끝내기 어려움

                              수정사항이 많이 생길 가능성이 높고, 개발자들이 수정 사항을 반영하기 힘듦,

                              각 단계가 복잡하지 않을 때 유용

애자일(agile) 방식 : 결과물을 만들어 미리 확인하고 수정하며 진행, 문자가 아닌 간략화된 소프트웨어로 미리 확인

                              중간중간 사용하면서 발전시키기 때문에 기능 변경이 유연함 ex) scrum, kanban, 관리복잡

                              관리복잡

 

4강. 프로그래머의 세계 퀴즈 I

 

5강. 테스트 프로세스

자동화 테스트 도구, 테스트 코드 사용하기도 함

신뢰도가 필요한 프로그램은 테스터의 역할이 중요

얼마나 시급한가, 담당자는 누구인가, 빼먹은 버그가 있는가, 잘 고쳐졌는가

버그 관리 툴(이슈 트레킹 툴) : Jira, asana, Trello / assign : 담당자 지정 _ 프로젝트의 원활한 진행을 위한 pm

이슈의 상태    open  -   in-progress  -   resolved   -   closed   -   reopen

                이슈발생  개선작업진행  문제해결완료  버그해결완료  추가문제 발생

 

6강. 버전관리

버전 관리를 하는 소프트웨어
git을 이용해 코드를 저장하는 온라인 저장공간

 

버전 관리하는 소프트웨어

 

 

git을 이용해 코드를 저장하는 온라인 저장공간

 

 

7강. 프로그래머의 세계 퀴즈 II

 

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

IDE (Integrated Development Environment) 통합 개발 환경

: 개발자들이 코딩할 때 도움이 되는 기능을 모아둔 프로그램 ex) intelliJ, eclipse, vscode

자동완성, 자동 수정, 부분 일괄 삭제 등 용이

 

9강. 개발자들이 많이 쓰는 프로그램들

프로젝트 관리 툴 Jira, Trello, Asana, Confluence

메신저 Slack, Skype, Jandi

디자인 협업툴 Sketch

 

 트렌드를 읽는 능력 

1강. 프로그래밍은 선택의 연속

빠른 흐름 속에서 선택하기

 

2강. 트렌드를 읽는 방법 I (활발한 기술)

많은 사용자가 있는지

대표적 커뮤니티 stackoverflow, Quora

많이 사용하는 언어를 보여주는 사이트 RedMonk

어떤 언어가 활발한가? 커뮤니티 살펴보기, 프로그래밍 언어와 관련된 자료 찾아보기

 

3강. 트렌드를 읽는 방법 II (인정받는 기술)

stackshare : 여러 기업들이 사용하는 언어, 프레임워크, 라이브러리, 기술을 정리해둔 사이트

기업에서 만들거나 지원하는 기술

facebook - react / angular - google / java - oracle / swift - apple

medium, reddit, quora, naver, kakao, woowahan 등 회사 자체 블로그

 

4강. 트렌드를 읽는 방법 III (유망한 기술)

기술을 선택할 때 고려해야할 점 : 산업적인 이유로 추세가 바뀔 수 있다는 것!

가트너(gartner) 10대 전략 기술 트렌드 분석 참고

 

5강. 트렌드를 읽는 방법 정리 노트

1. 활발한 기술

  • 좋은 언어, 좋은 프레임워크, 좋은 기술은 사람들이 많이 사용합니다.
  • 많은 사람이 사용하면, 커뮤니티 혹은 좋은 자료와 문서들이 많이 만들어 집니다.
  • 좋은 자료와 문서를 통해, 다시 더 많은 사람들이 기술을 사용하게 됩니다.

2. 인정받는 기술

 여러 회사에서 사용하는 언어, 프레임워크, 라이브러리 기술 참고, 

기업에서 직접 만들거나 관리하는 기술

3. 유망한 기술

IT 산업 전반에 대한 이해 필요

 

6강. 프로그래머에게 영어는 필수인가요?

대부분의 정보는 영어를 사용하므로 필수!

반응형