알고리즘 공부를 하면서 문자열을 다루는데 정규표현식을 사용하는 경우를 종종 보았다. 그동안 공부해야지 미뤄놨던 내용을 학습하면서 정리해보았다. 위치기호 ^ : 캐럿이라고 읽으며, 앞에서부터 탐색 $ : 뒤에서부터 탐색 예시 문자열 : who is who ^who who is who who$ who is who \b : 공백을 기준으로 위치에 따라 단어(\w)의 앞 또는 뒤에서부터 탐색 \B : \b로 선택된 것의 반대 \A : 문자열의 처음에서부터 탐색 \Z : 문자열의 끝에서부터 탐색 문자기호 . : 모든 문자 아무거나 예시 문자열 : any characters . first match : any characters all matches : any characters ... first match :an..
개발 공부를 시작하게 된 과정 나는 건축학을 전공했고, 시공사에서 일을 했었다. 건축을 배우고 싶어서 건축학과에 갔고, 공간에 대해 생각하는 것, 무언가 만들어 내는 것이 좋았다. 설계를 하고 싶었지만 하면 할수록 뭔가 이게 과연 내가 하고 싶은 일인지에 대한 생각이 많이 들었던 것 같다. 그러다 시공사에 취업하게 되었고, 사회생활은 원래 이런 건가 하며 2년 반 동안 일을 했다. 올해 초, 여러 가지 다양한 이유로 나를 위해 다른 길을 가야겠다고 생각했다. 그 길은 이직이 아닌 개발자가 되어야지 였다. 개발 공부를 시작하게 된 이유에는 딱히 계기도 없지만 복합적인 이유가 있었던 것 같다. 퇴사를 생각하던 시점에 유튜브에서 왜인지 모르지만 개발자들의 동영상을 보게 되었고 관심을 갖게 되었다. 건축에서 내..
들어가며 미션2에서 어떻게 더 좋게 만드는지 그 방법을 아무리 생각해도 잘 모르겠어서 뭔가 마음에 안 드는 상태로 제출하게 되었다. 미션2의 피드백을 받고나서 모든 내용이 나에게 해당되는 듯한 느낌을 받았고, 어떤 점에서 아쉬웠는지 알 수 있었다. 미션2에서 객체의 데이터를 기준으로 클래스를 나누려고 했기 때문에 마음에 안 들었던 것이었다. 그래서 클래스를 나누는 기준이 더 어렵게 느껴졌던 것 같다. 미션3를 하면서는 객체를 나누는 기준을 하는 일에 집중해보려고 했다. 또한, 객체에게 메세지를 보내는 방식을 의식하려고 노력했다. 미션1,2 메소드를 나누고, 이름을 짓는 고민을 많이 했다. (이름짓기가 이렇게 어려운 것인지 미션1을 하면서 처음 알게 되었다.) input 값을 받을 때 유효성 검사? 를 처..
1.9월 1주차 - CSS 연습(클론코딩) - React 실습 ticktaktogame, 기존 개념 정리해보기 - TypeScript typechain 만들기 2. 9월 2주차 - Nodejs 게시판 만들기 (로그인기능, crud 기능 구현하기) - TS&react 사용 게임 실습 - React 포트폴리오 spa 만들기 3. 9월 3주차 - 알고리즘 테스트 입문(2020-09-14 : 책_이것이 취업을 위한 코딩테스트다) * 1주차 : 책 알고리즘 내용 파악하기 * 코드업 쉬운문제 100문제 - React 포트폴리오 spa 수정 4. 9월 4주차 - (알고리즘) 2주차 : 쉬운 알고리즘 문제(컴퓨터), 연습문제 1번씩 풀어보기 - React 강의 (드림코딩엘리 리액트편) 시작 - Re..
1. WEB (2020-06-14~ : Youtube 생활코딩) : html, css, js 입문 > 개별실습 : pt 받았던 운동 웹페이지 작성( html 위주, 약간의 css) 2. CSS : nav-bar (2020-07-초,중 : Youtube 드림코딩앨리) : 반응형 css 연습 @media > nav-bar 만들기 실습 -------- 7월말 퇴사------------ 3. JS (2020 7월 중,말~8월1째주 : Youtube 드림코딩앨리) : 자바스크립트 이론 정리 (variable, operator, object, function, class, array, async) > youtube 페이지 클론코딩(css) > 미니 쇼핑몰 - 항목따라 분류되어 나타냄 (js) > 개별실습 : boo..
JS의 메소드와 기능들 자바스크립트를 공부하면서 헷갈리거나 자주 사용하는 메서드, 새롭게 알게된 메서드, 기능 등을 정리해보았습니다. 배열 1. 배열에서 실행 const fruits = ["🥑", "🍉"]; //forEach : 배열의 항목을 순환하며 처리 fruits.forEach((fruit) => console.log(fruit)); // find : 조건 만족하는 첫번째 항목 리턴 const result = students.find((student) => student.score === 90); // some : 배열안에서 조건 통과여부 boolean 으로 반환 const result = students.some((student) => student.score < 50); // every : 배열..
Redux에 대하여 Redux란 ? 리덕스란 상태관리 라이브러리이다. 글로벌 상태관리를 할 때 효과적이며, 애플리케이션에서 상태를 보다 효율적으로 관리할 수 있게 도와준다. 리덕스 라이브러리를 설치하여 JS에서 사용할 수도 있고, 리액트 등의 도구와 함께 사용할 수도 있다. 앱이 지니고 있는 상태와 로직이 들어있는 스토어를 통해서 원하는 상태와 함수를 직접 주입하여 관리한다. 컴포넌트 끼리 상태와 로직을 주고 받는 것이 아니라 좀 더 전역적으로 분리되어 관리하는 개념이다. 다양한 로직에 따라 상태변화를 반영해야 하는 상황에서 상태를 한 스토어에서 관리하고 반영할 수 있는 장점을 가지고 있다. 상태에 변화를 일으키기 위해서는 액션(Action)을 스토어에 전달한다. 스토어는 초기에 생성해준다. 리듀서, 액..

React 성능 개선 방법 1. 리액트의 작동과 Shallow Comparison React에서의 작동 React에서는 업데이트 될 때마다 렌더링을 진행하고, VDOM에서 필요한 요소만 확인하여 실제 DOM에는 필요한 것들만 렌더한다. 그래서 업데이트 될 때마다 리액트는 렌더링이 진행되도 html 전체가 렌더링 되는 것이 아니라 필요 부분만 렌더링 되기 때문에 개선된 성능으로 렌더링되어 화면에 나타나는 것이다. 하지만, 업데이트 시 클래스형 컴포넌트 내부의 render메서드나 함수 컴포넌트등은 호출이 계속된다. 이것은 shallow comparison(얕은비교)를 시용하여 성능을 좀 더 개선할 수 있다. shallow comparison를 활용하면 object의 최상위 데이터(props나 state)가 ..
- Total
- Today
- Yesterday
- CS
- 카카오
- 회고
- DB
- javascript
- 내부코드
- python
- OS
- 학습로그
- java
- Spring
- 우아한테크코스
- TCP/IP
- Transaction
- JS
- 알고리즘
- 인증
- 운영체제
- React
- 우테코수업
- 월간회고
- 개발공부일지
- 마스터즈코스
- TIL
- 코드스쿼드
- 모의면접준비
- 글쓰기미션
- 네트워크
- JPA
- 객체지향
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |