>백엔드 개발 >PHP 튜토리얼 >PHP 심층 학습의 병목 현상을 해결하는 방법

PHP 심층 학습의 병목 현상을 해결하는 방법

PHPz
PHPz원래의
2017-04-04 15:13:132103검색

PHP는 학습자에게 처음 배울 때는 매우 쉽다는 느낌을 주지만, 2~3년 학습하고 나면 깊이 느끼게 됩니다. 병목 현상은 침투하기 어렵고, 포기하는 것은 안타깝습니다. “쓸모가 없어서 버리는 것이 안타깝습니다”라는 느낌이 매우 적절합니다

나는 종종 다음과 같은 느낌을 받습니다. 아무것도 하지 않는 것 같습니다. 학습한 후에도 진전이 없는 것 같습니다. if...else, 루프 그리고 남들이 잘 못하는 기능도 기억나는데 프로젝트가 오면 헷갈리고 말이 많아도 사실 잘 모르겠어요. 문제가 생기면 어떻게 해야 할까요...

이 시점에서 우선 업계에 진출하신 것을 축하드리고, 두 번째로 PHP를 깊이 배우는데 병목 현상을 겪으신 것을 축하드립니다.

하지만 이 레벨을 통과하면 이해도가 더욱 높아집니다. 하지만 이 레벨을 통과하는 것은 쉽지 않습니다. 왜냐하면 PHP에 관한 것이 아니라 PHP가 아닌 것들이 많기 때문입니다. .

이 병목 현상을 해결하는 방법은 무엇입니까? PHP를 배우나요? ​​

1: 프로그래밍 에 대한 심층적인 이해

PHP 개발 프로젝트에 포함된 프로그래밍 아이디어는 다음과 같습니다. 프로세스 지향 프로그래밍 구현, 객체 지향 프로그래밍 구현, 측면 지향 프로그래밍 아이디어

는 익숙할 뿐만 아니라 능숙합니다.

PHP는

변수, 분기 문, 루프 문, 함수로 시작하므로 처음에 접하게 되는 프로그래밍 아이디어는 프로세스 지향 프로그래밍 아이디어입니다. 이런 생각은 프로젝트를 개발할 때 직접적으로 개발할 수도 있고, 반복되는 코드도 많이 접하게 되므로 파일도 많이 생성된다는 것이 가장 큰 특징입니다. 프로세스 지향 프로그래밍 아이디어만 사용하여 프로젝트를 개발하는 방법은 다음과 같습니다. 프로젝트에 파일이 너무 많습니다... 파일이 너무 많으면 폴더 배포를 제어하기 어렵고 프로젝트 유지 관리 및 업그레이드에도 도움이 되지 않습니다. 일반적으로 기업 웹 사이트와 동일한 대규모 프로젝트를 구축하기가 어렵습니다. <.>파일 수를 줄여야 하며, 그러면 새로운 아이디어가 필요합니다. 객체 지향 프로그래밍 아이디어의 주요 기능은 다음과 같습니다. 추상화,

상속

, 다형성, 🎜>이런 것들을 암기하지 말고 현실적인 원리로 완전히 이해하고 최소한 설득할 수 있어야 합니다. 예를 들어, 상속이 왜 필요한지, 왜 다형성이 필요한지 물어보겠습니다. 이게 핵심인데, 다 읽어본 것 같다는 점이 문제입니다. , 당신은 많은 책을 읽었지만 그것을 사용할 때 혼란스러워 보입니다. 왜냐하면 당신이 그것을 완전히 이해하지 못했기 때문입니다. 이것은 적어도 PHP의

프레임워크에 대한 심층적인 이해를 방해할 것입니다.

예를 들어 많은 사람들이 TP를 사용하여 프로젝트를 개발하고 Laravel을 사용하는데, TP 소스 코드에 대해 깊이 있게 공부해 보셨나요? Laravel 소스 코드? 작곡가란 무엇입니까? 왜 그럴까요?

이때에는 '얇지만 두꺼운 책을 읽는' 단계에 있어야 합니다. 이 질문에 대한 답을 충분히 찾고, 그 이유를 더 물어보고, 그 답을 찾으세요. 답을 찾는 과정에서 당신은 무의식적으로 레벨이 올라갔습니다...객체지향적 사고를 사용하여 프로젝트를 개발하면 파일 수를 대폭 줄일 수 있어 프로젝트를 컴팩트하고 능률적이면서도 강력하게 만들 수 있습니다. . 확장성이 좋습니다. 하지만 프로젝트가 점점 커지면 여전히 중복된 코드가 많이 남아있는 것을 볼 수 있는데, 이는 필연적으로 파일 간의 중복으로 나타나게 됩니다. 이는 객체지향적인 결함이 아니라 프로젝트 자체의 문제입니다. 객체 지향은 이러한 문제를 해결할 만큼 강력하지 않습니다(프로세스 지향은 더욱 적습니다). 이때 당신은 새로운 사고, 즉 측면 지향 프로그래밍 사고를 업그레이드해야 합니다. 어쩌면 이 아이디어가 당신에게 모호해 보일 수도 있습니다. 하지만 "템플릿에 데이터 수집 태그를 설정한다"고 말하면 이해해야 합니다.

양식:

5"

ord

er="id asc"limit="10">

《{$title}》- - -{$author}{$add_

time

}

템플릿을 설정할 때 자주 사용하는 방법인데 왜 이렇게 하는지 설명해주세요. 사실 이 질문에 답할 수 있다면 관점 지향 프로그래밍 사고 분야에 입문한 것입니다. 템플릿 파싱 엔진을 깊이 이해해야 하기 때문입니다.... 대규모 프로젝트로 인해 발생하는 문제이지만 객체 지향 코드 중복으로 해결할 수 없습니다. 그래야만 프로젝트가 점점 더 커질 수 있습니다...

2: MVC, 단일 항목, 정규 표현식

MVC는 이런 단어를 외우는 것이 아니라 깊이 이해하는 것입니다. Controller, Model, View가 왜 있고, 각각의 내용이 무엇인지 이해하고...

정규 표현식에도 숙련도가 필요합니다.

3: 데이터베이스에 대한 심층적인 지식

데이터베이스 하위 데이터베이스, 하위 테이블, 파티션 및 데이터베이스 클러스터에 대해 학습을 시작하세요.

데이터베이스 최적화: 인덱스 최적화, SQL 문 최적화 등

4: 파일 캐시, 데이터베이스 캐시, 메모리 캐시 등 다양한 캐싱처리

여기에는 구성 파일 작성 및 작동 방법, 데이터베이스 캐시 테이블, 캐시 필드 등과 같은 많은 것들이 포함됩니다. NoSQL의 도입은 Memcache, Redis, Mongodb, ....

5: Server

등이 주로 Linux 서버에는 수많은 컨텐츠가 있는데, 가장 먼저 나온 것은 Apache, Nginx 등의 웹 모니터링 프로그램입니다.

ssh, ftp 등 일반적인 프로그램도 있습니다.

더 깊이 들어가 보면 쉘 프로그래밍이 있고, 쉘 프로그래밍을 사용하여 서버 관리 시스템을 개발하는 방법도 있습니다. 예를 들어 AMP, WDCP.... 이런 것들은 PHP 작업을 하는 여러분에게는 별 상관없어 보일 수도 있지만, 웹사이트에 접속할 수 없습니다. 문제가 무엇인지 아시나요? 그러니 관련성이 없는 것이 아니라 매우 관련성이 높으니 더 이상 그 좁은 한계의식을 유지하지 마세요.

6: 로드 밸런싱, 웹사이트 압력 저항 등

개발 가능성이 있는 프로젝트를 구축하는 데 필요한 내용입니다. PHP와 관련이 있습니다.

7: 데이터 구조 심층 학습

신입생이 되면 데이터 구조를 배울 것이라고 믿습니다. 포인터, 연결 목록, 에 대해 이야기합니다. 스택 등을 사용하면 듣기가 다소 혼란스럽고 많이 사용할 수 없습니다. 하지만 이 단계에서는 심도 있게 공부할 수 있으며, 이를 통해 Apache의 원리를 이해하는 데 도움이 되고 물론 Apache를 더 쉽게 사용할 수 있습니다. 이는 실제로 병목 현상 문제를 눈에 보이지 않게 해결하는 데 도움이 됩니다.

8: 기본 언어를 배워야 합니다 ​

주로: C 언어, C++는 매우 중요한 기본 언어임을 알 수 있습니다. . PHP 인터프리터는 C/C++로 작성되었으며 브라우저도 이에 의해 작성되었습니다. 이는 물론 PHP 애플리케이션에 연결됩니다.

9: 애플리케이션 수준에서 학습 강화

예: WeChat 개발, 다양한 타사 플러그인 사용: jquery, Layer, 부트스트랩,업로드. 필요한 플러그인을 직접 작성할 수도 있습니다.

단순히 PHP에만 국한하지 말고 프론트엔드 작업을 시작하세요. 프론트엔드를 통해 PHP를 더 깊이 이해할 수 있기 때문입니다. 예를 들어, 홈페이지 홈페이지에서 기사를 추출하고, 숫자가 1, 2, 3, 4, 5라면 프론트엔드에서 풀 수도 있고, PHP에서 풀 수도 있는데... 더 필요하면 어쩌죠? 왜곡된 정보 표시? 아마도 PHP 쪽이나 심지어 데이터베이스 쪽에서 해결하는 것이 적합할 것입니다...

지식을 넓히면 PHP를 깊이 있게 배우는 데 도움이 될 것입니다...

간단히 말하면, PHP를 배우는 데 있어 확실한 기초가 있으면 더 이상 PHP가 쉽다고, 매우 간단하다고 쉽게 말할 수 없으며, 2주 만에 배울 수 있다는 유치한 단어를 사용하게 됩니다. 당신은 점점 작아지고 있다고 느낄 수도 있고, 여전히 많은 것을 배워야 한다고 느낄 수도 있습니다. 적어도 당신은 이 업계에 입문했지만, PHP를 깊이 배우는 데 점점 더 병목 현상을 겪게 될 것입니다. 당신을 방해하는 것은 PHP가 아닌 많은 것들입니다. 열린 마음으로 마주한 것을 탐구해야 합니다. 까다롭게 굴지 말고, 이것저것 경멸하고, 하루종일 불평하세요....

그냥 버티고 하나하나 해결해보세요. 새로운 문제, 언젠가 당신의 병목 현상이 지나갈 것입니다. 그때 당신은 진정으로 무언가를 배우고 다재다능하고 문제를 종합적으로 해결할 수 있는 능력을 갖춘 마스터가 될 것입니다.

위 내용은 PHP 심층 학습의 병목 현상을 해결하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.