GithubHelp home page GithubHelp logo

burakgomec / shopping_application_design_patterns Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 1.13 MB

Software design lesson final project

License: MIT License

Java 100.00%
singleton-pattern observer-pattern strategy-pattern proxy-pattern bridge-pattern glide

shopping_application_design_patterns's Introduction

Shopping Application(Design Patterns)

In this application, used singleton, proxy, bridge, proxy, strategy design patterns.

Singleton Design Pattern

Singleton design pattern was used in the application in the ShoppingCart class. In the application, the user can have only one shopping cart (object) as long as it is active. A singleton design pattern was used to create a single object from the ShoppingCart class and use this object from different classes.

Proxy Design Pattern

The proxy design pattern was used while creating the order in the application.

Instead of completing the order directly on an order class, payment transactions are controlled by adding a proxy class in between.

Bridge Design Pattern

Bridge design pattern provides modeling and application of objects in separate class structures. Bridge design pattern has been used because a shopping application should contain many message types and message services.

Strategy Design Pattern

Different payment types can be included in the shopping application. New payment methods can be added with new versions. The purpose of using the strategy design model is that a payment transaction can have multiple methods. These methods can be changed independently of each other and new payment methods added.

Observer Design Pattern

In shopping applications, the user can follow the price of a product. As soon as there is a change in the price of the product, the user is notified of this change with email and toast messages notifications. This structure was developed with Observer design pattern.

What's Done In This Project

-Product objects are created in the MainActivity class at runtime. The price of the product named Ps5 is updated after 2 seconds and the user is notified.

-There is only one active user in the application.

-The application has been tested as a view on pixel devices.

-Recyclerview was used in home fragment and shopping cart fragment.

-Glide library was used while editing images.

-A prototype for purchasing products has been developed.

App Screen

App Gif

shopping_application_design_patterns's People

Contributors

burakgomec avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.