Skip to content

Latest commit

 

History

History
27 lines (20 loc) · 942 Bytes

ProgLang.md

File metadata and controls

27 lines (20 loc) · 942 Bytes

C/C++ Programming language definitons

All features and extensions that should use for MaiCStyle

Paradigms

  • Make the job done
  • Yolo coding from the start, you dont know the future, so should not always plan ahead (but experience and knowledge can help avoid some bad futures)
  • Functional when logic are more important than performance
  • Sometime imperative make the job more easily
  • OOP have its place, but not everywhere

C standard and extensions

  • C99 is enough to use in all cases
  • C11 if you need some things fancy, modern
  • C2x never used

C++ Extensions

  • Designated initializer

C++ avoid features

  • RTTI, std::type_info. If Reflection and Serialization is needed, roll your own implementation.
  • Exceptions, avoid as all costs.
  • Deep and complex class inheritation hierarchy.
  • Interface for polymorphism over class.
  • No OOP and design pattern, prefer data structure and algorithm. Simple implementation.