Abstraction Patterns for Cross Platform Development
Al-Afiq Yeong
Writing code that's intended to work across multiple platforms; be it hardware, graphics APIs, online storefronts or operating systems can be rather difficult. Many software engineers struggle when it comes to abstracting code especially junior engineers be it for a commercial software or a hobby project. To make matters worse, there's often not a lot of materials covering such as advance topic. This presentation aims to discuss several abstraction patterns that can be used to write cross platform code using the features and tools that C++ and operating system offers, from the bad to the good as well as the benefits and pitfalls of each method in terms of complexity, maintainability and performance. A case study of several cross-platform frameworks will also be included in the presentation. Hopefully this presentation will serve as a starting point and become the main reference for engineers across multiple experience levels across various industries when writing cross platform code.
Al-Afiq Yeong
A Malaysian who's currently working as a Senior System Engineer at Electronic Arts. My day to day at work includes doing fun and exciting activities like investigating dead locks, memory leaks and making incremental improvements to the game's performance. Prior to Electronic Arts, I was a Programmer at Creative Assembly for Total War and before my stint in the games industry, I worked at varying industries (finance, nuclear and services) as a Software Engineer doing Full Stack Development. In my spare time, I balance between being a new dad and working on my personal experiments.