<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>PHPDeveloper.org</title>
    <link>http://www.phpdeveloper.org</link>
    <description>Up-to-the Minute PHP News, views and community</description>
    <language>en-us</language>
    <pubDate>Sun, 19 May 2013 19:26:30 -0500</pubDate>
    <ttl>30</ttl>
    <item>
      <title><![CDATA[Ibuildings techPortal: Architecture Patterns: Domain Model and Friends]]></title>
      <guid>http://www.phpdeveloper.org/news/17062</guid>
      <link>http://www.phpdeveloper.org/news/17062</link>
      <description><![CDATA[<p>
On the Ibuildings techPortal today there's a new post from <i>Robert Raszczynski</i> about <a href="http://techportal.ibuildings.com/2011/10/31/architecture-patterns-domain-model-and-friends/">domain modeling</a> and how a good knowledge of it can help your application's architecture.
</p>
<blockquote>
Architectural and design patterns help software architects to break systems in to smaller, more maintainable sections organised by their functionality and usage. [...] There are three major layers in software architecture: presentation, domain and data source. [...] Now that we know what types of layers we can find in software architecture, let's have a look at how we can organize domain logic and data sources layers.
</blockquote>
<p>
He looks at three patterns that can help organize your domain logic - a transactional script (one file that does one thing), a table module (logic lives in the tables) and his focus, the domain model. He shows (via a graph) how the domain logic approach can cut through some of the effort it could take to improve on the other two. He gives a two suggestions of how to access the data in your domain layer - a Gateway or a Data Mapper. To reinforce the ideas he's presented, he includes some code snippets of a basic domain model for a Store, Customer and Product and uses them in both Gateway and Data Mapper examples.
</p>]]></description>
      <pubDate>Mon, 31 Oct 2011 11:26:09 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[DevShed: Service Layers in PHP Applications (a Series)]]></title>
      <guid>http://www.phpdeveloper.org/news/17004</guid>
      <link>http://www.phpdeveloper.org/news/17004</link>
      <description><![CDATA[<p>
DevShed has posted a series of tutorials talking about different sorts of service layers in PHP applications - seven of them to be exact:
</p>
<blockquote>
If you're looking for an approachable guide that teaches you how to implement an easily-customizable service layer in PHP, then take a peek at this article series. In a step-by-step fashion, it walks you through the development of a sample web application, which uses a service to perform CRUD operations on a domain model composed of a few user entities.
</blockquote>
<p>Service layer types covered in the series are:</p>
<ul>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-A-Final-Example/">Working with database entities</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Services-Layers-Data-Mappers/">Data Mappers</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-Database-Adapters/">Database adapters</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-Handling-Entity-Collections/">Handling Entity Collections</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-User-Services/">User Services</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-Dependency-Injection/">Dependency Injections</a>
<li><a href="http://www.devshed.com/c/a/PHP/PHP-Service-Layers-Modeling-Domain-Objects/">Modeling Domain Objects</a>
</ul>]]></description>
      <pubDate>Tue, 18 Oct 2011 08:50:09 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Zend Developer Zone: DataModeler: Simple ORM - Part 2 Saving Models]]></title>
      <guid>http://www.phpdeveloper.org/news/15169</guid>
      <link>http://www.phpdeveloper.org/news/15169</link>
      <description><![CDATA[<p>
In his <a href="http://phpdeveloper.org/news/15056">previous post</a> <i>Vic Cherubini</i> introduced his namespaced DataModler ORM class and showed how to create a basic model to work with user information to the database. In <a href="http://devzone.zend.com/article/12568-DataModeler-Simple-ORM---Part-2-Saving-Models">this second part</a> he looks at taking those models and saving their contents to the database.
</p>
<blockquote>
After you have created your Models, it's time to save them to a datastore. DataModeler requires you to use PDO as the abstraction layer as it makes use of prepared statements and database specific extensions.
</blockquote>
<p>
He bases it all on PDO object - created and pushed in via dependency injection. The model then uses that object and executes a "save()" containing the data created in the model request. He also talks about "dumb loads", a feature that lets the modeler think it was loaded without having to know anything more than just the object's ID number.
</p>]]></description>
      <pubDate>Wed, 22 Sep 2010 09:37:46 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Federico Cargnelutti's Blog: Zend Framework DAL: DAOs and DataMappers]]></title>
      <guid>http://www.phpdeveloper.org/news/13262</guid>
      <link>http://www.phpdeveloper.org/news/13262</link>
      <description><![CDATA[<p>
In <a href="http://blog.fedecarg.com/2009/09/19/zend-framework-dal-daos-and-datamappers/">his latest blog post</a> <i>Federico Cargnelutti</i> talks about data access layers, data access objects, data mappers and how to implement them in a Zend Framework application.
</p>
<p>
In his example code he creates a few new directories in his basic application layout under the "lib" directory to contain the files for the mapper, data access layer and data objects. He uses s simple "user" table with first and last names and an ID to help identify the row.
</p>
<p>
The User model, mapper and data access object work together to make a simple "getUser" method as easy as creating a new Project_DataMapper_User object and setting up the entity before doing the fetch with a "get" call.
</p>]]></description>
      <pubDate>Tue, 22 Sep 2009 08:19:51 -0500</pubDate>
    </item>
    <item>
      <title><![CDATA[Komunitasweb.com: CodeIgniter Tutorial - ORM with DataMapper]]></title>
      <guid>http://www.phpdeveloper.org/news/12272</guid>
      <link>http://www.phpdeveloper.org/news/12272</link>
      <description><![CDATA[<p>
From Komunitasweb.com today there's <a href="http://komunitasweb.com/2009/04/codeigniter-tutorial-orm-with-datamapper/">new tutorial</a> showing how to use the <a href="http://stensi.com/datamapper/pages/download.html">DataMapper</a> library for the CodeIgniter framework to introduce object relational mapping (ORM) to your application.
</p>
<blockquote>
If you familiar with CodeIgniter, then you have realized by now that you can't have relationship manager. Yes, CodeIgniter doesn't have built-in ORM. But there are several projects such as IgnitedRecord and DataMapper that will help you manage relationship between your models.
</blockquote>
<p>
<a href="http://komunitasweb.com/2009/04/codeigniter-tutorial-orm-with-datamapper/">The post</a> walks you through the installation of <a href="http://stensi.com/datamapper/pages/download.html">the tool</a>, creating some sample data to work with and creating a full model, controller and view as an example.
</p>]]></description>
      <pubDate>Fri, 03 Apr 2009 09:35:51 -0500</pubDate>
    </item>
  </channel>
</rss>
