Maximal development on limited platforms
For more information, see our website https://light-tech.github.io/devmax.html and sample projects such as https://github.com/light-tech/DevMaxDirectXTutorialSample on our GitHub.
DevMax is a C/C++ software development environment (IDE). The user interface is inspired mostly by Visual Studio (VS) Code but unlike VS Code
* DevMax is written in C++, not the inefficient TypeScript
* DevMax is much more lightweight (it is less powerful and cannot support extension of course)
Compared to the full Visual Studio suite,
* DevMax is extremely light: the app itself is about 2MB installed and with 30MB more, you get the C/C++ compiler and linker all in a single package (compared to 3GB of basic Visual Studio installation for Desktop Development or 700MB just to get the editor!).
* DevMax does not pollute your system: it does not put files all over the places. Visual Studio produces a hoard of folders in Program Files, puts a bunch of packages in C:\ProgramData\Microsoft\VisualStudio, application configurations in %localappdata%, ... and writes about 100MB of data to the registry!)
* DevMax uses much less memory than Visual Studio: DevMax does not perform irredundant stuffs such as collecting telemetry and pulling news from Microsoft. Typical usage consumes about 10-40MB of memory (more during compilation); compared to about 800MB of VS (for your information, VS launches not one but many different processes at runtime, for pulling news, checking updates, etc.; a typical 2GB RAM machine will nearly max out when running VS).
* DevMax is also much more efficient than typical IDE: Most IDE compiles code by executing external (command line) compiler such as gcc, cl.exe, ... As the compiler and linker are already linked into the app, DevMax needs not launch multiple command line program to compile your code. Files are also cached between different compilation so it can compile way faster than Visual Studio.
* DevMax and its sister app C++ Compiler (get if for free at https://github.com/light-tech/light-tech.github.io/releases) run in separate windows and processes. If you have multiple screen, you can run each application in one screen to maximize your productivity. We do not believe such thing is possible with Visual Studio as of now: You cannot run the VS editor and the build console on separate windows.
* Last but not least, it takes a few seconds to install DevMax while for VS, you will usually hear the following conversation between software engineer and friend:
- What did you do for your first day at work?
- Installing Visual Studio.
Of course, DevMax might not be a tool appropriate for everyone since it does not provide all the convenience and service (such as debugging) of Visual Studio. It suits developers with moderate need; for instance, students trying to learn C/C++ programming or hard core experience developers who knows how to perform diagnostic logging, write unit tests, etc. and requires little live debugging support. (The original goal of DevMax is to develop our own Windows Store application. In fact, DevMax is used to develop itself! We use DevMax to develop and Visual Studio Team Service to build and test the app.)
The workflow is as simple: open a source folder, navigate through it, edit the files.
IT WAS UNFORTUNATE THAT WE COULD NOT BUNDLE THE CLANG COMPILER DIRECTLY INTO OUR APP SINCE THE LIBRARY MADE USE OF DESKTOP API THAT DISALLOW US TO PASS THE STORE CERTIFICATION. GIVEN THE COMPLEXITY OF CLANG, IT IS HARD TO REMOVE THOSE API CALLS. (FROM OUR ANALYSIS, THOSE API ARE NOT ACTUALLY INVOKED BUT THERE IS NO WAY VISUAL STUDIO KNOWS THAT.) DUE TO THIS OVERSIGHT, YOU WILL NEED TO INSTALL A SEPARATE (FREE) APP FROM OUR WEBSITE TO COMPILE C/C++. WE ARE SORRY FOR THIS INCONVENIENCE. ALSO, DUE TO LIMITATION OF THE UNIVERSAL WINDOWS PLATFORM, YOU WILL NEED TO PERFORM EXTRA SET-UP TO COMPILE CODE.
Please refer to our guide at https://light-tech.github.io/devmax.html for step-by-step instructions.
The first version only supports code editing. In the future, we plan to add
* DELETE [Already added in 126.96.36.199 as proof of concept] C++ compiler and linker when Clang 4.0 is released (this is desktop only feature) END DELETE
* Interpreter (desktop-only feature); mostly useful to run your unit tests
* Folder-wide code searching
* And potentially many more such as syntax checking, code formatting