분류 전체보기

리액트는 매우 자유로운 라이브러리로 꼽힌다. 그렇기 때문에 리액트가 나온 이후로 다양한 패턴들이 등장하였고 연구되고 있다. 다양한 패턴들이 있지만, 최근 많이 사용하고 있는 패턴인 Compound Components Pattern에 대해 소개해보려고 한다. 예시 import type { ReactNode } from 'react'; import Buttons from './Buttons'; import Comment from './Comment'; import Title from './Title'; interface Props { children: ReactNode; } const Post = ({ children }: Props) => { return {children}; }; Post.Title = ..
· back-end
머릿속으로 가지고 있던 REST API에 대한 생각을 정리함과 함께 공유하면 좋을 것 같다는 생각이 들어 글을 적어보려고 한다. REST API? REST API가 뭔지 한 줄로 요약해 보자면, REST API는 REST 아키텍처의 조건을 준수한 인터페이스라고 할 수 있을 것 같다 이 이야기는 단순 백엔드에만 국한되어 있는 이야기가 아니다. 프론트엔드는 보통 리소스를 사용하는 쪽이긴 하지만 페이지들의 path를 정할 때도 아래 URI 규칙을 따르는 게 좋다고 생각하고, API가 잘못되었을 때 잘못되었다고 말할 수 있어야 한다고 생각한다. URI URI 설계에 있어 가장 중요한 부분은 Self descriptiveness 즉, 얼마나 리소스를 잘 표현하고 있는가이다. 예시를 통해 설명해 보면 1. GET ..
· back-end
프론트엔드가 아닌 백엔드 분야기 때문에 전문성이 떨어질 수 있다는 점 유의해서 글 읽어주시면 감사하겠습니다.. 백엔드를 공부해보기로 결심하고 처음에는 NestJS를 써보려고 했다. 하지만 주위 백엔드 개발자들이 NestJS를 공부하면 백엔드를 공부하는 게 아닌 NestJS를 공부하는 거라 추천하지 않는다고 해서 typestack에서 제공하는 typedi, routing-controllers 그리고 typeorm 기반의 가벼운 라이브러리를 사용해 node.js 프로젝트를 만들고 공부해보려고 한다. 먼저 typedi에 대해 공부해보려고 한다. 의존성 주입? typedi는 이름에서도 알 수 있듯이 JavaScript, TypeScript에서 사용할 수 있는 의존성 주입 툴이라고 한다. 의존성 주입이라는 단어가..
7월에는 프리랜서 업무를 마무리하며 졸업 계획도 세우고 있다. 아마 별문제가 없다면 내년 2학기 때 졸업을 할 수 있을 것 같다. 원래와 같으면 월말 회고에는 7월 얘기를 적어야겠지만, 프리랜서 회고에서 이미 다 다루었다. 그래서 회고와 맞지는 않지만 지금 내 고민과 계획을 적어볼까 한다. 뭘 공부해야 할까 사실 요즘 프론트엔드보단 백엔드 공부를 더 많이 하고 있다. 직접 혼자 프로젝트를 만들어보고도 싶었고, 백엔드와의 협업에 도움을 줄 것 같아 공부를 시작하였다. Node.js, TypeScript에 익숙하기 때문에 우선 Nest.js를 공부해보고 있다. 백엔드, 인프라 등등 눈을 돌리면 공부할 게 산더미다. 하지만 프론트엔드 개발자로서 어떤 공부를 해야 할지가 가장 큰 고민이다. 최근에 만난 개발자는..
2달 계약으로 진행한 프리랜서 업무가 마무리되고 있어 한 번 회고해 보면 좋을 것 같고, 혹시 개발자 프리랜서에 대해 좀 궁금하신 분이 있으실까 하여 글을 적어보려고 한다. 왜 프리랜서? 프리랜서를 선택했던 상황은 이러했다. 대학교에서 학업을 병행해야 했기 때문에 일주일 풀로 근무할 수는 없었고, 다음 학기에는 지금과 상황이 달라질 수 있기 때문에 긴 기간의 계약은 어려웠다. 이러한 상황 때문에 정규직을 하기엔 어려웠다. 그래서 학교 사람들과 가볍게 프로젝트를 하거나 프리랜서 두 가지 선택지가 있었던 것 같다. 처음에는 가볍게 프로젝트를 하려고 했으나 프리랜서를 원하는 회사와 미팅을 할 기회가 생겼고, 두 곳의 회사와 미팅을 했다. 한 곳은 AI(CV)를 다루고, 나머지 한 곳은 설비를 다루고 있었다. ..
기말고사 이번 달에는 프리랜서 업무와 함께 기말고사를 치러야 해서 월초부터 중순까지 정말 바쁘게 보냈던 것 같다. 기말고사가 끝난 월말에는 회사 스프린트가 다시 시작해 또 숨 돌릴 틈 없이 보냈다. 1, 2학년 때 내가 어떤 식으로 공부했는 지 모르겠지만, 가장 시간을 적게 투자한 것 같은 3학년 1학기가 가장 좋은 성적을 받았다. 몇 년간 실무를 경험하며 분명 기술적인 발전도 있었겠지만, 이번 기말고사 기간을 보내며 시간을 쪼개고 효율적으로 사용하는 방식이 개선된 것 같다고 느꼈다. 팀 프로젝트도 진행했었는데 지금 돌이켜 보면 학부생 수준을 넘어 거의 실무에 가까운 수준으로 해냈던 것 같다. 위 사진은 프로젝트 동안 사용했던 보드의 모습인데 중간중간 지워져있긴 하지만 이 사진만 봐도 꽤 퀄리티 높은 팀..
· cs/network
이 주제는 프론트엔드, 백엔드 할 것 없이 면접에서 주로 나오는 단골 질문이다. 사실 맨처음에 면접 보러 다닐 때는 이 질문을 왜 하는지 잘 이해하지 못했지만, 지금 생각해보면 내가 면접관이 된다면 무조건 물어볼 것 같은 질문이다. 왜냐하면 이 질문으로 네트워크에 대해 얼마나 깊이 파악하고 있는지 단번에 확인할 수 있다. 다들 이 질문에 완벽하게 답변할 수 있을 것이라고 생각한다. 하지만 그렇게 생각하는 사람들의 답변의 길이는 정말 각각 엄청난 차이를 가지고 있을 것 같고, 완벽한 답변의 길이는 웬만한 논문의 길이를 넘을 수도 있을 것이라고 생각한다. 나도 처음에 면접준비를 하며 이 질문을 준비했을 때 완벽하게 답변할 수 있다고 생각하고 만든 답변이 있는데 지금 그 답변을 보면 정말 형편없다. 지금 이 ..
· cs
웹 위주의 글을 다뤄왔었지만 오늘은 확률 모델링에 대한 얘기를 해보려고 한다. 이 분야를 웹만큼은 잘 모르지만 이 모델을 재밌게 만들었어서 글로도 써보려고 한다. 마르코프 체인이란? 먼저 마르코프 체인에 대해 간단히 설명해 보자면, 이 모델은 상태, 전이 확률로 이루어지고 과거의 상태에만 의존하는 특징을 가지고 있다. 상태: 취할 수 있는 특정한 조건이나 상황으로 날씨 예측을 모델링한다고 했을 때 맑음, 흐림, 비 등이 있을 수 있다. 이를 모아둔 집합을 상태 공간이라고 한다. 전이 확률: 상태에서 다른 상태로 전이할 확률로 0과 1 사이의 값을 가지게 된다 예시) 날씨 예측을 모델링한다고 했을 때 전이 확률은 아래와 같은 값을 가질 수 있다. p(맑음 -> 맑음) = 0.7 p(맑음 -> 흐림) = 0..
프리랜서 시작 5월은 정말 숨쉴틈도 없었다.. 5월 초 학업과 병행할 프리랜서 제안을 받았고, 5월 중순부터는 프리랜서 업무와 학업을 병행하기 시작했다.. 그래서 5월 중순부터 글을 쓸 생각조차 하지 못했다 :( 프리랜서로 하는 일에 대해 간단히 소개하자면 아래와 같은 업무를 하고 있다. 대시보드 컴포넌트 개발 GraphQL API 연동 테스트 코드 작성 GraphQL을 실무에서 써본적은 처음이기 때문에 삽질을 했지만 지금은 나름 적응된 것 같다. 프리랜서를 2주 정도 해본 느낌은 해야 할 업무가 명확하다는 장점은 있지만, 다른 개발자, 디자이너 분들과 팀이라는 같은 느낌을 받지는 못해 아쉬움이 있는 것 같다. 아무튼 지금은 대시보드 개발을 진행하고 있고, 이 프로젝트에서 내가 평소 익숙하던 스택과 다른..
Next13(fetch, middleware)를 작성하던 중 Next 13.4 출시와 함께 App Router 안정화 버전 출시 소식이 들려왔다. 이와 함께 Turbopack은 Alpha -> Beta로 넘어왔고, Server Actions라는 개념이 새로 생겼다. App Router App Router에서는 바뀐 폴더 구조와 함께 Layout, Server Components, Streaming이라는 개념에 대한 이해가 필요하다. 아래 글들에서 App Router에서 이해가 필요한 내용에 대해 소개했기 때문에 아래 글에서 확인해 보면 될 것 같다 Layout, Server Components Streaming Turbopack (Alpha -> Beta) Turbopack에 대해 다뤄본 적이 없기 때문..
백윤성
'분류 전체보기' 카테고리의 글 목록 (4 Page)
상단으로