Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Facet pattern #88

Open
iluwatar opened this issue Jun 23, 2015 · 10 comments · Fixed by Jeremy-Cains-ANU/java-design-patterns#2
Open

Facet pattern #88

iluwatar opened this issue Jun 23, 2015 · 10 comments · Fixed by Jeremy-Cains-ANU/java-design-patterns#2

Comments

@iluwatar
Copy link
Owner

iluwatar commented Jun 23, 2015

Description:

The Facet design pattern is used to represent different aspects or views of an object, allowing an object to expose multiple interfaces that reflect different facets of its functionality. This pattern is useful in situations where an object needs to be interacted with in various ways depending on the context or role.

Main Elements of the Facet Design Pattern:

  1. Core Object: The primary object that contains the core data and functionality.
  2. Facet Interfaces: Interfaces that represent different aspects or views of the core object. Each interface provides a specific subset of the core object's functionality.
  3. Facet Implementations: Concrete classes that implement the facet interfaces, often acting as wrappers around the core object to provide the necessary views or functionalities.

References:

Acceptance Criteria:

  1. A core object should be identified or created that contains the primary data and functionality.
  2. Multiple facet interfaces should be defined, each representing a different view or aspect of the core object.
  3. Concrete classes implementing the facet interfaces should be created, providing the necessary views or functionalities by interacting with the core object.
  4. Unit tests should be written to ensure that the facet interfaces and their implementations correctly interact with the core object and provide the expected functionalities.
@wangihzyue
Copy link

hi, @iluwatar , I want to try this issue. Is it ok?

@ohbus
Copy link
Contributor

ohbus commented Apr 24, 2021

Sure thing @wangihzyue

@annieS987
Copy link

Hi, may I help with this issue?

@iluwatar
Copy link
Owner Author

Yes, thank you, go ahead @annieS987

@Jeremy-Cains-ANU
Copy link

G'day. I am also willing to have a crack at this one.

@Jeremy-Cains-ANU
Copy link

http://www.hillside.net/plop/plop2002/final/plop2002_ecrahen0_0.pdf

According to the C2 wiki, "That is not FacetPattern as described here. It appears to be FacadePattern."

All other sources point to facet being much simpler.

Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 27, 2022
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 27, 2022
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 27, 2022
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 27, 2022
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 27, 2022
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 30, 2022
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 30, 2022
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 30, 2022
…n by Maven. Made code in README.md match the Java class code
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 30, 2022
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 30, 2022
Jeremy-Cains-ANU added a commit to Jeremy-Cains-ANU/java-design-patterns that referenced this issue Oct 30, 2022
@stale
Copy link

stale bot commented Nov 28, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

pratigya0 pushed a commit to pratigya0/java-design-patterns that referenced this issue Aug 3, 2023
* change AWS image extension from jpg to png

* add index question in DB section

Co-authored-by: Abdelrahman Badreldeen <abdelrahman.badreldeen@scratchpay.com>
@iluwatar
Copy link
Owner Author

Updated task description

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment