Smart Shopping

Mobile shopping application developed to help users save money by comparing prices.

Smart Shopping 1
Smart Shopping 2
Smart Shopping 3
Smart Shopping 4
Smart Shopping 5
Smart Shopping 6
Smart Shopping 7

Project Description

Developed using Java in the Android Studio environment, this mobile application aims to solve a common real-world problem: reducing expenses by comparing product prices across different stores. The app allows users to easily find the products they’re looking for and instantly access pricing information from various retailers. It also calculates the total cost of items in the shopping cart, helping users save time by eliminating the need to visit multiple stores and avoid unexpected prices at checkout.

Thanks to JDBC and Firebase integrations, the application allows manufacturers to add product data, while end users can access real-time price comparisons and detailed product information. With QR code and mobile payment technologies, users benefit from both time and cost savings. Additionally, user reviews of products are stored in the Firebase database, enabling users to share their experiences and help others make more informed purchasing decisions. Thus, the app not only offers price comparisons but also becomes a comprehensive shopping guide enriched with social feedback.

To optimize data access and speed up search operations, the HashMap data structure is used. HashMap works on a key-value basis, allowing fast and efficient data queries through unique identifiers such as product names or barcodes. This way, when a user enters a keyword, the application retrieves the relevant information instantly without scanning the entire dataset, thereby improving performance.

The app also uses the LinkedList data structure to dynamically manage the shopping cart. This allows users to add and remove products efficiently without shifting other elements. The Stack data structure is used to provide undo functionality, enabling users to easily restore accidentally deleted items. All of these data structures are combined with object-oriented programming (OOP) principles to enhance the application's performance, flexibility, and overall user experience.

Technologies Used

Java
Android Studio
Firebase
Data Structures
OOP
XML
Git
View Code