아두이노 나노(ch340) 맥북 연결

나노 정품의 가격은 $22이다. 중국산 짝퉁(호환보드)는 5천원 정도 한다. 나는 저렴한 CH340을 구입했고, 아두이노 IDE를 설치한뒤 USB에 꽂고 코딩하고, 컴파일하고 업로드 했다. 근데 오류가 떴다. terminal을 열어서 장치 파일들을 살펴봤는데, 역시나 /dev/cu.usbmodem1411라는 장치는 없었다. 그래서 열심히 구글링을 하다가 짝퉁 아두이노는 그 칩에 맞는 통신 드라이버를 설치해 줘야한다는 사실을 알아내고, CH340 driver 설치를 도와주는 github repository를 […]

Ping이 작동 안할때

라즈베리파이에 인터넷이 연결된거는 확인을 했는데, ping이 작동하지 않는 경우가 있다. 이거는 라즈베리파이와 노트북을 랜선으로 연결해서 노트북을 라우터로 썼을때 발생하는 문제이다. 고로, 와이파이를 통해서 노트북과 라즈베리파이를 연결하는 방식을 사용하면 ping이 제대로 먹힌다.

WordPress 한글 파일명 에러

관리자 페이지에서 포스트를 작성할때 한글 파일명의 이미지를 업로드 한다 작성한 글을 본다(당연히 이미지가 잘 나온다) FileZilla로 해당 파일을 지운다 FileZilla를 통해 똑같은 위치에 같은 이미지 파일을 업로드 한다 내가 작성한 글을 보면 엑스박스가 뜬다 파일명이 영어인 이미지는 이런 일이 안일어 난다. 내 생각에는 파일질라로 한글명의 이미지를 올리면 뭔가 파일명에 문제가 생기는것 같다. 고로!! 이 플러그인을 […]

Mac Terminal 한글 깨짐 현상

터미널을 켰는데 갑자기 한글이 ????로 표시됬다. 나는 일시적인 오류라고 생각해서 컴퓨터를 재부팅 했지만 문제는 여전히 그대로였다. 검색 결과 아래와 같은 3가지 해결안을 얻었다. 인코딩 변경 터미널 > 환경 설정 > 프로파일 > 고급 > 다국어 > 텍스트 인코딩 : 한국어(EUC) 언어 재설정 터미널 > sudo languagesetup한국어 선택(10번) 옵션 설정 내경우에는 옵션 설정을 해주는 방법으로 문제가 […]

VSCode가 사용하는 Typescript 버전 수정

VSCode Intellisense가 Omit에 에러를 표시했다. Cannot find name ‘Omit’.ts(2304) 나는 인터넷에서 Omit을 정의한것을 찾아서 복붙해줬고, 에러메세지는 없어졌다. 그런데 컴파일할때 다음과 같은 에러가 발생했다. ‘Omit’ was also declared here. 다른곳에 Omit이 이미 정의되어 있다는 것이다. 그렇다, 최신버전의 Typescript에는 Omit이라던지, Extract같은 Advanced Type이 제공된다. 나는 Stackoverflow에 이에 대해서 질문을 올렸고, 결국 뭐가 문제인지 알아냈다. VSCode는 Typescript v3.4.5를 […]

javascript var vs let

공통점 박스 선언 둘다 어떤 값을 넣기 위한 박스를 만드는데 사용된다. 함수 안에서 밖을 참조 함수 밖에있는 값들을 함수 안에서 참조할 수 있다. 함수 안에 함수가 있어도 마찬가지이다. if문(block) 안에서도 참조 가능하다. 함수 밖에서 안을 참조 함수 밖에서 안에있는 변수를 참조할 수 없다. 차이점 Scope 기본적으로 함수안에 박스(= var, let)를 선언하면, 해당 박스는 그 함수 […]

Typescript 기초(1) – Basic Types

Typescript Handbook / Developer’s Record 를 참고했습니다. String, Number, Boolean Array Tuple Enum Red를 3으로 하면 Green, Blue는 자동으로 4, 5가 된다. 하나하나 값을 설정할 수 도 있다. 반대로 Red, Green, Blue를 얻을수도 있다. Any Void, Null, Undefined Void null을 넣을 수는 없다. Null undefined Never 코드가 끝까지 읽히지 않는다는걸 표시할때 쓴다. Object Type Casting

Back To The Basic

결론 시중에 나와있는 라이브러리, 플랫폼, 언어들은 모두 도구들이다. 이 도구들을 어떻게 사용하는지 설명서를 딱 5번만 읽어보고 사용하자 한번 슥 훑어보면서 마인드맵으로 정리해보자. 기초 공부 리스트 Typescript typescript documentation을 읽으면서 마인드 맵으로 정리하기

Typescript 어려운 부분

Diff Partial DeepPartial DeepPartial은 단순히 Partial을 제귀적으로 사용해서 모든 요소를 optional로 만든것일 뿐이다. Typescript에 기본 내장되어 있지는 않고, Redux의 index.d.ts파일에 있어서 적어봤다. Required Pick Exclude Diff와 같은 기능을 한다. 하지만 Exclude는 Typescript 2.8버전부터 Built-in으로 지원된다. Omit Typescript에서 기본적으로 제공하는 기능은 아니지만 Pick과 Exclude를 활용해서 만들 수 있다. 어떤 타입의 특정 속성을 떨궈내는데 사용한다. Interface의 속성을 […]

Typescript 적용 실패 후기

요즘 타입스크립트가 인기라고 해서, 이번에 새로 제작하는 작은 프로젝트에 적용했다. 하지만 중도에 시간도 부족하고 지쳐서 포기했다. 하면서 뭐가 어려웠는지 대충 기록해 보았다. tsconfig.json moduleResolution / outDir / files / exclude 등의 속성이 이해가 잘 안갔다. 그리고 outDir로 분명 지정했는데 tsc src/index.ts 로 했더니 ourDir에 지정한 path에 파일이안갔다. 알고보니 그냥 tsc를 써야했었다. Webpack + Typescript ts-loader […]

Typescript + React 막무가내 Error Log

설정 tsconfig.json 안에 outDir이거 필요한거맞아? 어차피 ts-loader가 변환 하면서 bundling하는거 아니야?? import React from ‘react’요따구로 쓰면 안되고, import * as React from ‘react’ 이렇게 써야한다. JSON으로 서버에서 데이타를 받아왔는데, 구조가 좀 복잡하다. 배열을 string으로 감싼것도있고,,, 이거를 어떻게 type을 지정해 줘야할까?=> primitive type을 쓰면 된다. 그냥 string이나 number쓰고, 그 type을 UserJSON이라고 하면되지. JSON용 type. “{“admin”:”1234″,”assist”:”4321″}” 라는 […]

기본적인 React + Redux 사용법

진행 순서 1. 버튼클릭 ComponentB안에있는 버튼을 클릭한다. 이 버튼에는 클릭시 action을 dispatch하는 이벤트가 걸려있다. 2. reducer에게 action보내기 내가 만든 action이 store를 통해 reducer에게 보내진다. store를 얻어서 직접 store.dispatch( myAction ) 이렇게 호출할 수 도 있지만, 여러가지 예외처리 혹은 효율성의 이유로 react-redux 모듈을 사용해 store와 내 컴포넌트를 connect시키고 아래와 같이 간접적으로(?) 호출하는게 더 낫다. 3. reducer처리 […]