재택근무 탓일까요? 바쁘다는 핑계로 매월 한건씩 올려보자는 다짐이 무너졌네요.. ^^;
이번 소식과는 무관하지만, Post 코로나 시대가 올것인가... 다시말하면 코로나 이후로 인류 생활 양식의 변화가 일어날 것인가... 가 조금 화두가 되는 시기인거 같네요. 저도 관련 답을 찾아보고 스스로 고민도 해 보지만 아직 잘 모르겠네요... 다들 어떻게 생각하시고 준비하고 계시나요?
- 3 계층 구조를 사용하십시오. (3 layer architecture)
- 비지니스 로직을 express.js의 controller에 넣지 마십시오.
- 백그라운드 작업을 할 때는 PubSub 패턴을 사용하고 이벤트를 발생 시키십시오.
- 마음의 평화를 위해 의존성 주입을 사용하십시오.
- 비밀번호, secrets와 API key들을 절대 누출하지 말고 configuration manager를 사용하십시오.
- node.js 서버 설정파일을 작은 모듈들로 분리하여 독립적으로 로드할 수 있게 하십시오.
엄청난 장문의 떡밥 글인데 안물 수가 없더군요...
안그래도 평생 OOP 하다가 React functional component와 hooks 덕분에 FP로 넘어오고나니 class
를 안쓰게 되더군요...
- OOP는 원래 메시징 시스템이다.
- shared motuable state, 오류를 가지는 추상화, 낮은 신호대 잡음 비(boilerplate)는 소프트웨어 복잡도의 주 원인이다.
- Problems of state
- Imperative programming(OOP)는 상태를 바꾸 지만,
- Declartive programming(FP)는 상태를 정의 한다.
- The Trojan Horse of Encapsulation: encapsulation이라는 명목으로 shared mutable state를 만든다
- The Problem with Real World Modeling: 현실 세계를 반영할 수 없다.
- The Kingdom of Nouns: object는 명사인데, 명사 하나로 object가 가지는 함수와 데이터를 표현하려 한다.
- Unit Testing: 테스트 어렵다
- Refactoring: 리펙터링 어렵다. 등등...
bash 퀵 가이드
PPT 등 발표 자료 만들때 유용한 툴
사용자 segmentation할때 기준들 입니다. 보통 segmention은 지역 및 국가별로 하거나 device 즉, mobile, pc 등으로 하는데 그 밖에 다양한 관점을 보여 줍니다. 사용자를 이해하는 카테고리가 어떤 것이 있을지 생각해 볼 수 있을 것 같습니다.
- Behavioural
- Psychographic
- Demographic
- Geographic
- Occasional
- Cultural
한글로 잘 정리되어 있음.
- CSS Grid-Generator
- Box-Shadows
- Grabient
- Mybrowser.fyi
- Easings
- iHateRegex
- browserhacks
- animista
- coolors
- Optimizilla
- Neumorphism
이중에 Neumorphism은 최근에 ncc ux 구현하는데 많은 도움이 됬습니다.
typescript-cheatsheets/react-typescript-cheatsheet: Cheatsheets for experienced React developers getting started with TypeScript
react를 typescript 스럽게 혹은 typescript를 react 스럽게
Typescript 기반 functional programming 관련 리소스들