728x90

 

출처: <https://www.youtube.com/watch?v=C3P1umV-NOI&list=PLW2UjW795-f6xWA2_MUhEVgPauhGl3xIp&index=1>

 

 

[자바의정석-기초편] ch1-1,2 자바란? 자바의 역사

 

자바란?

프로그래밍 언어(programming language)

컴퓨터 프로그램(어플리케이션) 만드는데 사용

실행환경(JRE) + 개발도구(JDK) + 라이브러리(API)

 

*JDK SDK'

java developeement kit : 자바 개발을 위한 SDK JDK라고

software developement kit : 소프트웨어 개발도구

 

*API(Application Programming Interface)?

응용프로그램 인터페이스. 응용프로그램을 작성할 필요한 매개체 의미.

컴퓨터 프로그램은 응용 프로그램과 시스템 프로그램(운영체제) 나뉘고,

시스템 프로그램(운영체제) 이용하여 특정 기능을 하도록 응용해서 만든 프로그램을 응용 프로그램이라 부른다

 

실무 개발에서는 프로그램이 너무 커서 전부 개발할 없기에 이미 만들어진 소프트웨어 컴포넌트를 결합해서 만드는 경우가 많다. 라이브러리도 이중 하나. 컴포넌트들을 결합하기 위한 매개체가 API

소프트웨어 컴포넌트 : tawk 채팅창 기능서비스 api 끌어오는 같은

 

 

*API 라이브러리 차이

라이브러리(Library) : 도서관 . 다른사람들이 만들어놓은 .

   - 프로그램에 자주 쓰일만한 것들을 다른사람들이 만들어 놓은 것들을 제공하는

라이브러리 컴포넌트 자체를 뜻함

API 컴포넌트를 활용하기 위한 규약에 따른 매개체

개발자 로컬 컴퓨터에 설치된 라이브러리를 통하는 것과 외부 서버에서 서비스를 제공받는 API 차이

 

 

자바 사용처

pc애플리케이션, 애플리케이션, 안드로이드(모바일) 어플리케이션, 빅데이터 하둡(hadoop),

게임(마인크래프트),과학,소형기기

 

 

 

 

 

 

[자바의 정석 - 기초편] ch1-3,4 자바의 특징, 자바 가상 머신(JVM)

 

 

자바의 특징

  1. 객체지향 언어
  2. 자동 메모리관리 : 가비지 컬렉터(GC)가 자동관리해줌
  3. 멀티 쓰레드 지원
  4. 운영체제에 독립적 : 자바가상머신(JVM) 위에 가동되고 그 다음 OS와 작동하기 때문에 운영체제에서 자유로운 것

         - JVM 각각 운영체제에 맞게 개발되어 있음

 

*객체지향언어란?

기존 프로그래밍 언어 + 객체지향 개념 도입한

 

 

 

[자바의 정석 - 기초편] ch1-7 자바 API문서 설치와 사용법

 

자바 API?

java 프로그랭 하는데 필요한 주요기능을 미리 만들어서 제공하는

 

자바 API문서란?

java api 제공하는 기능에 대한 상세정보를 제공하는 html파일

 

오라클 사이트에서 다운하면 되며, 각종 패키지,class 설명이 나오므로 자주 찾아볼 !

 ex) 어떤 메소드가 어느 클래스인지 찾을

random 메소드가 어느 클래스인지 모르겠다면 index 탭에서 R 클릭하고 ctrl+F random검색

 

 

728x90
반응형
728x90

017. 객체지향 언어(OOP, Object-Oriented Programming)란?  - 기본 구성 요소 -

 

 

출처 : 위키백과

 

 

일단 구성요소에 대해 알아보기 전에 객체지향(Object-Oriented)에 대해 한번 알아보자.

 

객체지향이라는 개념이 나타나기 이전의 프로그래밍 방법에서는 사람이 컴퓨터에게 프로그램이 뭘하고 그 다음에 뭘하고 명령을 주는 식으로 컴퓨터가 하는 일을 하나씩 알려주기 바빴다고 한다. 그러나 객체지향 프로그래밍(OOP)이 등장하고부터 프로그램을 작성할 대상이 되는 실제 세계의 사물(객체)을 그대로 표현하고, 그것들이 어떻게 움직이는지 정해주고 나서 그 객체들에게 일을 시킨다고 한다.

 객체지향 프로그래밍을 잘 사용하면 보다 좋은 프로그램을 빨리 만들 수 있고, 나중에 수정하기도 편해진다고 하며, 프로그래밍 언어들이 모두 객체지향적인 것은 아니지만 요즘에 주로 사용되는 것들은 객체지향을 제공하는 것이 많다고 합니다. 객체지향을 개념을 몰라도 간단한 프로그램을 짤 수 있지만, 윈도우나 복잡한 프로그램을 짤 때는 큰 도움이 된다고 한다.
(출처:https://wikidocs.net/84)

 

파이썬은 객체지향적 언어라고 한다. 다만 데이터분석이나 통계 쪽으로 많이 활용되고 있어

객체 간의 작용하는 프로그래밍보다는 사용자정의 함수들을 많이쓰므로 그리 느껴지지 않을 수 있다고한다.

 


 

이제 '객체지향(Object-Oriented)  언어'가 무엇인지 이해하기 위해서는 먼저 기본 구성요소를 알아보자

 

객체지향 언어의 3가지 기본 구성요소는 

클래스(class), 객체(object), 메소드(method)이다

 

1.클래스(class)

같은 타입의 그룹에 속하는 속성(attribute)과 동작(behavior)을 정의한 것

 

2.객체(object)

클래스의 인스턴스가 실제로 메모리에 할당된 것
 - 클래스에서 정의된 내용을 실행하며 객체 자체의 속성을 가지고 있다

 

3.메소드(method)

클래스로부터 생성된 객체를 사용하는 방법

 - 객체의 속성을 조작하는데 사용되며, 객체간의 통신은 메세지를 통해 이루어진다.

 

 

*개념 자체들이 한마디로 정의되기 어렵고, 내용이 복잡하고 방대하여 일단 간단하게 다루고

추후에 차차 계속 다뤄보기로 하자. 기초튼튼하게!!

728x90
반응형

+ Recent posts