본문 바로가기

전체 글

(118)
22.12.28: 프로그래머스_옹알이(1) 문제 설명 머쓱이는 태어난 지 6개월 된 조카를 돌보고 있습니다. 조카는 아직 "aya", "ye", "woo", "ma" 네 가지 발음을 최대 한 번씩 사용해 조합한(이어 붙인) 발음밖에 하지 못합니다. 문자열 배열 babbling이 매개변수로 주어질 때, 머쓱이의 조카가 발음할 수 있는 단어의 개수를 return하도록 solution 함수를 완성해주세요. 제한사항 1 ≤ babbling의 길이 ≤ 100 1 ≤ babbling[i]의 길이 ≤ 15 babbling의 각 문자열에서 "aya", "ye", "woo", "ma"는 각각 최대 한 번씩만 등장합니다. 즉, 각 문자열의 가능한 모든 부분 문자열 중에서 "aya", "ye", "woo", "ma"가 한 번씩만 등장합니다. 문자열은 알파벳 소문자로..
22.12.21: 타입스크립트 타입들 - Union, Any, Unknown 타입스크립트는 변수를 만들때 타입을 지정할 수 있다. 자주 쓰는 type들은 다음과 같음 let 이름 :string = 'Kim' let 나이 :number = 20; let 여성 :boolean = true; array 또는 object 자료 안에서도 타입을 지정한다 let name :string[] = ['Kim', 'Park'] array안에 다른 타입이 동시에 들어갈 때 let 회원들 :(string | number)[] = ['Kim', 22] object 자료 안에 들어가는 타입은 object 모습과 같다. let kkongJji: { age : number } = { age : 2 } 하지만 모든 변수에 타입을 지정 할 필요는 없다. 변수 생성시 타입스크립트가 타입을 자동으로 부여 해 준다...
22.12.17: TypeScript 특징, 쓰는 이유? TypeScript란? JavaScript에 타입을 부여한 언어이다. 자바스크립트의 확장된 언어라고 볼 수 있다. 타입스크립트는 자바스크립트와 달리 브라우저에서 실행하기 위해 파일을 한번 변환 해 주어야 한다. 이 과정을 컴파일(compile)이라 한다. # TypeScript 특징 컴파일 언어, 정적 타입 언어 자바스크립트는 동적 타입의 인터프린터 언어로 런타임에서 오류를 발견한다. 이에 반해 타입스크립트는 정적 타입의 컴파일 언어이고 타입스크립트 컴파일러 또는 바벨을 통해서 코드로 변환된다. 자바스크립트에 타입스크립트 문법이 추가된 것 유효한 자바스크립트로 작성한 코드는 확장자를 .js에서 .ts로 변경하고 타입스크립트로 컴파일해 변환 가능 객체 지향 프로그래밍 지원 ES6에서 새롭게 사용된 문법을 ..
22.12.08: IT 인프라 IT 인프라에 대한 개념이 잘 잡혀있지 않은 것 같아서 오늘은 IT 인프라에 대한 강의를 듣고 정리 해보려 한다. 참고한 웨비나: NAVER Cloud Platform의 누구나 쉽게 이해할 수 있는 IT인프라 정복하기! IT 인프라란? IT Infrastructure IT 서비스의 기반이 되는 Information Technology(IT) 구성 요소들의 집합 IT 구성요소 하드웨어: 장비 설치를 위한 데이터센터, 데이터센터 운영 위한 냉각 시설과 서버, 스위치, 스토리지, 라우터 등 소프트웨어: Window, Linux 같은 운영체제를 포함하여 그 위에 올라가는 아파치 같은 웹서비스, 미들웨어 등이 소프트웨어에 포함 네트워크: 케이블, 스위치, 라우터 뿐 아니라 이를 통한 네트워킹 및 보안 방화벽, 인..
22.12.07: 리팩토링 - 추상화 도전(?) 코드 리팩토링을 결심하게 된 계기는...일단 만든 프로그램이 돌아가긴 하지만 볼일 본 뒤 닦지 않은 듯한 찝찝함 때문이었다. 예전 팀 프로젝트들을 진행하면서, 시간이 좀 더 있었다면 리뷰도 받고 고쳐 보고 싶었는데, 커리큘럼을 따라가느라고 제대로 해 보지 못한 부분도 있다. 아주 간단한 기능들만 들어간 투두리스트이긴 하지만, 코드를 내 마음대로 여기 저기 뜯어 고쳐 보고 공부 할 수 있는 좋은 기회라 생각해 진행 해 보기로 했다. *댓글로 더 나은 방향성을 제시 해 주신다면 매우 감사드립니다. 나는 추상적인 개념에 대한 이해가 잘 안되는 편이다. 처음에 코드의 추상화라는 단어를 들었을 때는 잉 코드를 추상화 한다니 그게 무슨 말인가 싶었다. Computer Science에서의 추상화라는 것은 복잡한 자료..
22.12.05: redux-saga 실습 해보기 오늘의 목표는 Redux saga 어떨 때 써야하는지, 어떻게 쓰는지 알아보기. About Redux-Saga redux-saga is a library that aims to make application side effects (i.e. asynchronous things like data fetching and impure things like accessing the browser cache) easier to manage, more efficient to execute, easy to test, and better at handling failures. The mental model is that a saga is like a separate thread in your application th..
22.11.30: Redux + thunk, saga 발췌 from 벨로퍼트와 함께하는 모던 리액트 오늘은 리덕스에 대해서 정리해보고자 한다. 처음에 리덕스에 대한 개념 정리가 제대로 되지 않은 상태로 리덕스툴킷으로 넘어가버려서 리덕스를 제대로 이해하고있지 못하고 있다. 특히 미들웨어에 대해서... Redux 리덕스는 현재까지 가장 사용률이 높은 상태관리 라이브러리임. 우리가 만드는 컴포넌트들의 상태관리를 따로 분리시켜서 효율적으로 관리가 가능하고, 전역 상태 관리도 쉽다. Redux vs Context API *Context API: 리액트 내장 API로 컴포넌트와 상관없이 값을 전역으로 관리 가능함 (useReducer와 함께 상태관리도구 역할 가능) 1. 미들웨어의 존재 리덕스에는 Middleware라는 것이 있다. 이것을 사용하면 액션 객체가 리듀서..
22.11.29: 리액트의 렌더링 최적화 (useCallback, React.memo, useMemo) 내용 발췌 : 우아한Tech [10분 테코톡] 엘버의 리액트 렌더링 최적화 브라우저의 렌더링은 무엇인지 먼저 알아보기 1. HTML을 파싱해서 DOM을 만들고 CSS을 파싱해서 CSSOM을 만든다. 2. DOM과 CSSOM으로 Render Tree를 만들어준다. 3. Layout과 4. Paint 과정을 거쳐서 5. 사용자가 화면을 보게 된다 그렇다면 리엑트에서의 렌더링이란? 리액트가 함수를 호출하는 것이다. 예를 들면, function App() { const handleClick = () => { // 로직생략 }; return rendering is just calling function; } 위의 App 컴포넌트가 실행되면서 내부 로직들이 실행이 되고 리턴문을 통해서 리액트 엘리먼트들을 반환하는 ..

반응형