프론트엔드(20)
-
리펙토링부터 검색어 추천 기능 및 무한 스크롤 기능 구현 하기
기업 과제를 진행하면서 배운 내용들을 과제에 적용해보았다. 깃허브 링크 : https://github.com/wanted-frontedend-team5/pre-onboarding-10th-4-5 리팩토링 1. Js → Ts로 migration 타입스크립트 도입 이유 타입을 정적으로 제한하여 더 안정적이고 예측 가능한 코드 작성이 가능 컴파일 시간에 타입 오류를 확인함으로써 버그를 사전에 찾아 생산성 향상 및 유지보수가 용이함 의존성 설치 react/typescript 개발에 필요한 의존성 추가 "devDependencies": { "@types/react": "^18.2.6", "@types/react-dom": "^18.2.4", "typescript": "^5.0.4" } tsconfig.json 추..
2023.05.18 -
React Redux 파헤치기
Design Pattern 디자인패턴 : 소프트웨어를 설계하면서 자주 발생하는 문제에대한 모범답안 애플리케이션 전체를 다루기 위한 디자인 패턴들은 통상 여러 작은 범위의 디자인 패턴들을 함께 사용해서 만들어지기에 복합패턴이라고도 부름. → 그 중 모든 복합 패턴의 근간이라고 부를수 있는 패턴은 mvc 패턴 MVC MVC 패턴은 애플리케이션을 Model, View, Controller 세가지 구성요소로 나눠서 설계하는 패턴입니다. 구성요소들의 역할은 아래와 같습니다. Model: 데이터의 형태를 정의하고, 데이터를 수정하는 역할을 담당 Controller: 유저의 입력을 받아서 애플리케이션 내에서 어떻게 처리할지 판단 및 가공해서 모델 또는 뷰를 조작 View: 모델을 UI로 표현, 사용자의 입력을 받아서..
2023.05.18 -
컴포넌트 작성 피드백 및 리액트에서 렌더링 및 UseEffect 파해치기
컴포넌트 작성 피드백 코드/함수는 단순하고 한가지 일만 해야한다. 컴포넌트가 한가지 일만 하게..? 조건식 단순하게 만들기 분기가 생기는 순간 코드 읽기가 복잡해진다. → 최대한 보기 좋게 처리하는것이 좋다. 내가 처리하기 제일 편한 자료구조를 가져오는것이 기본 → 웬만하면 자료구조 선에서 처리되는게 훨씬 좋다. https://medium.com/javascript-scene/nested-ternaries-are-great-361bddd0f340 컴포넌트가 너무 많은 요소들에 의존하고 있음 컴포넌트의 해야하는 역할을 잘 생각해보자 한 컴포넌트가 2가지 일을 처리하고 있는건 아닌지 생각을 해보자 컴포넌트에 의존되는 값이 있는지 잘 생각해보고 거기에 예상되는 효과가 있는지 잘 생각해보기 자주 쓰는 strin..
2023.05.18 -
프론트엔드 개발자도 알면 좋은 지식 Infra
서버와 클라우드 컴퓨팅 그리고 AWS 서버 무언가를 제공해주는 사람이나 물건 it 업계 : 무언가를 제공해 주는 컴퓨터. 서버는 물리적인 실체가 있는 컴퓨터이다. 컴퓨터는 하드웨어이고, 각각 구성품에 사양을 가지고 있음. 서버가 받아들일 수 없는 성능을 요구하게 되면 서버가 터지게 된다. 서버를 운영하는 방법 온프레미스 (On-promise) 서버에 필요한 물리적인 공간, 컴퓨터, 제반시설등을 직접 구축해서 활용함 전통적인 방식, 직접 모니터링 전문인력들이 직접 하드웨어를 구입하고 제반시설을 구축해야 한다. ⚠️why! 급변하는 소프트웨어에 맞춰서 유지보수하기 어렵다는 단점으로 인해 많은 기업들이 현재는 온 프로미스 방식을 벗어나서 클라우드 컴퓨팅 기반의 환경으로 변경하고 있음. 클라우드 컴퓨팅 (clo..
2023.05.18 -
개발자의 기본 협업
사전과제 피드백 원티드 프리온보딩 인턴쉽을 수강하기 위해 진행했던 사전과제의 피드백입니다. 과제의 분석 과제의 주제 Simple 인증 / 인가 Simple CRUD 과제에서 파악하고자 한 것 : 출제자의 의도 기본적인 형태의 서비스를 만들 수 있는가? 코드 스타일은 어떤가? 프로젝트 구조를 어떻게 설계 했는가? 과제를 수행하는 기본적인 태도 README.md 잘 작성되었는가? Git활용은 잘 했는가? 코드 분석 ← 무조건 기업들이 보는것들 코드의 가독성 컴포넌트가 잘 분리되었는가? 컴포넌트를 논리적인 단위로 분해 했는가? 컴포넌트의 쓰임 컴포넌트의 역할과 책임 관심사가 잘 분리되엇는가? 반복되는 코드들 : 추상화하고 분리했는가? 프로젝트의 아키텍쳐는 어떻게 설계 되었는가? 과제의 목표 ? 과제의 목표는 ..
2023.05.18 -
세션 기반 로그인에 대한 설명
날짜: 2023년 3월 13일 태그: 교육, 원티드 프리온보딩 세션 기반 로그인 구현과 JWT와의 비교 및 인프라스트럭쳐 세션이란 무엇인가? 세션이란 단어는 무엇을 의미 하는가? 토큰의 의미를 다시 한번 새겨 보자 이처럼 토큰은 명백한 뜻이 있고 정의를 내릴 수 있다. 그렇다면 세션은..? 세션(session)은 컴퓨터 과학에서, 특히 네트워크 분야에서 반영구적이고 상호작용적인 정보 교환을 전제하는 둘 이상의 통신 장치나 컴퓨터와 사용자 간의 대화나 송수신 연결상태를 의미하는 보안적인 다이얼로그(dialogue) 및 시간대를 가리킨다. (출처 : 위키백과) 위의 정의를 보고 다양한 생각이 들 수 있는데,, 데이터 저장 방식? 통신 프로토콜? 인증 방법론? 암호화 방식? “아무튼 로그인에 쓰이는 방법 아닌..
2023.03.16