Test your basic knowledge |

SWA - Software Architecture

Instructions:
  • Answer 50 questions in 15 minutes.
  • If you are not ready to take this test, you can study here.
  • Match each statement with the correct term.
  • Don't refresh. All questions and answers are randomly picked and ordered every time you load a test.

This is a study tool. The 3 wrong answers for each question are randomly chosen from answers to other questions. So, you might find at times the answers obvious, but you will see it re-enforces your understanding as you take the test each time.
1. Use only through the interface of the object.






2. You have to tell it to link






3. Do not optimize until the very end.






4. Trying to access a location in memory that your computer cannot access.






5. Takes information in the index and pushes it onto the stack.






6. About the interface to an object. Data contained within.






7. When a concrete class inherits from a pure interface.






8. Black Box - The way the program works is internally unknown.






9. Variable doesn't exist.






10. Put this before a function name in a dll - and the function name will avoid name mangling






11. Always do the simplest design that could possibly work.






12. Copies all changes from one branch into another branch.






13. Valid input that the program is designed to process.






14. When GIT cannot merge your data.






15. When a class is defined within another class.






16. Allows you to switch your working copy to another branch.






17. No man's land. Guard bytes before the after allocated heap memory.






18. When exporting a dll - the names of the functions are changed. This is knwon as ____________.






19. Code generation in a lib






20. (Door-----Spell) BI_DIRECTIONAL because both classes can reference each other. (Door--->Spell) DIRECTIONAL because only the door knows and can reference Spell.






21. Ignores files when pushing.






22. Makes a copy of your repository.






23. Initialized heap memory.






24. 2 Eyes + 2 Minds = AWESOME!






25. Plan out your code.






26. Use this to find a memory address or signiture in a dll






27. Input






28. When a conflict is fixed.






29. Static in C++. Can span all instances of a class.






30. Simply a value.






31. Makes a project compile in order of who is dependent on what






32. Ask questions and obtain the details and requirements given.






33. Define a one-to-many dependency between objects so that when one object changes state - all its dependents are notified and updated automatically






34. A reference. Has and delete dynamic memory. implies ownership (Association does not).






35. The default nickname for the remote repository.






36. Downloads without merging.






37. One of the linking methods (pragma comment)






38. Portioning your changes to commit by inserting them into the index.






39. Meetings used to create a release plan - which will lay out the overall project.






40. Compose objects into tree structures to represent part-whole hierarchies. Lets clients treat individual objects and compositions of objects uniformly.






41. Inheritance between object.






42. When doing a - precise task.






43. Uploads all changes staged in the index list into the repository database.






44. When a .cpp file is compiled - the header files are first included (recursively) by the pre-processor. This block of code is called a ______________.






45. Current view/ previous line.






46. Classes build off of each other.






47. The process of deciding which function definition to link during run-time.






48. Keeps a team using a similar naming convention for things.






49. Developers should be integrated and releasing code into the code repository every few hours.






50. Fix any problems and then repeat the process.