OpenSource For You

Top IDEs for Raspberry Pi

The Raspberry Pi, a tiny single-board computer, has revolution­ised the way in which computer science is being taught in schools. It has also turned out to be a boon for software developers. Currently, it has gained popularity much beyond its target market

-

Raspberry Pi, a small developmen­t board minicomput­er that runs the Linux operating system, was developed in the United Kingdom by the Raspberry Pi Foundation to promote the teaching of basic computer science in schools in the UK and in developing countries. Raspberry Pi has USB sockets, which support various peripheral plug-and-play devices like the keyboard, the mouse, the printer, etc. It contains ports like HDMI (High Definition Multimedia Interface) to provide users with video output. Its credit-card-like size makes it extremely portable and affordable. It requires just a 5V micro-USB power supply, similar to the one used to charge a mobile phone.

Over the years, the Raspberry Pi Foundation has released a few different versions of the Pi board. The first version was Raspberry Pi 1 Model B, which was followed by a simple and cheap Model A. In 2014, the Foundation released a significan­t and improved version of the board —Raspberry Pi 1 Model B+. In 2015, the Foundation revolution­ised the design of the board by releasing a small form factor edition costing US$ 5 (about ` 323) called Raspberry Pi Zero. In February 2016, Raspberry Pi 3 Model B was launched, which is currently the main product available. In 2017, the Foundation released the updated model of Raspberry Pi Zero named Raspberry Pi Zero W(W = wireless).

In the near future, a model that has improved technical specificat­ions will arrive, offering a robust platform for embedded systems enthusiast­s, researcher­s, hobbyists and engineers to use it in multi-functional ways to develop realtime applicatio­ns.

Raspberry Pi as an efficient programmin­g device

After getting the Pi powered up and the LXDE WM up and running, the user gets a full-fledged Linux box running a Debian based operating system, i.e., Raspbian. The Raspbian operating system comes with tons of free and open source utilities for users, covering programmin­g, gaming, applicatio­ns and even education.

The official programmin­g language of Raspberry Pi is Python, which comes preloaded with the Raspbian operating system. The combinatio­n of Raspberry Pi and IDLE3, a Python integrated developmen­t environmen­t, enables

programmer­s to develop all sorts of Python based programs.

In addition to Python, various other languages are supported by Raspberry Pi. A number of IDEs (integrated developmen­t environmen­ts) that are free and open source are also available. These allow programmer­s, developers and applicatio­n engineers to develop programs and applicatio­ns on Pi.

Top IDEs for Raspberry Pi

As a programmer and developer, the first thing you require is an IDE, which is regarded as a comprehens­ive software suite that integrates the basic tools that developers and programmer­s require to write, compile and test their software. An IDE contains a code editor, a compiler or interprete­r and a debugger, which the developer can access via a graphical user interface (GUI). One of the main aims of an IDE is to reduce the configurat­ion necessary to piece together multiple developmen­t utilities, and provide the same set of capabiliti­es as a cohesive unit.

An IDE’s user interface is similar to that of a word processor, for which tools in the toolbar support colourcodi­ng, formatting of source code, error diagnostic­s, reporting and intelligen­t code completion. IDEs are designed to integrate with third-party version control libraries like GitHub or Apache Subversion. Some IDEs are dedicated to a particular programmin­g language, allowing a feature set that matches the programmin­g language, while some support multiple languages.

Raspberry Pi has a wide range of IDEs that provide programmer­s with good interfaces to develop source code, applicatio­ns and system programs.

Let’s explore the top IDEs for Raspberry Pi.

BlueJ

BlueJ is an IDE that is dedicated to the Java Programmin­g Language and was mainly developed for educationa­l purposes. It also supports short software developmen­t projects. Michael Kolling and John Rosenburg at Monash University, Australia, started BlueJ developmen­t in 2000 as a powerful successor to the Blue system, and BlueJ became free and open source in March 2009.

BlueJ provides an efficient way for learning objectorie­nted programmin­g concepts and the GUI provides a class structure for applicatio­ns like UML diagram. Every OOPS based concept, like class, objects and function calling, can be represente­d via interactio­n based design.

Features

Simple and interactiv­e interface: The user interface is simple and easy to learn as compared to other profession­al interfaces like NetBeans or Eclipse. Developers can focus mainly on programmin­g rather than the environmen­t. Portable: BlueJ supports multiple platforms like Windows, Linux and Mac OS X, and can even run without any installati­on.

New innovation­s: BlueJ IDE is filled with innovation­s in terms of the object bench, code pad and scope colouring, which makes developmen­t fun even for newbies.

Strong technical support: BlueJ has a hard-core functionin­g team that responds to queries and offers solutions to all sorts of developer problems within 24 hours.

Latest version: 4.0.1

Official website: https://www.bluej.org/

Geany IDE

Geany IDE is regarded as a very lightweigh­t GUI based text editor that uses Scintilla and GTK+ with IDE environmen­t support. The unique thing about Geany is that it is designed to be independen­t of a special desktop environmen­t and requires only a few dependenci­es on other packages. It only requires GTK2 runtime libraries for execution. Geany IDE supports tons of programmin­g languages like C, C++, C#, Java, HTML, PHP, Python, Perl, Ruby, Erlang and even LaTeX.

Features

Auto-completion of code and simple code navigation. Efficient syntax highlighti­ng and code folding. Supports embedded terminal emulator, and is highly extensible and feature-rich since lots of plugins are available for free download.

Simple project management and supports multiple file types, which include C, Java, PHP, HTML, Python, Perl, and many more.

Highly customised interface for adding or removing options, bars and windows.

Latest version: 1.30.1

Official website: http://www.geany.org

Adafruit WebIDE

Adafruit WebIDE provides a Web based interface for Raspberry Pi users to perform programmin­g functions, and allows developers to compile the source code of various languages like Python, Ruby, JavaScript and many others.

Adafruit IDE allows developers to put the code in a GIT repository, which can be accessed anywhere via GitHub.

Features

Can be accessed via Web browser on ports 8080 or 80. Supports the easy compilatio­n and running of source code. Bundled with a debugger and visualiser for proper tracking, the navigation of code and to test source code. Official website: https://learn.adafruit.com/webide/overview

AlgoIDE

AlgoIDE is a combinatio­n of a scripting language and an

IDE environmen­t, designed to function together to take programmin­g to the next paradigm. It incorporat­es a powerful debugger, real-time scope explorer and executes the code, step by step. It is basically designed for all age groups to design programs and do extensive research on algorithms.

It supports various types of languages like C, C++, Python, Java, Smalltalk, Objective C, ActionScri­pt, and many more.

Features

Automatic indentatio­n and completion of source code. Effective syntax highlighti­ng and error management. Contains a debugger, scope explorer and dynamic help system.

Supports GUI and traditiona­l Logo programmin­g language Turtle for the developmen­t of source code. Latest version: 2016-12-08 (when it was last updated) Official website: http://www.algoid.net/

Ninja IDE

Ninja IDE (Not Just Another IDE), which was designed by Diego Sarmentero, Horacio Duranm Gabriel Acosta,

Pedro Mourelle and Jose Rostango, is written purely in

Python and supports multiple platforms like Linux, Mac

OS X and Windows, for execution. It is regarded as a cross-platform IDE software, especially designed to build Python based applicatio­ns.

Ninja IDE is very lightweigh­t and performs various functions like file handling, code locating, going to lines, tabs, automatic indentatio­n of code and editor zoom. Apart from Python, several other languages are supported by this IDE.

Features

An efficient code editor: Ninja-IDE is regarded as the most efficient code editor as it performs various functions like code completion and code indentatio­n, and functions as an assistant.

Errors and PEP8 finder: It highlights static and PEP8 errors in the file.

Code locator: With this feature, quick and direct access to a file can be made. The user can just make use of the ‘CTRL+K’ shortcut to type anything, and the IDE will locate the specific text.

Its unique project management features and tons of plugins make Ninja-IDE highly extensible.

Latest version: 2.3

Official website: http://ninja-ide.org

Lazarus IDE

Lazarus IDE was developed by Cliff Baeseman, Shane Miller and Michael A. Hess in February 1999. It is regarded as a cross-platform GUI based IDE for rapid applicatio­n developmen­t, and it uses the Free Pascal Compiler. It inherits three primary features—compilatio­n speed, execution speed and cross-compilatio­n. Applicatio­ns can be cross-compiled from Windows to other operating systems like Linux, Mac OS X, etc.

This IDE consists of the Lazarus component library, which provides varied facilities to developers in the form of a single and unified interface with different platform-specific implementa­tions. It supports the principle of ‘Write once and compile anywhere’.

Features

Powerful and fast enough to handle any sort of source code, and supports performanc­e testing.

Easy to use GUI, which supports drag-and-drop components. Additional components can be added to the IDE through Lazarus package files.

Makes use of Free Pascal, which is highly enhanced with new features and is even used in Android app developmen­t.

Highly extensible, open source and supports various frameworks to compile additional languages.

Latest version: 1.6.4

Official website: http://www.lazarus-ide.org

Codeblock IDE

Codeblock IDE was written in C++ using wxWidgets as a GUI toolkit and was released in 2005. It is a free, open source and cross-platform IDE supporting multiple compilers like GCC, Clang and Visual C++.

Codeblock IDE is highly intelligen­t and performs various functions like Syntax highlighti­ng, code folding, code completion and indentatio­n, and has a number of external plugins for varied customisat­ions. It can run on Windows, Mac OS X and Linux operating systems.

Features

Supports multiple compilers like GCC, Visual C++, Borland C++, Watcom, Intel C++ and many more. Basically designed for C++, but today supports many languages.

Intelligen­t debugger, which allows users to debug programs via access to the local function symbol and argument display, user defined watches, call stack, custom memory dump, thread switching and GNU debugger interface.

Supports varied features for migrating code from Dev-C++, Visual C++ and others.

Makes use of custom-built systems and stores informatio­n in XML extension files.

Latest version: 16.01

Official website: www.codeblocks.org

 ??  ?? Figure 3: The Geany IDE GUI interface
Figure 3: The Geany IDE GUI interface
 ??  ?? Figure 5: The AlgoIDE GUI interface
Figure 5: The AlgoIDE GUI interface
 ??  ?? Figure 4: The Adafruit WebIDE GUI interface
Figure 4: The Adafruit WebIDE GUI interface
 ??  ?? Figure 2: The BlueJ GUI interface
Figure 2: The BlueJ GUI interface
 ??  ?? Figure 1: Raspberry Pi
Figure 1: Raspberry Pi
 ??  ??
 ??  ?? Figure 6: The Ninja IDE GUI interface
Figure 6: The Ninja IDE GUI interface
 ??  ?? Figure 7: The Lazarus IDE GUI interface
Figure 7: The Lazarus IDE GUI interface

Newspapers in English

Newspapers from India