분류 전체보기 48

Single Linked list 자료구조 이해하기, 알고리즘, JavaScript

코딩테스트를 이전에 보았었는데 큰 어려움을 느꼈었다. 원인으로 자료구조에 대한 이해가 부족함을 깨닫고 유데미에서 알고리즘 강의를 두 가지 듣게 되었다. 시간 복잡도와 공간 복잡도.. 등에 대한 개념과 여러 자료구조를 접하고 보고 퀴즈를 풀 수는 있었지만 그것을 직접 코드로 만들어내는 부분, 실제로 알고리즘 문제를 풀어낼 때 연결할 수 있는 부분이 약했다. 강의를 통해 스스로 시각화를 해내는 법을 익혔지만 휘발성이 강하여 강제로 계속 반복적으로 기억해 내기 위해 Linked list라는 주제부터 꺼내오게 되었다. 그리고 어째서 이 자료구조에 대한 특성들을 알아야 하는가,,에 대한 고찰을 담아보려 한다. 시간복잡도 Big O에 대한 개념 설명은 생략한다! Linked List 연결 리스트 요소 간의 연결(L..

2024년 1월 1일, 치열했던 2023년 되돌아보기

한 해를 찬찬히 돌아보고 글로 남기는 것은 내 기억 속엔 여태껏 없는 순간이다. 거시적 관점으로 훑었는데 2023년 1월부터 현재까지의 성장이 명확하게 느껴졌다. 안도했다. 2023년의 회고를 통해 2024년도 제대로 맞이해보려 한다. GOOD BYE 2023 서울의 중간으로🏡 & 안녕히 계세요🏢 상반기의 제일 큰 이슈로는 이사와 퇴사가 있었다. position이 모조리 바뀐 해였으니 적응하는 데에 힘을 많이 썼다. 대학 때문에 서대문구, 은평구 같은 서쪽에 치중되었던 나의 9년을 잘 간직하고 중구로..! 웬만한 곳은 40분 내로 이동할 수 있는 집이라 편안함을 많이 느끼고 있다. 웹 퍼블리셔로 2년 동안 일했던 회사를 그만두고 신입 개발자를 향해 가는 중. 직무 전환(또는 확장이라 생각한다)을 하려는 ..

침전된 나의 모든 필링을 받아들이는 법

나는 꽤 오랫동안 자주 글을 써왔고 소소하게 친구들에게 공유하기도 했는데 지금은 거의 비공개 글이다. 가끔 힘이 들때 과거에 쓴 글을 보곤 하는데 정말 좋은 글이 많다. 적어도 나에겐 굉장한 힘을 주는 글들이라 매번 공개적인 곳에 꺼내어 보고 싶은 마음이 들었다. 사실 이 티스토리 블로그는 개발 블로그로 운영할 생각이었고 역할 분리를 확실히 해야한다는 생각이 있었다. 하지만 올 해 취업 준비를 하며 스스로를 다독이며 끈기있게 무엇을 해나가는 것이 얼마나 중요하고, 그것에 능숙할 때 공부를 지속할 수 있는 단단한 심지가 되어준다는 걸 깨닫는 나날이었다. 결국은 모든 것이 나로 인해 만들어진 글이기에 아카이빙하고 싶은 맘으로 과거의 글을 종종 들고오려 한다. 2020년 6월 17일에 적은 글이다. 제목도 ..

React Fiber... 어렵지만 친해지고 싶은 고마운 친구

리액트 스터디 중 "가상DOM과 리액트 파이버" 주제가 나왔다. 발표를 맡게된 리액트 렌더링 부분을 준비하고, 발표 당일 스터디원들과 얘기하며 조금씩 윤곽이 잡히기 시작했다. 하지만 여전히 어려운 건 매한가지... 그러다가 좋은 글을 발견했는데 포스팅 일자가 리액트 15,16 기준이라 렌더가 동기식으로 진행된다고 되어있어서 🤔 제대로 스터디 내용을 복기할 겸, 그리고 파이버와 좀 친해질 겸 포스팅 주제로 선정하게 되었다. 조금 의문이었던 것은 재조정 과정은 똑같고, 여전히 유효할 것 같은데 리뉴얼된 React 사이트에는 파이버와 관련된 내용이 전부 생략되어있다. 왜일까????? 그래서 더 어렵게 느껴졌던 것 같다. 더이상 관련이 없는 내용인지? 레거시한 부분인 건지에 대한 고민. 리액트 파이버 아키텍처 ..

JavaScript/React 2023.12.18

React, TS에서의 Event Type interface와 React Event System 구조

Introduction 나는 null이 아니라 any 형식이 포함된다고 Error가 떴다. React에서의 event를 제대로 이해하지 못한 탓인지 tsx를 화나게 했다. 나처럼 js에서의 Event는 익숙한데, React + TypeScript에서의 Event 타입을 어떻게 다루어야 할 지 이해하지 못하는 분들을 위해 글을 쓴다! React, TypeScript에서의 Event Type JavaScript에서 자주 쓴 `addEventListener( )`, `on____` 예시로 `onChange` change event는 주로 input element의 값이 수정되었을 때 발생하도록쓰인다. // Syntax addEventListener("change", (event) => {}); onchange..

JavaScript/React 2023.11.29

Github Action Test 성공하고 Workflow 복붙했다가 큰 코 다친 이야기

어제 test repo에 27번 시도 끝에 성공했다고 신난 나머지 프로젝트 레포에 그대로~ 복붙했다가 3시간 걸린 이야기..를 풀어보겠다. 이전 포스팅의 마지막 줄에 내가 써놓은 멘트에 내가 당했다..! 2023.11.11 - [Problem Drilling] - Github Actions 사용, Workflow 테스트 자동화 적용하기, pnpm Github Actions 사용, Workflow 테스트 자동화 적용하기, pnpm Github Action를 사용해서 테스트 자동화를 해보게 되었다. 우선 Github에 있는 node.js.yaml 템플릿으로 어찌저찌 구현하다가 pnpm 이라는 난관.. 그리고 working-directory 쪽에서도 헤맸고. 전혀 다른 곳에서 nami-socket.tistor..

Problem Drilling 2023.11.12

Github Actions 사용, Workflow 테스트 자동화 적용하기, pnpm

Github Action를 사용해서 테스트 자동화를 해보게 되었다. 우선 Github에 있는 node.js.yaml 템플릿으로 어찌저찌 구현하다가 pnpm 이라는 난관.. 그리고 working-directory 쪽에서도 헤맸고. 전혀 다른 곳에서 테스트되기도 했다. 그래도 처음인데도 몇 시간내로 바로 구현했고 27번의 시도만에 성공했다. 이 과정을 공유하고 내가 쓴 워크플로우도 공유하겠다! Github Actions Github Actions는 repository에서 바로 소프트웨어 개발 workflow를 자동화하여 실행할 수 있다. 빌드, 테스트 및 배포 파이프라인을 자동화할 수 있는 CI/CD 플랫폼! 레포에 대한 모든 PR을 build 및 테스트하는 workflow로 만들거나 병합된 PR을 프로덕션..

Problem Drilling 2023.11.11

Open Source License 고르기, GPL? MIT? No License?

프로젝트에 쓰이는 MIT 라이센스를 무의식적으로 "다들 이걸로 세팅하던데..."하고 업로드 하려는 스스로를 보고 아차 했다! 오픈소스 라이센스를 고를 때 고려해야될 방법과 가장 흔히 쓰이는 MIT 라이선스는 무엇인지도 알아보고 만약 라이선스를 넣지 않을 경우엔 어떻게 되는지도 알아보겠다! 저작권? Copyright 저작권은(Berne 협약 이후) 저작자가 저작물을 만들 때 자동으로 생성된다. 모든 저작물은 저작권에 의해 보호되며, 저작권 보유자에게 저작물에 대한 독점적인 권한이 부여된다. 따라서 당신의 저작물(소스 코드, 텍스트, 이미지, 기타 미디어 등)을 다른 사용자가 사용할 수 있게 하려면 그들에게 라이선스를 부여해야 한다. 라이선스 License 특정 권리를 실행하기 위해 자격이 있는 기관으로부터..

Problem Drilling 2023.11.10

경계선을 밟고 가자, 나의 삶

현재의 삶을 만들어내기까지 깎인 면이 셀 수 없기에 어느 정도 추상화하였다. 어떤 경계에 서있었는지, 왜 결국 개발이었는지를 풀어내보려 한다. 개발과는 먼 길을 걸어왔다고 미리 말씀드린다. 세 명의 희정이들 항상 어딘가의 경계선을 밟고 있는 아이였다. 어디에도 속하지 못하는 기분이 자주 들었다. 한 가지 예로 우리 반엔 나와 이름이 같은 친구가 두 명 있었다. 그들과는 다르게 나는 어떤 수식어도 붙지 않은 그냥 희정이였다. 타지 학원에 맡겨지다 꾸준하게 글쓰기와 그림 그리기를 좋아했다. 어릴 때나 지금이나 감정을 글과 그림으로 표현하는 데에 익숙했다. 꿈으로 삼을 생각은 못하다가 우연히 그림을 별로 좋아하지 않는 친구가 미대나 가볼까 하는 마음으로 써 내린 장래희망에 불현듯 승부욕을 느끼고 엄마에게 달려..

Vite config파일 수정해서 배포 디렉토리 상대 경로로 변경하기

Vite로 TypeScript + React 프로젝트 세팅을 하던 중 pnpm run dev 를 사용하여 로컬 서버를 실행했을 땐 잘되었는데 빌드를 하고 배포 파일(dist)에 저장된 정적파일은 404 오류가 떴다. 백엔드 분께서 배포 파일을 확인해달라고 하셔서 확인해보았는데 dist폴더 내 assets폴더(dist/assets) 안에 있는 파일들을 읽어내지 못했고 경로 설정의 문제가 있음을 확인했다! 절대경로로 되어있는 파일들을 상대경로로 바꿔주어야 했다. 그런데 dist 파일의 경우 수동적으로 상대경로를 설정해주어도 빌드를 실행하면 어차피 똑같이 절대경로로 된다. 그렇기에 빌드시 적용되는 Default Path로 `/`로 되어있는 것 같은데 이것을 `./` 이렇게 바꿔주고 싶어서 Vite config..

Problem Drilling 2023.10.29