본문 바로가기

전체 글

(117)
CSR 과 SSR CSR과 SSR에 대해서 정리를 한번 하고 가야겠다. 두 개를 비교한 글들이 많아서 특징을 정리하기는 수월했다. 근데 뭔가 렌더링 과정에 대해 내가 정확히 알지를 못해서 두 특징들이 와닿지 않은 거 같다. 따라서 렌더링부터 보자. 그리고 공부하면서 당연하다고 생각했던 script의 위치와 CSR과 SSR에서는 어떤 차이를 가져오는지 내 생각을 정리해 보겠다. 일단 내가 헷갈렸던 부분부터 정리하고 넘어가자. 먼저 SSR 말고 CSR이 나오게된 간단한 이유는 페이지상에 제공되는 데이터들이 많아지니 문제점들이 많아져서 져서 CSR이 나온 거 같다. CSR과 SSR의 차이를 보면 SSR은 서버에서 렌더링 해서 그냥 브라우저에서 띄울 수 있게 넘겨준다는데 그럼 이미 DOM이 만들어진 상태인가? 이거는 명확하지 않..
JS. 자바스크립트 히든 클래스 자바스크립트를 공부하긴 했는데 JS라는 친구에 대해 내가 너무 몰랐던 거 같다. 그래서 면접을 준비하며 구글에 존재하는 정보들을 수집해 나가면서 노션에 정리했었다. 그래서 자바스크립트 동작 구조에 대해 이야기할까 아니면 자바스크립트 코드가 돌아가는 실행 콘텍스트에 대해서 이야기할까 고민하다가 그냥 자바 스크립트 히든 클래스에 대해서 정리하려 한다 왜냐면 위의 두 내용은 너무 양이 많아서 잘 정리하신 분들의 글들을 공유하려고 한다. 자 그럼 히든 클래스 만나러 가자 히든 클래스는 자바스크립트 엔진의 최적화 기법 이야기하면서 언급된다. 먼저 왜 히든 클래스를 사용하는지 이유부터 알고 가자 자바스크립트는 동적 타이핑 언어로 코드를 실행할 때의 상황에 따라 데이터 타입이 정해진다고 한다. 그래서 문제가 동적으로..
오랜만에 글쓰기 이런저런 핑계로 블로그 글을 안 쓰고 있었다. 몇 개 쓰긴 했는데, 정글이 끝나고 바로 기업들 면접 준비한다는 핑계로 notion에다가 따로 공부한 내용들을 정리했다.(글을 썼다기보다는 정보 수집?) 아무튼 아직 취업을 한건 아니지만, 이 기세라면 취업하고는 블로그를 너무 대충 쓸 거 같아서 다시 마음잡고 블로그 정리를 해야겠다. 그리고 오랜만에 TIL 써보니까 마냥 혼자 쓰는 거보다 정리가 확실히 잘되는 거 같다. 기분 탓인가... 파이팅 아 면접에 대한 회고록은 나중에 시간이 나면 정리해야겠다. 지금은 정리할게 너무 많다
DOM 안다고 생각했는데 말하려고 하니 생각이 안 났다. 즉 모르고 있었다는거.. 그래서 정리해본다. 면접 준비 내용들은 notion에 기록해서 나중에 옮겨야겠다. DOM을 구글에 검색해보면 위키피디아에서 다음과 같이 정의한다 문서 객체 모델 (DOM; Document Object Model)은 XML, HTML 문서의 각 항목을 계층으로 표현하여 생성, 변형, 삭제할 수 있도록 돕는 인터페이스이다. W3C의 표준이다. W3C의 표준화한 API들의 기반이 된다.... (생략) 뒤에 이어지는 내용은 여기로 https://ko.wikipedia.org/wiki/%EB%AC%B8%EC%84%9C_%EA%B0%9D%EC%B2%B4_%EB%AA%A8%EB%8D%B8 문서 객체 모델 - 위키백과, 우리 모두의 백과사전 문..
프로그래머스 풍선 터트리기 문제 https://programmers.co.kr/learn/courses/30/lessons/68646 코딩테스트 연습 - 풍선 터트리기 [-16,27,65,-2,58,-92,-71,-68,-61,-33] 6 programmers.co.kr 풍선 값들이 주어지고 인접한 풍선 2개를 골라서 터트리면서 남을 수 있는 마지막 한 개의 풍선의 개수를 찾는 문제입니다. 조건으로 두 가지가 있는데, 일단 두 풍선에서 무조건 큰 값을 가진 풍선을 터트릴 수 있습니다. 거기에 또 다른 조건은 전체 배열에서 인접한 풍선 2개를 선택했을 때 딱 한 번만 작은 값을 가진 풍선을 터트릴 수 있습니다. 주어진 예시에서 가능한 경우의 수들을 먼저 찾는게 우선인 것 같습니다. 최종으로 남을 수 있는 풍선의 경우의 수를 찾는 것..
백준 합분해 2 13707 (c++) 문제 https://www.acmicpc.net/problem/13707 13707번: 합분해 2 첫째 줄에 두 정수 N(1 ≤ N ≤ 5,000), K(1 ≤ K ≤ 5,000)가 주어진다. www.acmicpc.net 오랜만에 c++로 문제 풀려고 풀어봤다. dp로 풀었기 때문에 점화식만 구하면 쉽게 풀 수 있는 문제였다. 재귀로 풀어서 좀 오래 걸린 것도 있고, 다른 사람들 코드 보니까 더 간단하게 풀기도 했다. 점화식은 다음과 같다. arr [k][n]으로 놓고 k개를 사용해서 n을 만들 수 있는 경우의 수를 구하면 된다. arr [k][n] = arr [k-1][0]+ arr [k-1][1].... arr [k-1][n] 이런 식으로 되는데 더하는 경우가 각각 마지막에 n, n-1, n-2.....
Pintos Project 4: File Systems 우리가 기존에 했던 방식은 비트맵을 사용하여 구현 하였다. 따라서 기존에 구현된 파일시스템 관련 하수들을 다 FAT 방식으로 바꿔야 한다. FAT은 연결리스트 형태로 구현하면 된다 .그전에 어디서부터 시작되나 보자. 시작은 일단 init.c에서 disk_init()과 filesys_init()에서 시작된다. filesys_init 들어가 보면 파일 시스템 모듈을 initialize 하는 곳이라고 나와있다. 이 함수에서 다시 차례로 fat_init 해주고 인자로 받은 format 확인해서 재포맷하기위해 do_format도 해준다 do_format함수에서 파일 시스템을 포맷해주는 함수이다. fat_init 함수를 보면 부트 섹터에서 읽어와서 fat_fs구조체의 부트섹터에 할당해준다. 그리고 do_format..
크래시 일관성 : FSCK와 저널링 이번장은 파일 저장 중 크래시가 발생했을 때 안전하게 갱신할 수 있는지에 대한 질문에 답을 구하는 시간이다. 예를 들어 디스크 상에 A와 B 가 있는데 둘 중에 하나를 처리하다가 크래시가 난 경우 일관성이 깨지게 된다. 이게 크래시 일관성 문제. 여기서는 이 문제를 해결하는데 fsck와 저널링(write-ahead-logging)이라는 기법을 살펴볼 것이다. 다음과 같은 예제를 살펴보자 위의 상태에서 내용을 새로 추가하는데 그럼 디스크에 세 번의 쓰기를 더 수행해야 한다. 아이노드와 비트맵 그리고 블록에 그럼 다음과 같은 결과가 나와야 한다. 자 여기서 크래시가 발생해서 생길 수 있는 시나리오는 여러가지다. 다음과 같다 첫 번째 해결책으로는 파일 시스템 검사기 fsck라는 도구를 사용한다. 여러 일들을 ..