[JavaScript] 사파리에서 파일을 업로드했을 때 파일명 자소분리 현상이 발생하는 문제
·
Error Note
사파리 브라우저에서 한글명이 포함된 파일을 업로드했을 때 자소분리 현상이 발생하는 경우가 있다. 안녕.txt → ㅇㅏㄴ ㄴㅕㅇ.txt 해당 문제는 브라우저마다 유니코드 정규화 방식이 다르기 때문에 발생하는 문제라고 한다.서버 쪽에서 파일명을 처리할 때 정규화 방식을 명시적으로 지정해주면 된다. 자바스크립트에서는 아래 메서드를 사용해서 문제를 해결할 수 있었다. const fileName = "ㅇㅏㄴㄴㅕㅇ.txt"; // 자소분리된 파일명const normalizedFileName = fileName.normalize('NFC'); // "안녕.txt"로 변환 ▶ 정규화 형태  - NFC : 모든 분리된 문자 조합을 하나의 조합된 문자로 변환함  - NFD : 모든 조합된 문자를 분리된 기본 문자로 변환함
[C#/dotnet] LINQ (Language-Integrated Query)
·
C#
참조https://learn.microsoft.com/ko-kr/dotnet/csharp/linq/  LINQ (Language-Integrated Query)  - 다양한 데이터 원본에 대해 쿼리를 작성할 수 있는 도구  - 동일한 구문을 이용하여 모든 형식의 데이터 소스를 다룰 수 있음     → 코드 재사용성 UP / 다양한 데이터 형식에 대한 일관된 접근 방식 제공  - 컴파일 타임에 형식 검사를 수행함  - 선언적 쿼리 구문 (SQL과 동일)     : 데이터를 쿼리할 때, 어떻게 쿼리를 수행할지를 명시하는 게 아니라 무엇을 원하는지를 설명하는 방식  - IQueryable 및  IEnumerable 인터페이스를 활용하여 쿼리 결과를 지연 실행함     → 쿼리는 실제로 결과가 필요할 때까지 실..
[C#/dotnet] 일반적인 C# 코드 규칙
·
C#
참조https://learn.microsoft.com/ko-kr/dotnet/csharp/fundamentals/coding-style/coding-conventions  언어 지침  1) 제네릭 예외 처리를 지양한다.    - 범용 예외 타입인 'Exception'을 포괄적으로 catch하지 말 것       → 구체적인 예외 타입을 catch하여 예상 가능한 오류만 처리하기  2) 사용자가 예외 상황을 이해할 수 있도록 의미 있는 오류 메시지를 제공한다.  3) 컬렉션 조작에 LINQ 쿼리와 메서드를 사용하여 코드 가독성을 높인다.    - LINQ (Language Integrated Query)       : C#에서 컬렉션, 배열, 리스트 등 데이터를 쿼리하는 도구         → DB에서 S..
[C#/dotnet] 식별자 명명 규칙
·
C#
참조https://learn.microsoft.com/ko-kr/dotnet/csharp/fundamentals/coding-style/identifier-names  ▶ C#에서 권장하는 식별자 명명 규칙   - 두 개의 연속된 밑줄(_) 문자를 포함하지 않음    → 컴파일러가 자동으로 생성하는 식별자에 사용되기 때문임  - 클래스명, 메서드명 : 파스칼 케이스  - 메서드 매개변수/지역변수 : 카멜 케이스  - 인터페이스명 : 대문자 I 접두사 + 파스칼 케이스  - 상수 : 파스칼 케이스  - private 필드 : 밑줄(_) 접두사 + 카멜 케이스
[JavaScript] Node.js 설치하기
·
JavaScript
# scoop 설치하기https://scoop.sh/ [Windows PowerShell] 에 아래 코드를 실행해서 scoop을 설치한다.Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserInvoke-RestMethod -Uri https://get.scoop.sh | Invoke-Expression 설치 후 'scoop'이라고 입력했을 때 아래와 같은 형식으로 출력되면 설치가 완료된 것이다.  # nvm (Node Version Manager) 설치하기scoop install nvm sudo sudo는 관리자 권한으로 실행할 수 있게 해주는 명령어이다.설치 후 'nvm version'이라고 입력했을 때 아래와 같은 형식으로 출력되면..