JavaScript 옵셔널 체이닝(?.) 완벽 가이드: 안전한 객체 속성 접근법
옵셔널 체이닝이 필요한 이유 옵셔널 체이닝 ?. 을 사용하면 프로퍼티가 없는 중첩 객체를 에러 없이 안전하게 접근할 수 있습니다. 옵셔널 체이닝이 추가 되기 전엔 && 연산자로 연결해 실제 해당 객체나 프로퍼티가 있는지 확인해야하기 때문에 코드가 길어지는 단점이 존재하였습니다. let user = {}; // 주소 정보가 없는 사용자 ...
옵셔널 체이닝이 필요한 이유 옵셔널 체이닝 ?. 을 사용하면 프로퍼티가 없는 중첩 객체를 에러 없이 안전하게 접근할 수 있습니다. 옵셔널 체이닝이 추가 되기 전엔 && 연산자로 연결해 실제 해당 객체나 프로퍼티가 있는지 확인해야하기 때문에 코드가 길어지는 단점이 존재하였습니다. let user = {}; // 주소 정보가 없는 사용자 ...
Vue.js 공식홈페이지에서 TypeScript와 Composition API 사용의 일부를 정리한 내용입니다. 최근 Vue2로 작성된 사내 서비스를 Vue3 Composition API + Nuxt + TypeScript 형태로 전환을 진행 중에 있습니다. Composition API의 장점은 Options API와 달리 분산되어 있는 ...
타입스크립트란? 자바스크립트 타입스크립트를 알아보기 전 우선 자바스크립트의 히스토리에 대해 간략히 알아보겠습니다. 우선, 자바스크립트(ECMAScript)는 처음에 브라우저를 위한 스크립팅 언어로 만들어졌습니다. 자바스크립트는 점점 유명해지면서 실행 엔진을 최적화 시키고, 최적화 된 것을 이용해 할 수 있는 확장하여 웹 개발자가 더 많은 것을 할 수...
파일시스템과 데이터베이스의 차이점 파일시스템 과거에는 데이터를 관리하기 위해 파일시스템을 사용하였습니다. 파일 시스템은 데이터를 파일로 관리할 수 있도록 파일 생성/삭제/수정/검색 기능을 제공하며 운영체제와 함께 설치됩니다. 파일시스템 환경에서는 응용 프로그래머가 파일의 논리적인 구조뿐만 아니라, 물리적인 구조까지 정확히 파악해야 필요한 데이터에 직접...
Spring MVC Request LifeCycle Spring MVC Request LifeCycle에서 Filter, Dispatcher Servlet, Interceptor의 개념과 차이점에 살펴보겠습니다. 필터(Filter) 필터는 사용자가 설정한 URI 패턴에 대한 요청들에 대해 필터링(CORS, 인코딩 변환) 등의 필터링 역할을 수행합...
프리온보딩 백엔드 챌린지 변경에 유연한 코드 설계 : 클린코드와 SOLID까지 강의를 정리한 내용입니다. 의미있는 이름 1.의도를 분명히 밝혀라 변수 / 함수명만 봐도 어떤 동작을 해야하는지 예측이 되어야 합니다. 즉, 이름에서 의도를 분명히 밝혀야 합니다. 만약, 의미가 명확하지 않으면 이름이 길어지더라도 이름에 의미를 붙여 작성할 필요가...
23년 9월 2일 부산에서 진행했던 제 2회 소주톤 얼레벌레 바캉스 후기입니다. 소주톤 신청 평소에도 새로운 사람들과 짧은 시간에 몰입하여 서비스를 개발할 수 있는 해커톤에 관심이 있었습니다. 스터디, 취업 준비 등 이런 저런 이유로 해커톤 신청을 망설이다가 짧고 굵게 참여할 수 있는 소주톤을 알게되어 “이거다!” 하고 신청하였습니다...
원티드 프리온보딩 백엔드 챌린지 도커편을 정리한 내용입니다. Docker란 무엇일까? 면접에서 간혹 도커를 써보았느냐? 라는 질문을 받곤 합니다. 도커를 사용하지 않아도 서비스를 개발하고 운영하는데 문제가 없지만, 도커를 사용함으로써 얻을 수 있는 여러 장점들이 있기 때문에 이제는 선택이 아닌 필수가 되고 있습니다. 이런 도커에 대한 개념을...
대시보드 앞서 구현한 게시판들의 최근 게시글들을 모아서 볼 수 있는 대시보드 화면입니다. 저는 각 게시판의 가장 최근 게시글 5개를 대시보드에 모아 보여줄 수 있도록 화면을 구성하였습니다. 이 부분은 앞서 배운 내용을 활용하여 다양하게 구현하면 되겠습니다. 앞으로 앞서 계획한 멀티 게시판의 핵심 기능은 모두 구현해보았습니다. 현재 완성도가 10...
문의 게시판 등록/수정/삭제 화면 문의 게시글 등록 화면입니다. 비밀글 체크박스에 체크 후 비밀번호를 입력하여 문의 게시글을 등록하면 비밀글로 설정됩니다. 게시글 수정 화면입니다. 기존 저장된 문의 게시글 정보가 나타납니다. Controller /** * board > BoardController.java */ /** ...