ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Express Generator를 활용하여 Express 기본 앱 틀 생성하기
    프로그래밍/NodeJS 2018. 7. 10. 21:15
    반응형



    NodeJS 강좌를 들으면서 빼놓을수 없는것이 Express가 아닐까 생각한다. 이유로는 오픈되어있는 무료 강의중 하나인 생활코딩 강좌에서 NodeJS 수업을 하면서 빼놓지 않는것이 Express이기 때문이다. NodeJS의 플랫폼은 여러가지인것같지만 아직까지 그 차이점은 잘 모르겠다. Express 강좌를 듣기전에는 Inflearn에서 제공하는 React 강좌를 보았었고 생활코딩의 Node 구버전 강좌를 들어보면서도 Express를 통하여 CRUD 앱 및 보안, 로그인 기능을 구현해보았었다.


    뭔가 나와 잘맞아서 개인 프로젝트를 진행해보기도 했었지만 생각보다 앱의 규모가 커짐에 따라 유지보수가 너무나 힘들어서 내버려두었다.. 한창 Discord가 유명할때 디스코드와 똑같이 구현해보겠다고 진행한 프로젝트인데 생각보다 CSS 디자인이 너무나 힘들었었고 PUG (구 jade) 활용이 너무 난해해서 그랬던것 같다.



    로그인 페이지 구현.. 원래 디스코드 메인페이지도 구현했었는데 지금 막상 실행해보려하니 DB가 세팅되어있지 않아서 Main 페이지가 열리지 않는다 ㅠㅠ. OrientDB로 구현을 했더니 MySQL 프로젝트와도 호환이 되지 않는것같아서 머리가 아파져버린...


    대충 메인 페이지는 디스코드랑 똑같이 생겼다고 보면된다. 고수님들에게는 별거 아니겠지만 저 로그인 페이지 만드는데도 굉장한 시간이 투자되었다 -_-.. 이래만들었더니 뭐가 삐져나오고 뭐가 웹표준이 안맞고 ㅠㅠ.. 참고로 ZZAPCORD 라는 로고는 친구가 만들어 주었다.


    말이 세어버렸는데 결론적으로는 전부터 Express를 공부해서 기본적인 느낌은 알고 있었다는 것이다. 다만 이번에 생활코딩에서 새로 업로드된 Node 강좌를 보면서 쉬운 방법이 있다는것을 깨닫았다. 바로 Express Generator를 활용하는 방법이다. 생활코딩 (구) Node 강좌와 신 Node 강좌를 들어보면서 이고잉님의 코딩방식? 이 달라졌다는 생각이 들었었다. 나는 구 버전을 먼저 본 상황이였기에 프로젝트들은 그런 형식으로 개발하였었는데 이고잉님의 신 강좌에서는 폴더 구성이나 요런게 조금 달라졌던 것이다. Express (신) 강좌의 마지막에 Express Generator 에 대해서 소개 시켜주셨는데 뭔가 정규화 되어있는 느낌이라 매우 마음에 들었다. 리액트 공부할떄 Hello React 설치하는 느낌이랄까?



    사용 방법은 아래 링크에서 확인하자. StrongLoop / IBM에 의해 제공이 번역? 이라고 되어있는데 오픈소스이면 나도 번역 작업에 기여해볼까 싶어서 저기에 접속해보았는데 그런건 아닌것같다 ;ㅅ; 한글로 되어있고 아주 간결하게 설명되어있기에 아래 링크를 확인해봅시다~


    http://expressjs.com/ko/starter/generator.html



    Express Generator를 사용하여 앱을 구성하면 요렇게 코드가 미리 구성되어있다. 참고로 최근에 ATOM에서 Visual Studio Code로 작업 환경을 변경하였는데 정말 맘에 든다. ATOM의 경우에는 플러그인을 설치하다보면 이리저리 꼬여서 먹통이 되는 경우가 있었는데 VS Code는 뭔가 잘 작동하고 플러그인 스토어도 굉장히 맘에든다. Visual Studio Community는 지워버렸다. 전에 딥러닝 공부를 하느라 설치해뒀었는데 추후에 다시 공부하길 기원하며..


    이렇게 Express Generator를 활용하여 그림으로 치자면 팔레트는 깔아뒀는데.. 무엇을 만들어야 할지 모르겠다. 요즘 생각이 정체되어버린것 같아서 슬프다. 뭔가 기왕 만들면 실제로 쓸만한 것들을 개발하고 싶은데 딱히 떠오르는게 없다. 인터넷의 영향인건지.. 생각의 심도가 줄은것 같기도 하고 좀더 고민 해보아야할듯..

    반응형

    댓글 0

Designed by Tistory.