[WEB] ~7/11_공부.log

이찬형·2020년 7월 11일
0

웹 공부를 시작하자고 마음먹은 이후 반 년이 지났네요.
HTML, CSS도 모르던 상태에서 여기까지 왔다니.. 많이 배웠습니다 정말ㅠㅠ

지금까지 공부한 내용과 앞으로 어떤 것을 할 지 정리해보도록 할게요.

2020-1학기

이번 학기는 웹프로그래밍 수업을 들으며 공부했던 것을 바탕으로 프로젝트를 진행할 수 있어서 굉장히 의미있었어요.

백엔드 개발을 하는 동기들과 실제 서비스를 구축해보면서 페이지를 만들 때 어떤 식으로 협업이 이루어지는지 경험해 보았습니다. API 명세를 작성하고 보고서를 작성해가며 원하는 기능을 만들기 위해 한 학기 내내 고민하고 코드를 짰어요. 이 과정에서 자연스럽게 git 의 다양한 기능을 써볼 수 있었습니다.

React 도 코드를 어떻게 효율적으로 작성할 지 많은 고민을 했습니다. 사실 반 년정도 JS를 공부하면 웬만힌 기능은 구현할 수 있게 되지만 이게 클린코드일까? 라고 묻는다면 이야기가 달라지잖아요. 때문에 기능을 구현하는 것에만 중점을 두지 않고 가독성이 좋고 누가 봐도 깔끔한 코드를 짜기 위해 노력했습니다.

시간이 부족해서 존재하는 라이브러리를 가져다 쓰기도 했지만 최대한 Vanilla JS로 구현을 하려고 노력했어요. 특히 인프런 강의를 들으며 구현한 스크롤 애니메이션은 역대급으로 예쁘다란 생각이 드네요. 여러모로 뿌듯했던 프로젝트였습니다.

디자이너의 필요성도 느꼈어요. 아무것도 없는 하얀 index.html 에 그림을 그리려니 참 막막하더라구요. 어찌저찌 백엔드에서 넘어온 데이터를 출력은 할 수 있겠지만 아무래도 클리이언트에게 직접적으로 전달되는 화면이다보니 예쁜 것이 제일 중요하잖아요. 틀을 잡아줄 디자이너가 무조건 필요하다고 절실하게 느꼈습니다.

이제 정말 클린코드를 작성하는 방법이 중요할 것 같아요. 누구나 만들 수 있지만 구조화가 잘 되어있고 나중에 기능을 추가하기도 쉬운 코드를 짜는 방법을 공부하겠습니다.

1학기 끝 !!

TypeScript

방학 중 하계 인턴쉽으로 FE 개발자를 하고 있습니다. 깃허브를 보면서 코드를 살펴보는데 TypeScript 기반의 React 코드를 쓰고 있더라구요.

사실 노마드코더 리액트 수업에서 타입스크립트를 다룬 적이 있어요. 이 때는 JS 문법도 잘 몰랐고 익숙하지 않았기 때문에 superset인 TS를 공부할 필요가 없다고 생각했습니다. 괜히 문법만 복잡해진다고 느꼈기 때문인 것 같아요.

하지만 타입스크립트 코드를 보니 완전히 생각이 바뀌었습니다. Type이 존재하지 않는 JS이다 보니 코드를 컴파일할 때 무수히 많은 undefined, null을 만나잖아요. 타입스크립트는 1차적으로 이를 걸러줍니다. 적절하지 않은 코드가 오면 에디터 상에서 표시를 해주니 코드를 짜는 효율이 확실히 올라갈 것 같더라구요.

리액트와 JS에 익숙해진 지금이 타입스크립트를 배우기 적절한 타이밍인듯 싶어서 지금까지 만든 프로젝트 중 몇 개를 타입스크립트로 리팩토링하고 있습니다. 막상 사용해보니 그렇게 어려운 부분은 없었지만 당연하게 쓰였던 부분 하나하나 타입을 지정해줘야 하니 귀찮게도 느껴져요.. 그래도 컴파일 에러 때마다 등장하는 회색 화면을 보는 횟수가 상당히 줄었고 무엇보다 자동완성이 말도 안되게 이루어지는 것을 보며 진작 타입스크립트를 배웠으면 하는 마음이 많이 듭니다.

코드가 예뻐졌습니다. 알록달록 하니 좋네요~!!~!

공부하면서 제일 충격적이었던 부분이 저 이벤트 핸들러 함수를 작성할 때에요. 당연하게 e.target 에 접근했었지만 e 의 타입을 정해주지 않으면 빨간줄이 그어지더라구요. 그래서 어떤 이벤트인지 저렇게 명시를 해줘야 정상적으로 돌아갑니다. PromiseAxiosResponse 로 받아줘야 제대로 돌아가요. 재밌지 않나요??

웹해킹

군대에서 pwnable 을 2년 동안 하면서 보안 분야로 나아가고자 했지만.. 벽을 느끼고 한 턴 접었어요.

그래서 지금까지 보안에 관심은 있지만 익스플로잇 코드는 짜지 않는 선만 지켜왔는데 웹을 공부하고 나니 웹해킹이 너무나도 매력적이게 다가왔습니다.

한창 포너블 할 때에는 웹해킹은 건드릴 엄두도 못 냈던 것이, 웹 관련 지식도 별로 없고 무엇보다 군대 PC로 웹해킹을 한 다는 것 자체가 큰 리스크이기 때문에.. 나중에 해야지 하면서 미뤄왔었어요.

이제 웹을 좀 알고, 개발을 몇 개월 해봤으니 웹해킹을 건드려도 될 것 같습니다. 공부할 게 엄청 많더라구요.. 쿼리 문 짜는 것이랑 php 같은 서버사이드 언어나..

막막하긴 하지만 시스템해킹 처음 배울 때도 맨 땅에 들이받은 것처럼 이번에도 무작정 패킷부터 까보려고 합니다. 기본적인 파라미터 변조부터 신나게 삽질해보며 방학이 끝나기 전 까지 인젝션 익스 코드를 짤 수 있도록 노력하겠습니다.

webhacking.kr부터 풀어야겠죠? (사이트 리뉴얼됐네요.. 이거 로그인부터 문제였는데)

하계 인턴쉽도 열심히 하고, 웹해킹 공부도 열심히 삽질해서 2학기 시작 전에 많이 발전한다면 좋겠습니다. 파이팅!!

profile
WEB / Security

0개의 댓글