Questora

CPEN 309 — Programming Language Fundamentals

Computer Engineering · University of Ghana

History and overview of programming language from FORTRAN to modern languages such as Java, including reasons for the study of programming fundamentals, challenges and techniques involved in designing programming languages, and role of programming fundamentals in computer engineering. Programming paradigms: procedural and functional programming, object oriented design, encapsulation and information hiding, separation of behavior and implementation, classes and subclasses and inheritance, event driven programming. Syntax and Semantics of programming: basic syntax and semantics of high level language, variables and types, expressions and assignments, simple input-output, conditional and iterative control structures, functions and parameter passing. Algorithms and problem solving: problem solving strategies, role of algorithms in problem solving, algorithms implementation strategies, debugging strategies, algorithm properties and concepts, structured decomposition. Data structures: primitive types, arrays, records, strings and string processing, data representation in memory, stack and heap allocation, runtime storage management, pointers and references, linked structures, implementation for stacks and queues and hash tables, implementation for graphs and trees, strategies for choosing right data structure. Recursions: concept of recursion, recursive mathematical functions, divide-and-conquer strategies, recursive backtracking, implementation of recursion. Using APIs: API programming, class browsers and related tools, programming by example, debugging in API environment, component based computing, middle ware.

Credits
3
Level
Level 300

Other courses on this programme

Practising CPEN 309 with Questora

Upload your own slides, notes and past papers for CPEN 309 and Questora builds mock exams, practice questions and a revision plan from them.

Start free

Course details from University of Ghana Volume 3 Handbook for the Bachelor's Degree: Course Descriptions for Programmes in the Sciences (2017).