TranslateProject/sources/tech/20180129 The 5 Best Linux Distributions for Development.md
2018-04-21 09:48:08 +08:00

12 KiB
Raw Blame History

The 5 Best Linux Distributions for Development

Linux distros for devs Jack Wallen looks at some of the best LInux distributions for development efforts.Creative Commons Zero

When considering Linux, there are so many variables to take into account. What package manager do you wish to use? Do you prefer a modern or old-standard desktop interface? Is ease of use your priority? How flexible do you want your distribution? What task will the distribution serve?

It is that last question which should often be considered first. Is the distribution going to work as a desktop or a server? Will you be doing network or system audits? Or will you be developing? If youve spent much time considering Linux, you know that for every task there are several well-suited distributions. This certainly holds true for developers. Even though Linux, by design, is an ideal platform for developers, there are certain distributions that rise above the rest, to serve as great operating systems to serve developers.

I want to share what I consider to be some of the best distributions for your development efforts. Although each of these five distributions can be used for general purpose development (with maybe one exception), they each serve a specific purpose. You may or may not be surprised by the selections.

With that said, lets get to the choices.

Debian

The Debian distribution winds up on the top of many a Linux list. With good reason. Debian is that distribution from which so many are based. It is this reason why many developers choose Debian. When you develop a piece of software on Debian, chances are very good that package will also work on UbuntuLinux MintElementary OS, and a vast collection of other distributions.

Beyond that obvious answer, Debian also has a very large amount of applications available, by way of the default repositories (Figure 1).

Debian apps Figure 1: Available applications from the standard Debian repositories.Used with permission

To make matters even programmer-friendly, those applications (and their dependencies) are simple to install. Take, for instance, the build-essential package (which can be installed on any distribution derived from Debian). This package includes the likes of dkpg-dev, g++, gcc, hurd-dev, libc-dev, and make—all tools necessary for the development process. The build-essential package can be installed with the command sudo apt install build-essential.

There are hundreds of other developer-specific applications available from the standard repositories, tools such as:

  • Autoconf—configure script builder

  • Autoproject—creates a source package for a new program

  • Bison—general purpose parser generator

  • Bluefish—powerful GUI editor, targeted towards programmers

  • Geany—lightweight IDE

  • Kate—powerful text editor

  • Eclipse—helps builders independently develop tools that integrate with other peoples tools

The list goes on and on.

Debian is also as rock-solid a distribution as youll find, so theres very little concern youll lose precious work, by way of the desktop crashing. As a bonus, all programs included with Debian have met the Debian Free Software Guidelines, which adheres to the following “social contract”:

  • Debian will remain 100% free.

  • We will give back to the free software community.

  • We will not hide problems.

  • Our priorities are our users and free software

  • Works that do not meet our free software standards are included in a non-free archive.

Also, if youre new to developing on Linux, Debian has a handy Programming section in their user manual.

openSUSE Tumbleweed

If youre looking to develop with a cutting-edge, rolling release distribution, openSUSE offers one of the best in Tumbleweed. Not only will you be developing with the most up to date software available, youll be doing so with the help of openSUSEs amazing administrator tools … of which includes YaST. If youre not familiar with YaST (Yet another Setup Tool), its an incredibly powerful piece of software that allows you to manage the whole of the platform, from one convenient location. From within YaST, you can also install using RPM Groups. Open YaST, click on RPM Groups (software grouped together by purpose), and scroll down to the Development section to see the large amount of groups available for installation (Figure 2).

openSUSE Figure 2: Installing package groups in openSUSE Tumbleweed.Creative Commons Zero

openSUSE also allows you to quickly install all the necessary devtools with the simple click of a weblink. Head over to the rpmdevtools install site and click the link for Tumbleweed. This will automatically add the necessary repository and install rpmdevtools.

By developing with a rolling release distribution, you know youre working with the most recent releases of installed software.

CentOS

Lets face it, Red Hat Enterprise Linux (RHEL) is the de facto standard for enterprise businesses. If youre looking to develop for that particular platform, and you cant afford a RHEL license, you cannot go wrong with CentOS—which is, effectively, a community version of RHEL. You will find many of the packages found on CentOS to be the same as in RHEL—so once youre familiar with developing on one, youll be fine on the other.

If youre serious about developing on an enterprise-grade platform, you cannot go wrong starting with CentOS. And because CentOS is a server-specific distribution, you can more easily develop for a web-centric platform. Instead of developing your work and then migrating it to a server (hosted on a different machine), you can easily have CentOS setup to serve as an ideal host for both developing and testing.

Looking for software to meet your development needs? You only need open up the CentOS Application Installer, where youll find a Developer section that includes a dedicated sub-section for Integrated Development Environments (IDEs - Figure 3).

CentOS Figure 3: Installing a powerful IDE is simple in CentOS.Used with permission

CentOS also includes Security Enhanced Linux (SELinux), which makes it easier for you to test your softwares ability to integrate with the same security platform found in RHEL. SELinux can often cause headaches for poorly designed software, so having it at the ready can be a real boon for ensuring your applications work on the likes of RHEL. If youre not sure where to start with developing on CentOS 7, you can read through the RHEL 7 Developer Guide.

Raspbian

Lets face it, embedded systems are all the rage. One easy means of working with such systems is via the Raspberry Pi—a tiny footprint computer that has become incredibly powerful and flexible. In fact, the Raspberry Pi has become the hardware used by DIYers all over the planet. Powering those devices is the Raspbian operating system. Raspbian includes tools like BlueJGeanyGreenfootSense HAT EmulatorSonic Pi, and Thonny Python IDEPython, and Scratch, so you wont want for the necessary development software. Raspbian also includes a user-friendly desktop UI (Figure 4), to make things even easier.

Raspbian Figure 4: The Raspbian main menu, showing pre-installed developer software.Used with permission

For anyone looking to develop for the Raspberry Pi platform, Raspbian is a must have. If youd like to give Raspbian a go, without the Raspberry Pi hardware, you can always install it as a VirtualBox virtual machine, by way of the ISO image found here.

Pop!_OS

Dont let the name full you, System76Pop!_OS entry into the world of operating systems is serious. And although what System76 has done to this Ubuntu derivative may not be readily obvious, it is something special.

The goal of System76 is to create an operating system specific to the developer, maker, and computer science professional. With a newly-designed GNOME theme, Pop!_OS is beautiful (Figure 5) and as highly functional as you would expect from both the hardware maker and desktop designers.

devel_5.jpg

Pop!_OS Figure 5: The Pop!_OS Desktop.Used with permission

But what makes Pop!_OS special is the fact that it is being developed by a company dedicated to Linux hardware. This means, when you purchase a System76 laptop, desktop, or server, you know the operating system will work seamlessly with the hardware—on a level no other company can offer. I would predict that, with Pop!_OS, System76 will become the Apple of Linux.

Time for work

In their own way, each of these distributions. You have a stable desktop (Debian), a cutting-edge desktop (openSUSE Tumbleweed), a server (CentOS), an embedded platform (Raspbian), and a distribution to seamless meld with hardware (Pop!_OS). With the exception of Raspbian, any one of these distributions would serve as an outstanding development platform. Get one installed and start working on your next project with confidence.

Learn more about Linux through the free "Introduction to Linux" course from The Linux Foundation and edX.


via: https://www.linux.com/blog/learn/intro-to-linux/2018/1/5-best-linux-distributions-development

作者:JACK WALLEN 译者:译者ID 校对:校对者ID

本文由 LCTT 原创编译,Linux中国 荣誉推出