Dieci tool di sviluppo per microservizi e cloud

La vita degli sviluppatori è oggi complicata: una volta bastava un compilatore e una buona conoscenza delle librerie per arrivare al risultato finale, senza porsi il problema di scegliere fra tool di sviluppo.

Ora invece che le applicazioni monolitiche e completamente autonome quasi non esistono più, sviluppare significa mettere insieme diversi tool di sviluppo che magari non si devono proprio conoscere a menadito ma “dentro” ai quali bisogna almeno sapersi muovere.

A parte quelli specifici del vostro linguaggio preferito, che magari ha un IDE ma magari anche no, i dieci che seguono sono molto utili a chiunque.

Iniziamo tenendo conto che non si può fare tutto da una interfaccia web o grafica. Sembrerà poco moderno ma bisogna avere familiarità con alcuni componenti che si usano solo, o prevalentemente, da linea di comando.

Ecco quindi proporsi innanzitutto Bash (o PowerShell per chi usa Windows 10): operare in una shell di sistema non è subito semplice e comodo per chi è abituato ai tool di sviluppo grafici, ma permette di “mettere a terra” molta potenza (operativa) in più.

Altri due elementi da linea di comando sono SSH e Curl. SSH ha un volto diverso a seconda del motivo per cui lo si usa: di suo è un protocollo per la cifratura delle comunicazioni su reti non sicure a priori (come Internet) ma chi lo utilizza di solito ne vede solo un aspetto, come l’avvio di connessioni sicure verso server, il trasferimento di file o la generazione di chiavi.

Può essere “rivestito” da una interfaccia grafica, la gestione da linea di comando è più estesa.

Curl è allo stesso tempo un tool di sviluppo moderno e tradizionale. È tradizionale perché tutti i tool da linea di comando lo sono, è moderno perché è pienamente in linea con la concezione a microservizi delle applicazioni attuali.

La sua funzione è quella di dialogare da linea di comando con le API REST dei servizi di rete. Il suo uso è un po’ complesso ma permette di testare le API durante il loro sviluppo o di capire meglio come interfacciarsi con API già esistenti.

Se proprio non potete fare a meno di una interfaccia grafica, allora c’è Postman.

Entrando nel mondo cloud non è possibile non citare Amazon Web Services, anche se propriamente non è in toto un tool di sviluppo. Certo ci sono altri cloud provider ma per chi sviluppa è inevitabile prima o poi avere a che fare con AWS.

La gamma di servizi che offre è ormai molto ampia, la base indispensabile è capire come gestire le macchine virtuali. Basta anche esercitarsi un po’ con i servizi base, gratuiti.

Elementi di supporto

Uno sviluppatore moderno deve saper avere a che fare con i database non relazionali (se preferite, i database NoSQL).

L’offerta è davvero molto ampia e con approcci anche molto diversi alla gestione dei dati, i document database sono molto diffusi e le competenze sviluppate con quello probabilmente più comune - MongoDB - sono replicabili anche su altre piattaforme.

Sempre dal punto di vista dello sviluppatore generico che voglia impratichirsi, va sottolineato: quando ci sono esigenze specifiche e più complesse, la scelta è meno ovvia.

Un bravo sviluppatore sa anche che il versioning è fondamentale e la scelta degli strumenti con cui farlo è quasi automatica. Git, creato da Linus Torvalds in persona, è il tool da linea di comando. GitHub è la combinazione di ambiente di hosting e interfaccia web che ormai qualsiasi sviluppatore utilizza per portare avanti i propri progetti in maniera collaborativa. Non si può dire che tutto l’open source passa da GitHub, ma poco ci manca.

Ci sono anche due grandi classici che è bene conoscere nelle loro caratteristiche di base: JavaScript e HTML. Tra alti e bassi, JavaScript resta sempre tra i linguaggi di scripting più diffusi, mentre HTML è meglio conoscerlo perché alla fine tutto o quasi oggi finisce in una pagina web e sapersi districare nel suo codice è sempre un vantaggio. Anche se nessuno lo scrive più “a mano”.

Proprio perché HTML può essere molto complesso, serviva un linguaggio di markup più semplice che permettesse di creare contenuto testuale formattato ma senza il “peso” di HTML. Quel linguaggio è Markdown, ormai adottato integralmente da editor e piattaforme web.

Nella sua forma di base - ci sono anche estensioni, dato che non esiste uno standard ufficiale - definisce i tipi fondamentali di formattazione (grassetto, corsivo, elenchi puntati…). Il tutto con quasi solo due simboli (* e _). È un linguaggio che qualsiasi sviluppatore può e deve conoscere, anche perché è semplicissimo.

Se questo articolo ti è piaciuto e vuoi rimanere sempre informato sulle novità tecnologiche iscriviti alla newsletter gratuita.
CONDIVIDI

LASCIA UN COMMENTO

Please enter your comment!
Please enter your name here