c++4 02. 간단한 설계를 위한 원칙과 패턴 모든 내용은 [오즈 모리하루 저, "C와 C++ 게임 코드로 알아보는 코딩의 기술", 한빛미디어] 를 기반으로 제 나름대로 이해하여 정리한 것입니다. 다소 부정확한 내용이 있을수도 있으니 이를 유념하고 봐주세요! # 객체 지향 설계에는 기본적인 사고방식과 원칙이 있다. 원칙에 너무 집착하는 것은 좋지 않지만, 어느 정도의 설계 방침으로 삼아 개발한다면 도움이 될 것이다. 1. 캡슐화, 응집도, 결합도 - 위 3가지는 보수성이 높은 클래스를 설계할 때 사용하는 기본요소 - 위 3가지를 의식하기만 해도 코드 품질은 매우 좋아짐 - 객체 지향 언어 이외의 범위에도 사용할 수 있는 중요한 개념 * 캡슐화(encapsulation) - 객체 내부의 변수 또는 구현 상세를 사용자로부터 은폐하는 것 - 멤버변수를 p.. 2020. 8. 23. 문제해결 및 실습 : C++(3학년 1학 학교에서 강의를 통해 공부하면서 조금씩 적어놨던 것을 기록하고자합니다. 내용이 많지는 않습니다. struct 구조체명 { ... }; - 구조체와 클래스의 차이점은 단지 디폴트 접근 지정자의 차이 뿐이다. (구조체는 public, 클래스는 priviate) - C++에서 구조체 객체 생성 시에 "struct 키워드"를 사용하지 않는다. e.g. struct Circle { ... }; Circle circle; - 클래스 선언부에서 정의한 함수의 경우에는 자동으로 인라인화 된다. - 함수 호출에 대한 오버헤드를 막기 위해서는, 크기가 작고 자주 호출되는 함수에 대해 인라인화 하는 것이 좋다.(inline 키워드 사용) - 인라인화는 컴파일러에 의해 이루어지며, 컴파일러가 임의로 인라인화 하는 경우도 있다.. 2020. 8. 22. 03. 소스 코드 품질 측정 모든 내용은 [오즈 모리하루 저, "C와 C++ 게임 코드로 알아보는 코딩의 기술", 한빛미디어] 를 기반으로 제 나름대로 이해하여 정리한 것입니다. 다소 부정확한 내용이 있을수도 있으니 이를 유념하고 봐주세요! # 매트릭스 측정 - 소스 코드의 품질을 정량화할 수 있다. - 코드의 유지성 또는 가독성을 일정한 기준에 따라 수치로 평가할 수 있다. 1. 파일 또는 함수 단위 매트릭스 1) 코드줄 수 - 적을수록 좋음 2) 주석줄 수 - 적을수록 유지보수가 어려울 것으로 예상 3) 문장줄 수 - 적을수록 좋음 * 문장(statement) : 프로그램 하나의 작동을 나타내는 단위 4) 최대중첩 수 - 적을수록 가독성이 좋음 5) 사이크로매틱 복잡도 : 제어 흐름의 복잡성을 수치화, 제어문 수가 많을수록 수치.. 2020. 8. 22. 01. 읽기 좋은 코드를 작성하는 기술 모든 내용은 [오즈 모리하루 저, "C와 C++ 게임 코드로 알아보는 코딩의 기술", 한빛미디어] 를 기반으로 제 나름대로 이해하여 정리한 것입니다. 다소 부정확한 내용이 있을수도 있으니 이를 유념하고 봐주세요! # 읽기 좋은 코드의 조건은 "의도를 명확하게 전달할 수 있는 코드" 라고도 할 수 있다. - 다른 개발자가 읽더라도 쉽게 이해할 수 있는 코드를 작성하자. - 읽기 좋은 코드는 가독성이라는 지표로 나타낼 수 있다. - "코드의 가독성"은 코드의 보수성(코드의 변경, 추가, 테스트가 얼마나 용이한지를 나타내는 지표)에 영향을 줌 - "코드의 보수성을 높이는 방법"이 이 책의 주제이다. # 복잡하게 커져 버린 코드의 문제를 단순화하고, 작게 나누는 기술이 코드의 가독성, 보수성 향상을 위한 핵심이.. 2020. 8. 22. 이전 1 다음