728x90
반응형

프로그래밍 3

[프로그래밍] 소프트웨어 설계의 개요

소프트웨어 설계란 컴퓨터 프로그램에 대한 요구를 조작 가능한 프로그램으로 변환시키는 계획의 개념, 발명, 책략을 의미한다. 설계는 요구 사항을 코드 작성과 오류 수정에 연결시키는 행위를 말한다. 설계의 단계 1단계 : 서브 시스템으로 분할 이 단계에서 설계의 주요 작업은 모든 주요 서브 시스템의 구분이다. 이 단계의 주요 설계 행위는 어떻게 프로그램을 주요 구성 요소로 분리하느냐를 결정하는 것과 구성 요소 사이의 인터페이스를 정의하는 것이다. 서브 시스템은 일반적으로 모듈과 루틴을 포함한 전체 프로그램보다 작은 프로그램의 부분을 가리킨다. 2단계 : 모듈로 분할 이 단계에서의 설계는 시스템의 모든 모듈의 정의를 포함한다. 대형 시스템의 프로그램 분할 단계에서 지정된 서브 시스템은 너무 커서 직접 모듈로 ..

[프로그래밍] 루틴의 특성

루틴이란 하나의 단일 목적에 도달하기 위한 개별적인 함수나 프로시저를 말한다. 루틴 작성의 이유 복잡성의 감소 루틴 작성의 가장 중요한 이유는 프로그램의 복잡성을 줄이는 데 있다. 정보를 숨기는 루틴을 만들면 그것에 관해 생각할 필요도 없다. 자세한 세부 사항은 잊고 내부적 작업을 알지 못해도 루틴을 사용할 수 있다. 루틴의 추상화 기능 없이 복잡한 프로그램을 머리만으로 관리하는 것은 불가능하다. 코드의 중복을 피함 의심할 것도 없이 가장 널리 알려진 이유는 코드 중복을 피하는 것이다. 2개의 루틴 안에 유사한 코드를 만들면 그것들이 분리되어 있어 에러를 내포할 가능성이 크다. 양쪽 루틴에서 중복되는 코드가 있다면 공동 코드화 시킨다. 그러고 나서 양쪽의 코드 부분에 새 루틴을 사용한다. 공간 절약은 물..

전문가를 위한 C++ | 마크 그레고리 | 한빛미디어

이 책은 개정 3판에 사서 본 책이다. 보통의 바이블 서적의 경우 아주 기초적인 것에서부터 자세하게 다룬다. 읽고 있으면 지겨운 부분도 많다. 대부분의 사람들이 집합만 보다가 덮는 수학 책처럼 그런 바이블 서적들이 많았다. 이 책은 앞단에 '전문가를 위한'이라고 명시를 해 두었다. 기초를 어느 정도 다진 프로그래머라면 한 단계 더 발전할 수 있는 계기를 마련할 수 있다. 문법적인 것을 설명하는 것과 더불어 어떻게 구현하는지 왜 그래야 하는지를 세심하게 짚어가며 설명해 준다. 가벼운 내용에 페이지를 허비하지 않으며 꼭 설명해야 하는 부분에서는 여러 장을 들여 설명한다. 개정 3판도 1200페이지가 넘는 엄청난 양이였지만 개정 4판은 1500페이지에 육박한다. 개정 3판은 C++14를 개정 4판은 C++17..

참고자료/도서 2021.07.29
728x90
반응형