Week8
·
BE/23-1-GDSC - OC-BE
1. IoC와 프레임워크, 라이브러리 IoC란? Inversion of Control의 약자로 제어에 관해 역전이 일어났다는 것을 의미한다. 그러면 여기서 Control은 무엇을 제어하는 것을 의미할까? 우리는 개발자니까, 프로그래밍적으로 생각해보면 당연히 코드, 프로그램에 관한 제어이다. 개발자는 자신이 작성한 코드에 대해 자신이 원하는대로 흘러가길 바란다. 이렇게 작성해서 이러한 흐름으로 코드가, 프로그램이 진행되어야지~ 하는 개발자의 흐름대로 코드가 작성되고 흘러가는 것이 일반적이고 이러한 경우를 프로그래머가 제어권을 가지고 있다고 한다. 이러한 제어의 흐름을 조금 더 세분화해서, 객체지향 프로그래밍에서 '제어'란, 객체들간의 의존성을 연결하고 객체의 생성을 담당하는 것을 의미한다. 즉, 지금까지 ..
Week7
·
BE/23-1-GDSC - OC-BE
SOLID란 좋은 객체지향 설계를 위한 5가지 원칙을 의미한다. 지금부터 그 5가지에 대해 알아보도록하자. SRP (Single Responsible Principle) : 단일 책임 원칙 한 클래스는 단 하나의 기능,책임만을 가지고 있어야한다는 원칙이다. 한 클래스의 책임 영역을 확실하게 해야한다느 의미이다. 그렇다면 책임의 범위가 무엇일까? 이는 상황에 따라 다르지만 변경을 기준으로 한다. 한 클래스의 기능을 변경하거나 코드를 수정할때, 이에 따른 다른 클래스의 파급효과가 적을수록 srp를 잘 따르고 있는 것이다. OCP (Open / Close Principle) : 개방 - 폐쇄 원칙 소프트웨어는 확장에는 열려있어야하나 변경에는 닫혀있어야한다. 즉, 새로운 기능을 추가하는 것과 같은 확장이 일어나..
스프링 핵심원리 - 기본편 섹션9
·
BE/Spring - Inflearn 김영한
보호되어 있는 글입니다.
스프링 핵심원리 - 기본편 섹션8
·
BE/Spring - Inflearn 김영한
보호되어 있는 글입니다.
Week6
·
BE/23-1-GDSC - OC-BE
1. 추상클래스와 인터페이스 지난 글에서 추상화에 대한 이야기를 다뤘다. 이 글에선 자바가 추상화를 통해 객체지향을 어떻게 활용하고 있는지에 대해 다뤄보겠다. 자바에선 객체지향을 적극적으로 활용하기 위해 추상화를 통해 여러 객체를 만들고 연관관계가 있는 객체들의 공통성을 뽑아 super class로 만들기도하고 관련된 하위 sub class를 추가하기도 하는 '상속'관계를 적극 활용하고 있다. Super class에서 메소드를 정의하고 이를 오버라이딩을 통한 다형성을 적극 활용한다. 두가지 방법이 존재하는데 '추상클래스'와 '인터페이스'를 활용한 방법이 존재한다. 추상클래스 추상클래스를 활용하기 위해선 extends로 표현한다.말그대로 상위 클래스인 SupClass, 추상 클래스에 정의된 내용을 '확장'..
스프링 핵심원리 - 기본편 섹션7 -(2)
·
BE/Spring - Inflearn 김영한
보호되어 있는 글입니다.
스프링 핵심원리 - 기본편 섹션7 -(1)
·
BE/Spring - Inflearn 김영한
보호되어 있는 글입니다.
Week5
·
BE/23-1-GDSC - OC-BE
1. 객체지향 패러다임과 객체란? 객체지향 패러다임 앞서 언급한 절차지향형 프로그래밍에서 이전까지 프로그래밍의 패러다임은 함수지향적이었다. 코드를 논리적인 단위로 구분하는 방식으로 작성하며 인간의 입장에서 기계를 이해하고자 하는 방향의 언어들이 주를 이루었다. 하지만, 객체지향 패러다임은 이와 다르게 현실세계 그 자체를 인지하고 프로그래밍에 반영하도록 하고자 하는 패러다임이다. 즉, 세상에 존재하는 모든 사물들을 인지하고 모든 사물을 객체화하고자한다. 따라서 각각의 사물의 고유한 속성과 행동을 정의하고 이를 Attribute와 Operation으로 정의하고자한다. 객체란? 앞서 Class와 Object를 구분할때 클래스는 Definition 특정 사물을 정의한 것을 의미하고 객체는 이를 실체화(insta..
스프링 핵심원리 - 기본편 섹션6
·
BE/Spring - Inflearn 김영한
보호되어 있는 글입니다.
Week4
·
BE/23-1-GDSC - OC-BE
1. 순차 지향 프로그래밍과 절차 지향 프로그래밍의 특징과 차이 순차 지향 프로그래밍 순차 = sequential이다. 즉, 프로그램이 코드의 순서에 맞춰서 흐름대로 진행되게 프로그래밍을 하는 것을 의미한다. 절차 지향 프로그래밍 절차 = procedual이다. Procedual의 개념은 조금 다르긴한데 여기서는 함수라고만 이해하자. 이때 반복되거나 재사용될 가능성이 있는 코드에 대해서 미리 procedual를 만들어 놓고 필요할때마다 이를 활용하게 프로그래밍하는 것을 의미한다. 차이점? 한 기능을 반복해서 실행한다고 생각해보자. 여기서는 a와b를 입력받고 이를 출력하는 기능을 구현한다고 생각하자. 간단한 CPP code를 보겠다. int main(void){ //a+b를 입력받고 더한 값을 sum으로 ..
유쓰응
'BE' 카테고리의 글 목록 (2 Page)