<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Kommentare zu: Die Modifiers in PHP &#8211; Teil 1</title>
	<atom:link href="http://www.phpmonkeys.de/2010/07/20/die-modifiers-in-php-teil-1/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.phpmonkeys.de/2010/07/20/die-modifiers-in-php-teil-1/</link>
	<description>Software Development in PHP</description>
	<lastBuildDate>Sat, 04 Feb 2012 17:38:49 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>Von: Norbert</title>
		<link>http://www.phpmonkeys.de/2010/07/20/die-modifiers-in-php-teil-1/comment-page-1/#comment-346</link>
		<dc:creator>Norbert</dc:creator>
		<pubDate>Tue, 27 Jul 2010 04:50:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.phpmonkeys.de/?p=553#comment-346</guid>
		<description>In den Projekten, bei denen ich bisher mitgearbeitet habe, gab es keine public Attribute (oder Member Variablen). Datenobjekte bieten sich natürlich an, aber die waren bisher immer mit der Datenbank verknüpft und die der ORM-Layer möchte informiert sein, wenn sich das Datenobjekt ändert. Dies kann man intern durch &lt;code&gt;__set&lt;/code&gt; und &lt;code&gt;__get&lt;/code&gt; erreichen. Von außen sieht alles immer noch so aus, als wären die Attribute public. An dieser &quot;Tradition&quot; würde ich festhalten, da man bei PHP keine Typ-Sicherheit hat und die einzelnen Attribute kontrolliert befüllt werden sollten.
Einen Sonderfall unterstütze ich natürlich. Wenn man Bibliotheken nutzt um bspw. einen Webservice anzusprechen, erhält man ganz gerne PHP-Objekte zurück, die komplett public sind. Ist ja nicht tragisch, aber eben eher die Ausnahme von der Regel.
Mein Vorgehen ist auch daher geprägt, da ich auch Java-Entwickler bin und einige der PHP-Kollegen aus der Java-Ecke kommen. Dort ist es ganz normal mit Gettern und Settern zu arbeiten. Die beiden oben genannten magischen Methoden sind ja auch nichts anderes als universelle Versionen.</description>
		<content:encoded><![CDATA[<p>In den Projekten, bei denen ich bisher mitgearbeitet habe, gab es keine public Attribute (oder Member Variablen). Datenobjekte bieten sich natürlich an, aber die waren bisher immer mit der Datenbank verknüpft und die der ORM-Layer möchte informiert sein, wenn sich das Datenobjekt ändert. Dies kann man intern durch <code>__set</code> und <code>__get</code> erreichen. Von außen sieht alles immer noch so aus, als wären die Attribute public. An dieser &#8220;Tradition&#8221; würde ich festhalten, da man bei PHP keine Typ-Sicherheit hat und die einzelnen Attribute kontrolliert befüllt werden sollten.</p>
<p>Einen Sonderfall unterstütze ich natürlich. Wenn man Bibliotheken nutzt um bspw. einen Webservice anzusprechen, erhält man ganz gerne PHP-Objekte zurück, die komplett public sind. Ist ja nicht tragisch, aber eben eher die Ausnahme von der Regel.</p>
<p>Mein Vorgehen ist auch daher geprägt, da ich auch Java-Entwickler bin und einige der PHP-Kollegen aus der Java-Ecke kommen. Dort ist es ganz normal mit Gettern und Settern zu arbeiten. Die beiden oben genannten magischen Methoden sind ja auch nichts anderes als universelle Versionen.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Von: Ralph Meier</title>
		<link>http://www.phpmonkeys.de/2010/07/20/die-modifiers-in-php-teil-1/comment-page-1/#comment-339</link>
		<dc:creator>Ralph Meier</dc:creator>
		<pubDate>Mon, 26 Jul 2010 11:44:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.phpmonkeys.de/?p=553#comment-339</guid>
		<description>Wie handhabst Du das private/public bei member Variablen? Es gibt ja auch Fälle, z.B. bei reinen Datenobjekten, wo es nicht wirklich Sinn macht, etwas private zu machen.
Hast Du Beispiele, wo du member Variablen public machst (der Normalfall ist ja private/protected).</description>
		<content:encoded><![CDATA[<p>Wie handhabst Du das private/public bei member Variablen? Es gibt ja auch Fälle, z.B. bei reinen Datenobjekten, wo es nicht wirklich Sinn macht, etwas private zu machen.</p>
<p>Hast Du Beispiele, wo du member Variablen public machst (der Normalfall ist ja private/protected).</p>
]]></content:encoded>
	</item>
</channel>
</rss>

