The only valid measurement of code quality: WTFs/minute

oder: Doctrine 2 wird wohl ziemlich gut.

Hier gibt es ein paar Notizen von Jonathan Wage’s Präsentation dazu!


Sehr cool klingt unter anderem auch die writeBehind Geschichte und dass Objekte nicht mehr von Doctrine Klassen abgeleitet werden müssen, sondern mit dem “Entity Managers” zB. gespeichert werden.
Also keine ->save() methoden mehr. :)

“Everything is an entity.” A lightweight persistent domain object, a regular PHP class. You don’t extend a base doctrine class. No final methods.

namespace Entities;
class User
{
private $id;
private $name;
private $address;
}

Note use of namespaces.

EntityManager is central access point to ORM. Used to query for persistent objects. Employs transactional write behind strategy that delays execution of SQL to execute it in the most efficient way.

5 Replies to “The only valid measurement of code quality: WTFs/minute”

  1. Dieses Annotations-Zeugs ist ja aus der Java-Welt bekannt, allerdings sehe ich jetzt gar keinen soooo großen Vorteil darin, dass mein Model nicht mehr von einer Doctrine_Record-Klasse erbt. Mit den bisherigen Mechanismen Event/Observer und vor allem den Doctrine_Templates/Behaviours kann man den Malus ja leicht ausgleichen.

    Annotations sind zwar cool. Aber es gibt 1.) Keine Spezifikation und 2.) keine Implementierung in der ZendEngine dafür. Oder? *Skeptisch guck*

  2. flush() macht dann nur ein INSERT .. VALUES (blah), (blah), blah() or wie or wad? Das ist zugegebenermaßen ziemlich cool…

  3. Das hoffe ich jedenfall ganz stark, dass der dann nicht die 20 queries nur zeitversetzt macht.

    hier hab ich zumindest mal sowas gelesen:

    When you call the flush() method on the Doctrine_Connection object, all unsaved record objects automatically get saved. And Doctrine performs this in a single transaction.

    Da müssen doch dann Queries zusammengefasst werden, oder?
    Auf der Annahme gründete jedenfall meine Begeisterung für das Thema…

Comments are closed.