1. 주특기(기본) 완강! 👏 이번주 주특기주차에는 리액트, 리덕스, 리덕스청크, 파이어베이스를 이용해서, 기본적인 CRUD를 구현하면서 서버와 state를 관리하는 방법을 배웠습니다! 🤗🤗 리액트는 너무너무 재밌기도 하지만 짧은 기간동안 많은 내용들을 배워야했어서 부담스럽기도 했습니다 😂 또한 파이어베이스는 서버 쪽이라 배우면서 낯선 함수들을 많이 보아서 그런지 불편함을 느꼈습니다! 하지만 전체적으로 봤을때, 프론트에서 받아올 데이터값은 같기 때문에 맥락은 똑같이 흐른다는 것을 느꼈습니다! 이제 이 낯선 기술들을 앞으로는 자주 사용하게 될 것이니, 눈으로 계속 익혀두고 손으로 익혀두어야지요!! 2. 집중할 때는 종이로! 하나하나 이 코드들이 어떤 작용을 하는지 다 뜯어 보고싶어서 프린트를 했습니다. 이..
파이어베이스 링크 https://console.firebase.google.com/ 로그인 - Google 계정 하나의 계정으로 모든 Google 서비스를 Google 계정으로 로그인 accounts.google.com 호스팅할 프로젝트를 클릭합니다. 왼쪽 메뉴에 hosting 탭을 누릅니다. 시작하기 클릭! 명령에 따라 Firebase CLI를 설치합니다. 저는 npm 말고 yarn을 사용하므로 아래와 같이 설치한 다음, 다음을 누릅니다. $ yarn add global firebase-tools 아래와 같이 입력합니다. $ yarn firebase login 빨간박스이 보이시면 y를 입력하고 enter 그 다음 주황박스처럼 링크가 보이시면, ctrl+링크를 클릭하시고 계정에 액세스 하시면 됩니다. 그..
1. 알고리즘 주차의 끝!! 해! 방! 이라고 말할 순 없지만 드디어 끝이 났습니다!! 확실히 하루의 알고리즘 푸는 양을 조절하여 공부하니, 전체적으로 능률이 오른 것 같습니다. 예전에는 멍~~ 때리는 시간이 많았다고 한다면 이제는 집중! 딱! 해서 할 거 딱! 하고 끝내는 느낌? 이랄까요? 비록 주차는 끝이 났지만, 꾸준하게 알고리즘을 풀어야 된다는 것을 알고있습니다. 항해 사람들끼리 알고리즘 스터디와 CS 스터디를 운영해볼까 싶습니다. 이렇게 생각은 하지만 실행을 하기가 어렵습니다. 매번 앞에 놓여있는 문제와 과제들을 해결하느라 정신없어서 정말 중요한 것들을 놓치는 것은 아닌지........🤔 일단, 알고리즘 문제의 경우 매일 2문제씩 하는 것을 목표로 하고있는데, 매일 하는 일이 버거운 숙제라면 얼..
딱 봤을땐, 쉽게 풀릴 것이라 믿었었는데, 의외로 시간을 많이 잡아먹었다... 배열이 정렬이 안되어있을 것이라 생각도 못하고, 다른 문제 때문인가 싶어서 하루종일 괴로워했다는... 진짜 마법같이 sort를 쓰자마자 한방에 해결될 줄이야..... 😥😥😥😥 백준 싫어요오........ 입력 값 다 풀어줘요............. const input = require('fs').readFileSync('dev/stdin').toString().split('\n') const numbers = input[1].split(' ').sort((a,b)=>a-b) const firstnum = Number(numbers[0]) const lastnum = Number(numbers[numbers.length-1])..
1주차 미니프로젝트를 끝내고, 알고리즘에 관한 강의를 시청하였다. 스택, 힙, BFS 같은 알고리즘의 구조를 배우게 되었고, 드디어 2주차 알고리즘 풀이 주차! 나는 과연 살아남을 수 있었을 것인가 1. 떠오르는 악몽 일전에 항해99에 들어오기전에 미리 알고리즘을 풀어봤었다. 그 때의 느낌을 절대 잊을 수 없었던 것이, 진지하게 코딩을 포기해야되나 고민했었기 때문이다. 나는 코딩머리가 없는 게 아닐까? 왜 이렇게 멍청한가? 이 생각을 반복했었는데, 역시 사람이 포기하지 않고 끝까지 버텨봐야 안다고 문제유형을 분석하고 데이터를 쌓아나가니 이 고민은 저절로 사라지게 되었었다. 하지만 항해99에서 내 준 알고리즘 문제들의 난이도는 내 코 앞에 내 키를 훌~~~~~~쩍 뛰어넘는 벽이 있는 느낌이랄까. 예전과 같..
1차 시도 기준이 커지면, 봐야하는 범위가 커지므로 아래와 같은 방법은 효율적이 아닌 것을 깨달았다! const input = require('fs').readFileSync('dev/stdin').toString() const num = Number(input) let cnt = 0 for(let i=num; i1; j--){ if(i%j===0) { isPrime = false break } if(j===2&&isPrime) cnt++ } } if(num===1){ cnt = 1 } console.log(cnt) 2차 시도 const input = require('fs').readFileSync('dev/stdin').toString().split("\n").map((num) => parseInt(n..
1차 시도 실패...^^.. 나란 멍청이... 문자에 dz=들어가면 z=때문에 잘못 카운팅 되는것 같다.. let input = require('fs').readFileSync('/dev/stdin').toString().trim() function howManyHasLetter(word){ const alphabet_to_croatia = ['c=', 'c-', 'dz=', 'd-', 'lj', 'nj', 's=', 'z='] let cnt = 0; let one_letter = word.length for (const i of alphabet_to_croatia){ const len = i.length for (let j=0; j word = word.replace(ele, "1")); console..
작년 12월 말부터 코딩의 재미를 느끼고, 회사를 그만두고 독학으로 공부를 시작했었다. 아무래도 기간이 어느정도 되다보니, 슬슬 학습향상속도가 더뎌지는 것을 느꼈다. 그래서 나에게 채찍질을 가하기위해 여러 학원, 부트캠프들을 찾아봤었다. 그 중에서 선택하게된 항해 99! 3개월동안 바짝 몰입해서 취준을 끝내기로 결심했다!! 1. 첫 미니프로젝트 (6.7~6.10) 항해99에서 첫 팀원들을 만났고, 여러 아이디어가 있었지만, 그 중 무비평점리뷰사이트를 만들기로 결정하였다. 이전에 같은 주제로 개인프로젝트로 만들어본 적도 있었고, 첫 시작으로 좋은 아이템이라 생각들었다. 기본적으로 피그마로 레이아웃과 기본 레이아웃과 컨셉을 잡았다. JINJA2에 대해서도 고려해보았지만, 우리가 기획하고자 하는 프로젝트와 맞..
파파고 번역 저처럼 분명 영포자 있을거라 생각해요 :-) ㅋㅋㅋ 개발문서를 읽을 때마다 파파고 도움을 많이 받았는데요! google 번역보다 더 한국어스럽게? 번역해줘서 애용하고있답니다 아래 사진처럼 핀으로 고정하면 편하게 사용할 수 있어요! Dark Reader 부엉이들 소환! 밤에 컴퓨터를 볼때마다 눈부셔서 화면 밝기를 낮춰본 경험 있다?! 그럼 이 Dark Reader을 사용해보시길 바래요~ 아래처럼 웹페이지를 다크모드로 변경시켜준답니다 :-) 완전 애정하는 익스텐션이랍니다! 💗 단축키로 라이트모드/다크모드를 조정할 수 있으니, 꼭 꼭 설정해주세요 참고로 저는 Ctrl+L로 모드를 조정한답니다 :-) JSON Viewer 설마 아직까지도 아래사진처럼 밋밋한 JSON파일을 보고계..
이번엔 제가 사용하고 있는 익스텐션을 소개할까 해요! VSC(Visual Studio code)의 확장프로그램을 소개합니다! 이름이 같은 익스텐션도 있으니 꼭 개발자 이름을 확인하여 설치해야해요! VSC Community Material Theme VSC 테마를 위한 익스텐션인데요! 가독성을 위해 많은 분들이 사용하고 있어요! 설정법은 이미 인터넷에 많이 나와있으므로, 생략할게요! Sublime Material Theme 제가 현재 사용하고 있는 테마인데요! Dark와 Light 모드 중 Dark를 사용하고 있어요! Material Icon Theme 말 그대로 아이콘 테마인데요! 아래의 사진처럼 다양한 아이콘을 얻을 수 있답니다. 이 밖에 폴더 아이콘도 있으니 천천히 둘러보세요 :-)..