Relevant Developer Tutorials
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Mudlet uses modern C++17 for the core functionality of the application.
For programming newbies
- C++ - covers everything C++ basics to advanced.
- C++ Discord - great community for help with C++.
- Qt Discord - also a great community, this time for coding in Qt.
For experienced programmers
- Pointers - the core basics of C++. While you can by without needing to know the details, you'll find it really, really useful if you do.
- C++11 - know how to make your life easier with modern C++11.
- C++11 Guide - fantastic guide on everything C++.
- emoji breakdown - everything to know about emojis, is useful to know when working with Mudlet's internal text editing classes.
- Learn X in Y minutes - helpful brief summary/examples for lots of code languages' syntax and concepts, including C++ and Lua
Helpful tools
- Source Trail - get quick overview of an unfamiliar codebase (like Mudlet, if you're just joining here)
- draw.io - Draw and share diagrams online
- http://www.rexex101.com/ - test and explain your regular expressions online
- http://www.rexegg.com/regex-quickstart.html - a good little cheat sheet for regex
Support tools
- https://www.take-a-screenshot.org/ - for all OS, so users can show their problems with ease
- https://color-hex.org/ - Catalogue of colors in different styles, shades, gradients, etc. Very useful for UI design, etc.
Good reading
- catchchallenger wiki - C++, QString benchmarks.
- Effective Qt, Meeting C++ 2015 - tips for modern Qt regarding range-based for, QStrings, and the heap.
- How lambda's can improve your Qt code
- https://github.com/AnthonyCalandra/modern-cpp-features/blob/master/README.md - modern C++ features
- https://marcmutz.wordpress.com/effective-qt/containers/ - Qt's vs standard C++ containers.
- http://theory.stanford.edu/~amitp/GameProgramming/ - A* tips and tricks.
- https://www.reddit.com/r/cpp/comments/7kurp6/recommended_c_tools_for_linux_profiler_static/ - useful C++ tools that can run on Linux.
- https://www.divio.com/blog/documentation - Create 4 kinds of documentation, each serves a different purpose
Support communities
- C++
- tbd
- Qt
- Lua
- tbd
Random tips and tricks
Determine what auto resolves to with:
template <typename T> struct watzattype; void TriggerUnit::doCleanup() { for(auto & trigger : mCleanupList) { watzattype<decltype(trigger)>{};
Compiler will error and tell you the type, TTrigger*& in this example.