본문 바로가기

Programming

(25)
개발환경 셋팅 - Node.js 설치 1. Node.js 설치하기 1-1. Node.js 사이트 접속한다. nodejs.org/en/download/ Download | Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nodejs.org 1-2. 자신의 컴퓨터 사양에 맞춰 최신 버전의 파일을 다운 받는다. 1-3. 다운받은 .msi 파일을 실행하여 설치 경로를 지정 후 설치를 진행한다. 특별한 설정이 필요하지 않다면 Next를 클릭하여 넘어간다. 1-4. [window키] + [R] 키를 누른 후 실행 창에 [cmd]를 입력하여 커맨트창을 띄운다. 1-5. node -v 를 입력 후 node.js가 정상적으로 설치 됐는지를 확인한다. 아래와 같이..
리액트(React.js)란? - React의 장점과 단점 1. 리액트(React.js)란? : 페이스북에서 제공해주는 프론트엔드 라이브러리이며, 컴포넌트 기반으로 되어 있어서 컴포넌트에 데이터를 내려주면 개발자가 설계한대로 UI를 만들어 사용자에게 보여진다. - 웹 페이지를 만들기에는 html, css로도 충분하지만 html, css 만으로 동적인 데이터를 UI에 뿌려주기에는 적합하지 않다. 이 때 리액트를 이용한다면 사용자와 상호작용할 수 있는 UI를 손쉽게 만들 수 있기때문에 리액트를 사용한다. ※ Angular와 React의 차이점 : Angular는 뷰레이어를 포함한 많은 기능을 갖춘 완전한 프레임워크이지만 React는 웹을 만드는데 반드시 필요한 도구들이 기본적으로 제공되지 않는 라이브러리이다. 2. 리액트의 특징 - 컴포넌트 기반의 라이브러리 : 헤..
프레임워크와 라이브러리의 차이 1. 프레임워크(FrameWork) : 기본적인 틀이 존재하고 필수적인 코드, 알고리즘, 데이터베이스 연동과 같은 기능들을 위해 어느정도의 뼈대(구조)를 제공하는 개발 환경이다. 2.라이브러리(Library) : 특정 기능에 대한 도구 혹은 함수들을 모은 집합 즉, 프로그래머가 개발하는데 활용 가능한 도구들을 모아 모듈화한 것이다. ※라이브러리와 API(Application Programming Interface)의 차이점 라이브러리: 실제로 실행이 되는 기능을 담당하는 단편화된 프로그램 API: 다른 목적으로 개발된 프로그램, 라이브러리들의 특정 기능을 호출하기 위해서 인터페이스를 노출 3. 프레임워크와 라이브러리의 차이점 : 프레임워크가 개발자들의 환경을 제한하는 대신에 일정한 환경을 제공한다면 라이..
Spring Boot란? 1. 스프링 프레임워크(Spring Framework)란? : Spring Framework는 자바 플랫폼을 위한 오픈 소스 애플리케이션 프레임워크로서 스프링(Spring)이라고도 한다. 스프링은 엔터프라이즈 애플리케이션(기업형 프로그램으로 자바에서는 Java EE를 통해 개발)개발을 더욱 편리하게 하기 위한 수단이라고 볼 수 있다. - 스프링은 EJB(Enterprise Java Beans: 시스템 구현을 위한 서버측 컴포넌트 모델) 컨테이너 사용으로 인한 개발 생선성과 유지 보수성 저하와 테스트와 배포의 어려움을 해결하기 위해 개발되었다. 2. 스프링 프레임워크 특징 - 경량 컨테이너로서 자바 객체를 직접 관리한다. - POJO(Plain Old Java Object) 방식의 프레임워크이다. : 일반..
자바의 인터페이스 1. 인터페이스 (Interface) : 자바에서 객체의 사용 방법을 정의한 타입으로 개발 코드와 객체가 서로 통신하는 접점 역할을 한다. 개발 코드가 인터페이스의 메소드를 호출하면 인터페이스는 객체의 메소드를 호출시킨다. -> 개발 코드를 수정하지 않고 사용하는 객체를 변경할 수 있도록 하기 위해서 직접 객체의 메소드를 호출하지 않고 중간에 인터페이스를 둔다. -> 인터페이스는 하나의 객체가 아니라 여러 객체들과 사용이 가능하므로 어떤 객체를 사용하느냐에 따라 실행 내용과 리턴값이 다를 수 있다. -인터페이스 선언 : 인터페이스 선언은 class 키워드 대신에 interface 키워드를 사용한다. [ public ] interface 인터페이스명 { // 상수 [ public static final ]..
자바의 추상 클래스 1. 추상 클래스 : 객체를 직접 생성할 수 있는 클래스를 실체 클래스라고 한다면 추상 클래스는 이 클래스들의 공통적인 특성을 추출해서 선언한 클래스를의미한다. 추상 클래스는 실체 클래스의 공통되는 필드와 메소드를 추출해서 만들었기 때문에 객체를 직접 생성해서 사용할 수 없다. 즉, 추상 클래스는 new 연산자를 사용해서 인스턴스를 생성시키지 못한다. Animal animal = new Animal();//(X) *추상 클래스는 실체 클래스를 만들기 위해 부모 클래스로만 사용된다. (extends 뒤에만 올 수 있는 클래스) class Ant extends Animal { ... }// (O) ※실체 클래스들의 공통적인 특성을 뽑아 추상 클래스로 만드는 이유? 실체 클래스들의 공통된 필드와 메소드의 이름..
자바 상속의 개념 1. 상속(Inheritance) : 기존의 클래스에 기능을 추가하거나 새로운 클래스를 정의하는 것을 의미하며, 부모 클래스(상위 클래스)의 멤버를 자식 클래스(하위 클래스 or 파생 클래스)에게 물려줄 수 있다. *상속의 장점 기존에 작성된 클래스를 재사용할 수 있다. 자식 클래스 설계 시 중복되는 멤버를 미리 부모 클래스에 작성해 놓으면, 자식 클래스에서는 해당 멤버를 작성하지 않아도 된다. 클래스 간의 계층적 관계를 구성함으로써 다형성의 문법적 토대를 마련한다. ※상속 주의 사항 : 상속을 해도 부모 클래스의 모든 필드와 메소드들을 물려받는 것이 아니라 부모 클래스에서 private 접근 제한을 갖는 필드와 메소드는 상속 대상에서 제외된다. 또한, 부모 클래스와 자식 클래스가 다른 패키지에 존재하면..
자바의 접근 제한자 1. 접근 제한자(Access Modifier) : 객체 생성을 막기 위해 생성자를 호출하지 못하게 하거나 객체의 특정 데이터를 보호하기 위해 해당 필드에 접근하지 못하도록 막아야 한다. 그리고 특정 메소드를 호출할 수 없도록 제한할 필요가 있는데 이러한 기능을 구현하기 위해 자바는 접근 제한자를 제공한다. 접근 제한자 적용 대상 접근할 수 없는 클래스 public 클래스, 필드, 생성자, 메소드 없음 protected 필드, 생성자, 메소드 자식 클래스가 아닌 다른 패키지에 소속된 클래스 default 클래스, 필드, 생성자, 메소드 다른 패키지에 소속된 클래스 private 필드, 생성자, 메소드 모든 외부 클래스 private > default > protected > public 2. 클래스의 접..