Assignments for the Advanced Programming Course at IIIT Delhi
for learning Object Oriented Programming Principles in Java
├── ArchLegends
│ ├── ArchLegends
│ │ ├── ArchLegends.java
│ │ ├── Assignment 3.pdf
│ │ ├── Game.java
│ │ ├── Hero.java
│ │ ├── Monster.java
│ │ └── SideKick.java
│ └── ArchLegendsUpdate
│ ├── ArchLegends.java
│ ├── Assignment 4.pdf
│ ├── Game.java
│ ├── Hero.java
│ └── Monster.java
├── Fibonacci
│ ├── Assigment-7.pdf
│ ├── Consumer.java
│ ├── Fibonacci.java
│ └── Producer.java
├── Marathon
│ └── Marathon.java
├── Marketplace
│ ├── AP_Assignment_2.pdf
│ └── OnlineMarketplace.java
├── Placements
│ ├── AP_Assignment_1.pdf
│ └── Placements.java
└── Racing Game
├── RacingGame
│ ├── Assignment-5.pdf
│ ├── Computer.java
│ ├── Tile.java
│ └── User.java
└── RacingGameExtended
├── Assignment-6.pdf
├── Computer.java
├── MyTest.java
├── MyTestRunner.java
├── MyTestSuite.java
├── TestSerialization.java
├── Tile.java
└── User.java
Refer to the Assignment_*.pdf files in the directories for more details
A single-player role-playing game. The game is set in a time where a demon named Lionfang and his lieutenants have taken over the kingdom of Thunderforge. The purpose of the game is to allow the user to start as a hero and then defeat Lionfang. To reach LionFang the hero has to go through different locations where each location consists of a monster of a randomly assigned level.
Heroes : Warrior, Mage, Thief, Healer
Monsters : Goblins, Zombies, Fiends, Lionfang
A producer-consumer based Fibonacci number calculator in Java by using explicit multithreading. Facade, Observer and Flyweight design patterns have been incorporated.
A Swing application to find winner of marathon.
A prototype of online store. The aim of the application is to connect merchants with customers and make the ensuing transaction hassle-free. OOP concepts like interfaces and polymorphism were incorporated while building the application.
A system for placement office to keep track of student placements and companies.
A dice-roll game like Snakes & Ladder.The game starts with the user entering the total number of tiles on the race track. Each tile represents one position in one dimension. This is a single player game and once the game starts, its the computer who plays the game without any user intervention, and continues playing until the player wins.
Tiles: Snake, Vulture, Cricket, White, Trampoline