Skip to content

πŸ¦– A collection of Programming 4 lab projects from the fourth semester at Howest DAE (2024). Focused on software and game programming patterns, modular code architecture, and advanced C++ memory and design practices β€” bridging the gap between academic projects and professional game development.

License

Notifications You must be signed in to change notification settings

knapeczadam/programming-4

Repository files navigation

πŸ¦– Programming 4

Hey there, fellow DAE developer, future engine programmer, or just a curious explorer πŸ‘‹
Welcome to my Programming 4 repository β€” the final chapter in the DAE programming series.
This semester focused on software architecture, design patterns, and efficient C++ engineering, setting the stage for larger-scale game projects and engine development.


πŸ—„οΈ About this repository

This repo contains all lab exercises and weekly projects from the Programming 4 course at DAE.
Like earlier semesters, each week’s work is preserved for archival and learning purposes β€” showing progression in problem-solving, software design, and engine-level thinking.

⚠️ These projects were made in an academic setting.
Expect incomplete features, testing code, and exploratory experiments.
It’s not a finished framework β€” it’s a development journey snapshot.


πŸ”Ž Course Information

πŸ“š Course: Programming 4
🏫 University: Howest University of Applied Sciences - Digital Arts and Entertainment
πŸ“ Location: Kortrijk, Belgium
πŸ—“οΈ Acamedic year: 2023–24 | Fourth semester
πŸŽ“ Study load: 6 credits
⏱️ Total study time: 180 hours


πŸ‘¨β€πŸ« Teaching Staff

  • Co-ordinator: Alex Vanden Abeele
  • Other teaching staff: Tom Tesch

🎯 Learning Goals

  • Manage stress and workload under tight deadlines
  • Organize and maintain a clean game project file structure
  • Monitor project progress and request feedback when needed
  • Research and apply relevant technical and theoretical sources
  • Select and use appropriate software patterns for project structure
  • Justify design and implementation choices using established principles
  • Review and evaluate own and peers’ work critically
  • Identify and fix errors within the game project
  • Plan and assess the technical feasibility of concepts
  • Develop and integrate graphical content considering technical limits
  • Work independently and efficiently on real-time applications
  • Write optimized, structured, and maintainable code
  • Solve problems using proper programming languages and techniques
  • Utilize game engines, frameworks, and tools effectively

🧩 Course Content

  • Software Design Patterns
  • Game Programming Patterns
  • Error Handling
  • Namespaces & Modules
  • PIMPL (Pointer to Implementation) Principle
  • CRTP (Curiously Recurring Template Pattern)
  • Advanced Memory Management

πŸ“‚ Repository Structure

  • Each week has its own branch, e.g.
    • 03 β†’ Week 3
    • 10 β†’ Week 10
  • Each branch focuses on a specific programming or design pattern topic.

πŸš€ Releases

Weekly compiled builds are archived in the πŸ“¦ Releases section.
Example:

programming_4-10-1.0.0-windows-x64.zip

Each release represents a stable snapshot of the week’s lab assignment or pattern implementation.


🧠 Final Thoughts

Programming 4 was all about thinking beyond syntax β€” understanding how to build maintainable systems, structure reusable components, and manage complexity at scale.
It marks the transition from β€œwriting code” to designing software, bridging the academic foundation with the mindset required for professional game and engine development.

If you’re currently at this point in DAE: learn the patterns, experiment with architecture, and remember β€” elegant design always outlasts clever hacks πŸ§ πŸ’‘


βš–οΈ License

This repository is licensed under the MIT License β€” explore, adapt, and learn freely.


Built with templates, patterns, and the eternal struggle against circular dependencies πŸ”
β€” ÁdΓ‘m

About

πŸ¦– A collection of Programming 4 lab projects from the fourth semester at Howest DAE (2024). Focused on software and game programming patterns, modular code architecture, and advanced C++ memory and design practices β€” bridging the gap between academic projects and professional game development.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published