Professional Documents
Culture Documents
2 Criteria of Object Orientation and Key Construction Decisions
2 Criteria of Object Orientation and Key Construction Decisions
2 Criteria of Object Orientation and Key Construction Decisions
and
Key Construction Decisions
Author and prepared by
Bertrand Meyer
Presented by
Engr. FAROOQ IQBAL
Welcome!!
Lecture 02
Learning Outcomes
• The set of criteria which follows has been divided into three parts:
• Method and language: these two almost indistinguishable aspects cover the believed
processes and the notations used to analyze and produce software. Be sure to note
that (especially in object technology) the term “language” covers not just the
programming language in a strict sense, but also the notations, textual or graphical,
used for analysis and design.
• Implementation and environment: the criteria in this category describe the basic
properties of the tools which allow developers to apply object-oriented ideas.
Cross-platform
Java, Perl, Python Assembler, C#, Visual Basic
development
Direct memory
Assembler, C, C++ C#, Java, Visual Basic
manipulation
Easy-to-maintain
C++, Java, Visual Basic Assembler, Perl
program
Assembler, C, C++,
Fast execution JavaScript, Perl, Python
Visual Basic
Kind of Program Best Languages Worst Languages
For environments with
Assembler, C C#, Java, Visual Basic
limited memory
Mathematical
Fortran Assembler
calculation
• Have you defined an integration procedure, that is, have you defin
ed the specific steps a programmer must go through before check
ing code into the master sources?
• Will programmers program in pairs, or individually, or some combi
nation of the two?
Quality Assurance
• Will programmers write test cases for their code before writing the
code itself?
• Will programmers write unit tests for the their code regardless of
whether they write them first or last?
• Will programmers step through their code in the debugger before
they check it in?
• Will programmers integration-test their code before they check it i
n?
• Will programmers review or inspect each others’ code?
Review Questions