Tuesday, 1 March 2016

Object-Oriented Design: What you need to know

OOD (Object-oriented Design)

Simplified understanding - Object Oriented Design is the concept that forces programmers to plan out their code in order to have a better flowing program,  "fields or state can be thought of current conditions within an object. A banana's state would be its shape and colour and size Methods or behaviors can be thought of its acting. With the banana, whether it is ripe or dry can be the behaviour" - Stack Overflow

Image result for C++Re-usability - C++ has a very good way of being Re-usable and this has given it a better edge over it's competitors due to the fact it is easier to copy over work and copy over all the detail and still be able to make very little changes and then have it as it's own code.
so what any program make a call to that function and it should work exactly the same.

Maintenance - It would need to be tested to make sure it is capable of managing it's load and how well It'll cope when updates are applied and the techniques have been evolved. It should have a very good a clean functionality and this will also make it more easier to accomplish their goal of having the easiest and best ways to make and new revolutionary games.

Efficiency -  OOD has not got the greatest efficiency but it can be optimized to be improved by a substantial amount, It will be compared to other coding formats such as java script and C# but these may have better efficiency but they're lacking in other areas when C++ does well especially with it's re-usability which is a lot better than what is compared against. OD design is less about efficiency and more about re-usability, code readability, easy documentation, structure, and more importantly modularity.

Real-world modeling - A real life example of ODD would be a car or any other vehicle, you would also need to take into consideration the colour the car or any patters it may have. You'd also have to consider how and the way it turns left and right as well as moving forwards and backwards too.

Collaboration and sharing - The modeling techniques of OOD provide an interface between creative designers (who can express their requirements without having to know the detail of the code) and programmers (who can use the models to implement the code). Your OOD can be shared with other members of your creative team.

Communication - Our blueprints communicate by seeing if an action has occurred and if so then it will be communicating to see if it need to move to the next blueprint or whether it should stay on itself and other type vise versa examples.

Quality assurance - To make sure the game works well would be to conduct a small trial test to see everything looks and controls the way it should and if it doesn't then changes will need to be made but if the game appears to have no bugs or glitches with it then the game will be able to go straight to the next process. You  could also seek outside help from professional game testers and they would test the game to a heavy extent.
Inheritance - inheritance is the principle of class hierarchy. it is the ability for one object to take on the statues savories functionality of another object. This shows the other objects that there is a order that they have to follow. A real-world example of inheritance is genetic inheritance. We all receive genes from both our parents that then define who we are. We share qualities of both our parents, and yet at the same time are different from them. Objects in OOD and do the same thing parent classes have child classes (also known as super classes and subclasses respectively) which can have the same properties of the parent class, and can define new states, behaviors, and functionality of their own. In object-oriented programming, inheritance enables new objects to take on the properties of existing objects.

Game Objects -

sprites - Theses are created items that can be used as objects, characters and rooms which then have properties added to make them functional.
characters - These are the playable and AI created users and these will normally be what you can control and use to roam around and do the missions or objective of the game and so this is a valuable and important side to creating games and setting them up. 

weapons - These are what your characters can use to either attack or defend themselves from attackers or what ever they might be fighting or trying to accomplish, These can be vital if you are going to make a game with attacking being involved.

rooms - These will be enterable areas where you will be able to maybe search for items or fight enemies, These will be detailed and have good items involved too so sprites will be added and create the surrounding to make it more realistic.

walls - These are put in place to stop the player going out of the created area otherwise it would leave to problems so it is important to have a wall around the area in that sense.

scenery - This will be the background as well as the surroundings of the game such as environment and this will benefit the look of realism in the game and will add to the game being authentic so it is important to have a Scenery with a good sense to it and match the feel of what you're trying to achieve.

instances - This would be important when operating OOD as this will allow the player to set up scenarios and then this will allow for them to create choices and effect areas or gameplay. 

rewards - Rewards would be used for giving the player a sense of achievement and this would allow for a leveling system or something to a similar state which would give them a reason to play the game after they had completed the original game.

Object properties:

colour - Colour is important to distinguish as this can help players recognize pickups such as health or weapons and so colour is a important factor to have in the game as it leads to easier recognition.
  
size - Getting the correct size for an object is important to get otherwise items will seem out of size as things will be bigger or smaller than they should be and this would lead to trouble due to un-proportioned object sizes.

speed - Getting the correct speed of character model walking pace is important as if not perfect it will seem out of place and will not be as good sue to the timing mishap.

movement - This is very similar to speed as getting the timing for movement correct otherwise it will not look right and the game will not be as good, another thing that will be good to look out for will be getting the right look like making sure the arm moves in the correct way and has the right movement.

sounds - These are important as this adds atmosphere and tension and without this the games that do so well would not be consider as good so it is important to achieve this in the correct way.

health - This will depend on if you lose lots of health or little bits from certain attacks. This is something that will be able to be edited in blueprints and so this will be an easy thing to apply into the game.

lives - This is something that most people need to consider when making a game and what to do when the game is set and how life systems work and what happens when you lose a life or run out of lives and so this is an important thing to consider. 

3 comments:

  1. Replies
    1. I know right? Report this guy already!! nice to talk with you choccy :D

      Delete
    2. This comment has been removed by a blog administrator.

      Delete