1. 상속 이미 만들어진 class의 특징을 모두 이어받은 상태에서, 새로운 기능을 추가한다 비슷한 기능을 가진 다른 객체를 만들어야하는데, 조금 다르다는 이유로 완전히 새로 만들어 쓴다면 좋지 않다 이미 만든 코드와 비슷한 코드를 또 만들 필요 없이 가능한 재활용하면서 쉽게 기능을 바꾸거나 추가 할 수 있는 것 코드의 재활용 코드의 재사용성 최근 개발 패러다임은 상속이 그렇게 가치있다고 보지는 않는다.. 그런가? 이전에 만든 Character class는 이름, 체력의 속성과 Hit, Heal, isAlive, Eat 의 method를 가진다 using System.Collections;using System.Collections.Generic;using UnityEngine;public class C..
1. 객체지향 프로그래밍(OOP, Object Oriented Programming) "현실세계는 모두 객체로 이루어져 있으며, 현실세계에서 발생하는 사건들은 객체와 객체의 상호작용으로 이루어진다" 사람이 컴퓨터로 검색하고 프로그래밍하면 컴퓨터는 검색에 대한 결과, 프로그래밍의 결과인 프로그램을 제공 상호작용은 클래스의 메소드로 나타남 1) 객체: 사물과 같이 유형적인 것과 개념이나 논리와 같은 무형적인 것들 유형적인 것? = 자동차, 자전거, 스마트폰 등등 물리적인 형태 무형적인 것? = 눈에 보이지만 인지하고 쓸 수 있는 학과, 강의 등등 2) 지향(指向): 작정하거나 지정한 방향으로 나아감 3) 객체 모델링: 현실세계의 객체를 SW객체로 설계하는 것이다 예를 들어 사람은 어떤 것들을 가지고 있을까?..
1. 합성(composition) 여러개의 컴포넌트를 합쳐서 새로운 컴포넌트를 만드는 것 여기서 A라는 컴포넌트와 B라는 컴포넌트가 반복적으로 나타남 이 페이지 자체도 하나의 리액트 컴포넌트 그래서 이 페이지는 컴포넌트 A와 컴포넌트 B를 합쳐서 페이지 컴포넌트를 만든 것이기 때문에 합성 컴포넌트를 사용했다고 볼 수 있다. 리액트로 개발을 하다보면 이처럼 여러개의 컴포넌트를 합쳐서 새로운 컴포넌트를 만드는 일이 많다 합성이라고 무작정 그냥 컴포넌트들을 붙이는 것이 아니고 어떻게 조합할 것인가에 대한 고민이 필요하며 이에 따라 합성의 사용기법이 나뉜다 2. containment 하위 컴포넌트를 포함하는 형태의 합성 방법 사이드바나 다이얼로그같은 박스 형태의 컴포넌트는 자신의 하위 컴포넌트를 미리 알 수 없..
1. 컴포넌트 기반의 구조 리액트에서는 모든 페이지가 컴포넌트로 구성되어 있고, 하나의 컴포넌트는 또 다른 여러 개의 컴포넌트의 조합으로 구성될 수 있다. 이러한 컴포넌트들을 마치 레고 블록을 조립하듯이 끼워 맞춰서 새로운 컴포넌트를 만들 수 있다 에어비앤비 웹사이트 화면을 캡쳐하고 컴포넌트를 간단히 표시한 것이다. A, B로 표시된 부분이 리액트 컴포넌트이다. 이러한 컴포넌트를 여러 번 반복적으로 사용해서 하나의 페이지를 구성하고 있다. 이처럼 리액트는 작은 컴포넌트들이 모여서 하나의 컴포넌트를 구성하고, 이러한 컴포넌트들이 모여서 전체 페이지를 구성한다. 이렇게 하나의 컴포넌트를 반복적으로 사용함으로써 전체 코드의 양이 줄어 자연스레 개발 시간과 유지 보수 비용도 줄일 수 있다. 2. 리액트 컴포넌트..
1. 객체지향의 핵심개념 추상화, 상속, 다형성, 캡슐화 2. 추상화 함수, 변수, 클래스 blackbox같은 내부의 복잡한 원리는 잘 몰라도 필요한 것만 드러내고 쓰는것 User.login()하면 로그인.. 로그인을 어떻게 하는건데?? 그건 좀 복잡하지만 아무튼 로그인 잘하면 그만 User.logout()하면 로그아웃.. 로그아웃을 어떻게 하는건지 모르겠지만 아무튼 로그아웃이 잘 되면 그만 세상에 다양한 사람이 있지만 필요에 따라 Professor와 Student 두 그룹으로 나누는 것 그러면 professor나 student라고 하는 나만의 정의, 모음집이 생겨?? 이렇게 복잡하게 정의된 student, professor 코드에서 그냥 student.talk()하면 어떻게 말을 하는건지는 모르겠지만 ..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.