Skip to content

Instantly share code, notes, and snippets.

@johannilsson
Created March 17, 2009 21:15
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save johannilsson/80766 to your computer and use it in GitHub Desktop.
Save johannilsson/80766 to your computer and use it in GitHub Desktop.
<?php
class Domain_Model_User {
private $id;
private $name;
}
interface Domain_Model_UserRepository {
public function save(Domain_Model_User $user);
public function find($id); // Returns Domain_Model_User
}
class UserService {
public __construct(Domain_Model_UserRepository $userRepository) { ... }
public function doSomething();
}
// Some implementations...
class Infrastructure_Persistence_UserRepositoryXml implements Domain_Model_UserRepository {
...
}
class Infrastructure_Persistence_UserRepositoryMySql implements Domain_Model_UserRepository {
...
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment