LanguageSelection
Choosing the project's implementation language.
Introduction
The Candidates
The Selection Process
The selection process will include the following steps:
- List the pros and cons of each language.
- Assign a score of +1 to each pro to get the ProScore.
- Assign a score of -1 to each con to get the ConScore.
- The language's overall score is ProsScore + ConScore = LangScore.
- The language with the highest overall LangScore will be selected.
C (LangScore: -1)
Pros (ProScore: 3)
- Very familiar language.
- Fast program execution.
- Highly standardized.
Cons (ConScore: 4)
- Not object oriented.
- Weak type strength.
- GUI support only in Linux?
- Type unsafe.
C++ (LangScore: 3)
Pros (ProScore: 6)
- Familiar language.
- Object oriented.
- Good for multi-platform applications.
- Strong type strength.
- Standardized.
- Nominative compatibility.
Cons (ConScore: 3)
- No simple GUI tools.
- Multi-threading unsupported.
- Type unsafe.
C# (LangScore: 4)
Pros (ProScore: 7)
- Language of the existing simulator.
- Designed for rapid development.
- Fast and easy GUI implementation.
- Object Oriented.
- Strong type strength.
- Type safe.
- Standardized.
Cons (ConScore: 3)
- Targeted for Windows only.
- Unfamiliar syntax.
- Multi-threading unsupported.
Java (LangScore: 6)
Pros (ProScore: 8)
- Cross-platform.
- Object Oriented.
- Multi-threading is supported.
- GUI tools are standard.
- Widely used in industry (would make me more marketable).
- Strong type strength.
- Type safe.
- Nominative compatibility.
Cons (ConScore : 2)
- Unfamiliar syntax.
- Not standardized.
Conclusion
Java received the highest overall LangScore, so it will be used to implement the system's modules and functions.
References
I used the following web pages to inform my decision:
Comparison of Programming Languages
No comments:
Post a Comment