목록분류 전체보기 (49)
세상에 나쁜 코드는 없다
0. Intro 저는 기억력이 좋지 않아서, 과거의 일들을 금방 까먹고는 합니다. 그렇게 살다가 문득 과거의 어떤 한 경험이 생각날 때면, 그것에 관련된 좋았던 기억들이 연쇄적으로 떠오르고 괜시리 기분이 좋아지곤 합니다. 하지만 동시에 내가 이런 것도 잊고 살아왔구나라는 생각도 들면서 잊혀져가는 과거 기억들이 아쉽게 느껴집니다. 살면서 간직해두고싶은 소중한 추억들은 많은 반면 애석하게도 뇌는 모든것을 다 기억하지는 못합니다. 이러한 이유로 일기를 작성하는 것이란 중요한 일입니다. 그렇지만 일기를 매일 쓰는 것은 저에게 있어서는 어려운 일인 것 같습니다. 따라서 앞으로 분기, 더 길게는 반기 단위로 어떤 일들이 있었는지 기록하는 글을 써보고자 합니다. 이 글이 추후에 저에게 있어서 과거의 추억들을 떠올리게..
0.인트로0.1 소개 이 글은 웹 프론트엔드 개발자에게 “내가 작성한 코드가 어떻게 서버의 코드와 상호작용하여 사용자에게 전달되는가”를 설명하려는 목적으로 작성되었습니다. 글은 웹 프론트엔드 개발 입문자와, 프론트엔드 지식을 어느정도 갖고 있으면서 백엔드에 입문하고자 하시는 분들을 대상으로 작성되었습니다. 입문자를 기준으로 작성하였으므로 아는 분야의 지식이 나온다면 넘어가면서 읽으셔도 무방합니다.글의 내용이 스프링부트에 의존하고 있습니다. 그럼에도 불구하고 최대한 일반적인 내용을 담을 수 있도록 해보겠습니다.잘못된 내용이 있을 수 있습니다.추가로, 거의 동일한 주제로 올라온 유튜브 영상이 있으니 참고하시면 도움이 될 것 같습니다.웹 프론트엔드 개발자가 알아야할 최소한의 백엔드 지식과 코드 (API)htt..
에러코드가 필요한 이유개발 단계에서 서버에 요청을 보냈을 때 서버에서 “Oops, something went wrong” 따위의 오류 메시지를 반환한다면 Client의 문제인지 Server의 문제인지 알 기 어렵다. 따라서 Server 는 Client의 요청에 대해 구체적인 에러 메시지를 전달해 줄 필요가 있다.장점HTTP Status code 만으로 Response에 대한 충분한 설명을 할 수 없다.더욱 구체적인 에러 내용을 정의하여 소통할 수 있다.오류 메시지는 API 사용 방법에 대한 가시성을 제공하는 핵심 도구가 된다.클라이언트단에서 에러 코드에 따라 다른 처리 로직을 개발할 수 있다.HTTP status code만으로 모든 예외처리를 할 수 없다.따라서 status code와 응답의 messag..
OSBC 오픈소스 컨퍼런스는 OSBC가 주최하고 한국공개소프트웨어협회(KOSSA), 한국사내변호사회(KICA)가 후원하는 무료 행사다. 원래는 기업 재직자를 우선하여 등록하지만, 이번에 아마 자리가 남았는지 개인자격으로 등록되어 컨퍼런스에 참여하게 되었다. 당연히 안될줄 알았는데 갑자기 참가하게 되어서 기쁨 반 두려움 반이었다. 평소 오픈소스에 대해 지식이 부족했던터라 사전조사 같은 느낌으로 다양한 영상을 찾아보았다. OSBC 유튜브 공식 채널에서 Snyk 사용법도 익혀보고, 유튜브에서 각종 오픈소스 관련 영상을 찾아봤다. 처음 영상을 봤을 땐 익숙하지 않은 단어들도 많이 나와 단어 하나하나 찾아가면서 보느라 조금 고생했다. 컨퍼런스는 선정릉역의 더 라움 아트센터에서 진행됐다. 더 라움 3층에 도착하자마..
https://snyk.io/ Snyk | Developer security | Develop fast. Stay secure. Snyk helps software-driven businesses develop fast and stay secure. Continuously find and fix vulnerabilities for npm, Maven, NuGet, RubyGems, PyPI and more. snyk.io Snyk은 프로젝트의 코드와 의존하는 외부 라이브러리 등에서 자동으로 보안 취약점을 찾아주고, 그에 대한 해결책을 제공해주는 서비스이다. 개발자 친화적인 소프트웨어를 개발하기 위해 Synk 는 제공하는 서비스를 자체 웹사이트 뿐만아니라 다양한 IDE 환경, 자체 API, CLI에서도 사..
Generics 지네릭스 Generics 란 ? 지네릭스는 다양한 타입의 객체들을 다루는 메서드나 컬렉션 클래스에 컴파일 시의 타입체크(compile-time type check)를 해주는 기능이다. 객체의 타입을 컴파일 시에 체크하면 객체의 타입 안정성을 높일 수 있고 형변환의 번거로움을 줄일 수 있다. 객체의 타입 안정성을 높인다 의도치 않은 타입의 객체가 저장되는 것을 막는다. 원래 의도와 다르게 잘못 형변환되는 경우를 막는다. 형변환의 번거로움을 줄인다 컬렉션 클래스의 경우 보통 한 종류의 객체만을 담는 경우가 많은데, 그럼에도 불구하고 꺼낼 때마다 타입체크를 해야하고 형변환을 하는 것은 불편하다. // 지네릭스가 사용되지 않는다면.. Class ArrayList { private Object a..