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

PPTX
[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드
Sanghun Yun
 
PDF
문돌이가 가르치는 서버사이드 PHP
동현 조
 
PDF
『Modern PHP』 - 미리보기
복연 이
 
PDF
초고속 웹사이트 개발을 위한 Codeigniter PHP Framework
Inseok Lee
 
PPTX
NDC 2017 마이크로토크 - Spacemacs: 최고의 에디터는 Emacs도 Vim도 아니다. Emacs와 Vim이다!
영호 김
 
PPTX
(00 OT) 00. ot 전체
dhdbstjr98
 
PDF
112 deview
NAVER D2
 
PDF
PHP로 웹개발을 해보자
Young Min Shin
 
[15.09.17] 인터넷과 웹의 역사 그리고 현재의 트렌드
Sanghun Yun
 
문돌이가 가르치는 서버사이드 PHP
동현 조
 
『Modern PHP』 - 미리보기
복연 이
 
초고속 웹사이트 개발을 위한 Codeigniter PHP Framework
Inseok Lee
 
NDC 2017 마이크로토크 - Spacemacs: 최고의 에디터는 Emacs도 Vim도 아니다. Emacs와 Vim이다!
영호 김
 
(00 OT) 00. ot 전체
dhdbstjr98
 
112 deview
NAVER D2
 
PHP로 웹개발을 해보자
Young Min Shin
 

What's hot (20)

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

Viewers also liked (20)

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

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

PDF
[동그라미재단] 2014ㄱ찾기_에어_PHP란
thecirclefoundation
 
PPTX
제 2주차. PHP 기초
Yoonwhan Lee
 
PDF
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
Bizmerce Corp
 
PDF
현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)
Ukjae Jeong
 
PDF
3주차 language
준혁 이
 
PPTX
PHP와 함께 한 개발 성장기
종훈 박
 
PPTX
처음 시작하는 라라벨
KwangSeob Jeong
 
PPTX
XECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravel
XpressEngine
 
PDF
웹 개발 스터디 01 - PHP 파일 업로드, 다운로드
Yu Yongwoo
 
PDF
웹 개발 스터디 01 - PHP
Yu Yongwoo
 
PDF
About Programmer 2021
Kenu, GwangNam Heo
 
PDF
Web server page_ed10
hungrok
 
PDF
현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)
Ukjae Jeong
 
PDF
화성에서 온 개발자, 금성에서 온 기획자
Yongho Ha
 
PDF
2014 02-17 smart-happiness
Jinho Jung
 
PDF
Modern PHP
Changwan Jun
 
PDF
언어의 변천사를 통해 바라본 Python
Tae Young Lee
 
PDF
현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)
Ukjae Jeong
 
PDF
파이썬 튜토리얼 (Python tutorial)
민지 김
 
PDF
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
Ukjae Jeong
 
[동그라미재단] 2014ㄱ찾기_에어_PHP란
thecirclefoundation
 
제 2주차. PHP 기초
Yoonwhan Lee
 
프로그래밍 언어의 기본 개념과 주요 프로그래밍 언어
Bizmerce Corp
 
현대고등학교 PHP 강의 - 번외편 PHP 설치! (설리번 프로젝트)
Ukjae Jeong
 
3주차 language
준혁 이
 
PHP와 함께 한 개발 성장기
종훈 박
 
처음 시작하는 라라벨
KwangSeob Jeong
 
XECon2015 :: [2-1] 정광섭 - 처음 시작하는 laravel
XpressEngine
 
웹 개발 스터디 01 - PHP 파일 업로드, 다운로드
Yu Yongwoo
 
웹 개발 스터디 01 - PHP
Yu Yongwoo
 
About Programmer 2021
Kenu, GwangNam Heo
 
Web server page_ed10
hungrok
 
현대고등학교 PHP 강의 - 3차시 (설리번 프로젝트)
Ukjae Jeong
 
화성에서 온 개발자, 금성에서 온 기획자
Yongho Ha
 
2014 02-17 smart-happiness
Jinho Jung
 
Modern PHP
Changwan Jun
 
언어의 변천사를 통해 바라본 Python
Tae Young Lee
 
현대고등학교 PHP 강의 - 4차시 (설리번 프로젝트)
Ukjae Jeong
 
파이썬 튜토리얼 (Python tutorial)
민지 김
 
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
Ukjae Jeong
 

현대고등학교 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 하지만 이럼에도 많이 쓰이는 이유는 결정적으로 쉽고 자료가 많은 이유일 것이다. 근데 보안적으로 문제가 있다고? 보안 이슈는 우리가 걱정하지 않아도 이미 많은 사람들이 걱정해서 이런 부분은 이렇게 하라고 잘 남겨놓은 것이 많다. 결정적으로 완벽한 언어는 없다. 자신이 어떻게 쓰고, 어떻게 활용하는지 나름이다.