훌륭한 PHP 코드를 작성하는 방법은 무엇입니까? 이제 기본적으로 모든 요구 사항을 충족할 수 있지만 코드가 매우 지저분하고 논리가 좋지 않습니다. 어떻게 개선할 수 있나요?
답글 내용:
훌륭한 PHP 코드를 작성하는 방법은 무엇입니까? 이제 기본적으로 모든 요구 사항을 충족할 수 있지만 코드가 매우 지저분하고 논리가 좋지 않습니다. 어떻게 개선할 수 있나요?
높은 품질이라는 단어는 가독성, 확장성, 보안성, 결합성, 운영 효율성 등의 지표로 정량화되어야 한다고 생각합니다. 그래야만 질서 있게 따라갈 수 있고, 좋은 코드를 작성하는 것은 형이상학이 되지 않을 것입니다.
가독성: 개인적으로 이것이 특히 중요하다고 생각합니다. 변수 이름과 메소드 이름이 다른 사람에게 인식될 수 있습니까?
확장성: 확장성 프로그램의 생명력은 강력합니다. 고품질 코드는 확장성이 뛰어나야 하며, 확장성이 매우 뛰어나다는 점은 잘 알려져 있습니다. editor
vim
역시 비교할 수 없는 확장성을 자랑합니다 .
보안: 이 중요성은 자명합니다. 보안이 없으면 코드가 아무리 훌륭해도 의미가 없습니다.
결합도: 프로그램의 로직이 지나치게 결합되어서는 안 되며, 한 번의 동작이 전체에 영향을 미칠 수 있습니다. 결합도가 낮으면 코드 재사용성이 매우 높아질 수 있습니다.
운영 효율성: 세계 최고의 무술은 속도입니다. 뛰어난 알고리즘은 프로그램의 실행 효율성을 몇 배 더 빠르게 만들 수 있습니다.
数据结构+算法=程序
오늘도 여전히 공허한 이야기는 아닙니다.
결론적으로 고품질 코드를 작성하는 것은 결코 쉬운 일이 아닙니다. 더 많은 바퀴를 떼어내고 다른 사람들이 어떻게 작성하는지 확인할 수 있습니다.
더 많은 우수코드를 보시려면? 이 주제에 관한 책이 있는지 궁금합니다.
http://www.php-fig.org/psr/
모든 테스트 통과: 요구 사항 충족
중복을 최대한 제거하세요: 높은 응집력과 낮은 결합력
최대한 명확하게 표현: 가독성
적은 코드 요소: 상수, 변수, 함수, 클래스, 패키지 등 모두 코드 요소에 속하므로 복잡성이 줄어듭니다.
위 4가지 원칙의 중요성은 순서대로 감소합니다
위 내용은 심플 디자인 원칙에서 인용
핵심: 높은 응집력과 느슨한 결합(단일 책임), 외부 종속성, 엔터티 대 추상 프로그래밍, 추상화 계층화
한 메소드에 if 문이 너무 많으면 여러 메소드로 나누지 마세요. 재사용할 수 있는 방법을 최대한 많이 분해해 보세요.
고품질 코드를 작성하기 위한 가장 중요한 전제조건은 "고품질 PHP 코드"가 무엇인지 알아야 한다는 것입니다.
고품질 코드 많은 github PHP 프로젝트에서 시간을 들여 읽어보면 된다는 사실을 알 수 있습니다. 물론 여기서 읽는 것은 단지 한 줄씩 읽는 것이 아니라 이 코드 조각에 대해 어떻게 생각하는지, 구조적 디자인이 좋은지, 내부 디자인 아이디어가 개선될 수 있는지 여부입니다. 이런 식으로 자신에 대해 천천히 생각하면 자신이 크게 향상될 것입니다.
제가 추천하는 것은 간단한 로거 디자인과 같은 yii2 프레임워크입니다. yii2/framework/log
>를 참고하여 코드 프로젝트와 로직을 최적화하세요.
PHP 개발 코딩 표준을 엄격히 따르세요

aphpdectionenceindectioncontainerisatoolthatmanagesclassdependencies, 향상 Codemodularity, testability 및 maintainability.itactAsacentralHubForCreatingAndingDinjectingDingingDingingdecting.

대규모 응용 프로그램의 경우 SELLENCIONINGESS (DI)를 선택하십시오. ServicElocator는 소규모 프로젝트 또는 프로토 타입에 적합합니다. 1) DI는 생성자 주입을 통한 코드의 테스트 가능성과 모듈성을 향상시킵니다. 2) Servicelocator는 센터 등록을 통해 서비스를 얻습니다. 이는 편리하지만 코드 커플 링이 증가 할 수 있습니다.

phPapplicationSCanBeoptimizedForsPeedandefficiencyby : 1) ENABLEOPCACHEINPHP.INI, 2) PREPAREDSTATEMENTSWITHPDOFORDATABASEQUERIES 사용

phpeMailValidationInvoLvestHreesteps : 1) formatValidationUsingRegularexpressionsTochemailformat; 2) dnsValidationToErethedomainHasaValidMxRecord; 3) smtpvalidation, theSTHOROUGHMETHOD, theCheckSiftheCefTHECCECKSOCCONNECTERTETETETETETETWERTETWERTETWER

TomakePhPapplicationSfaster, followthesesteps : 1) useopCodeCaching likeOpcachetOrpectipiledScriptBecode.2) MinimizedAtabaseQueriesByUsingQueryCachingandEfficientIndexing.3) leveragephp7 assistorBetterCodeeficiession.4) 구현 전략적 지시

toImprovePhPapplicationSpeed, followthesesteps : 1) enableOpCodeCachingWithApcuTeCeScripteXecutionTime.2) 구현 구현

의존성 주입 (DI)은 명시 적으로 전이적 종속성에 의해 PHP 코드의 테스트 가능성을 크게 향상시킵니다. 1) DI 디퍼 커플 링 클래스 및 특정 구현은 테스트 및 유지 보수를보다 유연하게 만듭니다. 2) 세 가지 유형 중에서, 생성자는 상태를 일관성있게 유지하기 위해 명시 적 표현 의존성을 주입합니다. 3) DI 컨테이너를 사용하여 복잡한 종속성을 관리하여 코드 품질 및 개발 효율성을 향상시킵니다.

DatabaseQuesyOptimizationInphPinVolvesVesstoigiestoInsperferferferferformance.1) SelectOnlyNecessaryColumnstoredAtatatransfer.2) useinDexingTeSpeedUpdatarretieval.3) ubstractOrerEresultSoffRequeries.4) UtilizePreDstatements Offeffi


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

드림위버 CS6
시각적 웹 개발 도구

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

Dreamweaver Mac版
시각적 웹 개발 도구