이미 소장하고 있다면 판매해 보세요.
|
1장. CRUD 연산, 정렬, 필터링, 조인
__문자열 데이터타입 __숫자 데이터타입 __날짜 데이터타입 __students 테이블 ____courses 테이블 ____students_courses 테이블 __데이터 삽입 __데이터 조회 __데이터 정렬 __데이터 필터링 __데이터 갱신 __데이터 삭제 __조인 __요약 2장. MariaDB와 고급 프로그래밍 __기존 테이블 성능 향상 __저장 프로시저 활용 __저장 루틴 활용 __트리거 활용 __요약 3장. PHP 고급 프로그래밍 __PHP 5.4와 PHP 5.5에 포함된 새로운 기능 ____개선된 배열 선언 ____배열 역참조 ____foreach 문에서 list( ) 함수 사용 ____클로저에서 $this 사용 가능 ____인스턴스 생성 시 클래스 멤버 접근 ____제너레이터 ____트레이트 ____예외 처리 시 finally 블록 추가 __단위 테스트 ____PHPUnit 설치 __MariaDB 사용하기 ____PHP - mysqli __PHP ? PDO __요약 4장. 학생 포털 만들기 __애플리케이션의 기본적인 부분 설정하기 ____URL 재작성 설정 __MVC 설정 __학생 추가 __모든 학생 나열하기 __코스 추가 __모든 코스 나열 __학생을 코스에 등록하기 __모든 등록 정보 확인 __요약 5장. 파일 및 디렉토리 처리 __데이터 가져오기 __데이터 내보내기 __로그 기록 __요약 6장. 인증 및 접근 제어 __인증 __접근 제어 __사용자 역할 __요약 7장. 캐싱 __캐싱이란 __데이터베이스 캐싱 __애플리케이션 캐싱 __고급 캐싱 기법 __요약 8장. REST API __REST란 __XML 피드 생성 __JSON 피드 생성 __요약 9장. 보안 __아파치 웹서버 보안 강화 ____서버 정보 숨기기 ____서버 설정 제한 __MariaDB 보안 강화 ____데이터베이스 패스워드 설정 ____접근을 제한하기 위한 뷰 생성 __사용자 생성 및 접근 권한 부여 __PHP 보안 강화 __요약 10장. 성능 최적화 __아파치 웹서버 성능 최적화 ____사용하지 않는 모듈 비활성화 ____압축 사용 ____캐싱 __MariaDB 성능 최적화 ____데이터 조회 시 추천 사항 ____쿼리 실행 과정 이해하기 ____쿼리 최적화와 인덱싱 __PHP 성능 최적화 __CDN, 리버스 프록시, 데이터베이스 복제 __요약 부록 A. PHP, MariaDB, 아파치 설치 부록 B. PHP 기반 객체지향 프로그래밍 |
|
★ 이 책에서 다루는 내용 ★
■ PHP와 MariaDB를 활용한 기본 및 고급 프로그래밍 기술 ■ CRUD 연산, 집합, 필터링, 조인 ■ DDL 연산, 저장 프로시저, 저장 루틴, 트리거 ■ PHP를 활용한 객체지향 프로그래밍 개념 적용 ■ PHP 5.4 및 5.5 최신 기능 숙지 ■ 단위 테스트 사용 ■ PHP를 활용한 파일 처리 및 로깅 ■ 인증 및 접근 제어 목록 관리 ■ 성능 향상 및 보안 강화 ★ 이 책의 대상 독자 ★ 이 책은 다양한 수준의 개발자를 대상으로 한다. 여러 가지 예제와 팁, 추천 사항 등을 담고 있으며, 이를 통해 독자들은 설치 및 설정뿐만 아니라 웹 애플리케이션 배포까지 가능하다. PHP, MariaDB, 아파치 웹서버에 대한 사전지식은 많은 도움이 되지만 꼭 필요한 것은 아니다. ★ 이 책의 구성 ★ 1장, ‘CRUD 연산, 정렬, 필터링, 조인’에서는 생성, 조회, 갱신, 삭제 등 기본적인 SQL 연산에 관해 설명한다. 다음 단계로 분류, 필터링, 테이블 조인도 설명한다. 2장, ‘MariaDB와 고급 프로그래밍’에서는 변경과 드롭(drop) 같은 여러 데이터 조작에 관련된 연산을 소개한다. DML 작업에 대해 이해한 다음, 저장 프로시저, 저장 루틴, 트리거와 같은 고급 개념에 대해 알아본다. 3장, ‘PHP 고급 프로그래밍’에서는 단위 테스트, 예외 처리와 같은 고급 프로그래밍 개념을 소개한다. 또한 PHP 5.4와 5.5에서 새롭게 추가된 기능들을 살펴본다. 4장, ‘학생 포털 만들기’에서는 3장까지 소개된 모든 개념을 활용해 학생 포털을 개발한다. 5장, ‘파일 및 디렉토리 사용법’에서는 학생 포털 애플리케이션을 사용해 파일 불러오기, 파일 올리기, 애플리케이션 로깅과 같은 기능을 소개 및 적용한다. 6장, ‘인증 및 접근 제어’에서는 학생 포털 애플리케이션의 인증 및 출입 관리 기능을 소개 및 적용한다. 7장, ‘캐싱’에서는 캐싱 개념을 소개한다. 이후 캐싱의 여러 타입에 대해 논의하며, 각 캐싱 방법은 어떻게 적용하는지 살펴본다. 8장, ‘REST API’에서는 REST 아키텍처의 개념을 소개한 다음, 학생 포털의 REST API 제작 예제를 다룬다. 9장, ‘보안’에서는 웹 애플리케이션의 보안 강화을 위해 아파치, MariaDB, PHP의 보안을 최적화 방법에 대해 알아본다. 10장, ‘성능 최적화’에서는 애플리케이션 확장성을 위한 여러 성능 최적화 기법들을 소개한다. 부록 1, ‘PHP, MariaDB, 아파치 설치’에서는 PHP, MariaDB, 아파치를 설치하고 설정하는 법에 대해 알아본다. 부록 2, ‘PHP 기반 객체지향 프로그래밍’에서는 PHP 기반 객체지향 프로그래밍OOP 개념을 소개한다. 예를 들어, 상속, 캡슐화, 다형성, 추상 클래스 등 여러 가지 객체지향의 특징에 대해 알아본다. 마지막으로 가장 인기 있는 디자인 패턴을 논의하며 마무리한다. ★ 지은이의 말 ★ 인터넷 시대에서 웹 애플리케이션 개발은 더 이상 어려운 일이 아니다. 하지만 올바르지 않은 방식으로 웹 애플리케이션을 개발 중인 개발자들이 아직도 많다. 이 책의 목표는 독자들을 초보 프로그래머에서 중급 또는 고급 프로그래머로 만드는 것이다. 이 책은 PHP와 MariaDB의 기본부터 복잡한 주제인 캐싱, 보안, REST API 제작, 성능 최적화를 모두 책임질 참고서다. 안전하면서도 확장성이 있고, 다양한 가입자를 위한 API를 지닌 웹 애플리케이션을 만드는 것이 쉬운 일은 아니다. 하지만 이 책을 통해 학습하면 이러한 과정은 간단하면서도 쉽고, 기억에 남는 경험이 될 것이다. ★ 옮긴이의 말 ★ 지금 이 서문을 읽고 있는 여러분이 프로그래밍 입문자든 경험 많은 프로그래머든, 프로그래밍 학습 또는 프로젝트에 필요한 지식을 얻기 위해 700페이지가 넘는 책을 구매하고, 삼분의 일도 채 읽지 못하고 책장에 진열해놓은 경험이 있을 것이다. 결국 해당 프로그래밍 언어 학습을 포기하거나 필요한 지식을 인터넷을 통해 얻었을 것이다. 이 책을 간단히 한 문장으로 정리하면, PHP와 MariaDB를 이용하여 제대로 된 웹 애플리케이션을 만들기 위한 핵심 지식을 전달하는 책이다. 그렇다고 웹 애플리케이션 제작에 있어 중요한 주제가 하나라도 빠져 있다고 생각해서는 안 된다. 이 책은 빠르고, 보안성이 높은 인터랙티브 웹 애플리케이션을 만들기 위해 필요한 모든 주제를 포함한다. 1장부터 3장은 기본적인 SQL문 사용법부터 MariaDB와 PHP 고급 프로그래밍 기법에 이르기까지 웹 애플리케이션 제작에 필요한 핵심 프로그래밍 지식을 다룬다. 4장은 MVC 모델을 소개하며, 간단한 학생 포탈을 만들어 본다. 5장에서 웹페이지를 통해 사용자의 데이터를 가져오고, 로그를 남기는 방법을 배운다. 6장은 웹 애플리케이션 제작에 필수적인 인증과 접근 제어에 대해 다룬다. 7장은 웹 애플리케이션의 사용자가 늘어났을 때를 대비하기 위해, 웹 애플리케이션 성능에 필수적인 캐싱을 활용하는 법을 알아본다. 8장은 다른 애플리케이션이 여러분의 웹 애플리케이션과 연동하는 데 필요한 REST API를 어떻게 제공해야 하는지 살펴본다. 9장과 10장은 아파치 서버와 MariaDB, PHP의 보안성을 강화하는 법과 성능을 최적화하는 방법에 대해 다룬다. 각 장에 대한 소개에서 알 수 있듯이, 이 책은 프로그래밍 입문자부터 고급 개발자 모두를 대상으로 한다. 프로그래밍 입문자에게는 웹 애플리케이션을 제작하기 위해 필요한 지식을 군더더기 없이 핵심만 전달한다. 또한 단순히 이론만 전달하는 것이 아니라 모든 주제에 대해 예제를 제공함으로써 프로그래밍 입문자가 쉽게 개념을 이해할 수 있도록 돕는다. 고급 개발자에게는 기초를 다시금 다질 수 있도록 해줄 뿐 아니라, 성능이 최적화된 보안성이 높은 인터랙티브 웹 애플리케이션을 개발하기 위한 지침을 전달한다. 개인적으로 프로그래밍을 학습하는 데 있어 가장 효과적인 방법은 수백 페이지가 되는 백과사전과 같은 책을 정복하기보다는 필요한 주제의 핵심을 학습하여 근간이 되는 기초를 명확히 이해하고, 직접 애플리케이션 개발을 시작해 필요한 내용들을 인터넷을 통해 찾아가며 애플리케이션을 만들어보는 것이라고 생각한다. 그러한 학습 방법에 있어, 이 책은 더할 나위 없는 지침서가 될 것이라고 확신한다. |