728x90

TypeScript 2

TypeORM DistinctQuery 가 원치 않는데도 나는 문제

현재 팀내 Legacy Code 에서는 TS 기반의 TypeORM 이 존재하는데 걷어내야 될 존재라 Flow 만알고, 이 프레임워크가 어떻게 돌아가는지는 잘 공부하진 않았다. Migration 대상에 시간을 투자하는건 별로 효율적이지 못하다고 생각해서이다. 최근에 SlowQuery 를 개선하며 DBA 분과 이야기하는데, 왜 이부분에서 distinct query 가 예전부터 날라오는지 잘 모르겠다. 라며 이야기를 해주셨고, 그 코드를 한번 파헤쳐봤는데 distinct 가 될만한 거리는 보이지 않았다. TypeORM 에서 distinct 를 하기 위해서는 .disctinct(true) 를 하거나 .select('select distinct a') 이런식으로 적어줘야 한다고 알고 있었다. 하지만 우리의 코드에..

TypeScript 2022.05.27

[TypeScript] Json 파일 읽어와서 type 으로 변환하기

최근 TypeScript 를 가끔씩 쓰면서 Json 파일을 읽어와서 쉽게 Type 으로 Convert 할 수 없을까 고민해봤다. 그래서 Generic 을 이용해서 Convert 하는 방식을 생각했다. 이전에 필수적으로 알아야 할 선행지식이 있는데 바로 TypeScript 의 "unkown" 이라는 개념이다. any 랑 비슷하다고 생각할 수 있는데, any 보다는 Java 로 치면 Object 느낌에 가깝다. 사용하는 측에서 타입 추론이 이루어질 수 있게 도와주므로 Json 을 Unknwon 으로 가져오고 Generic Type 으로 추론해야겠다는 생각이 들었다. 따라서 아래와 같은 코드를 작성할 수 있었다. const ENCODING_TYPE = 'utf8'; const NOT_EXIST_JSON_FIL..

TypeScript 2021.12.19
728x90