프로그래머의 뇌 - 6. 코딩 문제해결을 더 잘하려면
·
✒️Notes/📕공부기록
프로그래머의 뇌 (펠리너 헤르만스 지음) 📍목차 1장 | 코드 더 잘 읽기 1. 코딩 중 겪는 혼란에 대한 이해 2. 신속한 코드 분석 3. 프로그래밍 문법 빠르게 배우기 4. 복잡한 코드를 읽는 방법 2장 | 코드에 대해 생각하기 5. 코드를 더 깊이있게 이해하기 6. 코딩 문제해결을 더 잘하려면 📍요약 ✅문제를 표현하는 방법은 문제에 대한 생각에 큰 영향을 미칠 수 있다 예) 고객을 리스트와 집합으로 표현하는 방법이 고객 객체를 저장하고 분석하는 방법에 영향을 줄 수 있다 ✅멘탈 모델 - 문제를 생각할 때 형성하는 정신적 표상 - 사람은 서로 경쟁하는 여러개의 정신 모델을 가질 수 있다 ✅개념적 기계 - 실제 컴퓨터가 어떻게 기능하는지를 추상적으로 표현한 것 - 기존의 스키마타(기억과 LTM)를 프로..
프로그래머의 뇌 - 5. 코드를 더 깊이있게 이해하기
·
✒️Notes/📕공부기록
프로그래머의 뇌 (펠리너 헤르만스 지음) 📍목차 1장 | 코드 더 잘 읽기 1. 코딩 중 겪는 혼란에 대한 이해 2. 신속한 코드 분석 3. 프로그래밍 문법 빠르게 배우기 4. 복잡한 코드를 읽는 방법 2장 | 코드에 대해 생각하기 5. 코드를 더 깊이있게 이해하기 📍요약 ✅코드를 깊게 이해하는 다양한 방법이 존재한다 1. 변수 역할 프레임워크 (role of variable) 2. 헝가리안 표기법 (현재는 안쓰임) 3. 텍스트 이해 전략 - 코드 읽기와 자연어 읽기가 매우 유사하므로, 자연어를 쉽게 배우는 능력을 통해 프로그래밍을 배우는 능력을 예측 가능 - 텍스트 이해 전략을 코드 읽기에 적용 가능 📍"변수 역할" 프레임워크 ✅핀란드의 사야니에미 교수가 만든 프로그램 내에서 변수 역할(총 11개)을 ..
프로그래머의 뇌 - 4. 복잡한 코드를 읽는 방법
·
✒️Notes/📕공부기록
프로그래머의 뇌 (펠리너 헤르만스 지음) 📍목차 1장 | 코드 더 잘 읽기 1. 코딩 중 겪는 혼란에 대한 이해 2. 신속한 코드 분석 3. 프로그래밍 문법 빠르게 배우기 4. 복잡한 코드를 읽는 방법 📍4-1. 복잡한 코드를 이해하는 것이 왜 어려울까? ✅작업 기억 공간 (Working Memory) 은 특정 문제에 대한 STM이다. 따라서 많아봐야 7개 정도의 공간 제한이 있다. 인지 부하(cognitive load) : WM이 처리할 수 있는 한계 인지 부하가 한도를 초과하면 과부하(overload) 상태가 된다 ✅인지 부하의 3종류 - 내재적 부하 : 문제 자체의 복잡도. 예) 피타고라스의 법칙을 이해. 3^2 + 4^2 = 5^2 - 외재적 부하 : 외부적 요인에 의해 문제에 추가된 것 예) 피..
프로그래머의 뇌 - 3. 프로그래밍 문법 빠르게 배우기
·
✒️Notes/📕공부기록
프로그래머의 뇌 (펠리너 헤르만스 지음) 📍목차 1장 | 코드 더 잘 읽기 1. 코딩 중 겪는 혼란에 대한 이해 2. 신속한 코드 분석 3. 프로그래밍 문법 빠르게 배우기 📍요약 ✅문법에 대한 지식이 많을 수록 코드를 읽을 때 청킹하여 쉽게 이해할 수 있다 ✅기억이 없어지는 것을 방지하기 위해, 의도적인 인출 연습이 필요 (무심코 검색하는 것보다 떠올리려고 노력해보기) 📍3-1. 문법을 기억하기 위한 팁 ✅업무 중단은 개발자의 생산성을 크게 저하 예) 모르는 메서드를 찾으려 검색하다가 메일 확인 등 다른 내용으로 빠지게 됨 => 작업하던 내용을 잊어버림 - 다시 업무로 돌아가는데 평균 15분 정도 걸림 ⭐따라서, 문법이나 메서드를 암기하고 있는 것은 개발 생산성을 상승시킬 수 있음 (LTM 활용 가능) ..
프로그래머의 뇌 - 2. 신속한 코드 분석
·
✒️Notes/📕공부기록
프로그래머의 뇌 (펠리너 헤르만스 지음) 📍목차 1장 | 코드 더 잘 읽기 1. 코딩 중 겪는 혼란에 대한 이해 2. 신속한 코드 분석 📍요약 ✅STM - 저장공간 : 7개 전후 => 크기 제한을 극복하기 위해 LTM과 협업 - 정보는 STM 전 감각 기억 공간을 거쳐서 일부만 STM에 전달됨 ✅청크 - 새로운 정보를 읽을 때, 우리 두뇌는 그 정보를 청크라는 몇 개의 묶음으로 나눔 ✅코드를 읽을 때 인지 과정 - LTM에서 인출할 지식이 없으면, 키워드같은 정보에 의존해야 해서 STM의 공간이 빠르게 소진됨 - LTM에 관련 지식이 많으면, STM에 저장하는 대신, LTM에서 "자바스크립트에서의 for loop" 같은 방식으로 기억을 인출하므로 STM 공간을 절약 ✅코드를 더 잘 읽는 방법 - 디자인 ..
프로그래머의 뇌 - 1. 코딩 중 겪는 혼란에 대한 이해
·
✒️Notes/📕공부기록
프로그래머의 뇌 (펠리너 헤르만스 지음) 📍목차 1장 | 코드 더 잘 읽기 1. 코딩 중 겪는 혼란에 대한 이해 📍요약 ✅코드를 읽을 때 혼란이 생기는 이유 3가지 - 지식(LTM) 부족 - 정보(STM) 부족 - 두뇌의 처리 능력(Working Memory) 부족 => 코드 읽을 때 3가지 인지 과정이 모두 발생 ✅인지 과정 1. LTM에서 정보 인출 (키워드의 의미 => 프로그래밍 언어를 알고 있는지) 2. STM에 정보 일시 저장 (메서드나 변수의 이름 => projectName 변수는 프로젝트명을 가리키는 변수... ) 3. Working Memory에서 코드를 읽고 처리 (for loop 의 시작 인덱스가 맞나 틀리나.. ) => 이 3가지 인지 과정은 동시에 발생하며 상호 보완적 작용 예) 처..
QDD 1-4. Strapi Headless CMS 및 Cloudinary로 백엔드 구성하기
·
✒️Notes/🎥활동
📍개요 포럼 관련 정보를 저장할 데이터베이스와 이미지 저장용 스토리지를 사용하기 위해, strapi 앱을 만들고 aws s3와 연동한다 📍strapi 는? - strapi의 뜻은 bootstrap your API 에서 유래했다 - 오픈소스 Headless CMS 로서 직접 백엔드를 구성하는 것 대신 스트래피를 선택할 수 있다 📍strapi 시작하기 yarn 또는 npx create 를 사용하여 CLI를 통해 strapi 패키지를 자동으로 설치해주는 앱을 시작할 수 있다 yarn create strapi-app my-project or npx create-strapi-app@latest my-project 이후 CLI에서 quickstart를 사용할지 물어본다 - quickstart를 사용하면 DB가 SQ..
QDD 1-3. useRouter, API Routes, getStaticProps, getStaticPaths
·
✒️Notes/🎥활동
📍Q8. 특정 URL에서만 특정 컴포넌트를 렌더링하려면? ✅Next.js의 useRouter 훅을 사용 - React 훅이므로 컴포넌트 내부에서만 사용 가능! - 사용 전에 아래 처럼 선언 필요 import { useRouter } from 'next/router' function ActiveLink({ children, href }) { const router = useRouter(); // 선언 const style = { marginRight: 10, color: router.asPath === href ? 'red' : 'black', }; // ... } router 객체의 pathname, asPath, route 프로퍼티를 이용하면 현재 페이지의 파라미터를 받을 수 있다 query 프로퍼티를..