プログラミング言語とコンパイラ(JAVA)

3438 ワード

プログラミング言語とコンパイルを理解してください.

1.プログラミング言語


1.プログラミング言語の種類&世界ランキングの決定

참조사이트 : https://www.tiobe.com/tiobe-index/ 
JAVA 언어란?
[특징]
- 썬 마이크로시스템즈 사에서 제임스 고슬링 (James Gosling) 에 의해 95년 개발 (96년 JAVA로 발표)
- 기존의 주요 객체지향 언어인 C++ 의 단점 극복 -> 순수 객체지향 언어 필요
- 플랫폼 독립적인 언어
	* 플랫폼 독립적 (Platform Independant) 이란?
    		+ 어느 플랫폼에서 개발했든 타 플랫폼에서도 동일하게 실행됨
            	+ 즉 플랫폼에 관계없이 실행가능하다는 의미 (플랫폼 독립)
                + 이것이 가능한 이유는 JVM (Java Virtual Machine) 덕분 (JDK 설치시 같이 실처되거나, 보통 OS에 거의 설치되어있음)
                * 엔터프라이즈 환경에서 JAVA가 많이 사용되게 된 이유 중 하나
                
           JAVA 소스코드 ----> 윈도우, 리눅스, 맥 ----> JAVA 실행파일 ----> 윈도우용 실행파일
           (클래스파일)         컴파일 (Compile)       (BYTE CODE)  ----> 리눅스용 실행파일
            (*.java)                                 (*.class)   ----> 맥용 실행파일

                
      ex) 기존 언어(C 언어 등의 문제점)
       - 컴파일 하여 빌드한 실행파일 해당 플랫폼 에서만 실행
       - 심지어 C/C++ 은 플랫폼은 고사하고, 소스 차원에서도 호환되지 않는 문제
       
       	   C 소스코드 ----> 윈도우에서 컴파일 ----> 윈도우용 실행파일
           C 소스코드 ----> 리눅스에서 컴파일 ----> 리눅스용 실행파일
           C 소스코드 ---->   맥에서 컴파일   ----> 맥용 실행파일
           
[장점]           
- 국내에서는 특히 정부및 산업 프레임워크 표준으로 채택되었기에 자바 기반의 비중이 매우 높음
- C, C++ 에 비해 프로그래밍 상의 안정성이 높고, 배우기도 상대적으로 쉽다.
  (ex: Garbage Collecting 등은 메모리 관리로 부터 프로그래머 해방)
- 읽기에 편하다. 인간의 언어에 유사.

[단점]
- 속도 문제
- 소스코드 가 타 언어에 비해 길~~~다 (타이핑이 많다..)

[종류]
1. Java SE(Java Standard Edition / J2SE)
 - 대부분의 사람들이 가장 많이 접하는 표준 에디션. Java의 핵심 API와 기능들을 제공한다. 
2. Jakarta EE, 구 Java EE(Java Enterprise Edition / J2EE)
 - 기업에서 운영하는 서버 페이지에 특화된 에디션이다.
 - JSP와 서블릿을 비롯한 웹 애플리케이션 서버에 관련된 기술들이 포함되어 있다.
3. Java ME(Java Micro Edition / J2ME)
 - PDA나 셋톱박스, 센서 등의 임베디드 시스템 환경에 특화된 에디션이다.
4. JavaFX데스크톱
 - 애플리케이션 개발 및 배포를 위한 에디션으로, 크로스플랫폼 이식과 GUI 라이브러리를 제공한다.

2.プログラミング言語の解釈

  • パソコン人の言葉がわからない!->0、1のみの言語運用
  • を翻訳する手段が必要です!
  • 各言語にはコンパイラ(またはinterpreter)があります.
  • コンピュータが理解して実行できる言語
    Programming Language     Complier(or Interpreter)      binary code

    3.プログラミング言語の意味

  • 人間が理解する「文法」に従ってプログラム(ソースコード)を記述し、コンパイラなどによってコンピュータが実行できるバイナリファイル(実行可能ファイル)を作成する.
    ソースコード------->実行可能ファイル
  • 2.コンパイラ


    1.バージョンの検証

    커맨드 라인에서   아래와 같이 확인 가능
    - java  ← 자바 실행 파일 / *.class 파일을 실행
    - javac ← 자바 컴파일러 / *.java 파일을 컴파일

    2.基本開発プロセス

      클래스파일 					바이트코드(Byte Code)
    (프로그램 소스)            ---------->	      JVM에서 실행가능한 결과물
      *.java		    컴파일		     *.class
      

    3.Javaとjavacのみで開発可能

  • クラスファイル(ソースファイル):MyClassを作成します.java
  • 画面に示すような特別なエラーはありません
  • MyClassは、
  • ブラウザでコンパイルされた結果です.classファイルが作成されたかどうかを確認できます
  • 問題
  • 標準JDKも開発可能ですが、編集やデバッグには不便です.
  • 複数のクラス、複数のプラットフォーム、および構築環境、および複数の開発環境で連携する必要がある場合、カスタマイズされた方法で開発することは困難です.
  • 그래서 등장한것이 바로 ‘통합 개발 환경 IDE: Integrated Development Environment’
    次回はJAVA統合開発環境「Eclipse」を勉強します!