2016-10-23 4 views
-2

Ich habe eine sehr grundlegende Frage zu objektorientiertem Design. Was ist besser objektorientiertes Design oder prozedurorientiertes Design?über orientiertes Design & prozedurorientiertes Design

Betrachten Sie ein Beispiel.

Ich entwerfe ein util, um Mail basierend auf einigen Parametern zu senden. Wenn ich prozedurorientiert arbeite, werde ich das tun.

MailUtil.sendMail(String username, String passwork, String subject, String message, String toList, String bccList, ...) 

Wenn ich diesen Entwurf als objektorientierte Weise werde ich wie gehen unter

MailUtil.sendMail (IMailContentProducer)

definition of IMailContentProducer 
interface IMailContentProducer { 
    String getUserName(), 
    String getPassword(), 
    String getSubject(), 
    String getSubject(), 
    String getToList(), 
    //etc... 
} 

Antwort

0

Es ist nicht wirklich eine Frage der "beste Weg, um",

Es ist viel mehr über die Art, wie Sie wollen, dass Ihr Code getan wird, als die richtige Art und Weise zu tun:

POD: Ein schnell entwickeltes, unflexibles System, das kaum wiederverwendbar ist.

OOP: Ein langsamer entwickelt, flexibler & einfach wiederverwendbares System.

+0

ist es wirklich "langsam zu entwickeln", wenn wir uns für OOPS entscheiden? beide nehmen die gleiche Zeit :( – user1346316

+0

Die Zeit, die du auf oop tauschst (Design, denke an Wiederverwendbarkeit, Abhängigkeitsbegrenzung usw.), du gewinnst es beim nächsten Projekt + Code Wartbarkeit also ... insgesamt wirst du Zeit gewinnen – Kirakor