CISC 3142
Programming Paradigms in C++
Fall 2025
Setting Up a C++ Development Environment


I've downloaded and tried all of the following with varying degrees of difficulty.

Command-Line vs IDE

Command-line Development

Developing at the command line means choosing an editor (e.g. vim), editing your code, and then compiling and executing using commands at the command line. Initially you may find yourself entering the editor, making the changes, exiting the editor , compiling at the command line, possibly re-entering the editor (if you have compilation errors), eventually executing from the command line, etc. This may lead you to investigate having multiple windows open — for your editor and the actual command-line compilation/execution.

IDE (Integrated Development Environment)

Using an IDE provides you with both and editor and a way of building and executing your code. It also provides a graphical environment that simplifies navigation among the files of your project, and (though we will in all likelihood not explore it) the integrated use. In addition, it's probably safe to say that most commercial programming environments use some sort of IDE.

Command-Line

I've been using the same tools for the last thirty years (so don't use me as a role model): vim (improved vi — the standard editor that comes with every Unix install), and command line compilation and execution. I supplement this with utilities that provide multiple tabs/panes/windows (e.g. screen and/or tmux on Linux) and some of the fancier commands in vim that allows me to have an editor window open at the same time as a command line for compilation. The upside of this is that I am not working in a graphic environment … I can get onto just about any machine and be able to work as long as I can log into my server. The downside is I am not making use of modern technology such as auto-completion, error indication within the editor, symbolic debugging, etc (though I COULD configure vim to integrate all or at least most of those facilities).

Your Choice of IDE's

CLion (from JetBrains) (Recommended)

Many of you may have been using IntelliJ as your IDE in your previous Java courses. As it is also from JetBrains, it should not be surprising that the interface of CLion is quite similar. Additionally, from what I can tell, CLion seems among the most straightfoward of the IDE's with respect to the level of a 3142 student, so i am recommending it as a first choice.

If you've been using IntelliJ, in all likelihood you've been working with the free Community Edition. The full commercial version (IDEA Ultimate) requires payment, as does CLion. HOWEVER, if you are a student or faculty member currently using it in the context of coursework, JetBrains provides access to ALL of is offerings, including IDEA Ultimate, and more importantly CLION. To gain access, you must provide proof of being a student. Here are two links to do that; the first is a description of the program (and leads to the second), while the second is the application form.

Several students (as well as our department lab text, Dwayne) have told me that you don't have to do anything, simply check off that you're using it for non-commercial purposes. I can't vouch for that, but if nothing else, applying for the Educational Pack gives you access to ALL the JetBrain offerings (e.g. IntelliJ Ultimate … the production-level version). You probably won't need or even look at any of them during your undergraduate work, but …

Here are instructions for getting CLIon up and running on your machine (Windows and Mac — unlike Linux — do not come preinstalled with a C/C++ compiler; so you must download one before installing CLion. If you think you may have one installed on your machine, you can check in Windows by opening the Command Prompt and typing g++; in Mac by opening Terminalaand typing clang++.)

Native Windows IDE

The native IDE for Windows is Visual Studio — it was developed by Microsoft who is also the developer of the underlying OS (Windows). The Community Edition is free and straightforward to install.

Native Mac IDE

The native IDE for the Mac is XCode — it was developed by Apple who is also the developer of the underlying OS (macOS). Community Edition is free and straightforward to install

Linux

If you're using Linux, yo should have a C/C++ compiler installed already, and you probably know your way around either the IDE's or command-line work.

Other Options

Sample Program to Test Your Installation

 
#include <<iostream>>

using namespace std;

int main() {
	cout << "Hello world!" << endl;
}