본문 바로가기
728x90

전체 글158

[NCP] 네이버 클라우드 플렛폼에서 서버 만들어보기 이번에 새로 시작하는 프로젝트에서는 로컬 DB가 아니라 웹 서버를 이용한 DB를 사용해 보고자(여러모로 편리할 것 같아서) AWS나 NCP 같은 클라우드 서비스를 찾아보다가.. NCP에서 micro 서버를 결제 수단 등록일 기준으로 1년간 무료 지원해준다고 해서 NCP에 입문하게 되었습니다. 우선 NCP 사이트에 들어갑니다. (당연히 로그인이 필요합니다.) NAVER CLOUD PLATFORM cloud computing services for corporations, IaaS, PaaS, SaaS, with Global region and Security Technology Certification www.ncloud.com 여기서 Services -> Server에 들어가 애플리케이션 서버를 생성할 .. 2022. 12. 28.
IoC, DI 그리고 컨테이너 개념 정리 제어의 역전 IoC(Inversion of Control) 제어의 역전은 스프링에만 국한된 단어가 아니라 일반적인 개발자가 모든 것을 제어(control)하는 흐름에서 벗어나 내가 호출하는 것이 아니라 프레임워크 같은 것이 대신 호출해 주는 구조를 의미합니다. (한 마디로 제어에 대한 권한이 뒤바뀌는 것을 의미한다고) 기존의 프로그램은 클라이언트 구현 객체가 스스로 필요한 서버 구현 객체를 생성하고, 연결하고 실행하는 구조를 따랐습니다. 한 마디로 구현 객체가 프로그램의 제어 흐름을 스스로 조종하는 구조이며 개발자의 입장에서는 자연스러운 흐름이었죠 그런데, 지난번 DI에 대한 정리글에서 설명한 AppConfig가 의존 관계를 주입하는 등의 역할을 가져감으로써, 프로그램에 대한 제어의 흐름을 가져간 바가 .. 2022. 12. 28.
Dependency Injection: 의존관계(의존성) 주입 개념 정리 DI의 정의 DI는 Dependency Injection의 줄임말로, 우리 말로는 의존관계 주입 또는 의존성 주입이라고 표현합니다. 의존이라고 하는 단어 자체가 관계 속에서 의존하는 느낌이기 때문에, 저는 의존관계 주입이라는 용어가 더 적합하다고 이해했습니다. 그렇다면, 여기서 말하는 의존관계가 무슨 말일 까요? "A가 B에 의존한다."라고 했을 때, 이것이 의미하는 바를 다음과 같은 설명을 통해 이해할 수 있었습니다. 의존대상 B가 변하면, 그것이 A에 영향을 미친다. - 토비의 스프링 3.1 즉, B의 기능이 추가 또는 변경될 때, A에 영향을 미치는 경우 "A가 B에 의존한다."라고 표현할 수 있는 것입니다. 그렇다면, Dependency Injection은 무엇일까요? 말 그대로 의존 관계를 주입.. 2022. 12. 27.
[모든 개발자를 위한 HTTP 웹 기본 지식] 8. HTTP 헤더 2 - 캐시와 조건부 요청 캐시의 기본 동작 캐시가 없을 때 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. 인터넷 네트워크는 매우 느리고 비쌈 (pc의 메모리나 하드디스크에 비해 상대적으로) 브라우저의 로딩 속도가 느리다. 이로 인해 느린 사용자 경험이 발생한다. 캐시 적용 이렇게 캐시를 적용하게 되면, 일정 시간 동안 같은 요청을 보낼 때, 네트워크를 통해서 결과를 받아오지 않고, 브라우저 캐시에 접속해서 결과를 받아오기 때문에 이 과정에서 시간이 크게 단축된다. 캐시 덕분에 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다. 비싼 네트워크 사용량을 줄일 수 있다. 브라우저 로딩 속도가 매우 빠르다. 빠른 사용자 경험을 만들어준다. 웹 브라우저 이용시 한 번 들어갔던 사이트를 재방문할 때 매우.. 2022. 12. 26.
[Java] 자바 공부 - 4, package란? C++나 여타 다른 언어에서 프로젝트를 폴더에 나눠 관리하는 방식으로 코딩을 많이 진행했는데, 이번에 자바를 공부하니 패키지라는 단위로 소스 코드들을 나눠 관리하는 방식을 처음 접하게 되어서 공부 목적으로 자바 패키지에 대해 정리해보려 합니다. Java Package란? 자바 패키지(Java package)는 자바 클래스들을 여러 namespace로 정리하며, 소속된 각 class에 대해 고유한 namespace를 제공한다. 동일한 package 내의 class들은 서로의 package-private 및 protected 멤버들에 접근할 수 있다. 자바 패키지는 jar 파일이라는 압축 파일에 저장할 수 있으며, 클래스들을 하나씩이 아닌 묶음으로 더 빠르게 다운로드할 수 있다. - 위키백과 (자바 패키지).. 2022. 12. 26.
김영한님의 [모든 개발자들을 위한 HTTP 웹 기본 지식] 강의 후기!! 모든 개발자들을 위한 HTTP 웹 기본 지식 후기! 오늘 2022년 크리스마스를 기준으로 "모든 개발자를 위한 HTTP 웹 기본 지식" 강의를 다 듣게 되어서 후기를 간단하게 남겨보려 합니다! 사실 학부 과정 4학년에 올라와서 백엔드 개발자를 지망하여 공부를 시작하고 팀 프로젝트를 진행하면서, 개발 과정에 필요한 네트워크 지식이 너무 부족하다는 것을 절실하게 느끼고 있었습니다.. REST API 자체에 대한 개념도 지난 카카오 2차 코딩테스트를 준비하면서 알게 되는 등.. 부족함을 느끼던 찰나에 모든 개발자를 위한 HTTP 웹 기본 지식 - 인프런 | 강의 실무에 꼭 필요한 HTTP 핵심 기능과 올바른 HTTP API 설계 방법을 학습합니다., - 강의 소개 | 인프런... www.inflearn.com.. 2022. 12. 25.
728x90