SlideShare a Scribd company logo
PHP
제 1차시
한국디지털미디어고등학교
13기 웹 프로그래밍과 정욱재
프로그래밍, 웹 서버, 그리고 PHP
프로그래밍
프로그래밍
프로그래밍(Programming) 영어 그대로 프로그램을 만드는 것을 뜻한다.
프로그램은 대개 프로그래밍 언어를 통해 만들게 되며, 프로그래밍 언어가 컴퓨터가 이해할 수 있는
언어로 바뀌게 된다.
Tip! 프로그래밍 언어를 컴퓨터가 이해할 수 있는 언어로 바꾸는 것을 컴파일러라고 한다.
PROGRAM!컴파일러
프로그래밍
프로그래밍 언어는 이러한 흐름을 타고 왔다.
Assembly, Lisp, Cobol 같은 저급 언어
C/C++ 같은 상황에 따라 저급, 고급으로 분류되는 언어
Python/Ruby 같은 고급언어, JAVA
스크립트 언어:실행시마다 인티프리터가 해석해서 실행시켜주는 언어
(성능에서 조금씩 자유로워지면서 대체로 스크립트 언어가 대세를 이룸)
(성능이 중요한 시기라 매우 빠른 성능을 보장함)
(과도기)
프로그래밍
지금 많이 쓰이는 프로그래밍 언어는 이렇다.
Assembly, Lisp, Cobol 같은 저급 언어
C/C++ 같은 상황에 따라 저급, 고급으로 분류되는 언어
Python/Ruby 같은 고급언어, JAVA
프로그래밍
현재는 스크립트 프로그래밍 언어의 홍수!
프로그래밍은 할 줄 알아야겠는데 뭘 해야하나??
당연히 쉽고 편한 스크립트 언어지!
쉽고 많이 쓰이고 자료도 많은 php!
웹 서버
웹 서버
인터넷 상에서 웹 브라우저 클라이언트로부터 HTTP 요청을 받아들이고, HTML 문서와 같은
웹 페이지들을 보내주는 역할을 하는 프로그램
우리가 접하는 웹 사이트들은 전부 웹 서버에 의해 돌아가는 서버이다.
* 웹 서버도 우리가 전부 짜야한다! 누가 대신 해주는 것이 아니다!
WEB Server
index.html
요청
index.html
응답
웹 서버
웹 서버도 이러한 흐름을 타고 왔다.
정적 html 파일 서버
asp, jsp 같은 무겁긴 하지만 구조가 잘 짜여있는 서버/php 서버
node.js, flask 같은 간단한 스크립트 언어로 이루어진 서버
웹 서버
어떤 걸 배워야 할까?
난 돈이 많다.
NO
어려워도 좋은 기능이 좋다.
윈도우
NO YES
YES
레드햇 계열데비안 계열
웹 서버
강의자가 돈도 없고 어려운거도 안좋아하니 데비안 계열로 갈께요.
PHP
PHP
1995 년 라스무스 러도프(Rasmus Lerdorf)가 처음 만들었고, 계속해서 발전하며 현재 7.0 버전이
나오는 중인것으로 안다.
보통 PHP 처리 기능이 있는 웹 서버에서 해당 코드를 HTML 코드로 변환하여 웹 서버를 호출한 유저에게
전달해준다.
* 최근에는 php 기능을 웹 서버에서 실행시키기보다 php-fpm 으로
분리하여 실행하며, 특별한 경우에는 자체 인티프리터로도 실행이
가능하다.
* 인티프리터 : 한줄한줄 써가며 결과를 확인하는 명령어 해석기 정도
PHP
PHP 는 꾸준히 욕을 먹으면서도 계속해서 사용되고 있는데
여러가지 장단점이 많다.
일단 본인은
“프로그래머는 단지 그 용도를 잘 따져서
자신이 원하는 결과물을 뽑는 용도로
프로그래밍 언어를 사용해야 한다.”
라고 생각하기 때문에
PHP 도 충분히 좋은 언어라 판단한다.
그럼 그 장단점들을 살펴보자
PHP
장점
관련 자료가 많다.
당연히 포럼도 많다.
당연히 오류를 만났을 때 쉽게 고칠 확률이 높다.
당연히 자료가 많으니 쉽게 익힐 수 있다.
직관적인 언어 형태를 제공한다.
쓰는 사람이 많다.
PHP
단점
너무 많은 라이브러리들이 결합하여 이름을 정하는 규칙이 무너진 지 오래다.
보안적인 이유로 욕을 많이 먹는다.
더러운 코드를 작성하기 쉽다.
처음에는 직관적인 언어 형태를 제공했다.
처음에는 간결했었다.
PHP
하지만 이럼에도 많이 쓰이는 이유는 결정적으로 쉽고 자료가 많은 이유일 것이다.
근데 보안적으로 문제가 있다고?
보안 이슈는 우리가 걱정하지 않아도
이미 많은 사람들이 걱정해서
이런 부분은 이렇게 하라고 잘 남겨놓은 것이 많다.
결정적으로 완벽한 언어는 없다.
자신이 어떻게 쓰고, 어떻게 활용하는지 나름이다.

More Related Content

What's hot

티켓몬스터를 위한 PHP 개발 방법
티켓몬스터를 위한 PHP 개발 방법티켓몬스터를 위한 PHP 개발 방법
티켓몬스터를 위한 PHP 개발 방법
Young D
 
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDTPHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
Young D
 
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
devCAT Studio, NEXON
 
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
devCAT Studio, NEXON
 
리눅스 데스크톱의 한국어 입력 개요
리눅스 데스크톱의 한국어 입력 개요리눅스 데스크톱의 한국어 입력 개요
리눅스 데스크톱의 한국어 입력 개요
Changwoo Ryu
 
오픈소스 번역 기여하기 v3
오픈소스 번역 기여하기 v3오픈소스 번역 기여하기 v3
오픈소스 번역 기여하기 v3
Changwoo Ryu
 
소프트웨어 중심 시대를 준비하자
소프트웨어 중심 시대를 준비하자소프트웨어 중심 시대를 준비하자
소프트웨어 중심 시대를 준비하자
Deogtae Kim
 
오픈소스 번역 기여하기 v2
오픈소스 번역 기여하기 v2오픈소스 번역 기여하기 v2
오픈소스 번역 기여하기 v2
Changwoo Ryu
 
Study 4
Study 4Study 4
Study 4
ssuser4913c5
 
이제 막 웹개발자 되고싶은 분들께
이제 막 웹개발자 되고싶은 분들께이제 막 웹개발자 되고싶은 분들께
이제 막 웹개발자 되고싶은 분들께
지수 윤
 
2014.04.24.nrise 개발환경
2014.04.24.nrise 개발환경2014.04.24.nrise 개발환경
2014.04.24.nrise 개발환경Moon Soo Kim
 
[114]파파고 서비스 2년의 경험
[114]파파고 서비스 2년의 경험[114]파파고 서비스 2년의 경험
[114]파파고 서비스 2년의 경험
NAVER D2
 
게임서버프로그래밍 #0 - TCP 및 이벤트 통지모델
게임서버프로그래밍 #0 - TCP 및 이벤트 통지모델게임서버프로그래밍 #0 - TCP 및 이벤트 통지모델
게임서버프로그래밍 #0 - TCP 및 이벤트 통지모델
Seungmo Koo
 
게임서버프로그래밍 #3 - 메모리 및 오브젝트 풀링
게임서버프로그래밍 #3 - 메모리 및 오브젝트 풀링게임서버프로그래밍 #3 - 메모리 및 오브젝트 풀링
게임서버프로그래밍 #3 - 메모리 및 오브젝트 풀링
Seungmo Koo
 
잭블랙이블랙잭을한다 - 수업용 발표
잭블랙이블랙잭을한다 - 수업용 발표잭블랙이블랙잭을한다 - 수업용 발표
잭블랙이블랙잭을한다 - 수업용 발표
Seokmin No
 
Codility란
Codility란Codility란
Codility란
덕원 김
 
NRISE 개발스택
NRISE 개발스택NRISE 개발스택
NRISE 개발스택
Moon Soo Kim
 
이승재, 실버바인 서버엔진 2 설계 리뷰, NDC2018
이승재, 실버바인 서버엔진 2 설계 리뷰, NDC2018이승재, 실버바인 서버엔진 2 설계 리뷰, NDC2018
이승재, 실버바인 서버엔진 2 설계 리뷰, NDC2018
devCAT Studio, NEXON
 
Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기
nexusz99
 

What's hot (20)

티켓몬스터를 위한 PHP 개발 방법
티켓몬스터를 위한 PHP 개발 방법티켓몬스터를 위한 PHP 개발 방법
티켓몬스터를 위한 PHP 개발 방법
 
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDTPHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
PHP 개발 생산성을 높여주는 통합 개발 환경 - 이클립스 PDT
 
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
이승재, 강성훈, 내가 만든 언어의 개발환경을 Visual Studio Code로 빠르고 쉽게 구축하기 #1, NDC2017
 
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
이승재, 박경재, NDC Replay 제작기: static website, static backoffice, NDC2017
 
01. ot 개별
01. ot   개별01. ot   개별
01. ot 개별
 
리눅스 데스크톱의 한국어 입력 개요
리눅스 데스크톱의 한국어 입력 개요리눅스 데스크톱의 한국어 입력 개요
리눅스 데스크톱의 한국어 입력 개요
 
오픈소스 번역 기여하기 v3
오픈소스 번역 기여하기 v3오픈소스 번역 기여하기 v3
오픈소스 번역 기여하기 v3
 
소프트웨어 중심 시대를 준비하자
소프트웨어 중심 시대를 준비하자소프트웨어 중심 시대를 준비하자
소프트웨어 중심 시대를 준비하자
 
오픈소스 번역 기여하기 v2
오픈소스 번역 기여하기 v2오픈소스 번역 기여하기 v2
오픈소스 번역 기여하기 v2
 
Study 4
Study 4Study 4
Study 4
 
이제 막 웹개발자 되고싶은 분들께
이제 막 웹개발자 되고싶은 분들께이제 막 웹개발자 되고싶은 분들께
이제 막 웹개발자 되고싶은 분들께
 
2014.04.24.nrise 개발환경
2014.04.24.nrise 개발환경2014.04.24.nrise 개발환경
2014.04.24.nrise 개발환경
 
[114]파파고 서비스 2년의 경험
[114]파파고 서비스 2년의 경험[114]파파고 서비스 2년의 경험
[114]파파고 서비스 2년의 경험
 
게임서버프로그래밍 #0 - TCP 및 이벤트 통지모델
게임서버프로그래밍 #0 - TCP 및 이벤트 통지모델게임서버프로그래밍 #0 - TCP 및 이벤트 통지모델
게임서버프로그래밍 #0 - TCP 및 이벤트 통지모델
 
게임서버프로그래밍 #3 - 메모리 및 오브젝트 풀링
게임서버프로그래밍 #3 - 메모리 및 오브젝트 풀링게임서버프로그래밍 #3 - 메모리 및 오브젝트 풀링
게임서버프로그래밍 #3 - 메모리 및 오브젝트 풀링
 
잭블랙이블랙잭을한다 - 수업용 발표
잭블랙이블랙잭을한다 - 수업용 발표잭블랙이블랙잭을한다 - 수업용 발표
잭블랙이블랙잭을한다 - 수업용 발표
 
Codility란
Codility란Codility란
Codility란
 
NRISE 개발스택
NRISE 개발스택NRISE 개발스택
NRISE 개발스택
 
이승재, 실버바인 서버엔진 2 설계 리뷰, NDC2018
이승재, 실버바인 서버엔진 2 설계 리뷰, NDC2018이승재, 실버바인 서버엔진 2 설계 리뷰, NDC2018
이승재, 실버바인 서버엔진 2 설계 리뷰, NDC2018
 
Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기Github 으로 학교 팀 프로젝트 하기
Github 으로 학교 팀 프로젝트 하기
 

Viewers also liked

XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XpressEngine
 
PHP를 이용한 간단한 방명록 만들기
PHP를 이용한 간단한 방명록 만들기PHP를 이용한 간단한 방명록 만들기
PHP를 이용한 간단한 방명록 만들기
Yoonwhan Lee
 
trello 사용법 및 좋은 팀대표란?
trello 사용법 및 좋은 팀대표란?trello 사용법 및 좋은 팀대표란?
trello 사용법 및 좋은 팀대표란?
용현 정
 
MySQL과 PHP
MySQL과 PHPMySQL과 PHP
MySQL과 PHP
Yoonwhan Lee
 
Nodejs를 이용한 개발
Nodejs를 이용한 개발Nodejs를 이용한 개발
Nodejs를 이용한 개발
WebFrameworks
 
php 시작하기
php 시작하기php 시작하기
php 시작하기
Yoonwhan Lee
 
읽기 좋은 코드가 좋은코드다
읽기 좋은 코드가 좋은코드다읽기 좋은 코드가 좋은코드다
읽기 좋은 코드가 좋은코드다
wonmin lee
 
PHP 함수와 제어구조
PHP 함수와 제어구조PHP 함수와 제어구조
PHP 함수와 제어구조
Yoonwhan Lee
 
깃헙으로 코드리뷰 하기
깃헙으로 코드리뷰 하기깃헙으로 코드리뷰 하기
깃헙으로 코드리뷰 하기
Ohgyun Ahn
 
Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스
WebFrameworks
 
Trello
TrelloTrello
Trello
용환 전
 
MySQL 기초
MySQL 기초MySQL 기초
MySQL 기초
Yoonwhan Lee
 
소스리딩워크샵 - NHN NEXT
소스리딩워크샵 - NHN NEXT소스리딩워크샵 - NHN NEXT
소스리딩워크샵 - NHN NEXTMinsuk Lee
 
임영기님 - 코드 리뷰 시스템 도입하기
임영기님 - 코드 리뷰 시스템 도입하기임영기님 - 코드 리뷰 시스템 도입하기
임영기님 - 코드 리뷰 시스템 도입하기OnGameServer
 
Github 사용법
Github 사용법Github 사용법
Github 사용법
jong seok Kim
 
[123] electron 김성훈
[123] electron 김성훈[123] electron 김성훈
[123] electron 김성훈
NAVER D2
 
코드 리뷰 시스템 소개
코드 리뷰 시스템 소개코드 리뷰 시스템 소개
코드 리뷰 시스템 소개Young-Ho Cha
 
깨끗한 코드 (클린 코드, Clean Code)
깨끗한 코드 (클린 코드, Clean Code)깨끗한 코드 (클린 코드, Clean Code)
깨끗한 코드 (클린 코드, Clean Code)
Jay Park
 
우리가 몰랐던 크롬 개발자 도구
우리가 몰랐던 크롬 개발자 도구우리가 몰랐던 크롬 개발자 도구
우리가 몰랐던 크롬 개발자 도구
Jae Sung Park
 

Viewers also liked (20)

XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
 
PHP를 이용한 간단한 방명록 만들기
PHP를 이용한 간단한 방명록 만들기PHP를 이용한 간단한 방명록 만들기
PHP를 이용한 간단한 방명록 만들기
 
trello 사용법 및 좋은 팀대표란?
trello 사용법 및 좋은 팀대표란?trello 사용법 및 좋은 팀대표란?
trello 사용법 및 좋은 팀대표란?
 
MySQL과 PHP
MySQL과 PHPMySQL과 PHP
MySQL과 PHP
 
Nodejs를 이용한 개발
Nodejs를 이용한 개발Nodejs를 이용한 개발
Nodejs를 이용한 개발
 
php 시작하기
php 시작하기php 시작하기
php 시작하기
 
PHP 사용하기
PHP 사용하기PHP 사용하기
PHP 사용하기
 
읽기 좋은 코드가 좋은코드다
읽기 좋은 코드가 좋은코드다읽기 좋은 코드가 좋은코드다
읽기 좋은 코드가 좋은코드다
 
PHP 함수와 제어구조
PHP 함수와 제어구조PHP 함수와 제어구조
PHP 함수와 제어구조
 
깃헙으로 코드리뷰 하기
깃헙으로 코드리뷰 하기깃헙으로 코드리뷰 하기
깃헙으로 코드리뷰 하기
 
Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스
 
Trello
TrelloTrello
Trello
 
MySQL 기초
MySQL 기초MySQL 기초
MySQL 기초
 
소스리딩워크샵 - NHN NEXT
소스리딩워크샵 - NHN NEXT소스리딩워크샵 - NHN NEXT
소스리딩워크샵 - NHN NEXT
 
임영기님 - 코드 리뷰 시스템 도입하기
임영기님 - 코드 리뷰 시스템 도입하기임영기님 - 코드 리뷰 시스템 도입하기
임영기님 - 코드 리뷰 시스템 도입하기
 
Github 사용법
Github 사용법Github 사용법
Github 사용법
 
[123] electron 김성훈
[123] electron 김성훈[123] electron 김성훈
[123] electron 김성훈
 
코드 리뷰 시스템 소개
코드 리뷰 시스템 소개코드 리뷰 시스템 소개
코드 리뷰 시스템 소개
 
깨끗한 코드 (클린 코드, Clean Code)
깨끗한 코드 (클린 코드, Clean Code)깨끗한 코드 (클린 코드, Clean Code)
깨끗한 코드 (클린 코드, Clean Code)
 
우리가 몰랐던 크롬 개발자 도구
우리가 몰랐던 크롬 개발자 도구우리가 몰랐던 크롬 개발자 도구
우리가 몰랐던 크롬 개발자 도구
 

Similar to 현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)

프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
Bizmerce Corp
 
제 2주차. PHP 기초
제 2주차. PHP 기초제 2주차. PHP 기초
제 2주차. PHP 기초
Yoonwhan Lee
 
파이썬 튜토리얼 (Python tutorial)
파이썬 튜토리얼 (Python tutorial)파이썬 튜토리얼 (Python tutorial)
파이썬 튜토리얼 (Python tutorial)
민지 김
 
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
YunWon Jeong
 
​『함수형 반응형 프로그래밍』 맛보기
​『함수형 반응형 프로그래밍』 맛보기​『함수형 반응형 프로그래밍』 맛보기
​『함수형 반응형 프로그래밍』 맛보기
복연 이
 
개발자들 뭐 하는 건가요?
개발자들 뭐 하는 건가요?개발자들 뭐 하는 건가요?
개발자들 뭐 하는 건가요?
Skyler Shin
 
[125]react로개발자2명이플랫폼4개를서비스하는이야기 심상민
[125]react로개발자2명이플랫폼4개를서비스하는이야기 심상민[125]react로개발자2명이플랫폼4개를서비스하는이야기 심상민
[125]react로개발자2명이플랫폼4개를서비스하는이야기 심상민
NAVER D2
 
3주차 language
3주차 language3주차 language
3주차 language
준혁 이
 
build a linux webhosting server
build a linux webhosting serverbuild a linux webhosting server
build a linux webhosting server
정현 윤
 
PHPStorm - tool for php
PHPStorm - tool for phpPHPStorm - tool for php
PHPStorm - tool for php
Sungbum Hong
 
왜 Swift를 해야할까요?
왜 Swift를 해야할까요?왜 Swift를 해야할까요?
왜 Swift를 해야할까요?
선협 이
 
My words
My wordsMy words
My words
Kwnaghwan Cho
 
swig를 이용한 C++ 랩핑
swig를 이용한 C++ 랩핑swig를 이용한 C++ 랩핑
swig를 이용한 C++ 랩핑
NAVER D2
 
About Epub
About EpubAbout Epub
About Epub
Dahyun Kim
 
[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)
[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)
[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)
Sang Don Kim
 
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
NAVER Engineering
 
델파이 @22
델파이 @22델파이 @22
델파이 @22
Devgear
 
나의 오픈소스 사용기
나의 오픈소스 사용기나의 오픈소스 사용기
나의 오픈소스 사용기
주호 강
 
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
YEONG-CHEON YOU
 
이정환_구름에듀_특강.pdf
이정환_구름에듀_특강.pdf이정환_구름에듀_특강.pdf
이정환_구름에듀_특강.pdf
이정환
 

Similar to 현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트) (20)

프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
 
제 2주차. PHP 기초
제 2주차. PHP 기초제 2주차. PHP 기초
제 2주차. PHP 기초
 
파이썬 튜토리얼 (Python tutorial)
파이썬 튜토리얼 (Python tutorial)파이썬 튜토리얼 (Python tutorial)
파이썬 튜토리얼 (Python tutorial)
 
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
알파희 - PyPy/RPython으로 20배 빨라지는 아희 JIT 인터프리터
 
​『함수형 반응형 프로그래밍』 맛보기
​『함수형 반응형 프로그래밍』 맛보기​『함수형 반응형 프로그래밍』 맛보기
​『함수형 반응형 프로그래밍』 맛보기
 
개발자들 뭐 하는 건가요?
개발자들 뭐 하는 건가요?개발자들 뭐 하는 건가요?
개발자들 뭐 하는 건가요?
 
[125]react로개발자2명이플랫폼4개를서비스하는이야기 심상민
[125]react로개발자2명이플랫폼4개를서비스하는이야기 심상민[125]react로개발자2명이플랫폼4개를서비스하는이야기 심상민
[125]react로개발자2명이플랫폼4개를서비스하는이야기 심상민
 
3주차 language
3주차 language3주차 language
3주차 language
 
build a linux webhosting server
build a linux webhosting serverbuild a linux webhosting server
build a linux webhosting server
 
PHPStorm - tool for php
PHPStorm - tool for phpPHPStorm - tool for php
PHPStorm - tool for php
 
왜 Swift를 해야할까요?
왜 Swift를 해야할까요?왜 Swift를 해야할까요?
왜 Swift를 해야할까요?
 
My words
My wordsMy words
My words
 
swig를 이용한 C++ 랩핑
swig를 이용한 C++ 랩핑swig를 이용한 C++ 랩핑
swig를 이용한 C++ 랩핑
 
About Epub
About EpubAbout Epub
About Epub
 
[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)
[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)
[Td 2015]프로그래밍 언어의 f1머신 c++을 타고 windows 10 uwp 앱 개발의 세계로~(유영천)
 
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
200819 NAVER TECH CONCERT 07_신입 iOS 개발자 개발업무 적응기
 
델파이 @22
델파이 @22델파이 @22
델파이 @22
 
나의 오픈소스 사용기
나의 오픈소스 사용기나의 오픈소스 사용기
나의 오픈소스 사용기
 
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
프로그래밍 언어의 F1머신 C++을 타고 Windows 10 UWP 앱 개발의 세계로~
 
이정환_구름에듀_특강.pdf
이정환_구름에듀_특강.pdf이정환_구름에듀_특강.pdf
이정환_구름에듀_특강.pdf
 

More from Ukjae Jeong

CNN
CNNCNN
현대고등학교 PHP 강의 - 7,8차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 7,8차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 7,8차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 7,8차시 (설리번 프로젝트)
Ukjae Jeong
 
현대고등학교 PHP 강의 - 6차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 6차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 6차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 6차시 (설리번 프로젝트)
Ukjae Jeong
 
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
Ukjae Jeong
 
현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)
Ukjae Jeong
 
현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)
Ukjae Jeong
 
현대고등학교 PHP 강의 - 2차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 2차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 2차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 2차시 (설리번 프로젝트)
Ukjae Jeong
 
현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)
현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)
현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)
Ukjae Jeong
 

More from Ukjae Jeong (8)

CNN
CNNCNN
CNN
 
현대고등학교 PHP 강의 - 7,8차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 7,8차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 7,8차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 7,8차시 (설리번 프로젝트)
 
현대고등학교 PHP 강의 - 6차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 6차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 6차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 6차시 (설리번 프로젝트)
 
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
 
현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)
 
현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)
 
현대고등학교 PHP 강의 - 2차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 2차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 2차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 2차시 (설리번 프로젝트)
 
현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)
현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)
현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)
 

현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)

  • 1. PHP 제 1차시 한국디지털미디어고등학교 13기 웹 프로그래밍과 정욱재 프로그래밍, 웹 서버, 그리고 PHP
  • 3. 프로그래밍 프로그래밍(Programming) 영어 그대로 프로그램을 만드는 것을 뜻한다. 프로그램은 대개 프로그래밍 언어를 통해 만들게 되며, 프로그래밍 언어가 컴퓨터가 이해할 수 있는 언어로 바뀌게 된다. Tip! 프로그래밍 언어를 컴퓨터가 이해할 수 있는 언어로 바꾸는 것을 컴파일러라고 한다. PROGRAM!컴파일러
  • 4. 프로그래밍 프로그래밍 언어는 이러한 흐름을 타고 왔다. Assembly, Lisp, Cobol 같은 저급 언어 C/C++ 같은 상황에 따라 저급, 고급으로 분류되는 언어 Python/Ruby 같은 고급언어, JAVA 스크립트 언어:실행시마다 인티프리터가 해석해서 실행시켜주는 언어 (성능에서 조금씩 자유로워지면서 대체로 스크립트 언어가 대세를 이룸) (성능이 중요한 시기라 매우 빠른 성능을 보장함) (과도기)
  • 5. 프로그래밍 지금 많이 쓰이는 프로그래밍 언어는 이렇다. Assembly, Lisp, Cobol 같은 저급 언어 C/C++ 같은 상황에 따라 저급, 고급으로 분류되는 언어 Python/Ruby 같은 고급언어, JAVA
  • 6. 프로그래밍 현재는 스크립트 프로그래밍 언어의 홍수! 프로그래밍은 할 줄 알아야겠는데 뭘 해야하나?? 당연히 쉽고 편한 스크립트 언어지! 쉽고 많이 쓰이고 자료도 많은 php!
  • 8. 웹 서버 인터넷 상에서 웹 브라우저 클라이언트로부터 HTTP 요청을 받아들이고, HTML 문서와 같은 웹 페이지들을 보내주는 역할을 하는 프로그램 우리가 접하는 웹 사이트들은 전부 웹 서버에 의해 돌아가는 서버이다. * 웹 서버도 우리가 전부 짜야한다! 누가 대신 해주는 것이 아니다! WEB Server index.html 요청 index.html 응답
  • 9. 웹 서버 웹 서버도 이러한 흐름을 타고 왔다. 정적 html 파일 서버 asp, jsp 같은 무겁긴 하지만 구조가 잘 짜여있는 서버/php 서버 node.js, flask 같은 간단한 스크립트 언어로 이루어진 서버
  • 10. 웹 서버 어떤 걸 배워야 할까? 난 돈이 많다. NO 어려워도 좋은 기능이 좋다. 윈도우 NO YES YES 레드햇 계열데비안 계열
  • 11. 웹 서버 강의자가 돈도 없고 어려운거도 안좋아하니 데비안 계열로 갈께요.
  • 12. PHP
  • 13. PHP 1995 년 라스무스 러도프(Rasmus Lerdorf)가 처음 만들었고, 계속해서 발전하며 현재 7.0 버전이 나오는 중인것으로 안다. 보통 PHP 처리 기능이 있는 웹 서버에서 해당 코드를 HTML 코드로 변환하여 웹 서버를 호출한 유저에게 전달해준다. * 최근에는 php 기능을 웹 서버에서 실행시키기보다 php-fpm 으로 분리하여 실행하며, 특별한 경우에는 자체 인티프리터로도 실행이 가능하다. * 인티프리터 : 한줄한줄 써가며 결과를 확인하는 명령어 해석기 정도
  • 14. PHP PHP 는 꾸준히 욕을 먹으면서도 계속해서 사용되고 있는데 여러가지 장단점이 많다. 일단 본인은 “프로그래머는 단지 그 용도를 잘 따져서 자신이 원하는 결과물을 뽑는 용도로 프로그래밍 언어를 사용해야 한다.” 라고 생각하기 때문에 PHP 도 충분히 좋은 언어라 판단한다. 그럼 그 장단점들을 살펴보자
  • 15. PHP 장점 관련 자료가 많다. 당연히 포럼도 많다. 당연히 오류를 만났을 때 쉽게 고칠 확률이 높다. 당연히 자료가 많으니 쉽게 익힐 수 있다. 직관적인 언어 형태를 제공한다. 쓰는 사람이 많다.
  • 16. PHP 단점 너무 많은 라이브러리들이 결합하여 이름을 정하는 규칙이 무너진 지 오래다. 보안적인 이유로 욕을 많이 먹는다. 더러운 코드를 작성하기 쉽다. 처음에는 직관적인 언어 형태를 제공했다. 처음에는 간결했었다.
  • 17. PHP 하지만 이럼에도 많이 쓰이는 이유는 결정적으로 쉽고 자료가 많은 이유일 것이다. 근데 보안적으로 문제가 있다고? 보안 이슈는 우리가 걱정하지 않아도 이미 많은 사람들이 걱정해서 이런 부분은 이렇게 하라고 잘 남겨놓은 것이 많다. 결정적으로 완벽한 언어는 없다. 자신이 어떻게 쓰고, 어떻게 활용하는지 나름이다.