일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 자바스크립트
- 스택
- corou
- defee
- pintos
- 큐
- 모션비트
- 백준
- 오블완
- 시스템콜
- Vue.js
- 크래프톤정글
- 나만무
- 사이드프로젝트
- 티스토리챌린지
- 핀토스
- JavaScript
- TiL
- 리액트
- 자바
- 소켓
- CSS
- Flutter
- HTML
- 코드트리
- 4기
- 크래프톤 정글
- userprog
- Java
- 알고리즘
- Today
- Total
목록개발 TIL (98)
미새문지
자바스크립트의 메모리 관리는 주로 자동화된 가비지 컬렉션(garbage collection)을 통해 이루어진다.여기서 가비지 컬렉션은 자바스크립트 엔진이 더 이상 참조되지 않는 객체를 자동으로 메모리에서 해제하여 메모리 누수를 방지하는 과정이며, 주요 알고리즘은 참조 카운팅(Reference Counting)과 마크 앤 스윕(Mark-and-Sweep)이 있다.자바스크립트의 메모리 관리를 이해하려면 몇 가지 주요 개념을 알아야 한다.1. 메모리 할당변수를 선언하고 값을 할당하면 메모리가 할당된다.let number = 123; // 숫자 타입의 메모리 할당let string = "Moonmisae"; // 문자열 타입의 메모리 할당let obj = { key: "value" }; // 객체 타입의 메모리..
오늘 스터디는 도현이까지 참여해서 4명이서 시작했다. 도현이는 이번 주차 내용으로 진행하고 만석, 재희님은 첫주차부터 모든 키워드로 진행, 본인은 중간에 끼어든 4주차부터 이번주까지 진행하는 걸로 했다. 다른 날에 비해 스터디 시간이 짧아 빠르게 시작했는데, 이번 키워드는 쿠키와 세션, HTTP에 대한 내용으로 진행했는데 http의 stateless에 대해 질문받았다. 근데 설명하면서 정글의 나만무 프로젝트 때가 생각나 그 부분을 토대로 설명하다가 세션에 대한 내용을 잘못 전달했었다. 정확히 숙지하고 있었어야 헀는데 비슷한 단어에 혼동됐다.. 그리고 이번 주차꺼만 생각하다가 저번주에 학습한 공유 메모리에 대해 망각해버린게 너무 아쉽다. 그래서 학습할 때 좀 더 집중하고 깊게 파고드려고 한다.이번 주차의 ..
HTTP공개키와 대칭키에 대해 설명해주세요.공개키 암호화와 대칭키 암호화는 암호학에서 널리 사용되는 두 가지 주요 암호화 방법이며, 각각의 방식은 데이터를 안전하게 보호하는 데 사용되며, 각기 다른 용도와 특징을 가지고 있다. 대칭키 암호화(Symmetric Key Encryption)대칭키 암호화는 암호화와 복호화에 동일한 키를 사용하는 방식이다. 특징키의 동일성: 암호화와 복호화에 사용되는 키가 동일하다.속도: 대칭키 암호화 알고리즘은 일반적으로 비대칭키 암호화 알고리즘보다 빠르다.안전성: 키가 외부에 노출되지 않도록 하는 것이 중요하며, 키가 유출되면 데이터를 안전하게 보호할 수 없다.알고리즘 예시: AES(Advanced Encryption Standard), DES(Data Encryption ..
쿠키와 세션쿠키와 세션의 차이에 대해 설명해주세요.쿠키와 세션은 웹 개발에서 상태를 유지하기 위해 사용하는 두 가지 주요 기술이며, 서로 다른 방식으로 작동하기 때문에 각각의 특성과 용도가 다르다. 쿠키(Cookie)저장 위치쿠키는 클라이언트(사용자)의 웹 브라우저에 저장된다.데이터 저장 방식작은 텍스트 파일로 저장되며, 보통 4KB 정도의 크기로 제한된다.생명 주기쿠키는 설정된 유효 기간이 지나면 자동으로 삭제되며, 유효 기간을 설정하지 않으면 브라우저를 닫을 때 삭제된다.쿠키는 영구 쿠키와 세션 쿠키로 구분됩니다. 영구 쿠키는 유효 기간이 설정된 쿠키이며, 세션 쿠키는 브라우저가 닫힐 때까지 유지된다.보안쿠키는 클라이언트 측에 저장되기 때문에 보안에 취약할 수 있어 민감한 정보를 저장할 때는 주의가 ..
useMemo리액트의 useMemo는 성능 최적화를 위해 사용되는 훅이며, 특정 값이나 연산이 필요할 때 그 값을 메모이제이션(Memoization)하여 재계산을 피하고, 의존성 배열에 지정된 값들이 변경되었을 때만 재계산을 하도록 하는 기능이다. 여기서 메모이제이션은 성능 최적화를 위해 컴포넌트의 특정 계산 결과를 저장하고, 필요할 때만 재계산하여 불필요한 계산을 피하는 기술이다. 메모이제이션은 주로 컴포넌트의 렌더링 성능을 최적화하기 위해 사용된다.메모이제이션의 필요성리액트 컴포넌트는 상태나 프롭스가 변경될 때마다 리렌더링되는데, 복잡한 계산이나 큰 데이터를 다루는 경우, 매번 리렌더링하면 성능 저하가 발생할 수 있기 때문에 메모이제이션을 사용하여 특정 연산의 결과를 저장해두고, 필요한 경우에만 계산..
이번주 스터디는 오후 2시에 시작했는데, 여전히 만석님과 재희님밖에 없는 3인큐 스터디였다. 이번주는 메모리에 관한 키워드가 주제였다. 핀토스 때 가상메모리를 못 했었어서 개념에 대해 한 번 훑어보려 했던 차에 재희님이 야무진 내용을 들고왔었다. 이번엔 배울게 진짜 많았는데, malloc 구현할 때 공부했던 메모리 할당 기법에 대해 다시 복기하는 시간이 되었고, 페이지 크기에 대해 각 장단점을 학습하게 되어 단편화의 비교에 대해 잘 알게 되었다. 꼭 공부한 내용도 누군가한테 설명하려고 하면 어떻게 말이 잘 안나오게 되더라. 처음엔 학습이 부족해서 그런 줄 알았는데, 설명을 하려할 때에 머릿속에서 정리를 하고 말해야 하는데 정보들이 뒤죽박죽 되어있어 설명이 좀 모호한 것 같아 연습을 좀 더 해야겠다. 문제..
가상 메모리가상 메모리란 무엇일까요?가상 메모리는 컴퓨터 시스템에서 실제 물리적 메모리(주기억장치)의 제한을 극복하기 위해 사용되는 메모리 관리 기술이이며, 운영 체제가 메모리를 효율적으로 관리하고 프로그램이 요구하는 메모리보다 물리적 메모리가 적을 때도 프로그램을 실행할 수 있도록 한다. 주요 기능주소 공간의 확장:가상 메모리는 각 프로그램이 독립적인 주소 공간을 갖도록 하여, 물리적 메모리의 크기와 관계없이 프로그램이 큰 메모리 공간을 사용할 수 있게 한다. 이를 통해 프로그램이 실제 메모리보다 더 큰 메모리 공간을 사용할 수 있다.페이지화(Paging): 가상 메모리는 일반적으로 작은 고정 크기의 블록으로 나뉘는데, 이러한 블록을 '페이지'라고 하며, 가상 메모리의 페이지와 물리적 메모리의 페이지 ..
메모리 연속할당first fit, best fit, worst fit에 대해 설명해주세요.1. first fitfirst fit 알고리즘은 메모리 할당 요청이 들어왔을 때, 첫 번째로 발견된 충분한 크기의 빈 메모리 블록에 할당하는 방식이다.장점:구현이 간단하고, 빠르게 동작한다.처음에 발견한 블록을 할당하기 때문에 시간 복잡도가 상대적으로 낮다.단점:메모리의 앞쪽 부분에 작은 빈 공간들이 남아 단편화(fragmentation)가 발생할 수 있다.시간이 지나면 작은 블록들이 많이 생겨서 큰 블록을 할당하는 것이 어려워질 수 있다.2. best fitbest fit 알고리즘은 메모리 할당 요청이 들어왔을 때, 충분한 크기의 빈 블록 중에서 가장 작은 블록에 할당하는 방식이다.장점:빈 메모리 공간을 효율적으..