ITM 207 Lecture Notes - Lecture 3: Machine Code, Computer-Aided Design, Extended Ascii
ITM 207 Exam notes:
- Object-orientated design:
o A problem-solving methodology that produces a solution to a problem in terms
of self-contained entitles called objects
o Steps:
▪ Isolate:
• The real-world objects in the problem
▪ Abstract:
• The objects with like properties into groups (classes)
▪ Determine:
• The responsibilities of the group in interacting with other groups
- Object:
o A thing or entity that makes sense within the context of the problem
- EX. You and your friend fix dinner
o Objects:
▪ You, friend, dinner
o Class:
▪ You, and friend are people, people have name, eye color, people can
shop, cook
- Class:
o A description of a group of similar objects
- Object:
o A concrete example of the class
- Classes:
o Contain fields that represent the properties (name, eye, color) and behaviors
(responsibilities) (shop, cook) of the class
- Top-down design:
o Decomposes problems into tasks
- Object-orientated design methodology:
o Brainstorming:
▪ To locate possible classes
▪ A group problem-solving technique that involves the spontaneous
contribution of ideas from all members of the group
• All ideas are potential good ideas
• Think fast and furiously first, and ponder later
• A little humor can be a powerful source
▪ Brainstorming is designed to produce a list of candidate classes
o Filtering:
▪ The classes to find duplicates or remove unnecessary ones
o Scenarios:
▪ Are tried to be sure we understand
o Responsibility algorithms:
find more resources at oneclass.com
find more resources at oneclass.com
▪ Are designed for all actions that classes must exhibit
- Filtering:
o Determine which are the core classes in the problem solution
o There may be two classes in the list that have many common attributes and
behaviors
o There ay e lasses that really do’t elog i the prole solutio
- Scenarios:
o Assign responsibilities to each class
o There are two types of responsibilities:
▪ What a class must know about itself (knowledge responsibilities)
▪ What a class must be able to do (behavior responsibilities)
o Encapsulation:
▪ The bundling of data and actions in such a way that the logical properties
of the data and actions are separated from the implementation
▪ Each class encapsulates its data but shares their values through
knowledge responsibilities
- Compilers:
o High-level language:
▪ A language that provides a richer (more English-like) set of instructions
o Compiler:
▪ A program that translates a high-level language program into machine
code
- Interpreters:
o A translating program that translates and executes the statements in sequence
▪ Assembler or compiler produce machine code as output, which is then
executed in a separate step
▪ An interpreter translates a statement and then immediately executes the
statement
▪ Interpreters can be viewed as simulators
- Assembler:
o Dependent on CPU instructions to get executable code
- Programming language paradigms:
o Imperative paradigm:
▪ Program describes the processing
▪ Procedural:
• Characterized by sequential instructions
• A program in which statements are grouped into a hierarchy of
subprograms
▪ Object-orientated model:
• Program consists of a set of objects and the interactions among
the objects
• Python, java,
o Declarative paradigm:
▪ Program describes the results
find more resources at oneclass.com
find more resources at oneclass.com
Document Summary
Itm 207 exam notes: a problem-solving methodology that produces a solution to a problem in terms of self-contained entitles called objects, steps: Isolate: the real-world objects in the problem, abstract, the objects with like properties into groups (classes, determine, the responsibilities of the group in interacting with other groups. Object: a thing or entity that makes sense within the context of the problem. You and your friend fix dinner: objects, you, friend, dinner, class, you, and friend are people, people have name, eye color, people can. Class: shop, cook: a description of a group of similar objects. Object: a concrete example of the class. Classes: contain fields that represent the properties (name, eye, color) and behaviors (responsibilities) (shop, cook) of the class. Top-down design: decomposes problems into tasks. Compilers: high-level language, a language that provides a richer (more english-like) set of instructions, compiler, a program that translates a high-level language program into machine.