전체 글 53

ASCII와 UTF-8

🧠 한 줄 요약ASCII는 오래된 문자 "표현 체계",UTF-8은 현대적인 "문자 인코딩 방식"으로ASCII를 포함하지만 훨씬 더 많은 문자를 지원합니다.ASCII란?American Standard Code for Information Interchange7비트 문자 집합 (총 128자): 0~127영어 알파벳, 숫자, 특수기호, 제어 문자만 표현 가능 (한글/중국어/이모지 등은 표현)문자ASCII 값 (10진수)이진A6501000001a970110000114900110001 🌍 UTF-8이란?Unicode Transformation Format - 8bit전 세계 모든 문자(Unicode)를 표현하기 위한 문자 인코딩 방식가변 길이 인코딩:1바이트: ASCII 문자 (0x00 ~ 0x7F)2~4바이..

개발상식 2025.08.07

javascript에서의 URL Encoding

📘 URL Encoding이란?URL Encoding은 URL에 포함될 수 없는 문자(공백, 한글, 특수문자 등)를 퍼센트 인코딩(percent-encoding) 방식으로 변환하는 것입니다.✅ 왜 필요한가요?URL은 오직 ASCII 문자만 허용되며,공백이나 한글, &, = 등의 문자가 있으면 서버에서 URL을 잘못 해석할 수 있습니다.예를 들어 다음과 같은 문자열이 있다고 가정해봅시다:"hello world&name=성재"이 문자열을 URL에 그대로 넣으면 문제 발생 → 정상적인 HTTP 요청이 되지 않음따라서 이를 안전하게 인코딩해야 합니다.🔢 인코딩 방식퍼센트 인코딩 (Percent Encoding)각 문자를 UTF-8 바이트로 변환 후, 16진수로 표시하고 % 기호를 붙입니다.문자 ASCII(또..

개발상식 2025.08.07

Base64 인코딩에 대해

Base64 인코딩이란?Base64는 이진(binary) 데이터를 텍스트 형식으로 인코딩하는 방식입니다.이진 데이터를 64개의 문자로 표현하기 때문에 "Base64"라고 불립니다.🔢 인코딩 방식 설명1. 기본 아이디어3바이트(24비트)의 이진 데이터를 6비트씩 4조각으로 나눈다각 6비트는 0~63까지 표현 가능 → 총 64개의 문자 매핑📌 패딩: 입력 데이터가 3바이트로 나눠떨어지지 않으면 =으로 끝을 채움 (예: TWE=)2. 인코딩 순서입력예: Man (ASCII: 77 97 110)1. 이진 변환01001101 01100001 01101110 (3바이트, 24비트)2. 6비트 단위 분할010011 010110 000101 1011103. 각 조각을 정수로 변환19 22 5 464. Base64 ..

개발상식 2025.08.07

javascript 클립보드 복사 기능

✅ 1. 최신 방식 (권장) — navigator.clipboard.writeText()function copyToClipboard(text) { navigator.clipboard.writeText(text) .then(() => { console.log('클립보드에 복사되었습니다!'); }) .catch(err => { console.error('복사 실패:', err); });} ✅ 2. 레거시 방식 — document.execCommand('copy') (구형 브라우저 호환)function legacyCopyToClipboard(text) { const textarea = document.createElement('textarea'); textarea...

Web/javascript 2025.06.25

아이폰 빌드 시 개발자 모드 활성화 방법

✅ 개발자 모드(Developer Mode) 켜는 방법 (iOS 16 이상 기준)아이폰을 케이블에 연결 아이폰에서 연결 시 신뢰할 수 있는 기기 팝업 허용Xcode 연결개발자 모드는 직접 아이폰을 Mac에 연결하고 Xcode에서 빌드 실행기기가 보이지 않을 시 Xcode > Devices and Simulators에서 해당 기기를 클릭이 과정을 거치지 않으면 설정에서 개발자 모드를 직접 켤 수 없다.아이폰에 개발자 모드 활성화 알림활성화 시 아이폰 재시작설정 > 개인 정보 보호 및 보안 > 개발자 모드이제 개발자 모드가 보이며 개발자 모드 활성화

Mobile/iOS 2025.06.25

Flutter StatelessWidget & StatefulWidget

Fultter Mobile의 화면 위젯은 Stateful 하거나 Stateless하다. Stateless widget stateless widget은 절대 변하지 않는 정적 화면이다. StatelessWidget을 상속하며 Icon, IconButton, Text등이 이에 해당된다. 실 사용 화면에서는 이용약관 화면 등을 예로 들 수 있다. import 'package:flutter/material.dart'; class MyWidget extends StatelessWidget { const MyWidget({super.key}); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: const Tex..

Mobile/Flutter 2024.03.28

chrome V8 엔진에 대해

V8은 C++로 작성된 Google의 웹 브라우저를 만드는 데 기반을 제공하는 오픈 소스 자바스크립트 또는 웹 어셈블리(WebAssembly) 엔진이다. 구글 크롬 브라우저와 안드로이드 브라우저에 탑재되어 있고 Node.js 등에서 사용된다. ECMAScript(ECMA - 262) 3rd Edition 규격의 C++로 작성되었으며, 독립적으로 실행이 가능하다. 또한 C++로 작성된 응용 프로그램의 일부로 작동할 수 있다. V8은 컴퓨터가 실제로 이해할 수 있도록 JavaScript 코드를 기계어(CPU가 이해할 수 있는 언어로 숫자로만 구성된 순수 디지털 방식)로 직접 번역한 다음, 번역된 코드, 즉 컴파일된 코드를 실행한다. WebAssembly WebAssembly는 최신 웹 브라우저에서 실행할 수..

Web/frontend 2024.03.14