Das hängt stark von der konkreten Situation ab. Nehmen wir an, die neue Eigenschaft, die Sie hinzugefügt haben, ist obligatorisch, dh sie muss immer festgelegt werden. Anschließend müssen Sie den Code selbst durchsuchen und ihn überall dort aktualisieren, wo er companyObjerstellt wurde, um sicherzustellen, dass er ordnungsgemäß erstellt wurde (einschließlich der Festlegung der neuen Eigenschaft). Ich gehe davon aus, dass PHP Konstruktoren hat. In diesem Fall müssen Sie nur einen neuen Konstruktorparameter hinzufügen, und der Compiler markiert automatisch jeden Konstruktoraufruf ohne den zusätzlichen Parameter als Kompilierungsfehler. Dadurch wird auch sichergestellt, dass Teamkollegen von der neuen Eigenschaft erfahren, sobald sie eine verwenden companyObj.
Wenn die neue Eigenschaft jedoch optional ist, sind die Dinge weniger klar. Möglicherweise haben Sie einen geeigneten Standardwert dafür. Im letzteren Fall würde ich weiterhin empfehlen, alle Instanzerstellungen zu aktualisieren, um die neue Eigenschaft bei Bedarf festzulegen. Dies soll sicherstellen, dass der Code jederzeit in einem konsistenten Zustand gehalten wird .
Die Weitergabe der Änderung an Ihre Teamkollegen ist hier ein weiterer, weit entfernter Schritt. Agile Teams bevorzugen persönliche Kommunikation und meiner Meinung nach aus gutem Grund. Das Verlassen auf Dokumente ist ein sehr langsames und ineffektives Mittel, um Informationen in einem Team zu verbreiten. Ein Wiki ist etwas besser, aber dennoch ist es IMHO-Overkill, jedes einzelne Klassenattribut zu dokumentieren. Es wird nur eine enorme Belastung für das Team sein und wird ohnehin schnell unzuverlässig und nutzlos, da wir Menschen sind und das Update manchmal vergessen müssen. Außerdem wette ich, dass nicht viele Teammitglieder es regelmäßig tun werden Überprüfen Sie die Dokumentation (in welcher Form auch immer), um über die neuesten Codeänderungen informiert zu werden.
Letzteres gilt auch für automatisch generierte Dokumentationen über zB Javadoc oder Doxygen. Obwohl sie in einem automatischen Build konfiguriert werden können, um die generierte Dokumentation jederzeit auf dem neuesten Stand zu halten, habe ich noch nie ein Entwicklungsteam gesehen, bei dem Mitglieder regelmäßig die Dokumentation durchsuchen, um über die neuesten Codeänderungen informiert zu werden. Und wenn Sie ein Versionsverwaltungssystem verwenden, bemerken Sie die Änderungen zunächst, wenn Sie Ihre lokale Kopie des Codes trotzdem aktualisieren. Dann können Sie in vertrauten Klassen nach Änderungen suchen und genau sehen, was und wie sich geändert hat (zusammen mit a kurze Erklärung und / oder Verweis auf eine Aufgaben-ID, wenn Ihr Team daran gewöhnt ist, aussagekräftige Check-in-Kommentare hinzuzufügen - die in automatisch generierten Dokumenten fehlen werden).
Kommunikation ist einer der Hauptgründe, warum Extreme Programing-Teams Paarprogrammierung durchführen. Wenn Sie die Änderungen zusammen mit einem Teamkollegen vornehmen, wissen sofort zwei von Ihnen über jede Änderung Bescheid, und beim nächsten Mal wird sich jeder von Ihnen mit jemand anderem paaren, sodass sich nützliche Informationen recht schnell verbreiten. Es ist jedoch aus verschiedenen Gründen nicht immer anwendbar. Ansonsten können Sie einfach zu einem geeigneten Zeitpunkt mit Ihren Nachbarn über die Änderung sprechen (z. B. während des Mittagessens, wenn Sie gerade zusammen zu Mittag essen) oder eine E-Mail senden, wenn es sich um eine größere, wichtigere oder kompliziertere Änderung handelt.
Im letzteren Fall kann es einen guten Grund geben, dies ordnungsgemäß zu dokumentieren. IMHO-Konstruktionsdokumente sind am besten geeignet, wenn sie einen grobkörnigen Überblick über das System auf hoher Ebene bieten, während die Implementierungsdetails im Code enthalten sind (gemäß dem DRY-Prinzip ).