본문 바로가기
개발 노트 꾸러미/스파르타 코딩 교육 AI웹 개발노트

AI웹개발 WIL 14주차 [2022-03-20] Updated

by 괴짜코더 2022. 4. 1.

스파르타 코딩 클럽 AI웹개발 교육 프로그램< Weekly Note 14>

<14 주차 서론 >

장고는 프론트에 매우 불친절 하다. 돈을 줬는데도 심술내는 친구같다. 심술쟁이 같으니라고.. css와 js 기능을 따로 또 location을 잡거나 다른 하이퍼(html)에 멕이면 어떤기능은 되고 어떤 css 화장이 안먹는 경우도 있었다.. 물론 필자에게는 그런일이 한번도 일어난 적이없다. 같은 프로젝트를 진행하는 학우 분들이 그런 경우가 생긴다고 했었다. 달리 방도가 없다라고 말하기엔 구글링을 해본게 아닌것이기에 필자는 최근 핫도그인 리액트 주변 파생 모듈러들을 찾아보았다. 웹팩이라고 하는데 웹을 패키지 한다고 한다. 나름 찾아보고 추적을 해보니 js와 css를 한묶음으로 묶어서 html에 멕인다고 한다. 아! 이건가 싶었다. 심술쟁이 장고친구에게 웹팩 한모금 시게 멕이면 정신못차리고 ok 사인 해줄것같았다. 그리고 시도 하였고.. 모든 기능들이 전부 잘 먹혔다. 그럼 이제 내부 코드를 줄이고 관리가 용이한 css중에 scss와 sass가 있는데 sass 는 css와 너무 다르고 scss는 sass와 css의 중간다리역할이며 sass 이후 해결안으로 나온것이니 그럼 scss가 최신이라는것인데 막상 사용해보니 관리가 용이하고 굽기에도 편했다. 웹팩으로 구웠을떄 아주 잘 들어갔으며 개발자는 읽기가 쉽고 크롤링 할 도둑놈은 읽기 불편했다. 아~주 좋았다. 필자는 행복했다. 그리고 js를 굳이 사용하지 않고도 충분히 html5에서도 기능이 많을거라 생각했다. 디스코드봇 설명과 커뮤니티를 구성하는데 너무 많은 API 요소가 들어간다면 불필요한 트래픽이 발생하고 유저의 돌발행동에 query요청이 많이 발생한다면 서버 부하와 쓸데없는 서버 유지 비용이 발생하지 않을까 싶었다. 그래서 고안해낸것이 django template내부에 redirect기능이였는데 로그인을 하였는데 다시 로그인이 뜨는 잔버그나 이런 부분도 캐치할수있었다.  django template으로 html 갯수도 줄일수있었으며 내부 django if문 for문 등 아주 수많은 다양한 기능들이 많았기에 이번에 참으로 많이 배우게 될것같은 예감이 필자는 든다.. 

------------------------------------------------

1일차

프론트가 많이 진행이 안되었다 물론 파이널프로젝트인 만큼 신경을 많이 쓰지 못했을것같았다. 포트폴리오도 준비하랴 깃정리도 해야하고 알고리즘도 하고 링크드인도 다시한번 꾸며야하니 할것이태산같을것이다 이 이야기는 필자 뿐만 아니다. 모든 학우들에게 적용될것이다. 스파르타 코딩 교육 프로그램을 하면서 시작 부터 끝까지 팀장을 맡게되다 보니 나름 포기해야 할 부분도 있거니와 팀원들 또한 챙겨야하며 프로젝트도 이끌어야하니 많이 고되긴하였다. 얼마 남지 않아서 조금만 더 고생하면 될것같았다. 서론에서 적었다 시피 scss접근이 너무 쉬웠고 css적었던 모든 파일들을 scss 변환 및 웹팩으로 구우면서 다양한 웹팩 기능툴도 적용해 보았다. 웹팩 이녀석 나온지 꽤 되었다 웹팩 뿐만아니라 다양한 굽는 기능툴들이 존재하는데 필자는 후에 node.js 서버 또한 범용적으로 배울것이기 때문에 웹팩으로 호환을 커버 하기로 하였다. bundle.js파일의 소스맵인 bundle.map을 코드에 적기만 하면 생성이 되었고 실제 장고서버를 가동후 bundle.js파일에 구워진 scss와 js기능들이 모든 장고html에 적용되었다 단 한번만 index.html에 적용하면 이렇게나 잘불러오고 팀원들 또한 가독성이 높으니 얼마나 좋은가.. 격리용 작업용 개발 폴더에서 scss와 js작업을 하고 구워 static 공간에 넣어 실행 시킬때 매우 좋았다. 사용방법이 처음엔 어렵지만 주말엔 팀원들에게 두시간 정도 교육시켜 사용 방법과 업무 효율에 얼만큼 영향을 주는지 보여줘야할것같았다.

* bundle.js 는 js기능과 scss기능을 구울때 구울 용기의 이름은 필자가 원하는 이름으로 적어넣은것이다. 

------------------------------------------------

2일차

웹팩을 많이 만져보긴했지만 실제 production 모드로 진행할때 필요하고 필요하지 않은 폴더를 구분해야했다. 웹팩을 파면 팔수록 프론트에 대한 깊은 이해가 생기기 시작했다. 서버사이드보다 프론트사이드가 가면갈수록 어렵고 매력이 느껴졌다. 서버사이드는 프론트에 어떤 인터랙션이 없다면 무용지물이기 때문이다. 프론트와 서버사이간의 중간다리 역할로 두쪽의 기능들과 사용법을 다알게 된다면 웹프로그래밍에 대한 전체적 이해 방향이 잘잡힐것같았다. 스파르타 코딩 교육 프로그램 1주차를 거쳐오면서 많은 사람들이 다양한 기능들과 배포등 많이 배우지만 솔직히 어제 먹은 음식도 기억나는 사람은 없듲이 다음날 되면 까먹기 마련이다. 새로운 기술을 배우고 적용하고 기록을 하게 되는데 필자같은 경우자주 쓰게 되는 기능은 자동화 프로그램화 시키는 경향이 있어 파워셀로 명령어로 미리 적어둬 보관해 놓았다. 간혹 팀원들중에 .gitignore 잘못 설정이 되어 aws key나 토큰키를 원격저장소에 올리게 되는 경우가 있는데 그럼 다시또 repository를 파고 새로 pushing을 해야한다. 얼마나 많은 시간이 소모되는가.. 그렇기에 팀원들과 필자 또한 쓰기위해 파워쉘로 장고프로젝트생성기를 만들어 팀원들에게 배포하였다. 프로젝트 기간동안 써먹던 기술들만 쓰다보면 새로운 기술이 노출되기 어렵다. 빠르게 프로젝트 생성하여 작업을 진행해야하기 떄문에 2일차는 파워쉘이 집중하게되었다..

------------------------------------------------

3일차

깃-허브와 블로그 작업 알고리즘에 대한 이해도를 높이는 시간이였다. 팀원들의 소스코드 피드백과 결합 및 테스팅을 진행하였고 어제 만들어놨었던 파워쉘 명령어 프로그램 번들로 몇개를 더욱 만들었다. 함부로 push할수없도록 ssh키를 생성할수있게 터미널 명령 프로그램을 만들었다.

------------------------------------------------

4일차

중간발표가 얼마 안남은 만큼 디스코드 봇에 문제가 생겼다. 바로 호스팅서버에서 ffmpeg 코덱 인코딩을 거부한것이였다. 어떤면에서는 사용이 가능했는데 T_kinter에러 또한 발생을 하여서 애를 먹었다. 결국 해결 못하고 다른 소스 코드를 병행하면서 팀원들을 커버해줘야했다. 아마 이번 프로젝트는 앱서버 구현이 가장 힘들것으로 예상이 된다. 새로운 기능들을 추가하여 사용하게되니 팀원들이 많이 복잡하고 힘들어가는 느낌이 들었다. 다른 팀들 처럼 데이터를 다른곳에서 구해와서 작업을 하게 되면 쉽지만 우리팀은 자체적으로 콘텐츠를 만들어 배포하는 입장이다 보니 많은 난관에 부딪치게 되는것 같다. 프로젝트를 안건으로 내고 팀장까지 맡았으니 완벽히 실행은 안되더라고 어느정도 뼈대는 잡고 끝내야할거같다고생각했다..

------------------------------------------------

5일차

구글 API를 이용한 캘린더 기능이 잘되었다 하지만 토큰발행을 개발자 이메일에서 발행하고 사용자의 크레덴셜 파일까지 적용을 하게해줘야하는데 여기서 난관이 찾아왔다. 특정 크레덴셜이 아닌 독자적 사용자의 크레덴셜을 적용해줘야하는데 예전 2주차 3주차 초기에 배웠던 JWT를 사용하여 쿠키로 저장한다면 사용가능할것이다. 캘린더 API의 초기 작업 셋업과 openpyxl로 출퇴근 관리 엑셀 데이터 초기셋업을 마치고 쉬는날이였다. 

------------------------------------------------

6일차

동서분주하게 아침부터 일어나 디스코드 봇 핵심기능인 멀린 캘린더와 멀린 엑셀, 멀린 플레이어를 점검하였다. 다들 주석이 많이 안달려있어 정리하는데 시간이 많이 소요되었다. 많은 사람들이 주석을 다는것을 이전팀에서 많이 해보지 않은것같았다. 주석은 협업에 가장 필요한 요소이다 주석이 없다면 코드를 이해하고 해석하고 살을 붙이는데 너무 힘들지 않나 싶다... 좀더 분발하길 바라고 있다. 이러면서 주석을 달고 코드 재정리를 하는 날이였다.

------------------------------------------------

7일차

시간이 매우 빨리 지나간다 필자는 주말엔 힐링이다. 까푸치노~

댓글