일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바스크립트
- Spock Stub
- webpack
- Docker Desktop 쓰고싶다
- enum
- Mock vs Stub
- 의존성주입
- DI
- docker desktop 유료화 정책
- mock stub
- docker desktop 대체
- frontend
- 타입스크립트
- TCP/IP
- @Transaction isolation
- Vue+Typescript
- TypeScript
- vue store
- HTTP란
- 공짜로 Docker Desktop같은거 쓰기
- mock stub spy
- ECMAScript
- Javascript
- nuxtjs/composition-api buildModules
- Spock Mock Stub Spy
- Spock Spy
- Rancher Desktop설치
- Spock Mock
- 트랜잭션 격리
- @Transaction propagation
- Today
- Total
목록분류 전체보기 (63)
끄적끄적
CRA란? create-react-app을 줄여 CRA라고 많이 부릅니다. CRA란 리액트를 개발한 페이스북에서 만든 리액트 프로젝트용 보일러플레이트라고 생각하시면 됩니다. 지속적인 패키지들의 버전업과 리액트의 버전업이 활발히 일어나다 보니 자신만의 보일러플레이트를 가지고 있다고해도 결국 패키지들의 업데이트에 맞춰 지속적인 관리도 해주게 되고 새로운 기술 또는 아키텍처가 생기면 구조변경을 해야하는 경우도 생기기 마련이라 금방 레거시 프로젝트가 되죠. 하지만 CRA를 쓰면 리액트의 지속적인 업데이트를 페이스북에서 주관을 하고있고, 그에 맞춰 페이스북에서 이러한 CRA 보일러플레이트를 업데이트를 시켜줍니다. 따로 관리할 필요가 없고, 물론, 자신이 쓰는 구조가 미리세팅되어 있는게 아닌 기초적인 세팅만 되어있..
리액트 훅이란? 리액트를 사용하는 개발자라면 한번쯤은 들어봤을 훅에 대해서 정리해보려고 합니다. 이미 많은 자료가 있지만 한번 정리해두면 나중에 편할 것 같아서.. Hooks 는 리액트 v16.8 에 새로 도입된 기능이며, 함수형 컴포넌트에서도 상태 관리를 할 수 있는 useState, 그리고 렌더링 직후 작업을 설정하는 useEffect 등의 기능을 제공해, 기존 함수형 컴포넌트에서 할 수 없었던 작업을 할 수 있게 해줍니다. 훅의 종류 1.useState useState는 가장 기본적인 Hook입니다, 함수형 컴포넌트에서 가변적인 상태를 지닐 수 있게 해주며, 함수형 컴포넌트에서 상태를 관리해야 할 때 사용합니다. import React, { useState } from 'react'; 위의 예제와 ..
HTTP 지속적 연결 상태, HTTP 영구 접속 또는 HTTP 킵얼라이브, HTTP 연결 재사용은 하나의 TCP 연결을 사용하여 복수의 HTTP 요청/응답을 주고받는다는 개념으로, 매 요청/응답 쌍마다 새로운 요청을 여는 것과는 반대되는 개념이다. -위키백과- http keep-alive 웹개발을 하다보면 기본적으로 알고 지나가야할 이론입니다. 서버간 통신을 주고 받으며 통신을 위한 커넥션 즉 서버간 연결과정이 나옵니다. 일전에 포스팅한 3way handshake & 4way handshake가 그 연결과정에 대한 내용이죠. keep-alive는 반복적이고 빈번한 통신에 대해 데이터를 주고 받을때마다 connection을 연결하는 과정을 하다보면 그 만큼의 퍼포먼스에 대한 저하를 줄여보고자 나온 방안인데..
회문 알고리즘 - 숫자 class Solution { public boolean isPalindrome(int x) { if ( x < 0 ) return false; String str = Integer.toString(x); int middle = str.length()/2; for (int i = 0; i < middle; i++) { if ( str.charAt(i) != str.charAt(str.length()-i-1) ) { return false; } } return true; } } runtime - 7ms memory - 38.9 mb
class Solution { public int reverse(int x) { long res = 0; while (x != 0) { res = res * 10 + x % 10; x = x / 10; } if (res Integer.MAX_VALUE) { return 0; } else { return (int)res; } } } runtime - 1ms memory - 36.6mb
class Solution { public String longestPalindrome(String s) { if (s == null || "".equals(s)) { return s; } int len = s.length(); int max = 0; String answer = ""; boolean[][] dp = new boolean[len][len]; for (int j = 0; j max) { max = j - i + 1; answer = s.substring(i, j + 1); } } } return answer; } }..
java class Solution { public int[] twoSum(int[] nums, int target) { for (int i = 0; i < nums.length; i++) { for (int j = i + 1; j < nums.length; j++) { if (nums[j] == target - nums[i]) { return new int[] { i, j }; } } } throw new IllegalArgumentException("No two sum solution"); } }javascript /** * @param {number[]} nums * @param {number} target * @return {number[]} */ var twoSum = function(nums,..
오늘은 깃 플로우에 대해 알아보도록 합시다. 여러명의 개발자들이 한 프로젝트를 같이 하며 깃을 사용하고 한 브랜치에 머지를 하며 잦은 코드 충돌과 남이 내꺼를 덮어씌우고 버전관리가 안되게 되고 뒤죽박죽 형상이 엉키게 됩니다. 그래서 고민고민 끝에 사람들은 서로간의 약속을 하고 브랜치 전략을 세웠습니다. 그게 깃 플로우인데, 이해가 목적이기에 간단하게 정리하도록 합시다. 깃 플로우 사실 브랜치전략과 완전히 똑같이 협업이 되고 있다고 생각하진 않고, 회사나 프로젝트마다 조금씩 다를 수 있어요. 하지만 기본적인 국룰 이란게 존재하기에 알고 갑시다. master : 제품으로 출시될 수 있는 브랜치 develop : 다음 출시 버전을 개발하는 브랜치 feature : 기능을 개발하는 브랜치 release : 이번..