목적성에 맞는 자바스크립트의 이해
인간의 행동은 항상 목적성이 있다. 벤저민 하디의 퓨처셀프의 책내용 중
아내가 밖에 볼일이 있어서 나가려고 할 때 모자를 썼다. 그래서 아내의 남편이 이렇게 물었다.
왜 오늘은 모자를 쓴 거야? 이 물음에 아내는 그냥이라고 말한다. 딱히 별생각해서 쓴 건 아니라고
그런데 과연 그 아내가 오늘 모자를 쓰기 싫었다면 모자를 썼을까?
생각이 없는 것처럼 보여도 사람은 결국 어떠한 목적성에 따라서 움직인다.
우리가 말하는 언어도 마찬가지다.
한국어. 영어. 일본어. 중국어 등등
한국어를 하는 이유도 한국에서 살아가기 위해서.
영어를 하는 이유는 영어를 하면 서칭 할 때도 편하고 다른 나라에 가 도 의사소통이 충분히 가능하기에
즉 다른 나라에서도 살아가기 위해서.
일본어 중국어도 마찬가지이다. 그 나라에서 살아가기 위해서 우리는 그 나라에 맞는 언어를 배운다.
어떠한 이유 든 간에 목적성이 존재한다.
그러면 우리는 여기서 좀 더 생각해 봐야 될 것이 있다.
나는 한국인이라서 한국어를 배웠고 한국어를 쓰면서 사람들과 의사소통하고 있다.
잘 생각해 보면 나는 모르는 단어도 많다. 맞춤법도 정확하지 않다.
그런데도 우리는 한국어로 의사소통을 한다.
국어점수 50점인 나와 100점인 친구 둘 중에 나를 보고 한국어를 잘 못한다고 할 수 있는가.
점수로 비교하면 잘 못한다고 할 수 있겠지. 근데 의사소통이 안 되는 건 아니지 않은가.
50점인 나도 다른 사람에게 내 의도를 전달할 수 있다.
목적성이 결여되면 일어나는 일
목적성이 없다면 어떻게 될까. 결국 이게 파이썬이다. 이게 c언어다. 이게 자바스크립트다. 이게 자바다. 등등 책만 계속 보게 될지도 모른다. 아니 그럴 확률이 높다. 그러면 학습그래프는 꾸준한 우상향이 아닐 가능성이 높다.
어느 순간 알을 깨서 학습그래프의 각도가 높아질 수 있다. 그것을 부정하지는 않지만 시간이 아깝다. 자바스크립트로만 가지고 살아먹는다는 건 이것만 가지고 인생 끝까지 살아갈 거야 와 같은 이야기니까. 개발자로 올라온 거 프로젝트 매니저까지는 올라가야 되지 않을까? 목적성이 없다면 한 가지에 매몰될 가능성도 높고 습관이 생겨 다른 일을 할 때 어려워할 수 있다. 그러면 슬프지 않을까.
내가 추구하는 건 사파다. 어제보다 오늘 조금이라도 경험치가 쌓여 우상향 하는 사파다.
자바스크립트도 결국 언어
프로그래밍 언어 또한 마찬가지이다.
언어라는 도구이기에 그냥 의사소통만 가능할 정도만 하면 된다.
그리고 의사소통할 때 많이 쓰는 단어들이 있다. 나는 이렇게 생각해라던가, 왜냐하면이라던가
자바스크립트도 똑같고 c도 똑같고 파이썬도 다 똑같다. 프로젝트를 진행하면서 쓰는 거지
그러다가 잘 안 쓰는 단어는 찾아보고 아 이런 단어가 있었지 하면서 그대로 넘어가면 된다.
그렇기에 자바스크립트라는 언어를 가지고 무엇을 할 것인지 확실하게 목적성을 정하고 간단하게 넘어갈 수 있는 부분은
넘어가는 게 맞다.
일반적인 커리큘럼
1. 자바스크립트
-변수, 연산자, 조건문, 반복문
-함수와 스코프
-객체와 배열 다루기
-비동기
2. node.js 기초
-node.js 설치 및 환경 설정
-모듈 시스템 이해
-기본 내장 모듈 활용
3. express.js 기본
-express.js 설치 및 기본 구조 이해
-라우팅 및 미들웨어 개념
-http 메서드 활용
4. 데이터베이스 연동
-mongodb 또는 다른 데이터베이스 선택
-해당 데이터베이스의 드라이버를 사용하여 데이터베이스 연동
5. express.js 심화
-템플릿 엔진 사용
-세션 및 쿠키 관리
-사용자 인증과 권한 부여
6. RESTful API 개발
-RESTful API 디자인 원칙 이해
-express.js를 사용하여 API 라우트 구현
-POST, GET, PUT, DELETE 등의 http 메서드 활용
7. express.js 고급 주제
-파일 업로드 및 다운로드 처리
-websocket을 사용한 실시간 통신 구현
-express.js의 고급 미들웨어 활용
8. 프로젝트 구현
-프로젝트 구현 및 데이터베이스 통합
-사용자 경험을 고려한 프런트엔드
9. 프로젝트 배포
-프로젝트를 실제 서버에 배포방법 학습
-클라우드 서비스 활용
10. 테스트와 보안
-유닛 테스트와 통합 테스트 작성
-보안 관련 학습
사실 이것도 좋은 커리큘럼이다. 이대로 따라가도 무방하다.
오로지 아웃풋을 위한 커리큘럼
1. node.js 및 express.js 기본
-node.js와 express.js 설치 및 기본 구조 이해
-라우팅, 미들웨어 활용
-express generator를 통한 프로젝트 구조 생성
2. RESTFul API 개발
-RESTful API 디자인 원칙 이해
-express.js를 사용하여 간단한 API 라우트 구현
3. 데이터베이스 연동
-mongodb 또는 다른 sql 데이터베이스 선택
-mongoose를 사용하여 데이터베이스 모델과 연동
4. express.js 미들웨어 활용
-인증 미들웨어를 통한 기본 사용자 인증
-에러 핸들링 미들웨어 구현
5. 프로젝트 구현
-프로젝트에 대한 요구사항 분석
-필수적인 API 엔드포인트 및 로직 구현
-프런트엔드와의 협업을 위한 API 문서 작성
6. 프로젝트 배포
-프로젝트를 실제 서버에 배포방법 학습
-클라우드 서비스 활용
7. 보안과 테스트
-데이터 검증과 입력 필터링 적용
-단위 테스트 및 통합 테스트 작성
8. 실전 문제 해결
-프로젝트 진행 중 발생하는 문제 해결 경험 쌓기
-오픈 소스 및 커뮤니티를 활용하여 문제 해결
중간에 모르는 것들은 돌아가서 보면 된다. 지금 중요한 것은 학습과정에서의 완벽한 성공이 아니라
실제 프로젝트의 성공이다. 오픈소스의 근본을 이해하라.
'자바스크립트(javascript)' 카테고리의 다른 글
노드(Node.js) (1) | 2024.02.05 |
---|