Charlie PHP Expert Training Page 1 PHP Expert - Volume 04 Composer, Packages & Project Architecture Program objective. Train Charlie to reason, implement, review, debug and explain professional PHP systems. This volume is not considered learned until its assessment and regression checks pass. Certification rule: TRAIN -> PRACTICE -> TEST -> CERTIFY -> REGRESSION -> RELEASE. A planned result is not evidence of success; only observed passing results close the certification. Learning objectives  Explain composer.json vs composer.lock  Use namespaces consistently  Separate configuration from code  Avoid global state and hidden dependencies Core curriculum 1. Composer fundamentals Charlie must be able to explain composer fundamentals, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 2. Dependency constraints and lock files Charlie must be able to explain dependency constraints and lock files, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 3. PSR concepts and autoloading Charlie must be able to explain psr concepts and autoloading, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 4. Package boundaries Charlie must be able to explain package boundaries, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 5. Environment/configuration separation Charlie must be able to explain environment/configuration separation, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 6. Application layering and bootstrap Charlie PHP Expert Training Page 2 Charlie must be able to explain application layering and bootstrap, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. Hands-on laboratories Lab 1: Create a Composer-based project layout Required evidence: working implementation or analysis, explanation of design choices, at least one negative/failure case, and verification that the result behaves as intended. Lab 2: Add and remove dependencies safely Required evidence: working implementation or analysis, explanation of design choices, at least one negative/failure case, and verification that the result behaves as intended. Lab 3: Design config loading without committing secrets Required evidence: working implementation or analysis, explanation of design choices, at least one negative/failure case, and verification that the result behaves as intended. Lab 4: Trace an autoloading failure Required evidence: working implementation or analysis, explanation of design choices, at least one negative/failure case, and verification that the result behaves as intended. Code review discipline When reviewing code, Charlie should classify findings by impact: correctness, security, data integrity, maintainability, performance, and style. Correctness/security issues outrank cosmetic preferences. Charlie must not claim a vulnerability, performance bottleneck, or successful fix without evidence appropriate to the claim. Assessment blueprint Area Weight Pass condition Conceptual reasoning 25% Explains behavior and tradeoffs accurately Implementation 30% Produces correct, readable, maintainable PHP Debugging 20% Localizes faults using evidence Security/reliability 15% Avoids unsafe assumptions and protects boundaries Communication 10% Direct answer; no internal-source leakage Volume certification threshold Minimum score: 90/100, with no critical security, data-integrity, evidence-classification, or fabricated-API error. A failure in a critical area requires targeted retraining and a focused retest. Regression requirements After this volume passes, future certifications must include selected questions from this volume. A new skill is not released if it causes regression in previously certified PHP behavior. Trainer notes Charlie PHP Expert Training Page 3 Use current official PHP/package/framework documentation whenever a question depends on a version-specific API or behavior. Generic knowledge may explain concepts, but version-specific claims must be verified against the applicable documentation. Charlie PHP Expert Training Page 1 PHP Expert - Volume 04 Composer, Packages & Project Architecture Program objective. Train Charlie to reason, implement, review, debug and explain professional PHP systems. This volume is not considered learned until its assessment and regression checks pass. Certification rule: TRAIN -> PRACTICE -> TEST -> CERTIFY -> REGRESSION -> RELEASE. A planned result is not evidence of success; only observed passing results close the certification. Learning objectives  Explain composer.json vs composer.lock  Use namespaces consistently  Separate configuration from code  Avoid global state and hidden dependencies Core curriculum 1. Composer fundamentals Charlie must be able to explain composer fundamentals, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 2. Dependency constraints and lock files Charlie must be able to explain dependency constraints and lock files, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 3. PSR concepts and autoloading Charlie must be able to explain psr concepts and autoloading, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 4. Package boundaries Charlie must be able to explain package boundaries, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 5. Environment/configuration separation Charlie must be able to explain environment/configuration separation, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. 6. Application layering and bootstrap Charlie PHP Expert Training Page 2 Charlie must be able to explain application layering and bootstrap, recognize common failure modes, and apply the concept in code without relying on memorized snippets. Explanations must distinguish language behavior, application design choices, and environment-specific assumptions. Hands-on laboratories Lab 1: Create a Composer-based project layout Required evidence: working implementation or analysis, explanation of design choices, at least one negative/failure case, and verification that the result behaves as intended. Lab 2: Add and remove dependencies safely Required evidence: working implementation or analysis, explanation of design choices, at least one negative/failure case, and verification that the result behaves as intended. Lab 3: Design config loading without committing secrets Required evidence: working implementation or analysis, explanation of design choices, at least one negative/failure case, and verification that the result behaves as intended. Lab 4: Trace an autoloading failure Required evidence: working implementation or analysis, explanation of design choices, at least one negative/failure case, and verification that the result behaves as intended. Code review discipline When reviewing code, Charlie should classify findings by impact: correctness, security, data integrity, maintainability, performance, and style. Correctness/security issues outrank cosmetic preferences. Charlie must not claim a vulnerability, performance bottleneck, or successful fix without evidence appropriate to the claim. Assessment blueprint Area Weight Pass condition Conceptual reasoning 25% Explains behavior and tradeoffs accurately Implementation 30% Produces correct, readable, maintainable PHP Debugging 20% Localizes faults using evidence Security/reliability 15% Avoids unsafe assumptions and protects boundaries Communication 10% Direct answer; no internal-source leakage Volume certification threshold Minimum score: 90/100, with no critical security, data-integrity, evidence-classification, or fabricated-API error. A failure in a critical area requires targeted retraining and a focused retest. Regression requirements After this volume passes, future certifications must include selected questions from this volume. A new skill is not released if it causes regression in previously certified PHP behavior. Trainer notes Charlie PHP Expert Training Page 3 Use current official PHP/package/framework documentation whenever a question depends on a version-specific API or behavior. Generic knowledge may explain concepts, but version-specific claims must be verified against the applicable documentation.