티스토리 뷰

프로그래밍이란?

 

  • 프로그래밍 : 컴퓨터가 일을 수행 하도록 프로그래밍 언어로 명령어 집합(프로그램)을 만드는 일
  • 컴파일 : 프로그래밍 언어를 컴퓨터가 실행 가능한 기계어로 만드는 일
  • 컴파일러 : 기계어로 바꾸어 주는 프로그램 ( ex. 자바 컴파일러, gcc )

 

더보기

제일 오래된 C언어 → C컴파일러

자바자바 컴파일러

C+C+컴파일러

파이썬 → 파이썬 컴파일러

 

프로그램을 "짠다", "구현한다","시스템을 만든다" - 프로그램 언어를 이용해서 컴퓨터가 이해하도록 수행하도록 시키는 일이다.

 

자바 프로그래밍

 

자바의 역사 : 1991년 제임스 고슬링을 비롯한 선 마이크로 시스템즈 연구원들이 처음 개발 가전, 휴대용 장치에 사용되는 소프트웨어 언어로 개발되어 안정성이 강조됨.

더보기
초창기에는 C언어, C++언어를 사용하였다.좋은 언어이기는 하나 위험성이 상당했다.

 

잘짜면 정말 좋은 언어이지만 조금이라도 미숙하다면 시스템 다운 현상이 많이 일어나는 위험성 있는 언어이다.때문에 휴대용장치 및 가전제품에는 어울리지 않았고, 그리 하여 자바가 등장하였다.
자바 프로그래밍의 특징

 

플랫폼(O.S)에 영향을 받지 않으므로 다양한 환경에서 사용할 수 있다.

더보기

자바의 장점 - 가상머신 ex)

중앙처리장치인 cpu에는 대표적인 회사 2개가 있는데, intel, amd가 있다.

두 cpu는 처리방식이 다르지만 가상 처리방식을 사용해 가상 cpu를 만들어서 돌리면 처리하는데에 아무 문제가 없을 것과 같은 원리로 자바는 O.S에 상관없이 다양한 환경에서 사용할 수 있다.

객체 지향 언어이기 때문에 유지보수가 쉽고 확장성이 좋다.

프로그램이 안정적이다.

오픈소스(library)의 기능이 풍부하게 제공된다.

자바는 C언어의 위험성과 C++의 모호한 부분을 과감히 없앴다. 

 

  • 자바 소스 코드 -사람의 언어
  • 자바 컴파일러 - 번역
  • 바이트 코드 - 가상 머신이 이해할 수 있는 언어로 변환된 자바 소스 코드

초기에는 속도가 느리다는 평이 있었지만 최근에 개선되어 성능에 대한 이슈가 사라졌다.

 

 

 

 

객체지향 프로그래밍이 무엇인가?

 

프로그램의 구현을 시간의 흐름순이 아닌 객체간의 관계와 협력을 기반으로 프로그램 하는 것

Object oriented programming(OOP) 이라고 함 ↔ 절차 지향 프로그래밍 procedural programming ex.C언어의 방식

 

사용 하는 언어 : Java, C++, C#, Python, JavaScript, Ruby 등 다수

 

 

자바로 프로그래밍을 하면 좋은 이유는 뭔가요?
(객체 지향 프로그래밍의 장점)
  • 재사용성
  • 유지보수
  • 코드 관리가 쉽다
  • 신뢰성 높은 프로그램

 

 

자바를 활용한 프로그래밍
  • 웹 서버 구현
  • 안드로이드 프로그래밍
  • 게임 프로그래밍

 

 

이 과정에서 배워야 할 내용

 

  • 자바 언어 익히기 (문법)
  • 객체 지향 프로그래밍 개념을 익히고 자바로 구현하기
  • 자료 구조의 필요성을 이해하고 구현하기
  • 자바 언어의 정확한 이해를 통한 문제 해결하기(객체지향, 알고리즘 문제 등)
더보기

1.프로그래밍을 배운다

2.시스템을 개발

3.문제 해결(+을 하기 위한 끊임없는 공부)

 

용어 정리

 

  • JDK(Java Development Kit) : 자바에서 제공되는 개발용 라이브러리(계속 버전이 업그레이드 되고 있다)
  • JRE(Java Runtime Environment) : 자바 프로그램이 실행되는 환경(8.0까지 무료로 제공 됨)
  • JVM(Java Virtual Machine) : 자바 가상 머신으로 프로그램이 실행되는 환경인 JRE가 설치되어 있어야 한다

'자바(Java)학습 > 1_Java 기초' 카테고리의 다른 글

18.반복문(do-while문)  (0) 2021.08.20
17.반복문(While문)  (0) 2021.08.20
0.자바(java)의 기초- 목차  (0) 2021.08.19
16. 조건문(Switch-case문)  (0) 2021.08.18
15-3. 조건문 최종 실습  (0) 2021.08.18