When comparing Ninja IDE vs Code::Blocks, the Slant community recommends Code::Blocks for most people. In the question“What are the best IDEs for C++ on Linux?” Code::Blocks is ranked 8th while Ninja IDE is ranked 23rd.
Ranked in these QuestionsQuestion Ranking
Pro Syntax highlighting
Plugins can easily be created to add features that you may need but are otherwise missing from the IDE.
Pro Virtualenv support
Has out of the box support for virtualenv, which can be added when first starting a project or later through the settings.
Pro Embedded Python console
Has an embedded python console built in.
Pro Script runner
It is possible to run the project or any file opened in the editor with just one click.
Pro Find in files / find usages
Allows you to search one or more words, a regular expression, etc.
- OS X
Pro Built-in static analysis
NInja IDE highlights both static and PEP8 errors in a file. With each type of error having its own icon.
Pro Render HTML files
Also supports rendering HTML files currently loaded in the editor.
Pro Project management
Allows you to manage projects, saving descriptions and information about them and letting the user to perform file management related task inside the IDE itself.
Pro Easily locate code
Code locator allows quick and direct access to any file, function or class inside one of the project by simply pressing a few keys. Pressing
Ctrl + K open a popup over a text field, where you can type the name of what you want.
Pro Symbols explorer built in
You can easily see all functions, classes and attributes in the current program.
Pro Written in Python
Pro Bash support
Pro Sublime snippets
Pro Multi-language support
Pro Easy to use
Pro Simple Library import
Con Latest version (2.3) is from 2013
But it looks like the project is still maintained towards 3.0 release.
Con Bad performance
Freezes and slows down often.
Con Not very feature rich
By default it's not much more than "What if Gedit had a compiler and a terminal built in?" (or: "What if Notepad had colour coding, auto indents, file structure, a compiler and a terminal built in?")
There are far more professional IDEs out there. This one is much too basic for any efficient use.
Con Slow navigation using mouse
In most IDE's, you can "goto declaration"/"implementation" by holding CTRL and left-clicking on an identifier or include directory. This does not work in Code::Blocks no matter what settings you have. Right-clicking will bring-up a menu that includes these "goto" options, but it's not instant and you'll be slowed down immensely depending on how often you have to do it.
Con Can get quite slow and doesn't look all that good
Con Setting up dark theme requires using system's own gui toolkit
Con Lots of functionality is encountered only in plugins
You can't change keyboard shortcuts, neither share themes with vanilla codeblocks, for example.