Take your first step towards a career in software development with this basic to advance modules starting with Java/c# —one of the most in-demand programming languages and the foundation of the Android operating system. This Specialization will teach you core programming concepts and equip you to write programs to solve complex problems. In addition, you will gain the foundational skills and progress gradually to acquire a software engineer needs to solve real-world problems, from designing algorithms to testing and debugging your programs.
What You Can Do
In this program, you will gain the knowledge and skills necessary to prepare you for positions such as:
- Software engineer, administrators or architect for local, regional, and state agencies, IT firms, businesses, telecommunication companies, banks, media houses, and corporations,
What You Will Earn
- A competitive yearly starting salary ranging from GHS32,000 to GHS44,000 per annum
What You Will Learn
Upon completing your practical program, you will have developed the following knowledge and skills:
- Edit, compile and run a Java/C# program; 2. Use conditionals and loops in a Java program; 3. Use Java API documentation in writing programs. 4. Debug a Java program using the scientific method; 5. Write a Java method to solve a specific problem; 6. Develop a set of test cases as part of developing a program; 7. Create a class with multiple methods that work together to solve a problem; and 8. Use divide-and-conquer design techniques for a program that uses multiple methods.
- Read and write data from/to files; 2. Solve problems involving data files; 3. Perform quantitative analyses of data (e.g., finding maximums, minimums, averages); 4. Store and manipulate data in an array or ArrayList; 5. Combine multiple classes to solve larger problems; 6. Use iterables and collections (including maps) in Java.
- Use sorting appropriately in solving problems; 2. Develop classes that implement the Comparable interface; 3. Use timing data to analyze empirical performance; 4. Break problems into multiple classes, each with their own methods; 5. Determine if a class from the Java API can be used in solving a particular problem; 6. Implement programming solutions using multiple approaches and recognize tradeoffs; 7. Use object-oriented concepts including interfaces and abstract classes when developing programs; 8. Appropriately hide implementation decisions so they are not visible in public methods; and 9. Recognize the limitations of algorithms and Java programs in solving problems. 10. Recognize standard Java classes and idioms including exception-handling, static methods, java.net, and java.io packages.
Core Curriculum Competencies
The Core Curriculum Competencies listed below identify what you, as a student, will be able to do upon completion of your programme, regardless of your level. You will acquire these core competencies through your general education courses (i.e. English, Math, etc.) and your program of study courses.
- Communicate clearly and effectively both orally and in writing.
- Demonstrate effective problem solving and reasoning skills.
- Work effectively in groups of people from diverse backgrounds.
- Demonstrate ethical and professional understanding and conduct.
- Apply appropriate information literacy skills to locate, evaluate, and use information effectively.
- Use computers or related technology for practical and/or professional applications.
Apply scientific inquiry and mathematical reasoning to practical problems.