I primi passi nel mondo della programmazione

Sono moltissimi i conoscenti, e non, che mi chiedono come iniziare a programmare, quale linguaggio scegliere e quant’altro. Rispondere a queste domande è difficile, specialmente perché ognuno ha idee e indirizzi diversi. Quindi, per rispondere alle vostre domande, quest’oggi le farò io le domande.

Cosa vuoi fare?

La programmazione è un mondo immenso, e il tuo viaggio al suo interno dipende soprattutto da te. Per esempio abbiamo linguaggi di formattazione usati nei siti web, come HTML e CSS (i principali), ai quali affianchiamo solitamente uno o più linguaggi back-end, i quali rendono l’esperienza sul sito più dinamica. Andiamo a vedere più nel dettaglio i vari linguaggi e i loro utilizzi.


Sviluppo Web

Sviluppo web

Creare siti web tramite HTML, CSS e, generalmente, JavaScript è molto richiesto nel mondo del lavoro ed è sicuramente una delle strade più semplici da intraprendere. In effetti i linguaggi HTML e CSS che, come abbiamo detto prima, non sono linguaggi di programmazione ma di formattazione, definiscono la struttura e gli elementi statici ed estetici di un sito, sono molto semplici da imparare e molto spesso i codici sono riciclabili (usabili per più progetti).

L’unico linguaggio vero e proprio da imparare è il JavaScript, il quale è molto semplice e comprensibile di suo. Ci sarebbero poi i linguaggi lato-server ma di quelli solitamente se ne occupa uno sviluppatore apposito, ma impararlo non farebbe male. Una cosa bella della programmazione è che non ci sono frontiere alla creatività. Inoltre la richiesta nel mondo del lavoro è estremamente alta e avere delle conoscenze di lingue straniere può colmare i tuoi limiti, permettendoti di entrare nel mercato internazionale e aumentando le possibilità di lavoro.

Sviluppo di app e software

Il mondo dello sviluppo di applicazioni e software è molto complesso, ma qui, su Tech is easy, ti spieghiamo il tutto nel modo più comprensibile e chiaro possibile.

Divergenze fra piattaforme

Android o iOS?

Come tutti ben sappiamo esistono varie piattaforme. Le principali al giorno d’oggi sono Android e iOS.

Sviluppo nativo

Sviluppare un’applicazione per Android richiede il linguaggio Java, tra i più semplici e versatili che esistano, e si può utilizzare in molti ambiti: dallo sviluppo di app allo sviluppo di giochi e così via. Possiamo quindi dire che Java è il linguaggio nativo di Android.

Sviluppare un’applicazione per iOS richiede invece il linguaggio di programmazione Swift, oppure Objective C, anche se quest’ultimo viene usato maggiormente per software indirizzati a MacOS. In questo caso, il linguaggio nativo di iOS, è lo Swift oppure l’Objective-C

Come hai potuto notare i linguaggi per creare le applicazioni nelle due piattaforme sono differenti, infatti il linguaggio nativo varia. Questo vuol dire che per sviluppare un’applicazione disponibile su entrambe le piattaforme bisogna tradurre il codice da un linguaggio nativo all’altro e fare così per ogni aggiornamento o modifica nell’app.

Per risolvere questo problema sono più o meno giunte in soccorso le applicazioni ibride. Perché più o meno? Perché le applicazioni ibride in confronto alle applicazioni native sono molto più scarse in quanto efficienza, vista la loro difficoltà nello sfruttare le risorse del dispositivo. Vediamo più nel dettaglio il perché.

I vantaggi e le caratteristiche dello sviluppo mobile ibrido e nativo

Sviluppo ibrido

Come sono fatte le applicazioni ibride? Non sono altro che dei siti web con le sembianze di un’app. Infatti vengono sviluppate tramite dei Framework, come Cordova, dove vengono inclusi nei codici HTML e CSS, dandogli lo stile di un’applicazione. Ma come vi ho appena detto le applicazioni ibride non sfruttano al meglio il dispositivo, questo perché sono basate sul browser, quindi ogni volta che dobbiamo avviare l’applicazione inoltriamo una richiesta al server tramite il nostro browser preferito. Per sviluppare applicazioni ibride i costi sono minimi, anche nel caso si voglia ingaggiare qualcuno per crearla, in confronto ad uno sviluppo nativo.

Inoltre esistono applicazioni semi-ibride, che usano interamente il JavaScrpt, queste applicazioni hanno delle performance nettamente più alte delle applicazioni puramente ibride e leggermente inferiori alle applicazioni native.

Facciamo un recap

Tipo di appPrezzo d’ingaggio/sviluppoDifficoltà di sviluppoQualità ed efficienza dell’app
NativaMolto altoMedio altoMolto alto
IbridaMolto bassoMolto bassoBasso
Immagina le app semi-native come una via di mezzo fra le due tipologie principali

Quindi, se l’applicazione che necessiti deve avere delle prestazioni elevate ma hai poco budget, ti consiglio di usare uno dei tantissimi framework presenti sul mercato, per creare un’applicazione semi-ibrida tramite JavaScript. Se invece il tuo budget non è un problema, lo sviluppo nativo fa per te: avendo le giuste conoscenze dei linguaggi non dovresti nemmeno aver bisogno di ingaggiare uno sviluppatore.

Se l’applicazione di cui hai bisogno, invece, non necessita di grandi prestazioni e non hai molta competenza nello sviluppo nativo né molto budget, ti consiglio di sviluppare un’applicazione puramente ibrida. Per scegliere quale sviluppo usare ti consiglio di giocare con il rapporto qualità-prezzo, utilizzabile anche al di fuori di 4 ristoranti.


Entrare nel mondo del lavoro

Accompagnamento nel mondo del lavoro

Una volta scelta la propria strada ed imparato a programmare nel linguaggio/i richiesto/i dovrai entrare nel mondo del lavoro, trovare clienti e costruire la tua reputazione. Esistono moltissimi metodi per entrare nel mondo del lavoro ed io ti presenterò i principali.

Farsi assumere da un’azienda

Solitamente la soluzione più semplice. Infatti, una volta assunto, sarà il lavoro a venire da te, chiaramente inizierai da progetti bassi e, quando avrai guadagnato la fiducia dei tuoi superiori, avrai la possibilità di occuparti di grandi progetti. Sviluppare per le aziende è una scelta secondaria a mio parere, ma mai da escludere nel caso non trovi lavoro negli altri metodi.

Freelancer

Freelancer

Cos’è il freelancer? Come dice il nome stesso è un libero professionista, una persona che lavora autonomamente per privati, aziende e via dicendo. Molto spesso i freelancer vengono ingaggiati dalle aziende per dei lavori veloci: immagina che un’azienda abbia 20 impiegati e tutti quanti sono già impegnati con dei progetti. L’azienda contatta un freelancer, il quale svolgerà solamente quel compito per l’azienda, venendo pagato chiaramente come un impiegato a fine mese, con l’unica differenza che lui verrà pagato immediatamente.

Il freelancer è un lavoro molto semplice e ti permette di gestire interamente i tuoi progetti, magari giocando con il cliente e il tempo. Per esempio tu riesci a creare un sito-vetrina in 24 ore, ma al tuo cliente dici che ci impiegherai una settimana, in questo modo tu potrai dedicare 24 ore al sito-vetrina e nel frattempo fai qualche altro lavoretto, consegnando il sito anche prima di quando detto al cliente.

Progetti e piani personali

I progetti personali possono essere fatti in due modi e per due scopi: per pura curiosità, per imparare e provare, oppure per guadagnare. I progetti personali potrebbero essere dei servizi che le persone usano in cambio di denaro, oppure dei servizi gratuiti con delle pubblicità, per esempio un sito web. Ti consiglio una via di mezzo fra un progetto personale che non ti rubi troppo tempo e di dedicarti al freelancing.

Queste sono tutte le nozioni che ti possono servire per iniziare ad incamminarti nel mondo della programmazione e capire qual è il tuo posto in esso.

Tech is easy cerca nuovi collaboratori! Candidati ora cliccando qui.