cou·ple (verb)
to join (something) to something else
In software engineering, coupling or dependency is the degree to which each program module relies on each one of the other modules.
co·here
to hold together firmly as parts of the same mass
broadly : stick, adhere
In computer programming, cohesion refers to the degree to which the elements of a module belong together. Thus, it is a measure of how strongly related each piece of functionality expressed by the source code of a software module is.
for(LineItem i : items) {
switch(i.getType()) {
//...
}
}
public interface DatabaseUserChangedListener {
void userChanged(User user);
}
public interface UserDatabase {
void registerChangeListener(DatabaseUserChangedListener userEditorController);
}
public class UserEditorControllerImpl implements
UserEditorController, DatabaseUserChangedListener {
public UserEditorControllerImpl(UserDatabase userDatabase) {
userDatabase.registerChangeListener(this);
}
@Override
public void saveUser() {
}
@Override
public void userChanged(final User user) {
}
}
public class UserEditorControllerImpl
implements UserEditorController {
public UserEditorControllerImpl(UserDatabase userDatabase) {
userDatabase.registerChangeListener(new DatabaseUserChangedListener() {
@Override
public void userChanged(final User user) {
UserEditorControllerImpl2.this.userChanged(user);
}
});
}
@Override
public void saveUser() {
}
private void userChanged(final User user) {
}
}
public class UserEditorControllerImpl
implements UserEditorController {
public UserEditorControllerImpl(UserDatabase userDatabase) {
userDatabase.registerChangeListener(this::userChanged);
}
@Override
public void saveUser() {
}
private void userChanged(final User user) {
}
}
Was ist die "High-Level Policy" des Espressomachens?