본문 바로가기

Today I Learned(TIL)27

TIL_210208 📝 오늘 한 일 / 배운 것 🖋 chatterBox 서버 구현 기존에 있던 클라이언트는 코드스테이츠에 제공해준 서버와 HTTP 통신을 통해 데이터를 얻었다. 하지만 오늘은 직접 Node.js와 내장 모듈 http를 이용해 서버를 만들어, 이 서버와 클라이언트를 연결하는 작업을 했다. 또한 fs 모듈을 이용해 데이터를 서버에 저장하고 가져오는 작업도 할 수 있었다. 즉 나만의 서버가 생긴 것! 한참은 멀었지만 차차 개발자가 되가는 느낌이 들어 너무 좋다. chatterBox 만들기 🙏 기억할 것 🖋 http 통신 클라이언트의 요청이 있으면 항상 서버는 응답해줘야 한다. 🖋 node.js fs 모듈 정의 및 사용법 2021. 2. 9.
TIL_210207 📝 오늘 한 일 / 배운 것 🖋 chatterbox client 기능 추가 및 디자인 변경 시간이 없어 미뤘던 chatterbox client 기존에는 기본적인 것들 1. (GET)서버에서 데이터를 가져오는 것 2. (POST) 댓글을 남기면 서버에 저장 및 채팅 렌더링 기능만 있었는데 오늘 추가적으로 1. 사용자가 원하는 폰트 설정 2. 채팅 방에 따른 필터링 + 현재 채팅방 표시 3. 미미한 디자인 개선(css가 너무 어렵다..ㅠㅠ) 등.. 를 추가했다. 이를 통해 알게 된 점(특히 css)이 많았던 것 같다. 이쁘게 꾸미고 싶다!!! UI/UX 측면에서 너무 많이 부족함을 느낀다. 코드스테이츠에서 제공하는 강의외에 정말 css 뿐만아니라 디자인적으로도 스스로 파고드는 습관을 들여야할 것같다. 🖋 c.. 2021. 2. 8.
TIL_210205 📝 오늘 한 일 / 배운 것 🖋 node.js를 이용한 서버 생성 node.js에는 기본적으로 내장되어 있는 모듈이 존재한다. 그 중에 하나인 http 모듈을 통해 서버를 생성할 수 있다. HTTP 트랜잭션 해부 를 참고하며 처음엔 이해가 되지 않았지만 과정을 하나하나 따라가며 생각을 해보니 이해를 할 수 있었다. 클라이언트가 요청하는 메서드에 따른 응답 헤드, 본문을 직접 구현해보니 두루뭉술했던 http 통신에 대해 조금이나마 더욱 이해가 된 것 같다. 🖋 HTTP 정리 봐도봐도 이해가 가지 않던 HTTP 메시지, 상태코드 등을 주먹구구식으로 이해해보려다가 머리 속만 더 혼잡해지는 것 같았다. 그래서 흩어져있던 용어와 개념을 차근차근 정리를 하며 복습을 하니 드디어 이해가 가는 듯했다! 블로깅을 하면서.. 2021. 2. 6.
TIL_210203 📝 오늘 한 일 / 배운 것 🖋 클라이언트, 서버, api 이해 🖋 HTTP 🖋 fetch 🙏 기억할 것 🖋 서버의 api 문서를 fetch를 통해 사용하기 🖋 Postman 사용법 2021. 2. 4.
TIL_210202 📝 오늘 한 일 / 배운 것 🖋 Promise 복습 어제 전반적으로 비동기 처리 방식에 대해 공부했었다면, 오늘은 애매했던 개념들을 바로 잡는 시간을 가졌다. 🙏 기억할 것 🖋 Promise.then() 반환 값 then의 반환값은 프로미스지만 내부에서 임의로 return 값을 주면(예를 들면 return 'apple'을 할 시 다음 then에 문자열이 전해지는 것인 줄 알았었다.) 그 값을 바탕으로 다음 then에서 이어서 사용함을 기억하자. 프로미스 반환이 맞고 값을 사용! 🖋 Promise.all Promise.all을 사용하면 전부 병렬적으로 작업이 진행되고 이 바로 뒤에 .then()을 사용하면 전부 then을 이어간다. all이 아닌 일반적으로 여러개의 데이터를 불러오고 이를 비동기 처리하고 .. 2021. 2. 3.
TIL_210201 📝 오늘 한 일 / 배운 것 🖋 비동기 처리 방식 기본적으로 자바스크립트는 동기적으로 작동하지만, web api를 이용하면 비동기적으로 작동할 수 있다. 이때 비동기는 기존의 것들이 실행되기 전에 다른 것들도 실행시킬 수 있기에 당연히 효율적이지만 문제점이 발생할 수 있다. 이를 해결하기 위한 callback, promise를 통해 비동기 처리 방식에 대한 공부를 할 수 있었다. 🙏 기억할 것 🖋 Promise 🖋 async, await 🖋 자바스크립트 작동 원리 2021. 2. 2.
TIL_210121 📝 오늘 한 일 / 배운 것 🖋 LinkedList, Hash Table 🖋 Graph, Tree 🙏 기억할 것 🖋 밀린 블로깅 꼭 주말에 하기 핑계인 것 같지만 자료 구조 공부를 하며 관련 sprint를 풀며 블로깅까지하려니 도저히 시간이... ㅠㅠ 가뜩이나 블로깅하는데 시간을 한나절 보내는 나는.. hash table을 자바스크립트로 구현하는데 이틀이나 걸렸다. 개념정리도 제대로 하지 못했는데 문제를 풀려하니 더욱 더 시간이 오래걸린 것 같다. 꼭 개념을 정리하고 전에 배웠던 것들을 잘 활용할 수 있도록 복습을 하자! 주말엔 완성하길! 🖋 손을 믿지 말자 같은 코드인데 왜 이건 되고 저건 안 되지..? 하다가 언더바 하나 때문에 이러한 일이 벌어졌단 사실을 알고 너무 허탈했다. 이 하나 때문에 몇시간.. 2021. 1. 22.
TIL_210119 📝 오늘 한 일 / 배운 것 🖋 자료 구조 Stack, Queue 자료 구조에 대한 전반적인 정의를 공부하고 그 중 2개인 Stack, Queue를 집중적으로 공부했다. 직접 관련된 메소드를 만들어보는 시간을 가졌다. 🙏 기억할 것 🖋 자료 구조 자료의 집합으로써, 자료를 더 효율적으로 저장하고, 관리하기 위함 🖋 Stack LIFO : 후입 선출 🖋 Queue FIFO : 선입 선출 2021. 1. 20.
TIL_210115 📝 오늘 한 일 / 배운 것 🖋 객체지향 프로그래밍과 자바스크립트 프로토타입 정리 어제 TIL을 작성하지 못했다.. 핑계긴하지만 OOP를 이해하는데 오래걸리지 않았지만, 프로토타입 개념에 대해서 이해하고 정리하는데 너무 오랜 시간이 걸렸다. 코드스테이츠 수업이 끝난 6시부터 시작을 했는데 다음날 아침 6시까지 너무 이해가 가지않았다..ㅠㅠ 하지만 오늘 드디어 이해를 할 수 있었고, 나만의 언어로 정리를 할 수 있게 되었다. 🖋 class 메서드(ES6), pseduoclassical 방법으로 상속 흉내내기 완벽한 이해와 정리가 되지 않은 상태에서 페어분과 sprint를 진행했다. 바로 클래스의 기능을 구현하는 것! 오히려 이해가 되질않아 이것저것 찾아보며 코드를 짜보니 이해가 된 것 같다..? 역시 개발.. 2021. 1. 16.
TIL_210113 📝 오늘 한 일 / 배운 것 🖋 Hiring Assessment 리팩토링 오늘은 프리코스에서 이머시브 과정으로 넘어가는 과정 중 하나였던 Hiring Assessment 를 리팩토링 하는 시간을 가졌다. 이번 주에 배웠던 this, 화살표 하무, destructuring 등을 활용하는 것이 목표였다. 자신만만하게 풀었던 알고리즘도 다시보니 직관적이지 않고, 더욱 줄일 수 있었다! 특히 페어분께서 많은 도움을 주셨는데, 생각의 관점을 바꿀 수 있는 좋은 기회였다. 🙏 기억할 것 🖋 Hiring Assessment 리팩토링 의미없는 단순 반복을 하지 말자! 변경 전 function test2(num) { let str = num.toString(); let result = 0; if(num < 0) { re.. 2021. 1. 13.
TIL_210112 📝 오늘 한 일 / 배운 것 🖋 KOANS koans라고 검색을 해보면 간화선이라고 한다. 이는 화두를 살펴 깨달음을 얻는 하나의 방편이라고 하는데...! (두둥탁!) 코드스테이츠가 추구하는 방향에 딱 맞는 단어라고 생각한다. 오늘은 화살표 함수, this키워드, apply call bind 메소드에 대해 공부했다. 하지만 단순히 주입식이 아닌 직접 문제를 풀어보고, 추가적으로 공부가 필요한 부분은 스스로 깨달을 수 있게 만들어진 koans! 코드스테이츠에서 날이 지날수록 힘은 많이 들지만, 그만큼 얻는 성취감은 배로 큰 것 같다. 아직 수료까지 몇 달이나 남았지만, 주도적인 공부를 통해 내 것을 만드는 습관을 기를것이다. 체력도 많이 필요할 것 같다.. 🙏 기억할 것 🖋 메소드 입력값이 있고, 그 입력.. 2021. 1. 13.
TIL_210111 📝 오늘 한 일 / 배운 것 🖋 JavaScript와 런타임 node.js immersive 과정을 시작하면서 처음 배우게 된 것이 node.js다. node.js는 JavaScript의 런타임 즉, JS를 구동할 수 있는 환경이다. 예를 들면, 웹 브라우저랑 같은 기능이다! 앞으로는 과제들을 node.js를 통해 테스트를 실행한다고 한다! 🖋 Git Workflow 지금까지 진행했던 과제들은 페어와 함께 진행했더라도 혼자서 코드를 짜고, 실행해보는 것이었다. 계산기 만들기, 유효성 검사, 클론 코딩 등.. 하지만 이제부턴 페어와 함께 정말로 협업을 진행할 것이고, 이를 위해 git을 이용한다고 한다. 프리코스에서는 코드스테이츠의 repository를 fork해와서 수정하고 add, commit, pus.. 2021. 1. 11.