SW

· CS
1. 객체 지향 프로그래밍(OOP) 주어진 문제영역을 실세계 안에 존재하는 객체의 집합으로 보고, 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체로 만들어 객체들간의 상호작용을 통해 로직을 구성하는 프로그래밍 2. 객체 지향 설계 객체와 클래스 : 객체는 독립적으로 존재하는 실세계의 사물, 클래스는 유사한 객체들의 모임으로 각 객체는 특정 속성의 모임에 의해 기술됨. 객체를 묶는 작업을 분류화라고 함 캡슐화 : 정보 은닉을 통한 추상화, 독립성 향상을 얻을 수 있는 방법, 속성과 오퍼레이션을 함께 묶어 보호함. 모듈의 기능적 독립성은 단위 모듈의 처리 완전성을 높이고 타 모듈과의 처리 종속성을 최소화할 때 극대화됨 상속 : 클래스의 정의를 단순화, 기존에 정의되어 있는 클래스를 이용하여..
· CS
1. 애자일 방법론 소프트웨어 개발 및 프로젝트 관리에서 사용되는 접근 방식 중 하나로, 반복적이고 협업 중심의 개발 방법론. 작업 계획을 짧은 단위로 세우고 시제품을 만들어 나가는 사이클을 반복함으로써 고객의 요구 변화에 유연하고도 신속하게 대응하는 방법론이다. 계획 및 분석 : 고객과 사용자가 원하는 바를 파악하여 타당성을 조사하고 SW 기능과 제약조건을 정의하는 명세서 작성, 대상이 되는 문제 영역과 사용자가 원하는 task를 이해하는 단계 설계(디자인) : 기획의도에 맞는 설계 및 디자인 추가 및 수정하는 단계 개발(발전) : 설계단계에서 만들어진 설계서를 바탕으로 프로그램을 작성, 코딩, 디버깅, 단위/통합 테스트 수행 테스트 : 발생 가능한 실행 프로그램 오류를 발견, 수정하는 단계 검토(피드..
· CS
1. TDD란(Test Driven Development) 테스트 주도 개발. 반복 테스트를 이용한 방법론으로, 작은 단위의 테스트 케이스를 작성하고 이를 통과하는 코드를 추가하는 단계를 반복하여 구현 2. TDD 개발 주기 Write Failing Test : 실패하는 테스트 코드 먼저 작성 Make Test Pass : 테스트 코드를 성공하기 위한 실제 코드 작성 Refactor : 중복 코드 제거, 일반화 등의 리팩토링 수행 💡 실패하는 테스트 코드를 작성할 때 까지 실제 코드를 작성하지 않고, 실패하는 테스트를 통과할 정도의 최소 실제 코드를 작성함으로써 실제 코드에 대해 기대되는 바를 보다 명확하게 정의하여 불필요한 설계를 피할 수 있고 정확한 요구 사항에 집중 가능 3. TDD의 장점 보다 튼..
· CS
1. 클린코딩 💡 코드를 작성하는 의도와 목적이 명확하며 가독성이 높은 코드 특징 명확한 네이밍 오류, 중복 없음 의존성 최대한 감소 클래스 혹은 메소드가 한 가지 일만 처리해아함 규칙 Naming : 변수, 클래스, 메소드에 의도가 분명한 이름 사용 Comment : 주석은 반드시 달 이유가 있는 경우에만 작성 Aesthetics (꾸미기): 규칙적인 들여쓰기와 줄바꿈, 불규칙한 중복 코드 제거 Making Control flow easy to read (흐름제거 만들기) 비교 시 왼쪽에 변수, 오른쪽에 상수 조건문 내에는 긍정문 if/else 를 사용하며, 삼항 연산자는 매우 간단한 경우만 do/while 루프의 사용은 가급적 삼가 Function : 함수는 가급적 작게, 한번에 하나의 작업만 수행할..
따봉치치
'SW' 태그의 글 목록