This was my initial foray into a career that I love. It's cringe inducing, but I don't ever want to forget where I started. My brother Christian and I pinned our name tags from the restaurant we used to work at together on the refrigerator to remind ourselves how far we've come, and for engineering, this is another name tag pinned to the refrigerator.
Larry Domaine, thank you for throwing kindling on the fire.
This course introduces the fundamental concepts of programming from an object-oriented perspective. Topics include class design, simple data types, control structures, storage allocation, scope, and simple data structures (arrays). Students will develop algorithms to solve programming problems and use debugging techniques to test their solutions. The course emphasizes good software engineering principles while developing fundamental programming skills in the context of a language that supports the object-oriented paradigm. Emphasis will be placed on class design, implementation and problem solving.
Assignment 2
Constructors, Methods & DateTime
Tipper
Very basic Tip calculation app.
VTipper
More advanced Tip app. Demonstrates what we've learned about variable manipulation thus far.
Practice Objects
App demonstrating how Class Objects work.
Insert Fun
Mad Libs. The console UI turned out really well. This is the first opportunity I had to play with console UI design after discovering how to use Console.ReadKey().
Midterm App
Bowling Scores app with sound. Demonstration of MVC: Model, View, Control.
High Low
Guess the number type app.
High Low 2
Adds the ability to bet on your guess to the previous assignment.
Bester
Dice rolling game. UI mimics dice rolling with James Bond themed sound.
Guess the Word
Hangman type game.
|
The game itself runs on it's own task while a keyboard listener runs on another. The game is run from a game class that is instatiated from the base class that monitors keystroaks and passes them to the main game loop. The main game loop uses Unix Epoch based timer throttles to operate events in one task while it waits for a user to enter input via the keyboard. Collision logic is factored by assigning each actor an x/y position that determines their console writeline position and gives them a 'hitbox' to allow for actors to have more than one character representing them. Each actor(besides the player) behaves differently and independantly depending on an index number given to it(enemies, powerups, projectiles). Cumbersome, but works with what logic was made available in the course.
App as it is needs refactoring, but I can't understate how proud I was to get this thing working.
Final App
Student 'database' with console UI.
ITDEV110 - Introduction to Object-Oriented Programming
ITDEV117 - Logic and Problem Solving
IT107 - Social Networking and Business
VICOM128 - Web Development with HTML/CSS
ECON201 - Principles of Microeconomics
ITDEV115 - Intermediate Object-Oriented Programming
ITDEV140 - Programming with Java
ITDEV150 - Database Management with SQL
ITDEV160 - Web Programming with Scripts JavaScript
ITDEV161 - Web Programming 1
ITDEV162 - Client/Server & E-Commerce Implementation
ITDEV177 - Systems Analysis and Design
ITDEV198 - Internship(iStream Financial Services)
ITDEV154 - Data Structures and Programming
ITDEV164 - Web Programming 2
ITDEV199 - Integrated Project
SPEECH212 - Introduction to Theater
MATH202 - Trigonometry
NATSCI184 - Plant Biology
PSYCH231 - Introductory Psychology
SOCSCI299 - Elective - UWM, ARTHIST470 - Topics in American Art: American Woman Artists
COMART103 - Creative Design & Composition