Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.php > #3919
| From | Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) |
|---|---|
| Newsgroups | de.comp.lang.php |
| Subject | Re: return types |
| Date | 2016-06-22 14:49 +0000 |
| Message-ID | <1t576aa34di2aedn3e8%sfroehli@Froehlich.Priv.at> (permalink) |
| References | <1t56fced94i14b9n3e8%sfroehli@Froehlich.Priv.at> <ndj4e7$ol6$1@solani.org> <1t576a50b3i2b18n3e8%sfroehli@Froehlich.Priv.at> <nkdp3f$buh$1@solani.org> |
On Wed, 22 Jun 2016 12:25:53 Christoph M. Becker wrote:
> Ich finde die typed Properties nicht verkehrt, aber zum einen fände ich
> die diversen Einschränkungen (geht nicht für globale, lokale und
> statische Variablen, Referenzen) und den Performance-Nachteil nicht so
> schön.
Performance-Nachteile sind nie schön, aber wenn ich den RFC richtig
verstanden habe, sind die eher theoretischer Natur - und ob man in einem
zweiten Schritt nicht Code effizienter gestalten könnte (weil Typen schon
vorab bekannt sind) wäre auch noch zu klären.
> [1] Die Klassen-interne Typsicherheit finde ich sekundär. Gerade
> kleine Klassen sollten überschaubar sein.
Mir gefiele daran halt die Möglichkeit, mich selbst wieder ein Stück
mehr kontrollieren zu können. Und ganz egal, wie klein und
überschaubar die Klasse ist, ist alles willkommen, was dazu
beiträgt, Fehler zu erkennen.
> Was ich mir da eher wünschen würde, wären Property-Accessors
> (<https://wiki.php.net/rfc/propertygetsetsyntax-as-implemented>).
Das wiederum kann ich mir allenfalls in homöopathischen Ausnahmefällen als
(für mich) nutzbringend vorstellen - und wenn es nur darum geht, den Typ
einer Property festzulegen, ist der Aufwand erheblich.
Anstatt
| public int $i;
wäre das dann
| public $i {
| get;
| set(int $i) { $this->i = $i; }
| }
Bei Objekten mit vielen Properties ginge damit die Übersichtlichkeit
völlig verloren.
> Die Union-Types fände ich in einer statisch typisierten Sprache ja
> noch ganz sinnvoll, aber bei PHP sehe ich da keinerlei
> Notwendigkeit, da man dort solche Ausnahmefälle eben nicht
> typisieren muss. Und Ausnahmefälle sollten es meiner Meinung nach
> bleiben, sonst wird es zu verwirrend.
Gerade das erwähnte Array|Collection kommt bei mir eigentlich an
allen Ecken und Enden vor und unterläuft damit die sonst inzwischen
schon halbwegs durchgängige Typsicherheit.
Andere Fälle sind seltener, ja. Aber wie bei so vielen Dingen: Wenn
es eh kaum vorkommt, wird es auch kaum verwendet, stört also nicht
(und dort, wo man es braucht, hilft es).
Servus,
Stefan
--
http://kontaktinser.at/ - die kostenlose Kontaktboerse fuer Oesterreich
Offizieller Erstbesucher(TM) von mmeike
Stefan. Für imponierende Umfaller, wenn sie zwei linke Hände haben!
(Sloganizer)
Back to de.comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar
return types Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-03-31 09:35 +0000
Re: return types k@rl.pflaesterer.de (Karl Pflästerer) - 2016-03-31 12:42 +0200
Re: return types "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-03-31 14:16 +0200
Re: return types Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-04-15 06:37 +0000
Re: return types Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-06-22 08:48 +0000
Re: return types "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-06-22 12:25 +0200
Re: return types Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-06-22 14:49 +0000
Re: return types "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-06-22 17:47 +0200
Re: return types Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-06-23 08:23 +0000
Re: return types "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-07-02 01:03 +0200
Re: return types Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-03-31 21:40 +0200
Re: return types Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-04-01 16:26 +0000
Re: return types "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-04-02 19:23 +0200
Re: return types Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-04-02 20:36 +0200
Re: return types Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-04-11 21:18 +0000
Re: return types Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-04-02 20:33 +0200
Re: return types Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-04-11 21:32 +0000
Re: return types Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-04-19 20:24 +0200
Re: return types Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-04-20 07:05 +0000
Re: return types Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2016-04-21 02:55 +0200
csiph-web