드리프트의 뉴 코딩 이야기
close
프로필 배경
프로필 로고

드리프트의 뉴 코딩 이야기

  • 분류 전체보기 (416)
    • Javascript (177)
    • Go (143)
    • Rust (33)
    • Python (31)
    • Docker (5)
    • Codings (10)
    • Linux (5)
    • Flutter (3)
    • Etc (9)
  • 홈
  • Javascript
  • Go
  • Rust
  • Python
더 안전한 타입스크립트 Map과 배열 다루기 고급 패턴 탐구

더 안전한 타입스크립트 Map과 배열 다루기 고급 패턴 탐구

더 안전한 타입스크립트 Map과 배열 다루기 고급 패턴 탐구타입스크립트의 배려, 때로는 오지랖이 될 때자바스크립트로 코드를 작성할 때 우리는 아주 자연스럽게 특정 패턴을 사용합니다.`Map` 객체에서는 `.has()`로 키의 존재를 먼저 확인한 뒤, `.get()`으로 안전하게 값을 가져옵니다.배열에서는 `.length`로 길이를 확인하여, 존재하지 않는 인덱스에 접근하는 오류를 피합니다.이러한 방어적인 코딩 습관은 매우 합리적이고 안전해 보입니다.하지만 타입스크립트의 세계로 넘어오는 순간, 이 당연했던 패턴들은 종종 우리의 기대를 배신하고는 합니다.타입스크립트는 우리의 '의도'를 온전히 이해하지 못하고, 이미 안전하다고 확신하는 상황에서도 '값이 `undefined`일 수 있다'며 깐깐하게 경고를 보내..

  • format_list_bulleted Javascript
  • · 2025. 7. 13.
  • textsms
자바스크립트의 배신 타입스크립트는 Iterator 이름 충돌을 어떻게 해결했나

자바스크립트의 배신 타입스크립트는 Iterator 이름 충돌을 어떻게 해결했나

자바스크립트의 배신 타입스크립트는 Iterator 이름 충돌을 어떻게 해결했나조용히 일어난 이름 전쟁ECMAScript 2025(자바스크립트의 공식 명칭) 명세에, 개발자들의 오랜 숙원이었던 '이터레이터 헬퍼 메서드(iterator helper methods)'를 품은 새로운 `Iterator` 클래스가 추가되었습니다.이는 `map`, `filter` 등 배열에서나 가능했던 편리한 기능들을 이제 모든 순회 가능한 객체에서 직접 사용할 수 있게 되었다는 반가운 소식입니다.하지만 이 기쁨도 잠시, 타입스크립트 진영에서는 조용한 비상이 걸렸습니다.새롭게 표준으로 들어온 `Iterator`라는 이름이, 이미 타입스크립트 생태계에서 핵심적인 역할을 하던 기존의 `Iterator` 타입과 정면으로 충돌했기 때문입니..

  • format_list_bulleted Javascript
  • · 2025. 7. 13.
  • textsms
2025년 최고의 자바스크립트(JavaScript) 대안, 리스크립트(ReScript) 파헤치기!

2025년 최고의 자바스크립트(JavaScript) 대안, 리스크립트(ReScript) 파헤치기!

2025년 최고의 자바스크립트(JavaScript) 대안, 리스크립트(ReScript) 파헤치기!안녕하세요! 오늘은 2025년에 주목해야 할 자바스크립트(JavaScript)의 강력한 대안, 바로 리스크립트(ReScript)에 대해 알아보려고 한답니다.리스크립트(ReScript) 소개리스크립트(ReScript)는 그 자체로 정말 매력적인 특징들을 많이 가지고 있는데요.예를 들면, 훨씬 더 탄탄한 타입 시스템, 순수 함수형 프로그래밍 지원 강화, 강력한 언어 기능들, 그리고 네이티브 언어로 작성되어 성능이 어마어마하게 빠른 컴파일러 등이 있습니다.물론, 그에 상응하는 단점들도 존재하는데요.이 글에서는 리스크립트(ReScript)의 강력한 기능들, 주변 생태계, 그리고 우리가 매일 사용하는 리액트(React..

  • format_list_bulleted Javascript
  • · 2025. 5. 20.
  • textsms
fetchpriority (페치프라이오리티)로 리소스 로딩 최적화하기

fetchpriority (페치프라이오리티)로 리소스 로딩 최적화하기

fetchpriority (페치프라이오리티)로 리소스 로딩 최적화하기배경미리 로딩(Preloading)은 전체 웹페이지 로딩이 완료되기 전에 주요 콘텐츠를 먼저 로드하여 사용자에게 더 나은 경험을 제공하고 대기 시간을 줄일 수 있게 해줍니다.하지만 어떤 경우에는 미리 로드된 리소스의 우선순위를 더욱 세분화해야 할 필요도 있습니다.미리 로딩만으로는 리소스 우선순위를 완벽하게 제어할 수 없기 때문에, 이를 보완하기 위해 fetchpriority (페치프라이오리티) 속성이 도입되었습니다.목표리소스 가져오기 우선순위에 영향을 줍니다.미리 로드된 리소스의 로딩 순서를 보완합니다.우선순위는 브라우저에게 리소스의 상대적인 중요도를 나타냅니다.적절한 우선순위 설정은 최적의 로딩을 보장하여 웹 사용자 경험을 향상시킵니다..

  • format_list_bulleted Javascript
  • · 2025. 5. 17.
  • textsms
React (리액트) Fast Refresh (패스트 리프레시): 차세대 핫 리로딩 완벽 해부

React (리액트) Fast Refresh (패스트 리프레시): 차세대 핫 리로딩 완벽 해부

React (리액트) Fast Refresh (패스트 리프레시): 차세대 핫 리로딩 완벽 해부머리말먼저, Live Reloading (라이브 리로딩)과 Hot Reloading (핫 리로딩)의 차이점을 소개하겠습니다.Live Reloading (라이브 리로딩): 파일이 수정되면 Webpack (웹팩)이 이를 다시 컴파일하고 브라우저를 강제로 새로고침합니다.이는 전역 새로고침(애플리케이션 전체)을 초래하며, window.location.reload() (윈도우 점 로케이션 점 리로드)와 동일합니다.Hot Reloading (핫 리로딩): 파일이 수정되면 Webpack (웹팩)이 해당 모듈을 다시 컴파일하지만, 새로고침 시 애플리케이션의 상태를 유지하여 부분적인 새로고침이 가능합니다.소개Fast Refres..

  • format_list_bulleted Javascript
  • · 2025. 5. 17.
  • textsms
Node.js (노드제이에스) 프로세스 종료 전략: 시그널, 오류 그리고 우아한 종료 완벽 가이드

Node.js (노드제이에스) 프로세스 종료 전략: 시그널, 오류 그리고 우아한 종료 완벽 가이드

Node.js (노드제이에스) 프로세스 종료 전략: 시그널, 오류 그리고 우아한 종료 완벽 가이드배경 소개우리 서비스가 배포된 후에는 런타임 환경(예: 컨테이너, PM2 (피엠투) 등)에 의해 스케줄링되거나, 서비스 업그레이드로 인해 재시작되거나, 다양한 예외 상황으로 인해 프로세스가 갑자기 중단되는 일을 피할 수 없습니다.일반적으로 런타임 환경에는 서비스 프로세스에 대한 상태 모니터링 메커니즘이 있어서, 프로세스가 중단되면 런타임이 이를 다시 시작합니다.업그레이드 시에는 보통 롤링 업그레이드 전략을 사용합니다.하지만 런타임 환경의 스케줄링 전략은 우리 서비스 프로세스를 내부 상태를 고려하지 않는 '블랙박스'처럼 취급합니다.따라서 우리 서비스 프로세스는 런타임 환경으로부터의 스케줄링 동작을 사전에 감지하..

  • format_list_bulleted Javascript
  • · 2025. 5. 17.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • ···
  • 30
  • navigate_next
태그
  • #Golang
  • #Rust
  • #자바스크립트
  • #성능 최적화
  • #javascript
  • #Go 언어
  • #프로그래밍
  • #타입스크립트
  • #Go
  • #typescript
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바