[자바 객체지향 원리] 3장 - 자바와 객체 지향
·
SW Books/스프링 입문을 위한 자바 객체지향의 원리와 이해
객체 지향은 인간 지향이다 프로그래밍 언어 발전사 = 개발자를 더욱 편하고 이롭게 하기 위함, 하이 레벨의 인간을 배려하기 위한 과정 절차적/구조적 프로그래밍 -> 인간이 기계를 이해하려는 노력 필요. 특히 포인터 "왜 우리가 기계 종속적인 개발을 해야 하나?" "우리가 눈으로 보고, 느끼고, 생활하는 현실 세계처럼 프로그래밍할 수 없을까?" -> 객체 지향 개념 탄생 구조적 프로그래밍에서 가장 중요한 것 "함수" 함수: 코드를 논리적인 단위로 구분, 분할해서 정복 명령어를 논리적인 단위로 나누어 블록화해서 작성 객체 지향 프로그래밍에서 가장 중요한 것 "객체"(Object) 모든 만물은 객체들의 합 객체 지향은 직관적; 현실 세계를 인지하는 방식으로 프로그래밍 할 수 있기 때문 세상에 존재하는 모든 것..
[자바 객체지향 원리] 2장 - 자바와 절차적/구조적 프로그래밍
·
SW Books/스프링 입문을 위한 자바 객체지향의 원리와 이해
자바 프로그램의 개발과 구동 소프트웨어 즉, 프로그램으내 개발자가 개발 도구를 이용해 개발, 운영체제를 통해 물리적 컴퓨터인 하드웨어 상에서 구동됨 => 자바 개발 도구인 JDK를 이용해 개발된 프로그램은 JRE에 의해 가상의 컴퓨터인 JVM 상에서 구동됨 배포되는 JDK, JRE 각 플랫폼(하드웨어와 OS의 조합) 용으로 배포되는 설치 파일을 따로 준비해야 했던 불편함 없앰 자바 개발자는 본인이 사용 중인 플랫폼에 설치된 JVM 용으로 프로그램을 작성, 배포하면 각 플랫폼에 맞는 JVM이 중재자..
[자바 객체지향 원리] 1장 - 사람을 사랑한 기술
·
SW Books/스프링 입문을 위한 자바 객체지향의 원리와 이해
객체 지향에 대한 이해는 스프링 프레임워크를 이해하기 위한 필수 조건이 책의 목표: 본격적인 스프링 학습을 위한 사전 지식, 즉 스프링의 근간이 되는 객체지향 4대 특성, 객체 지향 설계 5원칙, 스프링에서 많이 활용되고 있는 디자인 패턴을 학습하고 이해하는 것을 목표 자바 6을 기준으로 하는 조금 오래된책이지만, 스프링 프레임워크 버전 변화와 관계 없이 스프링의 기초를 학습하는데는 지장이 없다고 하니 시작해보자! --- 신기술은 이전 기술의 어깨를 딛고 스프링을 이해하려면 과거의 어떤 기술들을 이해하고 있어야 할까?SOA, CBD, OOP, 기계어, 어셈블리어 ... 기계어에서 객체 지향 프로그래밍 언어로기계어 - 0과 1의 행진, 비인간적인 언어(컴퓨터가 이해하는 유일한 언어)인류 최초의 프로그래머 ..
1장 gRPC 소개
·
SW Books/gRPC Up & Running
개요 현대 소프트웨어 시스템 여러 네트워크 위치에서 실행, 다양한 통신 프로토콜 사용한 메세지 전송 -> 분산 애플리케이션의 구성을 가진다. MSA(Microservice Architecture) 독립적이고 자율적(개별로 개발, 배포, 확장)이며, 비즈니스 중심의 느슨하게 결합된 서비스 모음으로 소프트웨어 애플리케이션 구축 클라우드 네이티브 아키텍처(Cloud Native Architecture) 조직이 퍼블릭, 프라이빗, 그리고 하이브리드 클라우드와 같은 현대적이고 동적인 환경에서 확장 가능한 어플리케이션을 개발하고, 실행할 수 있게 함. ex) 컨테이너, 서비스 매쉬, 마이크로 서비스, immutable 인프라, declarative API 이 기술은 회복성, 관리 편의성, 가시성을 갖춘 느슨하게 결..
디자인 패턴 - 싱글톤(Singleton) 패턴
·
Own/Memo
싱글톤이란?글로벌하게 접근 가능한 하나의 객체를 제공하는 패턴로깅, DB 등 동일한 리소스에 대한 동시 요청의 충돌 방지하나의 인스턴스를 공유하는 작업에 주로 사용ex) 여러 서비스의 로그를 동일한 로깅 객체를 사용해 로그파일에 순차적으로 남기는 경우 하나의 클래스에 대해 어플리케이션이 시작될 때 최초 한번만 메모리를 할당하고, 그 메모리에 인스턴스를 생성즉, 인스턴스를 하나만 생성한다. 클래스에 대한 단일 객체 생성(하나의 클래스에 단 하나의 인스턴스 허용 -> __new__ 메서드 재정의, 해당 메서드 내에서 이미 객체가 생서됐다면 객체를 생성해주지 않도록 처리)class Singleton(object): def __new__(cls, *args, **kwargs): if not h..
OAuth 와 OpenID
·
Own/Memo
Summary OAuth는 소통 주체가 리소스에 접근할 수 있는지 없는지에 대한 Authorization(권한 부여) 의 표준 제한된 사람(혹은 시스템)에게 제한된 권한을 어떻게 잘 부여할 것인가에 중점 Authorization: 사용자에 사용 권한을 허락해 주는 절차, 어떤 서비스에 로그인한 후에 이뤄지는 사용자의 행위에 대해 허가 OpenID 는 소통하는 주체가 누구인지에 대한 Authentication(인증) 에 대한 표준이다. 인증 시스템으로써 사용자 정보를 관리하고 인증하는 것에 초점 Authentication: 사용자가 누구인지 확인하는 절차, 회원가입 하고 로그인 하게 하는 것 사용자 인증을 통한 응답 차이 OAuth(access token): 권한 부여 - 페이스북 posting 권한, 유..