Pro­gram­mer avec le lan­gage Go de Google

Le lan­gage Go a été créé par Google afin d’ex­ploi­ter au mieux la puis­sance des pro­ces­seurs mul­ti­coeurs ac­tuels. Si le Go était ini­tia­le­ment des­ti­né à rem­pla­cer le C pour la pro­gram­ma­tion bas ni­veau, il se sub­sti­tue le plus souvent au Py­thon.

L'Informaticien - - SOMMAIRE -

À l’ori­gine

Pour conce­voir le lan­gage Go, Google a fait ap­pel à plu­sieurs vé­té­rans de la pro­gram­ma­tion : Ken Thomp­son, co- au­teur d’Unix et créa­teur du lan­gage B au­quel a suc­cé­dé le C, Rob Pike, le créa­teur du sys­tème Plan 9 pour Bell, et Ro­bert Grie­se­mer qui a contri­bué au com­pi­la­teur Ja­vaS­cript V8 de Chrome et au pro­jet GCC, le com­pi­la­teur C GNU. Créé en 2007, le Go est uti­li­sé en pro­duc­tion chez Google de­puis mai 2010. Outre le fait qu’il peut rem­pla­cer le C++ très ef­fi­ca­ce­ment dans cer­tains cas de fi­gure – pas tous, loin s’en faut –, il tend aus­si à être uti­li­sé à la place de Py­thon et Ru­by car sa vi­tesse de com­pi­la­tion convient au scrip­ting, tout en pro­dui­sant des bi­naires. Il peut être em­ployé à la place de presque tous les lan­gages de concep­tion de pro­grammes en ligne de com­mande. Le Go in­nove sur­tout au ni­veau de ses fonc­tion­na­li­tés, par­ti­cu­liè­re­ment les Slice, Map, chan­nels et Go­rou­tines. Rob Pike, un des au­teurs, a dé­cla­ré : « Le point cen­tral est que nos pro­gram­meurs sont des Gog­glers, ce ne sont pas des cher­cheurs. Ty­pi­que­ment, ils sont plu­tôt jeunes, fraî­che­ment sor­tis de l’école, ont pro­ba­ble­ment ap­pris le Ja­va, peut- être le C ou C++, et peu­têtre le Py­thon. Ils ne sont pas ca­pables de com­prendre un lan­gage brillant, mais nous vou­lons les ame­ner à réa­li­ser de bons pro­grammes. Ain­si, le lan­gage que nous leur don­nons doit être fa­cile à com­prendre et

fa­cile à adop­ter. » Le Go se­rait donc fait pour pro­gram­mer vite sans trop se creu­ser la tête, en ré­su­mé, mais sans dis­po­ser de toute la puis­sance de lan­gages tels que les C et C++, qui sont eux plus com­plexes.

Cadres d’uti­li­sa­tion de Go

Le Go est prin­ci­pa­le­ment con­çu pour des équipes fluc­tuantes, où les dé­ve­lop­peurs changent souvent. Il per­met d’être ra­pi­de­ment pro­duc­tif même pour des dé­bu­tants. Sa syn­taxe et la fa­çon dont il traite les ob­jets le des­tinent sur­tout à la pro­gram­ma­tion de lo­gi­ciels ser­veurs, la construc­tion de CMS ou la gé­né­ra­tion de pages HTML en rem­pla­ce­ment de Perl, Py­thon, PHP ou même Ja­va. Il per­met à la fois un dé­ve­lop­pe­ment ra­pide et des scripts plus ef­fi­caces que ce qu’offrent la plu­part des lan­gages de script. Il pro­pose des fonc­tion­na­li­tés de concur­rence et un gar­bage col­lec­tor.

L’hy­bride

Ju­gé par cer­tains plus simple que le C++, plus adap­table que Ja­va, plus ra­pide et plus sûr que Py­thon, le Go dis­pose d’une bi­blio­thèque (cô­té ser­veur) com­plète et bien conçue et four­nit les services re­quis aux

Le site of­fi­ciel du lan­gage Go, Go­lang.org, réa­li­sé avec Go : https:// go­lang.org/.

Newspapers in French

Newspapers from France

© PressReader. All rights reserved.