Pick the Per­fect IDE,

Linux pro­vides a pow­er­ful plat­form for soft­ware de­vel­op­ers and of­fers a wide choice of In­te­grated De­vel­op­ment En­vi­ron­ments, as Paul O’Brien ex­plains…

Linux User & Developer - - Welcome -

hile adop­tion of linux is grad­u­ally grow­ing among gen­eral con­sumers, it re­mains a pop­u­lar choice for one par­tic­u­larly tech-savvy group of users: soft­ware de­vel­op­ers. The tech­ni­cal na­ture of the plat­form, which can scare away the av­er­age user, is some­thing that’s rel­ished by de­vel­op­ers as it pro­vides ul­ti­mate cus­tomis­abil­ity and an ex­cel­lent level of per­for­mance for coders.

Soft­ware de­vel­op­ment on any op­er­at­ing sys­tem typ­i­cally takes place within an In­te­grated De­vel­op­ment En­vi­ron­ment (IDE). An IDE is so named be­cause it typ­i­cally brings to­gether the core func­tions needed for soft­ware de­vel­op­ment – such as a source code ed­i­tor (al­ways!), build tools and a de­bug­ger. Other el­e­ments can in­clude built-in source con­trol, GUI de­sign, ob­ject-ori­en­tated de­vel­op­ment tools and in­tel­li­gent code com­ple­tion to make the de­vel­op­ment process eas­ier.

When choos­ing an IDE, your se­lec­tion is usu­ally driven by the pro­gram­ming lan­guages that are sup­ported. Many IDEs choose to fo­cus on a spe­cific lan­guage and this has been the tra­di­tional ap­proach in the past, but more re­cently IDEs have moved to­wards multi-lan­guage sup­port, of­ten pro­vided by plug-ins created by the com­mu­nity. This trend has been driven by the growth in pop­u­lar­ity of text ed­i­tors that have grown into more fully fea­tured IDEs; some of the most fre­quently used IDEs in­clud­ing Vis­ual Stu­dio Code, Atom and Brack­ets have hum­ble ori­gins as rel­a­tively ba­sic ed­i­tors.

Some of the most widely used IDEs are paid-for prod­ucts, in­clud­ing the hugely pop­u­lar Jet­brains suite, but many, par­tic­u­larly those that thrive on their open source ex­ten­sions, are avail­able for free. Many IDEs are also cross-plat­form, pro­vid­ing sup­port for Linux, macOS and Win­dows. Even Mi­crosoft’s full-fat ver­sion of Vis­ual Stu­dio, typ­i­cally a Win­dows-only prod­uct, now has a Mac ver­sion and a Linux ver­sion seems likely soon, thanks to the newly open Mi­crosoft and its de­sire to be­come more plat­form-ag­nos­tic.

When de­vel­op­ing for Linux it­self, some IDEs will be en­vi­ron­ment-spe­cific. GNOME Builder is a gen­eral-pur­pose IDE specif­i­cally tai­lored for writ­ing soft­ware for the GNOME desk­top en­vi­ron­ment. It has in­te­grated sup­port for DevHelp, Git and Flat­pak, with code com­ple­tion for the C lan­guages and a plug-in-based ar­chi­tec­ture. On the KDE side of the fence, Qt Cre­ator pro­vides a tai­lored IDE for those de­vel­op­ing us­ing

IDEs have moved to­wards multi-lan­guage sup­port, of­ten pro­vided by plug-ins created by the com­mu­nity

KDE li­braries, as does KDevelop, an­other de­vel­op­ment en­vi­ron­ment that forms part of the KDE project.

As one might ex­pect, there are fre­quent de­bates around what is the best de­vel­op­ment en­vi­ron­ment to use for Linux ker­nel de­vel­op­ment. Vim is typ­i­cally the pre­ferred choice, re­flect­ing the more tech­ni­cal na­ture of ker­nel de­vel­op­ment. Let’s look at some of the op­tions.

Newspapers in English

Newspapers from UK

© PressReader. All rights reserved.