반응형
1. 문제 해결이란 무엇인가?
- 문제 해결 요소
- 목표 상태, 즉 우리가 달성하고자 하는 것. 목표 상태에 도달하면 문제가 해결된 것으로 간주한다.
- 문제를 해결해야 하는 시작 상태
- 시작 상태에서 목표 상태에 도달하는 방법을 규정하는 규칙
- 상태 공간
- 프로그램을 해결할 때 고려할 수 있는 모든 단계를 문제의 상태 공간이라고 한다.
2. 프로그래밍 문제를 해결할 때 LTM의 역할은 무엇인가?
- 문제 해결 시 LTM 사용
- 문제를 이해한다.
- 계획을 세운다
- 계획을 실행한다.
- 두 되는 익숙한 문제를 해결하는 것이 더 쉽다
- 문제 해결을 위한 LTM 교육 방법
- STM으로부터 문제의 상황에 대한 정보를 가져온다.
- 동시에 LTM은 관련 배경 지식을 검색한다.
- 문제 해결에 역할을 하는 두 가지 유형의 기억
- 절차적 기억: 운동 능력이나 의식하지 않고 발휘하는 기술에 대한 기억
- 선언적 기억: 기억할 수 있는 사실이 있고 그 사실을 자신이 알고 있다는 것을 아는 기억
- 일화적 기억: 우리가 일상적으로 흔히 기억(memory)이라는 단어를 사용할 때 의미하는 기억
- 의미적 기억: 의미, 개념, 또는 사실에 대한 기억
- 문제를 해결할 때 어떤 유형의 기억이 역할을 수행하는가?
- 키보드 입력시 실수할 때 누르는 command + z: 절차적 기억
- 과거에 문제를 어떻게 해결했는지 기억하는 경우: 일화적 기억
- 탈학습: 암시적 기억으로 인해 새로운 개념을 학습하기 어려운 경우도 있다
3. 자동화: 암시적 기억 생성
- 자동화: 걷기 독서, 신발 끈 묶기와 같이 어떤 기술을 여러 번 연습한 후에 아무 생각 없이 할 수 있을 정도의 수준
- 시간 경과에 따른 암시적 기억
- 인지 단계: 무언가 새로운 것을 배우는 단계. 새로운 정보를 더 작은 부분으로 나누고 당면한 작업에 대해 명시적으로 생각한다.
- 연상 단계: 응답 패턴이 나타날 때까지 새 정보를 적극적으로 반복해야 한다.
- 자율 단계: 기술이 완벽한 자율 단계
- 자동화를 통해 보다 신속하게 프로그램을 실행할 수 있는 이유=인스턴스 이론
- 유사한 작업을 마주 했을 때 인스턴스 기억이 부족하면 그 작업에 대해 추론해야 하지만 인스턴스 기억을 많이 가지고 있다면 이전에 수행했던 방법을 기억하고 동일한 방법을 적용할 수 있다.
- 암시적 기억 개선 방법
- 연습하고자 하는 기술이 필요한, 유사하지만 다른 프로그램을 많이 작성해 본다.
- 간격을 두고 반복 연습한다.
4. 코드와 해설에서 배우기
- 풀이된 예제: 다른 사람들이 문제를 어떻게 해결했는지 연구함으로써 얻는 해결책을 말한다.
- 본유적 부하: 두뇌가 정보를 LTM에 다시 저장하기 위해 수행하는 노력을 의미한다. 힘든 코딩 작업을 마친 후 때때로 자신이 한 일을 기억하지 못하는 경우가 이에 해당한다.
- 따라서 프로그램을 읽고 이에 대한 설명을 통해 배우는 것이 프로그램을 작성하며 배울 때보다 배우는 것이 더 많다.
- 개발 작업 시 풀이된 예제 활용하기
- 동료와 협업
- 깃허브 탐구
- 소스 코드에 대한 책 또는 블로그 게시물 읽기
발제문
- 처음엔 어려웠지만 시간이 경과하면서 암시적 기억이 자동화된 경험이 있나요? 저는 자바스크립트 화살표 함수의 괄호 처리 방식의 경우의 수가 다양해서 코드 작성 시 많은 실수를 했었습니다.
매개변수가 없는 경우:
예시1: const func = () => value;
예시2: const func = () => {
return value
};
하나의 매개변수인 경우:
예시1: const func = param => {
return value
};
예시2: const func = (param) => {
return value
};
예시3: const func = param => value;
예시4: const func = (param) => value;
여러 매개변수가 있는 경우:
예시1: const func = (param1, param2) => {
return value;
};
예시2: const func = (param1, param2) => value;
객체 리터럴을 반환하는 경우:
예시1: const func = () => ({ key: value })
예시2: const func = () => {
return { key: value };
};
그러다가 개념을 확실하게 잡은 시점이 React에서 함수형 컴포넌트를 만드는 과정에서 암시적 기억이 생성되었습니다.
저는 왜 암시적 기억이 생성되었을까요? CHAPTER10의 내용을 기반으로 유추해 보는 시간을 가지면 좋을 거 같습니다!
반응형
'독서 > 2024' 카테고리의 다른 글
[프로그래머의 뇌] CHAPTER12 대규모 시스템의 설계와 개선 (1) | 2023.05.16 |
---|---|
[프로그래머의 뇌] CHAPTER11 코드를 작성하는 행위 (0) | 2023.05.16 |
[프로그래머의 뇌] CHAPTER9 나쁜 코드와 인지 부하를 방지하는 두 가지 프레임워크 (0) | 2023.05.15 |
[프로그래머의 뇌] CHAPTER8 명명을 잘하는 방법 (0) | 2023.05.14 |
[프로그래머의 뇌] CHAPTER7 생각의 버그 (0) | 2023.05.14 |