2011-01-26 33 views
1

私はポストクラス(たとえば、ブログ記事を)持っている場合、それはいくつかの方法があります:OOP - 投稿を削除する必要がありますか?

  • getReplies()
  • getViews()
  • ログ表示()

を...

しかし、deletePost()はどこに行きますか?私はそれが授業に入ってはならないと思いますか?

答えて

4

deletePost()は、おそらくPostクラスのマスターになります(WallやBlogPageなど)。ウォールはポストを含み(これによりaddPost()メソッドのいくつかの並べ替えを持っているだろうので、あなたもそこにもdeletePost()メソッドが含まれるであろう例(ラフJavaで)以下:!

public class Wall { 
    ArrayList<Post> wallposts; 
    public addPost(Post newpost) { 
      this.wallposts.add(newpost); 
    } 
    public deletePost(Post p) { 
      this.wallposts.remove(p); 
    } 
} 
2

アクティブレコードパターンを使用しているようですが、データベースからの削除については、Postクラス内でdelete()メソッドを使用しても問題ありません。

あなたの投稿にDAOクラスを使用していますか?削除がそこにあるはずです。

1

deletePost()

あなたの投稿がすべて含まれている投稿マネージャがあると仮定して、何かを削除したいときはいつでも、投稿マネージャは、投稿マネージャにアクセスする必要があります。 (投稿、コメントなどへの返信を削除する)、郵便管理者が知るべきでないこと、

public class Post{ 
     ..... 
     public delete() { 
     // Do database stuff here or any clean up that the Post needs to do.... 
     } 
} 


public class PostManager{ 
     ArrayList<Post> posts; 
     .... 
     public deletePost(Post p){ 
     p.delete(); 
     } 
    } 

EDIT:あなたの質問に答えるためには、投稿自体が削除されるべきです。郵便局長がそれを伝えるならば。

関連する問題