본문 바로가기

공부 기록

(319)
[10분 테코톡] 웨지의 OOP https://youtu.be/3etKkkna-f0 객체 지향 프로그래밍이란? - 프로그래밍 개발 방법론 - 사람이 현실을 바라보는 방법을 개발에 접목 - 직관적으로 이해하기 쉽다. 유지 보수를 용이하게 만든다. 객체 - 현실의 무언가에 대응하는 개념 - class : 객체를 표현하는 하나의 수단(class != 객체) - 다른 객체와 협력하는 역할을 맡고 있는 대상 => 역할을 맡으면 임무를 수행할 책임이 생긴다. => 책임을 다하기 위한 데이터와 프로세스를 가지고 있다. 협력과 책임, 역할 - 협력 : 시스템 목표를 달성하기 위해 여러 객체가 참여하여 행동하는 것 - 책임 : 협력 속에서 본인이 수행해야 할 임무의 내용을 알고 수행하는 것 - 역할 : 동일한 목적을 가진 책임의 묶음 메시지 - 객체는..
[10분 테코톡] 범블비의 MVC Pattern https://youtu.be/es1ckjHOzTI MVC패턴의 흐름 - 클라이언트는 필요한 기능을 컨트롤러에 요청 - 컨트롤러는 알맞은 모델에게 비즈니스 로직 수행을 맡김 - 알맞은 뷰 선택 - 결과 화면 출력 모델 - 데이터와 행동을 갖는 객체 - 비즈니스 로직 수행 - 상태 변화 처리, 상태 정보 반환 뷰 - 데이터의 시각화 - 모델이 처리한 데이터를 받아서 사용 - 데이터, 로직 X 컨트롤러 - 사용자의 요청을 해석하여 처리하고 결과를 반환 - 모델과 뷰를 느슨하게 연결 - 데이터의 흐름 제어 MVC 패턴을 사용하는 이유 : 구성 요소들의 재사용, 확장성 증가, 중복 코딩 제거, 각 요소들에 집중 MVC의 문제점과 대안 문제 : 컨트롤러와 뷰의 강한 결합 대안 : MVP - Presenter를 사..
[10분 테코톡] 차리의 Stream https://youtu.be/rbm87IFpwvQ 스트림 : 데이터의 흐름 자바의 스트림 API : 데이터를 어떻게 다룰 것인가를 논하는 일종의 파이프라인 구조 : 생성 -> 가공(lazy evaluation, 루프 퓨전, 쇼트 서킷) -> 소비 lazy evaluation : 최종 연산이 들어오기 전까지 중간 연산은 실제로 실행되지 않는다. 루프 퓨전 : 개별적인 연산이 하나의 연산 과정으로 병합된다. 쇼트 서킷 : 논리 연산을 진행할 때 모든 연산을 수행하지 않고 결과가 확실할 때 나머지 연산을 수행하지 않는다. 장점 : 가독성이 좋다. 코드 변경이 유연하다. 병렬 처리를 간단하게 할 수 있다. 단점 : 컴퓨팅 비용. 내부 반복으로 인한 인지적 비용
[10분 테코톡] 루나의 Gradle https://youtu.be/ntOH2bWLWQs Gradle : Groovy를 기반으로 한 오픈소스 빌드 도구. 거의 모든 타입의 소프트웨어를 빌드할 수 있는 빌드 자동화 시스템 Groovy : JVM 상에서 실행되는 스크립트 언어. JAVA와 유사한 문법 구조를 가지며, 호환성이 아주 좋다. 빌드 : 소스 코드를 컴파일, 테스트, 정적 분석 등을 실행하여 실행 가능한 애플리케이션으로 만들어주는 과정 다양한 라이브러리의 등장으로 인한 문제점 : 라이브러리를 다운로드 및 추가하는 번거로움, 개발자들 간의 버전 관리 어려움, 다운받은 jar 파일의 보안 위험 빌드 도구 : 계속해서 늘어나는 라이브러리를 자동 추가 및 관리, 프로젝트를 진행하며 라이브러리의 버전을 쉽게 동기화. 위의 문제점을 해결! Gra..
WEB2 - OAuth 2.0 : 3. 등록 https://youtu.be/_mm5ks5aWQ4 클라이언트가 리소스 서버를 이용하기 위해서는 사전 승인을 받아야 한다. => 등록 Client ID : 식별자 Client Secret : 비밀번호 Authorized redirect URIs : Authorized code를 받을 주소
WEB2 - OAuth 2.0 : 2. 역할 https://youtu.be/vo_0PW3V5zU Resource Server : 데이터를 가지고 있는 서버(+ Authorization Server : 인증과 관련된 처리를 전담하는 서버) Resource Owner : 소유자 Client : 리소스 서버에 접속하여 정보를 가져가는 클라이언트라는 의미
WEB2 - OAuth 2.0 : 1.수업소개 https://youtu.be/hm2r6LtUbk8 OAuth를 이용해서 다른 서비스에 접근할 수 있는 권한을 획득할 수 있다. 반대로 다른 서비스에게 권한을 부여할 수도 있다. AccessToken
[10분 테코톡] 주디의 Spring Bean https://youtu.be/3gURJvJw_T4 Spring Bean : 스프링 IoC 컨테이너가 관리하는 객체 스프링 IoC 컨테이너 : Bean을 관리하는 객체 빈과 의존성 주입 - 복잡한 의존 관계에서는 개발자가 하나하나 의존성을 주입하기 쉽지 않다. 빈과 싱글톤 - 객체를 싱글톤으로 만들면 다형성을 적용할 수 없다. 단위 테스트 수행 시 테스트 순서에 따라 결과가 달라진다. 스프링 IoC 컨테이너는 빈을 어떻게 관리할까? 객체 생성 + property 설정 -> 의존 설정 -> 초기화 -> 사용 -> 소멸 스프링 빈이 필요한 이유 : 스프링 IoC컨테이너가 특정 객체의 라이프사이클을 관리한다는 것을 명시 스프링 IoC컨테이너가 빈을 관리하는 이유 : 의존성을 자동 주입해 개발자들이 해당 의존성..