분류 전체보기 174

17.3.1 module.exports 사용하기 - Node.js의 특별한 선물상자

📘 17.3.1 module.exports 사용하기 - Node.js의 특별한 선물상자어렸을 때, 생일선물을 받으면 어떤 마음이었나요? 포장지를 조심스럽게 뜯어내며 "안에 뭐가 들어있을까?" 하고 설레던 그 순간들 말이에요. 작은 상자 안에 누군가의 마음이 고스란히 담겨 있었죠.프로그래밍에도 그런 선물상자가 있어요. 우리가 정성껏 만든 함수나 변수들을 예쁜 상자에 담아서 다른 사람들에게 전해줄 수 있는 특별한 방법이 있거든요. 오늘은 Node.js라는 환경에서 사용하는 module.exports라는 선물상자에 대해 이야기해보려고 해요.🧠 새로운 단어들과 친해지기단어쉬운 설명CommonJSNode.js에서 사용하는 모듈 시스템의 이름module.exports우리가 만든 코드를 다른 파일에 보내주는 특별..

17.2.3 의존성 관리 - 필요한 재료 목록 정리하기

📘 17.2.3 의존성 관리 - 필요한 재료 목록 정리하기어머니가 요리를 시작하기 전에는 늘 같은 일을 하셨어요. 냉장고를 열어 재료들을 하나씩 꺼내어 놓으시는 거였죠. "계란찜을 만들려면 계란이 필요하고, 파도 있어야 하고..." 이렇게 중얼거리시며 필요한 것들을 차례로 준비하셨어요.그때는 몰랐지만, 어머니는 의존성을 관리하고 계셨던 거예요. 계란찜이라는 요리가 계란과 파에 의존하고 있다는 걸 아시고, 미리 준비해두신 거죠.오늘은 프로그래밍에서도 이처럼 어떤 코드가 어떤 다른 코드에 의존하는지 명확히 정리하는 방법인 의존성 관리에 대해 이야기해보려고 해요.🧠 새로운 단어들과 친해지기단어쉬운 설명의존성한 코드가 다른 코드 없이는 동작할 수 없는 관계의존성 관리코드들 사이의 필요 관계를 체계적으로 정리..

17.2.2 네임스페이스 분리 - 이름표 붙이기로 혼동 방지하기

📘 17.2.2 네임스페이스 분리 - 이름표 붙이기로 혼동 방지하기어느 봄날, 새 학기가 시작되었어요. 우리 반에는 민수가 둘이나 있었어요. 키 큰 민수와 안경 쓴 민수. 선생님이 "민수야!" 하고 부르시면 둘 다 "네!" 하고 대답해서 교실이 웃음바다가 되곤 했죠.그래서 선생님은 좋은 아이디어를 내셨어요. "키 큰 민수야", "안경 민수야" 하고 구분해서 부르기 시작한 거예요. 그러자 혼동이 사라지고 모든 게 명확해졌어요.프로그래밍에서도 이런 일이 일어날 수 있어요. 여러 모듈에서 같은 이름을 사용하면 헷갈릴 수 있거든요. 오늘은 이런 혼동을 막는 똑똑한 방법, 네임스페이스 분리에 대해 이야기해보려고 해요.🧠 새로운 단어들과 친해지기단어쉬운 설명네임스페이스이름들이 사용되는 특별한 구역이나 영역이름 ..

17.2.1 코드 재사용성 - 똑똑한 코딩의 비밀

📘 17.2.1 코드 재사용성 - 똑똑한 코딩의 비밀어린 시절, 할머니 댁에 가면 항상 신기한 광경을 볼 수 있었어요. 할머니는 온갖 재료를 작은 통에 나눠 담아 찬장에 정리해두셨죠. 소금, 설탕, 후추, 마늘, 생강... 각각의 통에는 이름표가 붙어있고, 필요할 때마다 꺼내서 음식에 넣으셨어요."왜 한 번에 다 넣지 않고 따로따로 담아두세요?" 물어보면, 할머니는 미소를 지으며 말씀하셨어요. "이렇게 해두면 김치찌개 끓일 때도, 볶음밥 할 때도, 필요한 것만 쏙쏙 꺼내서 쓸 수 있단다."오늘 이야기할 코드 재사용성도 할머니의 지혜와 닮아있어요. 한 번 만든 좋은 코드를 여러 번 사용하는 똑똑한 방법. 그것이 바로 우리가 배울 내용이에요.🧠 새로운 단어들과 친해지기단어쉬운 설명코드 재사용성한 번 만든..

17.1.3 `default export` - 파일의 주인공 정하기

📘 17.1.3 default export - 파일의 주인공 정하기프로그래밍을 배우는 여러분께 조용히 전해드립니다. 지금까지 export와 import로 코드를 나누어 사용하는 방법을 배웠지요? 이번에는 조금 더 특별한 방법을 알아볼 것입니다.바로 default export라는 기능입니다. 마치 반에서 반장을 정하는 것처럼, 파일에서 가장 중요한 하나의 기능을 주인공으로 정하는 방법입니다.🧠 새로운 단어들과 친해지기단어쉬운 설명default export파일에서 가장 중요한 하나의 기능을 기본 주인공으로 내보내는 방법named export지금까지 배운 방식으로, 이름표를 붙여서 여러 기능을 내보내는 방법✨ default export가 뭐예요?default export는 파일의 가장 중요한 기능 하나를 ..

17.1.2 `import`로 가져오기 - 다른 파일의 코드 사용하기

📘 17.1.2 import로 가져오기 - 다른 파일의 코드 사용하기프로그래밍을 배우는 여러분께 조용히 전해드립니다. 지난 시간에 export로 내가 만든 코드를 다른 파일과 공유하는 방법을 배웠지요? 이번에는 그 반대입니다. 다른 파일에서 export한 코드를 내 파일로 가져와서 사용하는 방법을 함께 나누려 합니다.바로 import라는 키워드를 사용하는 것입니다. 마치 친구가 빌려준 소중한 책을 내가 가져와서 읽는 것과 같습니다.🧠 새로운 단어들과 친해지기단어쉬운 설명import다른 파일에서 export한 코드를 내 파일로 가져오는 명령어가져오기다른 파일의 공유된 코드를 내 파일에서 사용할 수 있도록 연결하는 것모듈export와 import를 통해 연결될 수 있는 코드 파일✨ import가 뭐예요?..

17.1.1 `export`로 내보내기 - 나의 코드 공유하기

📘 17.1.1 export로 내보내기 - 나의 코드 공유하기프로그래밍을 배우는 여러분께 조용히 전해드립니다. 지금까지 우리는 한 파일 안에서만 코드를 만들고 사용해왔습니다. 하지만 만약 다른 파일에서도 내가 만든 함수를 사용하고 싶다면 어떻게 해야 할까요?오늘은 내가 만든 코드를 다른 파일과 공유하는 방법의 기초에 대해 함께 나누려 합니다. 마치 친구들과 좋은 것을 나누어 쓰는 것처럼 자연스럽게 말입니다.🧠 새로운 단어들과 친해지기단어쉬운 설명export내가 만든 코드를 다른 파일에서도 사용할 수 있게 내보내는 명령어모듈관련된 코드들을 하나로 묶어놓은 파일코드 공유다른 파일에서 우리 코드를 가져다 쓸 수 있도록 허락해주는 것export는 영어로 "수출하다", "내보내다"라는 뜻입니다. 우리나라에서 ..

16.2.3 상속 구현하기 - 부모님의 능력을 물려받기

📘 16.2.3 상속 구현하기 - 부모님의 능력을 물려받기프로그래밍을 배우는 여러분께 조용히 전해드립니다. 혹시 부모님과 닮은 점이 있나요? 눈이 아버지를 닮았거나, 목소리가 어머니를 닮았다는 이야기를 들어본 적이 있을 것입니다.프로그래밍에서도 이처럼 부모의 특징을 자식이 물려받는 방법이 있습니다. 이것을 상속이라고 합니다. 오늘은 간단한 방법부터 차근차근 알아보겠습니다.🧠 새로운 단어들과 친해지기단어쉬운 설명상속부모가 가진 능력과 특징을 자식이 그대로 물려받는 것부모 생성자자신의 능력을 다른 생성자에게 물려주는 원본자식 생성자부모 생성자로부터 능력을 물려받는 새로운 생성자프로토타입 연결부모와 자식을 이어주는 특별한 연결고리상속은 영어로 "Inheritance"라고 합니다. "Inherit"는 "물려..

16.2.2 프로토타입으로 메서드 추가하기 - 모두가 함께 쓰는 공통 기능

📘 16.2.2 프로토타입으로 메서드 추가하기 - 모두가 함께 쓰는 공통 기능어떤 이야기든 반복되는 것들이 있습니다. 매일 아침 일어나서 이를 닦고, 밥을 먹고, 학교에 가는 일상의 반복처럼요. 코딩에서도 이런 반복되는 일들이 있어요. 그런데 같은 일을 여러 번 만들어두는 것보다는, 한 번만 만들어서 모두가 함께 사용한다면 얼마나 좋을까요?오늘은 그런 이야기를 해보려고 해요. 모든 객체가 함께 사용할 수 있는 공통 기능을 만드는 방법. 마치 우리 동네 작은 도서관에 있는 책 한 권을 모든 사람이 돌아가며 읽는 것처럼, 컴퓨터 안에서도 그런 나눔이 가능하답니다.🧠 새로운 단어들과 친해지기단어쉬운 설명프로토타입 메서드모든 객체가 함께 사용할 수 있는 공통 기능인스턴스 메서드각 객체가 개별적으로 가지는 기..

16.2.1 생성자 함수로 객체 만들기 - 나만의 공장 세우기

📘 16.2.1 생성자 함수로 객체 만들기 - 나만의 공장 세우기프로그래밍을 배우는 여러분께 조용히 전해드립니다. 지금까지 우리는 객체를 하나씩 정성스럽게 만드는 방법을 배웠습니다. 하지만 만약 비슷한 객체를 100개 만들어야 한다면 어떨까요? 하나씩 만들기에는 너무나 긴 여정이 되겠지요.그래서 오늘은 생성자 함수라는 특별한 방법을 함께 나누려 합니다. 이것은 마치 같은 모양의 쿠키를 만들 때 쿠키 틀을 사용하는 것과 같습니다. 한 번 틀을 정성스럽게 만들어 놓으면 쿠키를 몇 개든 자연스럽게 만들 수 있으니까요.🧠 새로운 단어들과 친해지기단어쉬운 설명생성자 함수똑같은 형태의 객체를 여러 개 만들어주는 특별한 함수인스턴스생성자 함수로 만들어진 실제 객체new 연산자"새로운 객체 하나 만들어주세요"라고 ..