티스토리 뷰
프로그래밍 개요
컴퓨터 언어(Computer Language)란?
● 컴퓨터를 이용하여 특정 작업을 수행하고자 할 때 컴퓨터에 전달하는 작업 지시서
● 명령어들의 집합
프로그래밍(Programming)이란?
●작업 지시서를 미리 약속된 규칙과 문법을 이용하여 기술하는 행위
2 실행 측면에서의 종류
■ 컴퓨터가 직접 실행하거나 매개체를 이용하여 실행
1 . 컴파일 언어
2 . 인터프리터 언어 --> 스크립트 언어
컴파일어너(Compiled Language)
1. 기계어로 컴파일되는 언어
2. 소스코드가 일괄적으로 번역된 후 실행되는 방식
3. 작고빠른 코드로 변환된 후 시스템에서 실행 가능한 파일로 생성하고 실행
장점
● 재컴파일을 통해 이식성 향상
● 빠른 실행
단점
● 시스템마다 코딩과 컴파일 별도로 수행
● 번역으로 인한 많은 코드 생성으로 메모리 사용 증가
C , C++ , JAVA , FORTRAN , PASCAL
1. 기계어로 미리 변환되는 것이 아니고 실행 중에 'intepreted'
2. 속도가 느림
3. 스크립트 언어(Scripting Languages)
( ASP, PHP , JAVA Script, VB Script 등 )
장점
● 한 줄씩 바로 실행되므로 추가적 메모리가 많이 필요하지 않음
● 플랫폼에 덜 의존적임
● 자료형과 범위가 유연함
단점
● 처리 속도가 느림
● 처리 가능 작업의 한계
인터 프리터 언어(Interpreted Language)
Basic , Ruby , Python
C
소개
1. 어셈블리어와 고급 언어의 장점을 가지고 있음
2. 작고 빠른 프로그램
3. 뛰어난 이식성
4. 컴파일러 언어
역사
1972년 벨 연구소의 데니스 리치에 의해 개발
1972년 UNIX 개발을 위해 개발
1989년 ANSI C 발표
3 특징과 주사용 분야
특징
● 하드웨어 제어
● 범용 프로그래밍
● 효율적 자료 관리 및 메모리 관리
주사용 분야
● 시스템 프로그램(운영체제, 디버깅 S/W, 미들웨어): 비트 조작, 메모리 접근, 형 변환
● 컴파일러, 유틸리티
● 응용 프로그램 (게임, 워드프로세서, 오라클)
● 임베디드 프로그래밍
소개
1. 객체지향 언어로 C언어의 확장판
2. 다중 상속, 오버로드
3. 컴파일러 언어
역사
1983년 벨 연구소의 비야네 스트롭스트룹이 발표
1984년 C with Classes에서 C++로 이름 변경
1989년 ANSI C 발표
특징과 주사용 분야
특징
● 하드웨어 제어+ 객체지향 프로그래밍
● C언어 라이브러리를 상당수 사용 가능
● 효율적 자료 관리 및 메모리 관리
주사용 분야
● 게임프로그램
● 빠른 처리가 필요한 응용프로그램
● 하드웨어 제어 프로그램
C#
소개
1. 객체지향 언어(C언어의 기본문법 + C++의 객체 지향개념 + UI컴포넌트)
2. .NET프레임워크에서 개발
3. 이 기종 간에 인터넷을 통한 자료 교환을 위해 개발
역사
2000년 Microsoft에서 발표
특징과 주사용 분야
특징
● .NET프레임워크에서 동작하므로 운영체제에 독립적
● CRL(Common Runtime Library)을 지원
● 뛰어난 생산성
주사용 분야
● 웹 응용프로그램
● 네트워크 프로그램
소개
1. C++와 유사하나 모호하거나 복잡한 기능을 제거한 객체지향 프로그램
2. 모든 데이터는 객체를 통하여 처리
3. 바이트 코드로 컴파일되기 때문에 자바를 지원하는 어떠한 플랫폼에서도 실행
역사
1995년 제임스 고슬링(썬 마이크로시스템즈)
특징 & 주사용 분야
특징
● 가장머신에서 동작하므로 운영체제에 독립적
● 다중 쓰레드 프로그램이 가능
● 뛰어난 호환성
주사용 분야
● 웹 응용프로그램
● 분산환경에 적합한 언어
● 휴대기기용 프로그램
Python
소개
1. 인간 친화적 언어로 익히기 쉬운 언어
2. 다른 언어와 혼합하여 개발 가능
역사
1991년 프로그래머인 귀도 반 로섬(Guido van Rossum)이 설계한 인터프리터식 언어
특징 & 주사용 분야
특징
● 개발 속도가 빠르고 간결
● 무료 소프트웨어
주사용 분야
● C / C++과의 결합
● 웹 프로그래밍
● GUI 프로그래밍
컴퓨터 언어 개요
- 프로그래밍이란 컴퓨터를 이용하여 특정한 작업을 할 수 있도록 명령서를
기술하는 작업 - 컴퓨터 언어를 실행방식의 측면에서 구분하면 크게 컴파일러 방식과 인터프리터
방식으로 구분됨 - 인간 중심과 기계 중심에 따라 고급과 저급언어로 구분됨
컴퓨터 언어 종류
- C 언어는 절차지향 언어로 시스템 프로그램 개발에 용이한 언어
- C++는 C언어의 확장으로 객체지향 언어
- C#은 인터넷과 같은 분산 환경 프로그래밍에 적합한 언어
- JAVA는 더욱 더 완벽한 객체지향 프로그램으로 웹 응용 프로그램 개발에 용이한
언어 - Python은 익히기 쉽고 다른 언어와 혼합하여 사용할 수 있는 언어
'JAVA기반 스마트 개발2021 > 프로그래밍 언어활용' 카테고리의 다른 글
애플리케이션 최적화 (0) | 2021.08.08 |
---|---|
디버깅 (0) | 2021.08.08 |
애플리케이션 구현 (0) | 2021.08.02 |
전처리기 (0) | 2021.08.02 |
배열 포인터 처리 (0) | 2021.08.01 |