목록스터디/프로그래밍 기초 (4)
구어체로 설명하는 다이어리

오늘은 타입스크립트에서 사용하는 type과 interface에 대해 가볍게 알아보고 어떤 것을 사용하면 좋은지에 대해 이야기해보겠습니다. type과 interface는 개발자가 타입에 이름을 지정하여 타입을 부여하고 싶을 때 사용하는 문법입니다. type type Name = string;const name: Name = '씨씨상'; 프로그래밍에서 코드를 알아보기 쉽게 변수에 이름을 붙이듯이 특정 타입 (string) 에 특정 이름 (Name) 을 붙여주는 것입니다. 그런데 이렇게 쉬운 예제는 별로 없고 보통은 복잡한 데이터 타입에 이름을 붙여주고 싶을 때 사용합니다. 이를 타입 별칭을 만든다고 합니다. type Person = { name: string; age: number;};const pe..

undefined와 null에 관하여 타입스크립트에 대한 내용을 서치하고 있는데 사람들이 undefined를 사용할지, null을 사용할지에 대한 내용으로 여러가지 포스팅이 올라와있는 것을 보게 되었습니다. 처음 봤을 때는 아니 이게 논란거리가 된다고?난 늘 이렇게 살아왔는데 라고 생각했습니다만 타입스크립트에서는 아예 null은 사용하지 말고 undefined를 사용하라는 컨벤션까지 있다고 하고 (물론 강제하는 것은 아니겠지만), [https://github.com/Microsoft/TypeScript/issues/8940] 여러 가지 글을 읽고 나니 제가 그동안의 제가 편향적으로 생각했던 것은 아닌가 싶어 블로그로 정리하게 되었습니다. 다른 블로그에 훨씬 더 잘 정리되어 있는 글이 많으므로 진정한 이..

리액트로 개발을 하다보면 렌더링을 두 번 하는 것을 확인할 수 있습니다. 왜 렌더링을 두 번씩이나 하는지 궁금해서 검색해보니, Strict Mode 때문이라는 걸 알 수 있었습니다. 그럼 Strict Mode가 뭐길래 이렇게 개발자를 귀찮게 하는걸까요? Strict Mode Strict Mode란 애플리케이션 내의 잠재적인 문제를 알아내기 위한 도구입니다. 개발 모드에서만 활성화되며, 프로덕션 모드에서는 영향을 끼치지 않습니다. Strict Mode를 고려하는 것은 너무 귀찮은 일인데, 그럼 Strict Mode를 주석 처리해서 두 번 호출하지 않도록 설정하면 끝나는 일일까요? 정답은 아니오 입니다. 왜 그러한지를 이해하려면 리액트의 철학을 이해해보면 쉽습니다. 하단은 글쓴이가 이해를 돕기 위해 생..

Call by Value (값에 의한 호출)와 Call by Reference (참조에 의한 호출) 이 두 가지는 함수가 인자를 전달하고 처리하는 방식을 말합니다. Call by Value 값에 의한 호출은 원시 타입에서 나타나며, 함수의 인자로 전달한 값을 복사하여 사용합니다. 무슨 이야기인지 코드를 보면서 알아봅시다. function myFunction(a) { a = a + 100; console.log(a); //- 101}let x = 1;myFunction(x);console.log(x); //- 1 이처럼 myfunction 함수에서 매개변수 a로 받을 때 인자로 받은 x의 값을 복사해서 사용합니다. 원본 값의 복사본을 수정하는 것이기에 myFunction 함수 안에서 값을 ..