SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
프로그래밍 언어의 기본 개념과
주요 프로그래밍 언어
(주)비즈머스 교육자료 [BEA-CM-101]

ì	
  
프로그래밍 언어의 정의와 종류
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어

ì	
  
프로그래밍 언어의 정의	
  
언어의 정의?	
  

•  생각,	
  느낌 따위를 나타내거나 전달하는 데에 쓰는 음성,	
  문자 따위의 수단	
  

프로그래밍의 정의?	
  

•  컴퓨터에서 실행되는 프로그램을 만드는 일	
  
•  프로그램의 작성 방법의 결정, 프로그램의 작성을 위한 코딩, 프로그램 작성 후
테스트 등의 일련의 과정을 의미하는 경우가 많음 	
  

프로그래밍 언어란?	
  

•  컴퓨터에서 실행되는 프로그램을 만들기 위해서 사람의 생각을 컴퓨터가 처리할
수 있도록 그 내용을 전달하거나 명령하기 위해 사용하는 문자로 된 수단	
  
•  광의의 개념으로는 문자로 된 수단을 사용하여 프로그램을 쉽게 작성할 수 있도
록 도와주는 프로그래밍 소프트웨어(Visual	
  Basic,	
  Delphi,	
  PowerBuilder)까지 포
함하기도 함	
  

주식회사
 비즈머스
 

Copyright
 :
 Bizmerce
 Co.
 Ltd,
 All
 right
 reserved
 
프로그래밍 언어의 종류 	
  
프로그래밍 언어를 	
  
보는 관점 	
  

•  프로그래밍 언어를 사용하는 개발자 측면에서 보는 관점(사용자 측면)	
  
•  프로그래밍 언어에 의해 만들어진 프로그램을 실행하는 매체의 측면에서 보는 관
점(실행 측면)	
  

사용자 측면에서의 종류	
  
•  언어가 기계어와 관계 되어 있는
수준의 깊이로 나누는 방법으로
관계가 1:1	
  수준에 가까울 수록 저
수준	
  
•  고수준 언어 (또는 고급 언어)	
  
;	
  High	
  Level	
  Language	
  
•  저수준 언어 (또는 저급 언어)	
  
;	
  Low	
  Level	
  Language	
  

주식회사
 비즈머스
 

실행 측면에서의 종류	
  

세대에 따른 분류	
  

•  프로그램을 실행하는 주체에 따라
나누는 방법으로 컴퓨터가 직접
실행하느냐 또는 매개체를 이용하
느냐 등에 따라 구분 	
  
•  컴파일러 언어 (Compiler	
  
Language)	
  
•  인터프리터 언어 (Interpreter	
  
Language)	
  
•  스크립트 언어(Script	
  Language)	
  

•  1GL	
  :	
  기계어 프로그래밍	
  
•  2GL	
  :	
  어셈블리 프로그래밍	
  
•  3GL	
  :	
  고수준언어 프로그래밍	
  
(FORTRAN,	
  C,	
  C++,	
  Java 등의 구
조적 프로그래밍)	
  
•  4GL	
  :	
  초고수준언어 프로그래밍	
  
(Table	
  Driven,	
  Report	
  
Generator,	
  Database	
  Query 등
비절차적 프로그래밍 기법 도입)	
  
•  5GL	
  : 인공지능 프로그래밍	
  
(Prolog,	
  OPS5,	
  Mercury	
  등)	
  	
  

Copyright
 :
 Bizmerce
 Co.
 Ltd,
 All
 right
 reserved
 

Contenu connexe

Tendances

Atdd with Cucumber
Atdd with CucumberAtdd with Cucumber
Atdd with CucumberYunsang Choi
 
[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법MinGeun Park
 
[IGC2017] Protocol:hyperspace Diver 개발 포스트모템
[IGC2017] Protocol:hyperspace Diver 개발 포스트모템[IGC2017] Protocol:hyperspace Diver 개발 포스트모템
[IGC2017] Protocol:hyperspace Diver 개발 포스트모템Young Soo Kim
 
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍NDOORS
 
왜 Swift를 해야할까요?
왜 Swift를 해야할까요?왜 Swift를 해야할까요?
왜 Swift를 해야할까요?선협 이
 
Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
Backend.AI: 오픈소스 머신러닝 인프라 프레임워크Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
Backend.AI: 오픈소스 머신러닝 인프라 프레임워크Jeongkyu Shin
 
Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기nexusz99
 
Slipp clojure-1212
Slipp clojure-1212Slipp clojure-1212
Slipp clojure-1212완수 양
 
Domain-Driven Design 훑어보기 Part 1
Domain-Driven Design 훑어보기 Part 1Domain-Driven Design 훑어보기 Part 1
Domain-Driven Design 훑어보기 Part 1Sangwon Ko
 
31기 고지웅 "구글오픈소스"
31기 고지웅 "구글오픈소스"31기 고지웅 "구글오픈소스"
31기 고지웅 "구글오픈소스"hyu_jaram
 
[20140624]소개자료
[20140624]소개자료[20140624]소개자료
[20140624]소개자료유석 남
 
게임 프로그래밍 기초 공부법
게임 프로그래밍 기초 공부법게임 프로그래밍 기초 공부법
게임 프로그래밍 기초 공부법Chris Ohk
 
기술 관심 갖기: 스타트업 기술 101 (Interested in Tech?: Startup Technology 101)
기술 관심 갖기: 스타트업 기술 101 (Interested in Tech?: Startup Technology 101)기술 관심 갖기: 스타트업 기술 101 (Interested in Tech?: Startup Technology 101)
기술 관심 갖기: 스타트업 기술 101 (Interested in Tech?: Startup Technology 101)Jeongkyu Shin
 
개발을잘하고싶어요-네이버랩스 송기선님
개발을잘하고싶어요-네이버랩스 송기선님개발을잘하고싶어요-네이버랩스 송기선님
개발을잘하고싶어요-네이버랩스 송기선님NAVER D2
 
[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OT[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OTMinGeun Park
 
[Hello World 천안아산] 안드로이드 입문
[Hello World 천안아산] 안드로이드 입문[Hello World 천안아산] 안드로이드 입문
[Hello World 천안아산] 안드로이드 입문Taeho Kim
 
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)Jaewon Choi
 
[N3C] 고민정 - 주말코딩으로 취미게임 만들기
[N3C] 고민정 - 주말코딩으로 취미게임 만들기[N3C] 고민정 - 주말코딩으로 취미게임 만들기
[N3C] 고민정 - 주말코딩으로 취미게임 만들기Minjung Ko
 

Tendances (20)

Atdd with Cucumber
Atdd with CucumberAtdd with Cucumber
Atdd with Cucumber
 
[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법
 
[IGC2017] Protocol:hyperspace Diver 개발 포스트모템
[IGC2017] Protocol:hyperspace Diver 개발 포스트모템[IGC2017] Protocol:hyperspace Diver 개발 포스트모템
[IGC2017] Protocol:hyperspace Diver 개발 포스트모템
 
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
(게임개발을위한) printf("Hello World!"); 그 이상의 콘솔 프로그래밍
 
왜 Swift를 해야할까요?
왜 Swift를 해야할까요?왜 Swift를 해야할까요?
왜 Swift를 해야할까요?
 
DDD 산책
DDD 산책DDD 산책
DDD 산책
 
Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
Backend.AI: 오픈소스 머신러닝 인프라 프레임워크Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
 
Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기
 
Slipp clojure-1212
Slipp clojure-1212Slipp clojure-1212
Slipp clojure-1212
 
Domain-Driven Design 훑어보기 Part 1
Domain-Driven Design 훑어보기 Part 1Domain-Driven Design 훑어보기 Part 1
Domain-Driven Design 훑어보기 Part 1
 
LESS와 EMMET
LESS와 EMMETLESS와 EMMET
LESS와 EMMET
 
31기 고지웅 "구글오픈소스"
31기 고지웅 "구글오픈소스"31기 고지웅 "구글오픈소스"
31기 고지웅 "구글오픈소스"
 
[20140624]소개자료
[20140624]소개자료[20140624]소개자료
[20140624]소개자료
 
게임 프로그래밍 기초 공부법
게임 프로그래밍 기초 공부법게임 프로그래밍 기초 공부법
게임 프로그래밍 기초 공부법
 
기술 관심 갖기: 스타트업 기술 101 (Interested in Tech?: Startup Technology 101)
기술 관심 갖기: 스타트업 기술 101 (Interested in Tech?: Startup Technology 101)기술 관심 갖기: 스타트업 기술 101 (Interested in Tech?: Startup Technology 101)
기술 관심 갖기: 스타트업 기술 101 (Interested in Tech?: Startup Technology 101)
 
개발을잘하고싶어요-네이버랩스 송기선님
개발을잘하고싶어요-네이버랩스 송기선님개발을잘하고싶어요-네이버랩스 송기선님
개발을잘하고싶어요-네이버랩스 송기선님
 
[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OT[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OT
 
[Hello World 천안아산] 안드로이드 입문
[Hello World 천안아산] 안드로이드 입문[Hello World 천안아산] 안드로이드 입문
[Hello World 천안아산] 안드로이드 입문
 
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
오픈소스 소프트웨어 개발, 어디서부터 시작하는게 좋을까요? @ CNU(충남대)
 
[N3C] 고민정 - 주말코딩으로 취미게임 만들기
[N3C] 고민정 - 주말코딩으로 취미게임 만들기[N3C] 고민정 - 주말코딩으로 취미게임 만들기
[N3C] 고민정 - 주말코딩으로 취미게임 만들기
 

En vedette

Somul 2017-이민석
Somul 2017-이민석Somul 2017-이민석
Somul 2017-이민석Minsuk Lee
 
Mi power point flores
Mi power point floresMi power point flores
Mi power point floresAilinTomas
 
1.자료구조와 알고리즘(강의자료)
1.자료구조와 알고리즘(강의자료)1.자료구조와 알고리즘(강의자료)
1.자료구조와 알고리즘(강의자료)fmbvbfhs
 
왜 우리는 개발자에 집중하지 않는가?
왜 우리는 개발자에 집중하지 않는가?왜 우리는 개발자에 집중하지 않는가?
왜 우리는 개발자에 집중하지 않는가?Minsuk Lee
 
10분만에 이해하는 프로그래밍
10분만에 이해하는 프로그래밍10분만에 이해하는 프로그래밍
10분만에 이해하는 프로그래밍명욱 송
 
Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심흥배 최
 
[1116 박민근] c++11에 추가된 새로운 기능들
[1116 박민근] c++11에 추가된 새로운 기능들[1116 박민근] c++11에 추가된 새로운 기능들
[1116 박민근] c++11에 추가된 새로운 기능들MinGeun Park
 
국민대-컴퓨터프로그래밍-2017-1-오프라인강좌
국민대-컴퓨터프로그래밍-2017-1-오프라인강좌국민대-컴퓨터프로그래밍-2017-1-오프라인강좌
국민대-컴퓨터프로그래밍-2017-1-오프라인강좌Minsuk Lee
 
소프트웨어, 정말 되는 건가?
소프트웨어, 정말 되는 건가?소프트웨어, 정말 되는 건가?
소프트웨어, 정말 되는 건가?Minsuk Lee
 
소프트웨어, 소프트웨어 개발자
소프트웨어, 소프트웨어 개발자소프트웨어, 소프트웨어 개발자
소프트웨어, 소프트웨어 개발자Minsuk Lee
 
왜 소프트웨어를 배워야할까?
왜 소프트웨어를 배워야할까?왜 소프트웨어를 배워야할까?
왜 소프트웨어를 배워야할까?Minsuk Lee
 
프로그램 기초
프로그램 기초프로그램 기초
프로그램 기초Minsuk Lee
 
국민대학교 컴퓨터프로그래밍
국민대학교 컴퓨터프로그래밍국민대학교 컴퓨터프로그래밍
국민대학교 컴퓨터프로그래밍Minsuk Lee
 
알고리즘과 자료구조
알고리즘과 자료구조알고리즘과 자료구조
알고리즘과 자료구조영기 김
 
자기소개서, 이력서 쓰는 법
자기소개서, 이력서 쓰는 법자기소개서, 이력서 쓰는 법
자기소개서, 이력서 쓰는 법Minsuk Lee
 

En vedette (15)

Somul 2017-이민석
Somul 2017-이민석Somul 2017-이민석
Somul 2017-이민석
 
Mi power point flores
Mi power point floresMi power point flores
Mi power point flores
 
1.자료구조와 알고리즘(강의자료)
1.자료구조와 알고리즘(강의자료)1.자료구조와 알고리즘(강의자료)
1.자료구조와 알고리즘(강의자료)
 
왜 우리는 개발자에 집중하지 않는가?
왜 우리는 개발자에 집중하지 않는가?왜 우리는 개발자에 집중하지 않는가?
왜 우리는 개발자에 집중하지 않는가?
 
10분만에 이해하는 프로그래밍
10분만에 이해하는 프로그래밍10분만에 이해하는 프로그래밍
10분만에 이해하는 프로그래밍
 
Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심Modern C++ 프로그래머를 위한 CPP11/14 핵심
Modern C++ 프로그래머를 위한 CPP11/14 핵심
 
[1116 박민근] c++11에 추가된 새로운 기능들
[1116 박민근] c++11에 추가된 새로운 기능들[1116 박민근] c++11에 추가된 새로운 기능들
[1116 박민근] c++11에 추가된 새로운 기능들
 
국민대-컴퓨터프로그래밍-2017-1-오프라인강좌
국민대-컴퓨터프로그래밍-2017-1-오프라인강좌국민대-컴퓨터프로그래밍-2017-1-오프라인강좌
국민대-컴퓨터프로그래밍-2017-1-오프라인강좌
 
소프트웨어, 정말 되는 건가?
소프트웨어, 정말 되는 건가?소프트웨어, 정말 되는 건가?
소프트웨어, 정말 되는 건가?
 
소프트웨어, 소프트웨어 개발자
소프트웨어, 소프트웨어 개발자소프트웨어, 소프트웨어 개발자
소프트웨어, 소프트웨어 개발자
 
왜 소프트웨어를 배워야할까?
왜 소프트웨어를 배워야할까?왜 소프트웨어를 배워야할까?
왜 소프트웨어를 배워야할까?
 
프로그램 기초
프로그램 기초프로그램 기초
프로그램 기초
 
국민대학교 컴퓨터프로그래밍
국민대학교 컴퓨터프로그래밍국민대학교 컴퓨터프로그래밍
국민대학교 컴퓨터프로그래밍
 
알고리즘과 자료구조
알고리즘과 자료구조알고리즘과 자료구조
알고리즘과 자료구조
 
자기소개서, 이력서 쓰는 법
자기소개서, 이력서 쓰는 법자기소개서, 이력서 쓰는 법
자기소개서, 이력서 쓰는 법
 

Similaire à 프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어

현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)Ukjae Jeong
 
소프트웨어 중심 시대를 준비하자
소프트웨어 중심 시대를 준비하자소프트웨어 중심 시대를 준비하자
소프트웨어 중심 시대를 준비하자Deogtae Kim
 
아파치 쓰리프트 (Apache Thrift)
아파치 쓰리프트 (Apache Thrift) 아파치 쓰리프트 (Apache Thrift)
아파치 쓰리프트 (Apache Thrift) Jin wook
 
파이썬 튜토리얼 (Python tutorial)
파이썬 튜토리얼 (Python tutorial)파이썬 튜토리얼 (Python tutorial)
파이썬 튜토리얼 (Python tutorial)민지 김
 
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템강 민우
 
JavaScript Everywhere from Mobile and Robot
JavaScript Everywhere from Mobile and RobotJavaScript Everywhere from Mobile and Robot
JavaScript Everywhere from Mobile and RobotCirculus
 
Chaper24 languages high_and_low
Chaper24 languages high_and_lowChaper24 languages high_and_low
Chaper24 languages high_and_lowKyungryul KIM
 
오픈소스 번역 기여하기 v2
오픈소스 번역 기여하기 v2오픈소스 번역 기여하기 v2
오픈소스 번역 기여하기 v2Changwoo Ryu
 
오픈소스 번역 기여하기 v3
오픈소스 번역 기여하기 v3오픈소스 번역 기여하기 v3
오픈소스 번역 기여하기 v3Changwoo Ryu
 
Pcl 라이브러리 빌드_튜토리얼
Pcl 라이브러리 빌드_튜토리얼Pcl 라이브러리 빌드_튜토리얼
Pcl 라이브러리 빌드_튜토리얼Hyounggap An
 
모두가 함께하는ROS 워크숍
모두가 함께하는ROS 워크숍모두가 함께하는ROS 워크숍
모두가 함께하는ROS 워크숍Suhan Park
 
글로벌소프트웨어개발 V1.0
글로벌소프트웨어개발 V1.0글로벌소프트웨어개발 V1.0
글로벌소프트웨어개발 V1.0KangJin Choi
 
[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드
[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드
[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드Sanghun Yun
 
OSS개발자포럼(2017.01) 파이썬 소개자료
OSS개발자포럼(2017.01) 파이썬 소개자료 OSS개발자포럼(2017.01) 파이썬 소개자료
OSS개발자포럼(2017.01) 파이썬 소개자료 YoChun YoChun
 
강분도 - 공개SW개발과 우분투 (2010Y10M05D)
강분도 - 공개SW개발과 우분투 (2010Y10M05D)강분도 - 공개SW개발과 우분투 (2010Y10M05D)
강분도 - 공개SW개발과 우분투 (2010Y10M05D)Ubuntu Korea Community
 
리스펙토링 세미나 - OT
리스펙토링 세미나 - OT리스펙토링 세미나 - OT
리스펙토링 세미나 - OTWooyoung Ko
 
Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)정명훈 Jerry Jeong
 

Similaire à 프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어 (20)

현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
 
소프트웨어 중심 시대를 준비하자
소프트웨어 중심 시대를 준비하자소프트웨어 중심 시대를 준비하자
소프트웨어 중심 시대를 준비하자
 
아파치 쓰리프트 (Apache Thrift)
아파치 쓰리프트 (Apache Thrift) 아파치 쓰리프트 (Apache Thrift)
아파치 쓰리프트 (Apache Thrift)
 
파이썬 튜토리얼 (Python tutorial)
파이썬 튜토리얼 (Python tutorial)파이썬 튜토리얼 (Python tutorial)
파이썬 튜토리얼 (Python tutorial)
 
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
[IGC 2017] 넥스트플로어 김영수 - Protocol:hyperspace Diver 개발 포스트모템
 
JavaScript Everywhere from Mobile and Robot
JavaScript Everywhere from Mobile and RobotJavaScript Everywhere from Mobile and Robot
JavaScript Everywhere from Mobile and Robot
 
Chaper24 languages high_and_low
Chaper24 languages high_and_lowChaper24 languages high_and_low
Chaper24 languages high_and_low
 
오픈소스 번역 기여하기 v2
오픈소스 번역 기여하기 v2오픈소스 번역 기여하기 v2
오픈소스 번역 기여하기 v2
 
오픈소스 번역 기여하기 v3
오픈소스 번역 기여하기 v3오픈소스 번역 기여하기 v3
오픈소스 번역 기여하기 v3
 
Pcl 라이브러리 빌드_튜토리얼
Pcl 라이브러리 빌드_튜토리얼Pcl 라이브러리 빌드_튜토리얼
Pcl 라이브러리 빌드_튜토리얼
 
flutter
flutterflutter
flutter
 
모두가 함께하는ROS 워크숍
모두가 함께하는ROS 워크숍모두가 함께하는ROS 워크숍
모두가 함께하는ROS 워크숍
 
About Programmer 2021
About Programmer 2021About Programmer 2021
About Programmer 2021
 
글로벌소프트웨어개발 V1.0
글로벌소프트웨어개발 V1.0글로벌소프트웨어개발 V1.0
글로벌소프트웨어개발 V1.0
 
[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드
[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드
[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드
 
OSS개발자포럼(2017.01) 파이썬 소개자료
OSS개발자포럼(2017.01) 파이썬 소개자료 OSS개발자포럼(2017.01) 파이썬 소개자료
OSS개발자포럼(2017.01) 파이썬 소개자료
 
강분도 - 공개SW개발과 우분투 (2010Y10M05D)
강분도 - 공개SW개발과 우분투 (2010Y10M05D)강분도 - 공개SW개발과 우분투 (2010Y10M05D)
강분도 - 공개SW개발과 우분투 (2010Y10M05D)
 
1 swift 소개
1 swift 소개1 swift 소개
1 swift 소개
 
리스펙토링 세미나 - OT
리스펙토링 세미나 - OT리스펙토링 세미나 - OT
리스펙토링 세미나 - OT
 
Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)Python study 1강 (오픈소스컨설팅 내부 강의)
Python study 1강 (오픈소스컨설팅 내부 강의)
 

프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어

  • 1. 프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어 (주)비즈머스 교육자료 [BEA-CM-101] ì  
  • 2. 프로그래밍 언어의 정의와 종류 프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어 ì  
  • 3. 프로그래밍 언어의 정의   언어의 정의?   •  생각,  느낌 따위를 나타내거나 전달하는 데에 쓰는 음성,  문자 따위의 수단   프로그래밍의 정의?   •  컴퓨터에서 실행되는 프로그램을 만드는 일   •  프로그램의 작성 방법의 결정, 프로그램의 작성을 위한 코딩, 프로그램 작성 후 테스트 등의 일련의 과정을 의미하는 경우가 많음   프로그래밍 언어란?   •  컴퓨터에서 실행되는 프로그램을 만들기 위해서 사람의 생각을 컴퓨터가 처리할 수 있도록 그 내용을 전달하거나 명령하기 위해 사용하는 문자로 된 수단   •  광의의 개념으로는 문자로 된 수단을 사용하여 프로그램을 쉽게 작성할 수 있도 록 도와주는 프로그래밍 소프트웨어(Visual  Basic,  Delphi,  PowerBuilder)까지 포 함하기도 함   주식회사
  • 6.  :
  • 10.  All
  • 13.  
  • 14. 프로그래밍 언어의 종류   프로그래밍 언어를   보는 관점   •  프로그래밍 언어를 사용하는 개발자 측면에서 보는 관점(사용자 측면)   •  프로그래밍 언어에 의해 만들어진 프로그램을 실행하는 매체의 측면에서 보는 관 점(실행 측면)   사용자 측면에서의 종류   •  언어가 기계어와 관계 되어 있는 수준의 깊이로 나누는 방법으로 관계가 1:1  수준에 가까울 수록 저 수준   •  고수준 언어 (또는 고급 언어)   ;  High  Level  Language   •  저수준 언어 (또는 저급 언어)   ;  Low  Level  Language   주식회사
  • 16.   실행 측면에서의 종류   세대에 따른 분류   •  프로그램을 실행하는 주체에 따라 나누는 방법으로 컴퓨터가 직접 실행하느냐 또는 매개체를 이용하 느냐 등에 따라 구분   •  컴파일러 언어 (Compiler   Language)   •  인터프리터 언어 (Interpreter   Language)   •  스크립트 언어(Script  Language)   •  1GL  :  기계어 프로그래밍   •  2GL  :  어셈블리 프로그래밍   •  3GL  :  고수준언어 프로그래밍   (FORTRAN,  C,  C++,  Java 등의 구 조적 프로그래밍)   •  4GL  :  초고수준언어 프로그래밍   (Table  Driven,  Report   Generator,  Database  Query 등 비절차적 프로그래밍 기법 도입)   •  5GL  : 인공지능 프로그래밍   (Prolog,  OPS5,  Mercury  등)     Copyright
  • 17.  :
  • 19.  Co.
  • 21.  All
  • 24.  
  • 25. 사용자 측면에서의 구분(1)   저수준언어   (Low  Level  Language)   #include  stdio.h     int  main  {        prinW(“hello  world!n”);        return  0;   }   주식회사
  • 27.   •  어셈블리어와 통상적으로 같은 것을 지칭하는 의미로 사용됨   •  통상 기계어(machine  language)와 일대일로 대응하는 언어.     사용자보다는 컴퓨터 측면에서 개발한 언어라 할 수 있으며,  보통 사용하는 자연 언어보다 수준이 낮다.   PUSH MOV   SUB   PUSH PUSH PUSH   LEA MOV REP  STOS PUSH CALL ADD XOR POP   POP POP ADD CMP   CALL MOV POP RET    EBP    EBP,  ESP    ESP,  40H    EBX    ESI    EDI    EDI,  [EBP-­‐40H]    EAX,  0CCCCCCCCH    DWORD  PTR  [EDI]    OFFSET  STRING  “hello  world!n”  (0042001C)    PRINTF(00401060)    ESP,4    EAX,EAX    EDI    ESI    EBX    ESP,  40H    EBP,  ESP    __CHKESP  (004010E0)    ESP,  EBP    EBP   Copyright
  • 28.  :
  • 30.  Co.
  • 32.  All
  • 35.  
  • 36. 사용자 측면에서의 구분(2)   고수준언어   (High  Level  Language)   •  기계어와 비교해서 보다 사람이 이해하기 쉬운 프로그래밍 언어로 기계어와 1:1 이 이 아닌 n  :  1  수준의 대응관계를 가지는 언어이다.   •  자연 언어에 가까운 구문 규칙을 갖추고 있어 이식성이 높은 것이 특징이며 FORTRAN,  ALGOL,  PASCAL,  C,  C++  Objeckve  C,  Java 등이 고수준언어에 속한 다.   FORTRAN   program  helloworld(output)   begin          WriteLn(‘Hello,  World!’)   end.   program  helloworld          print  *,  “Hello,  World!”   End  program  helloworld   C++   #include  iostream     int  main()  {          std::cout    “Hello,  World!n”;   }   주식회사
  • 38.   PASCAL   Java   public  class  HelloWorld  {          public  stakc  void  main(String[]  args)  {                  System.out.println(“Hello,  World!”);          }   }   Copyright
  • 39.  :
  • 41.  Co.
  • 43.  All
  • 46.  
  • 47. 실행 측면에서의 구분(1)   컴파일러 언어   (Compiler  Language)   •  컴파일 방식에 의해 프로그램을 생성하고 실행은 컴퓨터에서 이루어지는 언어   •  소스코드 자체로는 실행될 수 없고 컴파일 후 만들어진 Object  Code가 수행 프 로그램이 됨   •  일반적으로 고수준 언어에 의해 작성된 소스코드의 각 문장을 적당한 일련의 기 계어 명령으로 바꾸어 주며 프로그램 전부를 실행 전에 일괄적으로 기계어로 번 역함   장점   단점   •  한번 컴파일 하면 컴파일된 프로그램을 그대로 사용가능하며 처리시간이 매우 빠름   컴파일러 언어의 종류   주식회사
  • 49.   •  •  •  •  •  •  한 줄의 소스코드가 많은 기계어로 번역되기 때문에 상대적으 로 큰 기억용량(스택)이 필요함   FORTRAN  :  수학 및 과학 분야 연산, 수퍼컴퓨팅 알고리즘 작성   COBOL  :  사무용 프로그램 개발용 언어   PASCAL  :  과학 분야 프로그램 개발용 언어   C  :  실행속도가 매우 빠른 범용 개발 언어   Java  :  자바 가상 머신을 컴퓨터로 하고 이에 따라 컴파일을 하여 실행하는 범용 개발언어   Copyright
  • 50.  :
  • 52.  Co.
  • 54.  All
  • 57.  
  • 58. 실행 측면에서의 구분(2)   인터프리터 언어   (Interprekve   Language)   •  유사코드를 컴퓨터에 상주해 있는 인터프리터가 해석해 실행하는 프로그램   •  소스코드를 하나씩 통역하여 이것을 실행한 뒤 그 다음 문장으로 이동하여 통역/ 실행하는 처리를 반복하는 프로그램을 인터프리터라고 하며 이를 이용한 개발 언 어를 인터프리터 언어라고 함   장점   단점   •  한 줄 씩 해석하여 실행하기 때문에 기억장소가 많이 필요하지 않다 자원효율적임   •  플랫폼 비의존적이고 자료형과 범위가 동적으로 설정될 수 있 어 유연함   •  인터프리터 언어의 종류   주식회사
  • 60.   •  •  •  인터프리터에 의해 해석되면서 실행되기 때문에 처리에 많은 시간이 소요되어 컴파일러 언어에 비해 비효율적임   실제로는 인터프리터와 컴파일을 혼합한 형태(가상머신과 컴파일의 혼합 형태 등)로 진화된 언어가 많아서 순수한 인터프리터 언어라고 구분할 수 있는 언어는 많지 않음.   BASIC,  Python,  Ruby,  Java,  Forth 등이 있음   광의로는 Scripkng  Language인 ASP,  ECMAScript 기반의 언어,  PHP 등의 언어도 인터프리 터 언어의 한 종류로 볼 수 있음   Copyright
  • 61.  :
  • 63.  Co.
  • 65.  All
  • 68.  
  • 69. 실행 측면에서의 구분(3)   스크립팅 언어   (Scripkng  Language)   •  스크립팅 언어란 스크립트로 만들어진 프로그램이 특정한 런타임 환경 하에서 컴 파일 대신 인터프리트 되고 자동화되고 실행되어지도록 하는 언어를 말함   •  일반적으로 웹 브라우저에서 실행되는 웹페이지, 런타임 환경에서 실행되는 소프 트웨어, 운영체제 및 임베디드 시스템의 쉘 등이 해당된다.   장점   단점   •  특정 실행 환경 상에서 실행되기 때문에 플랫폼 독립적임   •  고수준언어로 프로그램 작성이 직관적으로 이루어질 수 있음   인터프리터 언어의 종류   주식회사
  • 71.   •  •  •  •  •  단독으로 실행될 수 없기 때문에 별도의 런타임 환경을 구축해 야 하고 경우에 따라 많은 리소스가 필요할 수 있음   Job  Control  Languages    Shells  :  Shell  Script,  Unix  Shell,  DOS  Script  등   GUI  Scripkng  :  Office  Macro  등   Applicakon-­‐specific  Languages  :  Emacs  Lisp,  QuakeC   Extension/Embeddable  Languages  :  ECMAScript,  AckonScript,  Perl,  PHP,  ASP,  Python   Copyright
  • 72.  :
  • 74.  Co.
  • 76.  All
  • 79.  
  • 80. 주요 프로그래밍 언어 프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어 ì  
  • 81. Python   Python   •  파이썬은 일반적인 목적으로 널리 사용되는 고수준 언어임   •  다양한 플랫폼에서 쓸 수 있고 라이브러리가 풍부하며 객체지향, 구조적 프로그 래밍, 함수적 프로그래밍, 동적 타이핑 등 다양한 형태의 프로그램 개발이 가능함   •  현대의 파이썬은 인터프리터 언어처럼 동작하지만 실제로는 소스코드를 컴파일 하여 바이트 코드를 만들어 냄으로써 수행 속도를 개선하고 있음   •  인터프리터 언어와 컴파일 언어의 혼합   History   •  •  •  •  •  1991년에 최초로 개발되어 22년 이상 사용되어 오고 있음   디자이너 :  Guido  van  Rossum   프로그램 언어 관리 및 개발 :  Python  Sovware  Foundakon   최신 버전 :  3.3.2  (2013년 5월 15일 배포),  2.7.6  (2013년 11월 10일 배포)   최신의 트랜드를 반영하고 기존 파이썬의 기능 중 지원이 필요없거나 또는 지저분하게 쌓여 있는 기능을 빼고 새로운 버전으로 전환하는 단계로 3.x 버전은 계속 지속될 버전. 향후 5년 이상의 장기적인 전환계획을 통해 전환을 완료할 예정으로 당분간 버전이 두가지로 운영될 것으로 보임   주식회사
  • 84.  :
  • 86.  Co.
  • 88.  All
  • 91.  
  • 92. Ruby   Ruby   •  동적 객체지향 스크립트 프로그래밍 언어로 순수 객체 지향 언어   •  Mulk-­‐paradigm,  Object  oriented(객체지향),  Imperakve(명령형),  Funckonal(함 수지향),    Refleckve(동적타입, 반영지향)   •  Irb라는 인터프리터로 간단하게 실행 가능.   •  Ruby는 인터프리터의 이름이기도 하며 rb라는 소스파일을 직접 실행시킴   •  인터프리터 언어   History   •  •  •  •  1995년 최초 개발   디자인 및 개발 : 마츠모토 유키히로   최신 버전 :  2.0.0-­‐p247  (2013년 6월 27일)   굉장히 직관적이고 간단한 형태의 문법을 가지고 있어 배우기 쉽고 특히 일본 개발자가 개발한 언어여서 그런지 일본에서 인기가 많은 편이다. 크게 인기를 끌고 있지는 못하지만 2005년 Ruby  on  Rails가 인기를 모으면서 다 시 주목을 받고 있다.   주식회사
  • 95.  :
  • 97.  Co.
  • 99.  All
  • 102.  
  • 103. Fortran   Fortran   •  매우 간결하고 엄격한 구문 형식을 지닌 언어로 최초의 3세대 언어   •  수학, 과학 분야 등 복잡한 계산 처리에 강하며 현재도 슈퍼컴퓨터 프로그램 개발 등에 널리 사용되고 있는 프로그래밍 언어임   •  컴파일 언어   History   •  •  •  •  •  최초 개발 :  1957년   디자인 :  John  Backus(존 베커스)   개발 :  IBM   최신 버전 :  Fortran  2008  (ISO/IEC  1539-­‐1:2010)  –  2010년 문장이 비교적 간단 명료하고 수정이 용이하다는 장점이 있으나 다른 언어에 비해 파일의 입출력 처리가 비효율 적이고 수치데이터가 아닌 데이터의 표현과 처리에 한계가 있다는 점 등이 단점임   주식회사
  • 106.  :
  • 108.  Co.
  • 109.  Ltd,
  • 110.  All
  • 113.  
  • 114. COBOL   COBOL   •  경영, 회계,  기업/기관 관리 시스템을 개발하기 위한 목적으로 개발된 언어   •  Common  Business-­‐Oriented  Language의 약자   •  많은 분야에서 널리 사용되어 왔고 아직도 코볼 기반의 프로그램이 많이 남아 있 지만 구식 언어라는 인식이 강해 차세대 시스템 구축의 주요 대상이 됨   •  Procedural,  Object-­‐Oriented   •  컴파일 언어   History   최초 개발 :  1959년   디자인 :  Grace  Hopper(버그라는 용어의 창시자, 최초의 컴파일러 창시자 -­‐  UNIVAC, 미 해군 준장)   최근 버전 :  COBOL  2002  (2002년)   기계독립적이고 영어문장과 비슷한 문장을 사용하기 때문에 초보자도 쉽게 사용할 수 있고 대용량의 파일 등의 입출력 시 효과적이라는 단점이 있지만 프로그램 문장이 길어 소스코드가 길어진다는 단점이 있고 수 학적 계산 처리에는 약함   •  COBOL의 영향을 받고, 문법도 비슷한 언어 중 ABAP 이라는 언어가 SAP 애플리케이션을 중심으로 사용되 고 있어 명맥을 유지하고 있음   •  •  •  •  주식회사
  • 117.  :
  • 119.  Co.
  • 120.  Ltd,
  • 121.  All
  • 124.  
  • 125. BASIC   BASIC   •  베이직은 프로그램을 보다 쉽게 가르치기 위한 교육용으로 개발되었으며 Beginner’s  All-­‐purpose  Symbolic  Instruckon  Code 의 약자임   •  Unstructured,  나중에 다음으로 변화 –  Procedural,  Object  Oriented   •  초기의 프로그래밍 언어로 개인용 컴퓨터인 애플,  IBM,  Microsov 등의 PC에 사 용됨으로써 널리 퍼지게 됨   •  인터프리터 언어 -­‐ 컴파일 언어   History   •  •  •  •  최초 개발 :  1964년   디자인 :  John  George  Kemeny   최근 버전 : 기존 버전의 베이직은 쓰이지 않으며 현재는 Visual  Basic.Net 등으로 변화됨   배우기가 쉽고 메모리 용량이 적은 컴퓨터에서도 사용하기가 쉽지만 처리속도가 느리고 플랫폼에 종속적 이라는 단점을 가지고 있다.   주식회사
  • 128.  :
  • 130.  Co.
  • 131.  Ltd,
  • 132.  All
  • 135.  
  • 136. C   C   •  어셈블리언어와 고수준언어의 장점을 고루 갖추고 있는데 굳이 레벨로 나누자면 중간 수준 언어로 구분할 수 있음   •  C++,  C#,  Objeckve-­‐C,  Java 등의 기반이 된 언어임   •  Imperakve,  Procedural,  Structured   •  컴파일 언어   History   •  •  •  •  •  최초 개발 :  1972년   디자인 :  Dennis  Ritchie   개발 :  Bell  Labs     최근 버전 :  C11(2011년 10월, ANSI  C)   다양한 컴퓨터 기종에서 별도의 이식 없이 컴파일 후 실행이 가능하며 실행속도가 매우 빠르고 효율적이 다. 또한 하드웨어 접근이 가능하여 제어 프로그램 개발에도 효과적이다. 하지만 배우기가 비교적 어렵고 보고서 포맷을 많이 요구하는 응용분야에 적합하지 않다.   주식회사
  • 139.  :
  • 141.  Co.
  • 142.  Ltd,
  • 143.  All
  • 146.  
  • 147. C++   C++   •  대규모 응용프로그램을 만드는데 있어 최적의 객체지향 프로그래밍 언어로 간주 되고 있는 언어로서 C언어의 확장판   •  C 언어에 객체지향 프로그래밍을 위한 여러가지 기능을 덧붙여 강력   •  Mulk-­‐paradigm,  Procedural,  Funckonal,  Object-­‐oriented,  generic   •  컴파일 언어   History   •  최초 개발 :  1983년   •  디자인 :  Bjarne  Stroustrup   •  개발 :  ISO표준위원회에 의해 표준라이브러리가 만들어지고 이를 응용해 다양한 벤더에 서 C++ 컴파일러 등을 개발/배포함(예를 들어 Visual  C++)     •  최근 버전 :  ISO/IEC  14882:2011(2011년)   •  캡슐화, 정보은닉, 상속, 다형성 등 객체지향언어로서의 유용한 특징을 많이 보유하고 있 어 많이 사용되지만 익히기는데 많은 노력이 필요하다는 단점을 가지고 있음   주식회사
  • 150.  :
  • 152.  Co.
  • 153.  Ltd,
  • 154.  All
  • 157.  
  • 158. C#   C#   •  C++의 컴퓨팅 파워와 비주얼 베이직의 프로그래밍 편의성을 결합하기 위한 목적 으로 개발된 객체지향 프로그래밍 언어   •  C++에 기반을 두고 있으며 마이크로소프트의 .Net  플랫폼과 작업하도록 설계됨   •  Mulk-­‐paradigm,  Structured,  Imperakve,  Funckonal,  Object-­‐oriented,   Generic,  Event-­‐driven,  Refleckve,  Concurrent   •  컴파일 언어   History   •  •  •  •  •  최초 개발 :  2000년   디자인 :  Microsov   개발 :  Microsov   최근 버전 :  5.0  (2012년 8월 15일)   Refleckon  Programming 등의 도입으로 생산성을 높일 수 있는 개발언어로 평가 받고 있 으며 마이크로소프트는 C#도 하나의 표준으로써 자리 잡도록 하기 위해 ECMA와 협력하 고 있음   주식회사
  • 161.  :
  • 163.  Co.
  • 164.  Ltd,
  • 165.  All
  • 168.  
  • 169. Java   Java   •  C++와 유사하지만 고급 프로그래밍 언어들이 가진 객체지향프로그래밍의 특징적 요소 중 모호하고 난해한 요소 등을 삭제함   •  한대의 컴퓨터 또는 분산환경에서도 실행되는 프로그램을 만들 수 있도록 설계   •  Java  Virtual  Machine이라는 실행환경 상에서 실행   •  Mulk-­‐paradigm,  Structured,  Imperakve,  Object-­‐oriented,  Generic,  Refleckve   •  인터프리터 언어의 특징을 가진 컴파일 언어   History   최초 개발 :  1995년   디자인 :  James  Gosling    Sun  Microsystems   개발 :  Oracle  Corporakon   최근 버전 :  Java  Standard  Edikon  7  Update  45(1.7.45)  (2013년 10월 15일)   C++과 더불어 전세계적으로 가장 많이 사용되는 언어로 프로그래밍 언어 뿐 아니라 JVM을 기반으로 하는 플랫폼을 제공하여 Embeded  System,  가전, 모바일 등의 모듈로도 활발하게 사용되고 있음   •  개발자인 제임스 고슬링은 하루에 자바 커피를 10잔 이상 마시는 예찬론자이기도 해서 자바라는 이 름을 커피 원산지인 인도네시아 섬의 이름에서 따온 것으로 유명함   •  •  •  •  •  주식회사
  • 172.  :
  • 174.  Co.
  • 175.  Ltd,
  • 176.  All
  • 179.  
  • 180. JavaScript   JavaScript   •  자바를 응용하여 사용하기 쉽게 만든 스크립트 언어   •  표준 HTML 문서에 사용되어 인터렉티브한 웹페이지를 만들 수 있도록 함   •  최근의 웹브라우저는 모두 자바스크립트를 지원하기 때문에 웹페이지 개발 언어 로서 많이 사용됨   •  Mulk-­‐paradigm,  Scripkng,  Object-­‐oriented,  Imperakve,  Funckonal   •  스크립팅 언어(주로 클라이언트 사이드)   History   최초 개발 :  1995년   디자인 :  Brendan  Eich(모질라 재단의 이사회 멤버이자 모질라 회사의 CTO)   개발 :  Mozilla  Foundakon   최근 버전 :  1.8.5  (2011년 3월 22일)   넷스케이프와 더불어 웹브라우저의 새로운 세상을 연 언어. 서버 사이드 자바스크립트도 있으나 현재는 웹 브라우저에서 실행되는 클라이언트 사이트 자바 스크립트가 가장 많이 사용됨   •  자바 스크립트의 사용성 제고, 확장성을 위해 다양한 모듈(jQuery,  JSON  등)이 개발되어 활용되고 있음   •  •  •  •  •  주식회사
  • 183.  :
  • 185.  Co.
  • 186.  Ltd,
  • 187.  All
  • 190.  
  • 191. ActionScript     AckonScript   •  액션과 스크립트라는 단어를 합성하여 만든 이름에서와 같이 플래시 오브젝트에 인터렉티브 기능을 넣기 위해 만든 스크립트 언어   •  자바스크립트의 표준버저인 ECMAScript를 기반으로 만듦   •  Mulk-­‐paradigm,  Scripkng,  Object-­‐oriented,  Imperakve,  Funckonal   •  스크립팅 언어   History   최초 개발 :  1998년   디자인 :  Gary  Grossman   개발 :  Macromedia  -­‐  Adobe  Systems   최근 버전 :  3.0  (2006년 6월 27일)   플래시가 많이 사용될 때는 굉장히 각광을 받은 언어였으나 HTML5의 출현 및 대중화와 더불어 점 점 그 인기가 줄어들고 있는 추세임.   •  Adobe는 HTML5를 지원하고 Java 기반으로 RIA  WEB  애플리케이션을 개발할 수 있는 ColdFusion 에 더 힘을 쏟고 있는 상황임   •  •  •  •  •  주식회사
  • 194.  :
  • 196.  Co.
  • 197.  Ltd,
  • 198.  All
  • 201.  
  • 202. PHP   PHP   •  HTML에 포함되어 동작하는 스크립트 언어로 JSP 등과 마찬가지로 서버 측에서 실행되는 서버 사이드 스크립트 언어임   •  Imperakve,  Funckonal,  Object-­‐oriented,  Procedural,  Refleckve   •  스크립팅 언어  –  서버 사이드   History   최초 개발 :  1995년   디자인 :  Rasmus  Lerdorf   개발 :  The  PHP  Group   최근 버전 :  5.5.5  (2013년 10월 17일)   쉬운 사용 방법, 빠른 속도,  MySQL에의 최적화 등으로 인해 웹 기반 애플리케이션 구축에 가장 많 이 사용하는 프로그래밍 언어   •  오픈소스로 진행되는 웹 기반 프로그램은 대부분 PHP로 작성되어 있다고 해도 과언이 아님   •  •  •  •  •  주식회사
  • 205.  :
  • 207.  Co.
  • 208.  Ltd,
  • 209.  All
  • 212.  
  • 213. ETC.  Server  Side  Script   ASP   •  동적인 대화형 웹 서버 응용프로그램을 작성하고 실행하기 위해 사용할 수 있는 마이크로소프트의 서버 측 스크립트 언어   •  .Net 기술의 발표와 웹 기반 애플리케이션의 ASP.Net 프레임워크 적용이 구체화 되면서 더이상 ASP는 버전업이 되지 않음   JSP   •  동적인 대화형 웹 서버 응용프로그램을 작성하고 실행하기 위해 사용할 수 있는   Java의 서버 측 스크립트 언어   [참고]   ASP.Net은 프로그래밍 언어가 아니라 웹 애플리케이션을 실행할 수 있는 플랫폼임.  ASP.Net 은 웹 애플리케이션을 실행하기 위한 환경을 말하고 실제 웹 애플리케이션의 개발은 C#,   Visual  Basic.Net 등으로 하게 되어 더이상 ASP가 필요없게 됨   주식회사
  • 216.  :
  • 218.  Co.
  • 219.  Ltd,
  • 220.  All
  • 223.  
  • 224. 주식회사 비즈머스   교육자료 (BEA-­‐CM-­‐101)     •  SW  구현 Level  1   •  프로그래밍 부문 001   ì  작성일 :  2013년 11월 13일   ì  최종수정일 :  2013년 11월 13일   ì  작성자 : 박동혁 김현준 정유진   ì  본 자료는 “주식회사 비즈머스” 직원 교육용 자료로   허가없이 무단 사용을 금합니다.