728x90
목차
1.IDE(Integrated Development Environment)
2.협업도구
3.형상관리도구
1.IDE(Integrated Development Environment)
1-1. IDC의 개념
* 프로그램 개발에 관련된 모든 절차를 하나의 프로그램 안에서 처리하는 환경
* 코드 에디터, 컴파일러, 디버깅 도구 등을 하나로 묶어 대화식으로 수행되는 인터페이스 환경
1-2. IDC의 지원 기능
1.개발환경: 프로그래밍 언어를 이용해서 프로그램을 손쉽게 개발할수 있는 환경을 제공
2.컴파일러 및 디버깅: 컴파일및 디버깅을 통해 오류를 수정하고 소스코드를 컴파일 할수 있는 환경제공
3.외부 모듈과의 통합
* 외부 인터페이스 모듈과 통합할수 있는 기능 지원
* 데이터베이스 연동기능을 지원
* 형상관리및 배포관리 기능을 지원
1-3. IDC의 종류
프로그램 | 플랫폼 | 지원언어 |
---|---|---|
이클립스(Eclipse) | 크로스 플랫폼 | java, c, c++, php |
비주얼 스튜디오(Visual Studio) | 윈도우즈 | Basic, .net, c, c++, c# |
안드로이드 스튜디오(Android Studio) | 안드로이즈 | java, c, c++ |
엑스코드(Xcode) | MacOS | java, c, c++, c#, AppleScript |
2.협업도구
2-1. 협업 도구의 개념
* 소프트웨어 개발에 참여하는 많은 인원의 개발자가 서로 다른 작업 환경에서 원활하게 프로젝트를 수행할수 있도록 도와주는 도구
2-2. 협업 도구의 필요성
* 소프트웨어 규모가 커지면서 많은 개발자가 필요함에 따라 개발자들 간의 협업은 선택이 아닌 필수 이슈가 되었다
* 개발자 간의 분야 및 경험이 다르기 때문에 꾸준한 협업을 통해 문제 발생 확률을 줄여야 한다
* 작업 일정이나 소프트웨어 아키텍처가 수시로 바뀔수 있기 때문에 개발자 간의 효과적인 기술 공유가 필요
2-3. 협업 도구의 기능
* 개발자 간의 다양한 의사소통과 작업 일정 및 이슈 공유가 가능
* 프로젝트에 도움이 되는 창의적인 아이디어 창출에 긍정적인 기반
2-4. 협업 도구의 종륲
1.문서 공유: Google Drive, Slide
2.소스 공유: GitHub
3.아이디어 공유: Evernote, Mindmeister
4.디자인 공유: Redpen
5.프로젝트 관리: Trello, Redmine, Task World
6.일정관리: Google Calendar, Confluence
3.형상관리도구
3-1. 형상관리도구개념
* 프로그램의 소스 코드나, 문서의 버전및 이력관리, 변경사항등을 체계적으로 관리할수 있는 기능을 제공하는 프로그램및 환경
* 소프트웨어 변경 사항을 체계적으로 추적하고 통제하는것
3-2. 형상관리도구의 필요성
* 형상 관리가 원만하게 이뤄지지 않으면 소프트웨어 개발의 전체적인 흐름이 불분명해진다
* 불필요한 소스코드의 수정을 제한할수 있고 빠른 오류복구가 가능하다
* 여러 개발자가 동시 개발이 가능하므로 높은 품질의 소프트웨어를 빠르게 개발할수 있다
3-3. 형상관리도구의 기능
1.check-out: repository 로부터 원하는 버전의 소프트웨어 형상의 사본을 컴퓨터로 가져오는 기능
2.check-in: 개발자가 수정한 코드를 repository로 업로드하는 기능
3.commit: repostiroy 업로드가 성공적으로 완료, 최종반영을 승인하는 기능
4.update: repostiory와 컴퓨터의 형상을 동기화하는 기능
5.import: 비어있는 repositroy에 처음소스를 업로드하는 기능
6.export: 버전관리파일을 뺀 순수 소스코드 파일만 받아오는 기능
3-4. 형상관리도구의 종류
1.CVS: 중앙 집중형 서버저장소에 클라이언트가 접속해서 버전관리를 실행
2.SVN: 다양한 서드 파티 GUI(Graphic User Interface) 존재
3.Git: 중앙 집중형 방식외에도 분산형 방식으로도 사용가능
4.Perforce: 코드와 바이너리 파일의 변환을 추적하기 위해 제작된 도구
참고자료 : 이기적 환상콤비 정보처리기사
728x90