클래스 184

<TIL> late modifier, constraints, shimmer

🧭 late modifier Dart 언어에는 late modifier가 있습니다. 변수를 정의만 해두고, 초기화는 뒤로 미룰 수 있습니다. 변수가 non-nullable이지만, 사용 전에 초기화를 확신할 때 사용하게 됩니다. 변수의 사용빈도수는 적은 반면 초기화하는데 비용이 많이 드는 경우 사용하기 좋습니다. constraints Flutter에서 레이아웃을 짜기 위해 constraints를 고려하게 됩니다. constraints란 단순하게 4개의 double 값을 말합니다. min-width, max-width, min-height, max-height 입니다. Constraints go down. Sizes go up. Parent sets position. Shimmer '반짝임'이라는 뜻을 가진..

클래스/└ TIL 2022.06.25

<독서> 지구 끝의 온실 - 김초엽

🏅 온실이 아니어도 괜찮아 결국엔 찾아나서게 됩니다, 온실과 같은 안정된 환경을. 하지만 언제까지고 온실에 머무를 수만은 없습니다. 뜻밖에도 돔 밖에서 재미있는 일들이 많이 일어나고 있었다. 울타리 밖의 세상에 한 발 딛고 나면 의외로 걸음걸이가 자유로움을 만끽하게 됩니다. 온실에서 시작했을지언정 온실 밖을 걱정하기 보다 설레는 마음으로 맞이할 수 있는 용기와, 또다른 온실을 찾을 수 없다면 스스로 온실이 될 수 있는 지혜가 언제나 함께하기를. http://www.yes24.com/Product/Goods/103026125 지구 끝의 온실 - YES24 김초엽 첫 장편소설, 모두가 간절히 기다려온 이야기이미 폭넓은 독자층을 형성하며 열렬한 사랑을 받고 있는 김초엽 작가는 더스트로 멸망한 이후의 세계를 첫..

클래스/모험가 2022.06.24

<책> 1일 1로그 100일 완성 IT 지식

🏅 CS지식의 기초를 다질 수 있음 (분량: 560쪽, 난이도: ★★☆☆☆) CS 지식을 쉽게 얻기 위한 요량으로 읽기 시작했습니다. 개발자라면 CS를 알아야 한다고 하는데, 이 책은 숲을 보는데 도움이 될 것입니다. 하드웨어, 소프트웨어, 통신, 데이터로 구분된 전체 목차는 처음에 다소 의아했지만 읽다보니 개발세계의 밑그림을 그리는데 괜찮은 접근 방법이라는 생각이 들었습니다. 네트워크, 데이터베이스와 같이 한 그루의 나무에 집중하는 책들은 가볍게 읽어나가기 어렵고 따라서 성취감을 맛보기 어려울 수 있습니다. CS지식의 필요성은 느끼지만 두꺼운 책들을 읽어내기 망설여진다면 추천드리고 싶은 책입니다. (절대적인 두께는 얇지 않지만 다루고 있는 내용에 비하면 얇은 것이라고 생각합니다) http://www.y..

<WIL> 실전 프로젝트 3주차부터 최종발표회까지

🌊 # 11 ~ 13주차 진행사항 프런트엔드 구현부와 실제로 API 테스트를 진행하면서 수정할 부분들이 드러났습니다. 프런트에서 발생할 시나리오를 충분히 예상했다고 생각했지만 막상 실제로 구현하고 보니 오버페치, 언더페치된 부분이 많았습니다. 하나하나 수정해 나가면서 프로젝트가 완성되어가는 기분을 느낄 수 있었습니다. 실전 프로젝트를 진행하며 바쁘다는 핑계로 블로그 관리에는 소홀하였지만 배운점이 많습니다. 스스로 필요한 기능을 구현하기 위해 고민하는 과정에서 많은 성장을 할 수 있었던 점이 강의만 들으며 따라했을 때와 가장 큰 차이점인 것 같습니다. 무엇보다 혼자였다면 하지 못했을 프로젝트의 완성을 이루게 된 것이 가장 큰 성과라고 생각합니다. 최종발표회 (6.3) 최종설명회를 진행하며 멘토님과 여러 파..

<TIL> ElasticBeanstalk / merge PR

🧭 Elastic Beanstalk AWS의 Elastic Beanstalk (이하 'EB') 서비스를 활용하면 서버 배포에 드는 노력을 줄일 수 있습니다. 1. EB를 노드, 도커 등 원하는 환경으로 세팅합니다. 2. AWS의 CodePipeline을 통해 GitHub 브랜치와 EB를 연결해 줍니다. 3. 깃헙 변경사항을 자동으로 반영해 줍니다. EB CLI를 통해 관리하는 방법도 있습니다. EB CLI 설정 중 eb init 관련하여 'Cannot setup CodeCommit because there is no Source Control setup, ...' 에러 발생시 아래 블로그를 참고합니다. https://junlab.tistory.com/189 aws - 배포중 eb init 에러 (Cann..

클래스/└ TIL 2022.05.28

<TIL> CRLF vs LF, 윈도우에서 LF로 작업하기

🧭 CRLF vs LF 윈도우 운영체제에서 작업하다보니 CRLF 관련해서 성가신 일이 생겼습니다. 프리티어는 LF 기준으로 맞춰줍니다. 반면 깃에는 autocrlf라고 로컬에서는 CRLF가 되고, 푸시할 때는 LF로 자동 변경하는 기능이 있습니다. 코드를 수정하지 않아도 정렬 한번만 하고 나면 CRLF -> LF 변경이 일어나기 때문에 파일에 변경을 가한 것으로 기록이 되는 점이 굉장히 성가셨습니다. 아래와 같이 autocrlf를 끄게 되면 lf로 계속 작업을 할 수 있습니다. $ git config --global core.autocrlf false WebStorm, VS Code 내에서도 관련 설정을 찾아보고 crlf로 되어 있는 부분을 lf로 변경해야 합니다. https://intellij-supp..

클래스/└ TIL 2022.05.25

<WIL> 실전 프로젝트 2주차 (외부 API 활용시간 단축)

🌊 # 10주차 진행사항 실전 프로젝트를 진행하면서 NestJS, TypeORM, Jest를 다루는 훈련을 하고 있습니다. 이슈 프로젝트에서 유저 주변으로 퀘스트를 생성해서 뿌려주는 로직이 있습니다. 외부 API(kakaI, 공공API)로 좌표와 주소값을 가져오는데 걸리는 시간을 단축시키기 위해 여러가지 고민과 시도를 하는 중입니다. 아래는 해당 로직의 프로세스 입니다. #1. (from 클라이언트) 유저의 좌표값을 받아옴 #2. (from kakao API) 유저의 좌표 값으로 지역(시/구/동) 데이터를 받아옴 #3. (from 공공 API) 지역 데이터로 지역의 개요(전체 주소 갯수 등)를 받아옴 #4. (from 공공 API) 지역의 개요를 활용해 지역 내 전체 주소 중 랜덤한 주소를 받아옴 (전체..

<TIL> fileName.ts:24:12, NPMCompare.com

🧭 에러코드에서 두번째 숫자의 의미 에러가 발생하면 "fileName.ts:24:12"와 같이 에러가 발생한 위치를 알려줍니다. 첫번째(24)는 에러가 발생한 줄이라고 알았지만, 두번째(12)는 에러가 발생한 컬럼인 것을 이제야 알았습니다. https://stackoverflow.com/questions/16366207/what-does-the-2nd-number-after-the-colon-in-a-node-js-stack-trace-line-mean What does the 2nd number after the colon in a node.js stack trace line mean? In a node.js stack trace there are always two numbers, the line n..

클래스/└ TIL 2022.05.15

<TIL> git reset, TypeORM, Jest

🧭 깃 git cherry-pick [커밋해시] - 현재 브랜치로 [커밋해시]에 해당하는 커밋 가져오기 git reset --hard [커밋해시] - 현재 브랜치를 [커밋해시]까지 강제로 되돌리기 TypeORM JOIN JOIN 방법 4가지 https://seungtaek-overflow.tistory.com/9 [TypeORM] Relation 관계에서 Join을 하는 방법들 RDBMS를 사용할 때 테이블 간의 참조를 통한 관계는 필수적이다. Node.js 진영에서 가장 핫한 ORM 라이브러리인 TypeORM에서 관계가 맺어져 있는 테이블을 다음 4가지 Join 하는 방법들을 통해 실제 쿼리 seungtaek-overflow.tistory.com https://velog.io/@josworks27/Ty..

클래스/└ TIL 2022.05.14

<TIL> 오늘 만난 에러들

🧭 [ExceptionHandler] Nest can't resolve dependencies of the ... 에러 해당 기능의 Module에서 의존성을 설정하면 해결됩니다. MissingPrimaryColumnError: ... 에러 @PrimaryColumn을 추가하면 해결됩니다. UpdateValuesMissingError: ... 에러 DB의 데이터를 업데이트하는데 값이 제대로 들어가지 않아서 발생하는 에러입니다. DB에 넣을 데이터를 DB에서 찾아오는데 await를 누락했습니다. await만 추가하니 정상 작동하였습니다.

클래스/└ TIL 2022.05.11