본문 바로가기

분류 전체보기

(74)
어노테이션(Annotation) 어노테이션(Annotation)어노테이션(Annotation)은 메타데이터(metadata)라고 볼 수 있다. 메타테이터란 컴파일 과정과 실행과정에서 코드를 어떻게 how 컴파일하고 처리할 건지 정보! 어노테이션의 용도-컴파일러에게 코드 문법 에러를 체크하도록 정보 제공-개발 툴이나 빌드나 배치 시 코드를 자동으로 생성할 수 있도록 정보 제공-실행(런타임 시) 특정 기능을 실행하도록 정보 제공 컴파일러에게 코드 문법 에러 체크하도록 정보 제공하는 대표적인 예는 @Override 어노테이션이다.이거 오버라이드(재정의)된 건데 정확하게 문법 썼는지 체크해라!고 말하는거랑 같다. 그 외에도 @Deprecated(더 이상 안 쓰는 메서드, 쓸 경우 경고!) @SuppressWarnings(컴파일 경고 무시), ..
static과 싱글톤 Static정적(static)은 '고정된'이란 의미를 갖고 잇다.클래스에 고정된 멤버로 객체를 생성하지 않고 사용할 수 있는 필드와 메소드를 말한다. 필드와 메소드 선언 시 static 키워드를 추가적으로 붙이면 된다.public class 클래스명{ //정적 필드 static 타입 필드 [=초기값]; //정적 메소드 static 리턴 타입 메소드( 매개변수선언, ...) {...} }클래스 로더가 클래스(바이트 코드)를 로딩해서 메소드 메모리 영역에 적재할 때 관리된다. 로딩 끝나면 바로 사용할 수 있음. 정적 필드를 사용하는 이유1. 항상 값이 변하지 않는 변수인 경우 메모리 할당을 한번만 하여 메모리를 낭비하지 않기 위해2. 공유하여 사용해야하는 변수인 경우 (보통 이 이유로 많이 사용한다) 정적블..
react 유용한 개발 툴 React Developer Tools 리액트 개발자라면 꼭 쓰는!chrome web store에서 react dev검색하면 React Developer Tools 다운로드할 수 있다. 이렇게 리액트로 만들어진 홈페이지면 불도 들어오고, 개발자 툴에서 어떤 방식으로 만들어졌는지, 구성된 건지도 확인할 수 있음! 디버깅도 가능 Reactjs code snippets컴포넌트를 일일이 수동적으로 하지 않아도,"rcc 엔터"만 누르면 바로 리액트 컴포넌트가 생길 수 있도록 도와주는 툴입니다! 이것을 설치하게 되면, React 관련 템플릿을 단축키로 작성할 수 있다.rcc→class component skeletonrrc→class component skeleton with react-redux connectrc..
프로젝트 폴더 트리 설명 yarn create-react-app test를 하면 다음처럼 폴더 트리가 구성된다. 아래 사진은 VisualStudioCode에서 볼 수 있는 폴더 트리. test ├── README.md ├── node_modules ├── package.json ├── .gitignore ├── public │ ├── favicon.ico │ ├── index.html │ └── manifest.json └── src ├── App.css ├── App.js ├── App.test.js ├── index.css ├── index.js ├── logo.svg └── serviceWorker.js └── setupTests.js 트리 구조를 간략하게 살펴보자. .gitignore 여기에 명시된 폴더나 파일은 깃에 공..
create-react-app create react-app 리액트를 개발하는 수 많은 개발자들이 공통으로 사용하는 유용한 툴을 자동으로 설정해준다. 리액트도 적극적으로 이 툴 사용을 권장하고 있다. 자동으로 만들어주는 툴 말고, 직접 세세한 컨트롤 하고 싶다? 그 때 좀 더 세세히 배우면 될 것 같다. 공식 홈페이지https://create-react-app.dev/docs/getting-started/ 여기 들어가면 실행할 수 있는 방법이 설명 되어 있다. 어떤 말인지 대충 보도록 하자.npx create-react-app my-app: npx - 패키지 실행할 수 있는 툴.: create-react-app - 패키지 실행!: my-app - 프로젝트 이름 설정npm start: 실행하세용~! create-react-app에 Ho..
리액트 시작하기-기본적으로 필요한 툴 리액트를 시작하기 위해 필요한 툴을 먼저 받아보자. 터미널, node.js, git, yarn 네 개를 먼저 받아보자.터미널 설치윈도우에서는 window+R키를 누르고 cmd를 실행시키면 기본적인 터미널이 있다.기본 툴 사용해도 되고, 아니면 조금 더 예쁜 거 쓰고 싶으면 cmder을 다운로드해서 사용하면 된다.https://cmder.net/cmder을 설치하면 git이 같이 딸려와서 추가되기 때문에 git을 따로 설치해주지 않아도 된다. 깃 설치소스 코드의 버전을 관리할 수 있고, 깃허브나 깃랩에 올릴 수가 있다.git 공식 사이트로 가서 다운로드 하면 된다.잘 다운로드 됐는지 확인하는 방법은 터미널에서 git —version을 적으면 확인할 수 있다.https://git-scm.com/ node.j..
상속 : 추상 클래스 추상 클래스추상.. "어떤 대상 혹은 세계로부터 하나의 상을 추려내어 표현하는 것을 의미한다"고 한다.새, 곤충, 물고기 —공통된 특성→ 동물삼성, 현대, LG —공통된 특성→ 회사 Bird.class, Insect.class, Fish.class(실체 클래스) -→ Animal.class(추상 클래스) 추상 클래스는 실체 클래스의 공통되는 필드와 메소드를 추출해서 만들었기 때문에 객체를 생성x 추상 클래스를 만드는 이유는 뭘까?실체 클래스들의 공통된 필드와 메소드의 이름을 통일할 목적 Bird.class, Insect.class를 다른 사람이 정의한다고 하면... 누구는 무언가 먹는 행위를 지정하는 메서드를 eat()으로 쓰고, 누군가는 eatting()으로 쓸 수 있다. 동일한 데이터와 기능인데 이름..
상속 : 타입 변환과 다형성 다형성은 하나의 타입에 여러 객체를 대입함으로써 다양한 기능을 사용할 수 있도록 하는 성질이다. 도형(Figure)라는 클래스를 정의해보자class Figure{ double getArea() { return 0.0; } public String toString() { return "이것은 도형입니다."; } } Figure를 상속하는 Sagak 클래스class Sagak extends Figure { int width, height; double area; public Sagak() { this.width = 1; this.height = 1; area = getArea(); //this(1, 1); 로 쓸 수 있다. } public Sagak(int width, int height) { this.wi..

반응형