전체 글 검색 결과
저자는 일반적 사례를 토대로 독자를 설득하고있다. 좋은 표기법은 불필요한 일들로부터 두뇌를 해방시킴으로써 좀더 고난도의 작업에 집중할수 있도록 해주고 현재 징행중인 일에 몰두할수 있게 하는 효과가 있다. 라고 말해주며, 언어학자들의 가정 중 언어의 표현력과 사고력은 비례하며, 언어로 표현할수 없는것은 그것을 구체화 할수도 없다 라고 말한다. 사례 파스칼로 새로운 시스템을 만들고 있었지만, 개발자들이 포트란에 경험이 있어 포트란식으로 파스칼을 사용하여, 프로그램을 짜는 비효율을 보여줬다. 언어의 특성들 1. 아이다 : 파스칼에 바탕을 둔 일반 목적의 고급 프로그램 언어이다. 2. 어셈블리어 : 기계에 명령에 1:1 대응되는 저급 언어 3. 베이직 : 뭐... 4. C : 최고. 5. C++ : .. 더 최..
첫째, 비유적 표현을 써서 머리속에 그림을 그려라 - 구축, 건물짓기와 어떤 도구를 쓸것인가? 라는 비유를 필자를 썻다. 둘째, 프로젝트 투입에 앞서 필요한 모든 시간을 관리자에게 할당 받아라 셋째, 올바른 문제점을 찾아라. - 이 과정에서 다른 문제점이 발견되었다면 다른 문제와 비교해보아라 - 이때는 문제만 찾는다. 오로지 문제만, 해결책 따위는 나중에 찾는다 오로지 문제만 찾는다. 넷째, 요구 조건을 분석하라 - 이때도 역시 요구조건을 분석하고, 다른 요구와 비교해 보아라 - 요구 분석이 매번 바뀐다면, 요구조건 자체를 제약을 걸어 특정시간에만 요구를 수렴해라 다섯째, 아키텍쳐를 짜라 - 각 구조간의 연관관계를 설명할수 있어야 한다. - 머리속에 모든 분류가 정리되어 있어야 한다.(기술될수 있어야 한..
항목 17. operator=에서 재귀치환을 검사한다. 이유 1. 효율성 때문이다. - 같은 값이면 대입할 필요가 없다 2. 정확함을 때문이다. 항목11 참조 (동적메모리 할당시 기존의 값이 있다면 날리고 해야 한다, 무결성을 보증하기 위해서다) 해결 방법 포인터의 값을 체크 - 효율도 높고 확실하다. - 또한 포인터 안으로 들어가서 세밀체크도 가능하다. - 강추! 2008/06/01 19:52 수정 인자로 들어온 값을 그대로 복사하고, 교체한다.(copy and swap 기법) 주의 사항 1. 객체를 기본자료형처럼 만드는것은 까다로우니, 가능성을 항상 고려해라 개인적 생각 1. 해결 방법 으로 우선 체크한다. 2. 객체의 아이디가 있을경우 아이디로 체크한다.(아이디같은 개념의 데이터) 이렇게 두가지를 ..
항목 16. operator=에서 모든 데이터 멤버들로의 치환을 수행한다. 이유 1. 재정의했었다면, 클래스 업그레이드 후 값을 변경안하면 안들어 간다. 2. 상속 관계의 값이 operator=으로 정상적으로 들어가지 않는다. 해결 방법 1. 업그레이드 하면 주의깊게 다시 정의 할것 2008/06/01 19:52 수정 수정 2. 상속관계일때는 자식의 생성자의 초기화 값자체를 인자로써 부모클래스의 생성자를 호출하면 정상적으로 된다. 1. 포인터의 깊은 복사가 필요없다면, 오히려 정의하지 않는 편이 더 좋다.(일일이 변경하지 않아도 되니까!) 주의 사항 1. 1번이 주의 사항이다. 2008/06/01 19:52 수정 수정 1. 만약 정의해아만 한다면, 반드시 operator=을 상황에 맞게 정의해야 한다! ..
최근댓글