TIL 220104 : 타입스크립트, 알고리즘(정렬)

Liam·2022년 1월 4일
0

TIL

목록 보기
14/17

🚀Today I Learned

이제 정확히 한달이라는 시간이 남았고, 남은시간 동안 최대한 기업에 신입으로써 지원하기 위해 개발 스펙을 쌓아가야 하겠다고 한번 더 생각한다.
필요한 것과 배우고 싶은 것들의 교집합을 스터디 하는 것이 좋다고 판단하였고, 지금은 nodejs로 개발하는 거의 모든 곳에서 필요한 타입스크립트를 공부하기로 마음 먹었다. 마음 먹음과 동시에 타입스크립트 강의를 질러버렸다.. 배움에 돈을 아끼지 말자. 시간이 더 중요하다.

타입스크립트?

왜 타입스크립트를 배워야할까

자바스크립트는 프로그램이 동작할 때 타입이 결정되어 약간 위험?하다.
이에반해 타입스크립트는 타입이 정적으로 정의되어 즉각적으로 타입 에러를 받아볼 수 있다.
타입이 없다면 자유롭다고 말할 수 있지만 오히려 가독성이 떨어지고, 딱 봤을 떄 변수가 어떤 데이터를 담고있고, 함수는 어떤 인자를 받는지 명확하지 않다. 그래서 이슈가 발생하여도 타입스크립트와 비교하여 발견하기 어렵다.

또한 타입스크립트를 배워야하는 이유는 OOP(Object-Oriented Programming)이 가능해지기 때문이다! OOP 즉 객체지향 픅로그래밍이 가능하게되어 좀 더 노퓨은 퀄리티를 완성할 수 있다👌


오늘 기본 타입, 함수 타입에 대해 스터디하며, 예전 C++을 사용하며 코딩했을 때가 생각났다.
처음 자바스크립트를 사용하며 타입이 없다는 것에 어색했어서 그런지 오히려 타입을 작성하는게 반갑다.

오늘 작성한 예제 코드, 코드가 고급스러워진 기분,, 타입이 좋다,,

  //JavaScript => TypeScript
  //Optional parameter
  function printName(firstName:string, lastName?:string){
      console.log(firstName);
      console.log(lastName);
  }
  printName('Liam', 'Jeon');
  printName('Julie');
  printName('Liam',undefined);
  //Default parameter
  function printMessage(message: string = 'default messgae'){
      console.log(message);
  }
  printMessage();
  //Rest parameter
  function addNumbers(...numbers: number[]):number{
      return numbers.reduce((a,b,)=>a+b);
  }
  console.log(addNumbers(1,2));
  console.log(addNumbers(1,2,3,4));
  console.log(addNumbers(1,2,3,4,5));

참고

https://www.typescriptlang.org/download

알고리즘

오늘 스터디한 알고리즘 - 선택정렬, 버블정렬, 삽입정렬
https://github.com/liamjeon/study-algorithm/tree/master/inflean/ch7_%EC%A0%95%EB%A0%AC%EA%B3%BC%EA%B7%B8%EB%A6%AC%EB%94%94

profile
🚀티끌모아 백엔드 개발자

0개의 댓글