반응형
1. 코드베이스의 특성 조사
라이브러리, 프레임워크, 모듈에 대해 이야기할 때, 기술적인 측면에 대해 이야기할 수 도 있지만 인지적 차원의 코드베이스(CDBN)를 고려하면 사용자에게 미치는 영향을 이해하는 데 도움이 된다.
- 인지적 차원
- 오류 경향성
- 일관성
- 분산성
- 숨겨진 의존성
- 잠점성: 사용하는 동안 생각하는 것이 얼마나 쉬운지에 대한 것이다.
- 점도: 특정 시스템을 변경하는 것이 얼마나 어려운가에 대한 차원으로, 잠정성과 관련이 있다.
- 점진적 평가: 주어진 시스템에서 부분적인 작업을 확인하거나 실행하는 것이 얼마나 쉬운지에 대한 것이다.
- 역할 표현력: 프로그램에서 여러 가지 다른 부분의 역할을 얼마나 쉽게 알 수 있는지를 나타낸다. 메서드에 ()를 표현하는 것과 변수와 키워드를 다른 색으로 보여 주는 게 이에 해당한다.
- 매핑 근접성: 프로그래밍 언어 또는 코드가 문제의 해결 영역에 얼마나 가까운지를 의미한다.
- 힘든 정신 활동 여부
- 보조 표기법
- 추상화: 시스템의 사용자가 기본적으로 제공되는 추상화만큼 강력한 추상화를 만들 수 있는지 여부다.
- 가시성: 시스템의 다른 부분을 얼마나 쉽게 볼 수 있는지를 나타낸다.
- 설계 기동 및 트레이드 오프
- 오류 경향성 vs 점도: 오류 경향성을 줄이기 위해 타입 시스템을 적용하게 되면 점도가 늘어난다.
- 잠정성 및 점진적 평가 vs 오류 경향성: 미완성되거나 불완전한 코드라도 스케치하거나 실행할 수 있지만 오류의 경향성이 커진다.
- 코드베이스에서 특정 차원을 개선하기 위해 코드베이스를 변경하는 것을 설계 기동이라 한다.
2. 차원 및 활동
발제문
- 라이브러리, 프레임워크, 모듈을 선택할 때 CDBN의 어떤 항목을 가장 중요하게 생각하시나요?
그 결과 선택한 도구의 이름은 무엇이고 다른 것과 비교했을 때 어떤 장단점이 있었나요?
반응형
'독서 > 2024' 카테고리의 다른 글
[설득의 법칙-사람의 마음을 끌어당기는 10가지 심리학] PART1. 논리 (1) | 2023.06.12 |
---|---|
[프로그래머의 뇌] CHAPTER13 새로운 개발자 팀원의 적응 지원 (0) | 2023.05.16 |
[프로그래머의 뇌] CHAPTER11 코드를 작성하는 행위 (0) | 2023.05.16 |
[프로그래머의 뇌] CHAPTER10 복잡한 문제 해결을 더 잘하려면 (0) | 2023.05.15 |
[프로그래머의 뇌] CHAPTER9 나쁜 코드와 인지 부하를 방지하는 두 가지 프레임워크 (0) | 2023.05.15 |