Download presentation
Presentation is loading. Please wait.
1
Issues of OO Project Management Programming Language Selection
2
Managing Smalltalk The misconception: “Smalltalk is small” The truth - it has a very large class library one could use Alternaive – develop the implementation of classes from scratch Primary hazard – performance Many projects gave up Smalltalk because were not satisfied with performance Although some real-time systems were implemented to demonstrate Smalltalk need not be slow.
3
Managing Performance Issues Allocate time for performance improvements in the project plan Use a performance measuring tool (profiler) empirically evaluate parts of system for time/memory consumption usually the bottlenecks exist only in a very few places To improve performance of a bottle necks – select a different data structure or different algorithm
4
Managing C++ The misconception – “C++ is like C” The truth – it is a much bigger and much more complex language than C Some people love it and some people consider it “the most significant technical hazard to the survival of a project” Primary benefits Performance (fast, memory efficient if used properly) Backward compatibility with C Ability to do system-level programming, integrate with other languages and systems Availability of class libraries Primary hazards complexity of the language possible to program in a non-OO manner
5
Evaluate the following Background of the developers (engineering vs. IS) engineers are usually more used to dealing with subtle language issues of C++ than COBOL programmers Is backward compatibility with C required? Are you building a low-level real-time system? Will your key developers quit if they have to use another language?
6
C++ - dealing with complexity C++ is a very expressive language Develop a standard usage guidelines to simplify and standardize the code. Goal – achieve high readability, minimize language- specific clutter Coming up with good guidelines is a difficult task (so rely on expert opinions and proven solutions) but it is even more difficult to enforce the standard. Establish design and code reviews
7
Enforcing OO standards Educate your workforce in OO Establish language usage guidelines Establish design and code reviews
8
Java Misconception–“Java is easy to learn and use” the truth – Java is easier and more uniform than C++ (largely because it gives up compatibility with C) Primary benefits: Portability, Strong support for Java in internet browsers Support for concurrency and security No memory management issues Hazards: Performance Still not mature enough – not much data available on the long – term large-scale projects success or failure
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.