3

Apr

REST & IoT - finalmente il perché è chiaro

 

ciao a tutti

sono alla Build Conference a San Francisco

posso sicuramente affermare che attualmente il grosso delle novità nel prossimo e medio futuro sarà sull’IoT (internet of things)

in pratica, ogni cosa diventa informatizzata… dalle scarpe che ti dicono come cammini, al telefono che ti fa da navigatore da casa a destinazione sincronizzandosi con quello nella macchina per poi passare al tragitto appiedato o al parchimetro comunale….

 

 

arriviamo al punto del discoso:

come molti sanno, sono un dinosauro dei servizi vecchio tipo… io amo WCF e prima di questo amavo grandemente MSMQ, Remoting, ASMX e gli EnterpriseServices solo per farvi dei nomi, come anche lo stesso BizTalk Server… che leggero non è sicuramente in alcun modo

 

avete presente i sevizi REST?!?!?

  • quelli che non hanno un protocollo di sicurezza perché si basano su quello dell’HTTP
  • quelli che non hanno policy o constraint di alcun tipo, perché non servono
  • quelli che o parlano in una sorta di CSV detto JSON, o nell’unico XML non tipizzato della storia
  • senza schema
  • senza validazione
  • volendo, lo stesso metodo potrebbe tornare 5 messaggi XML di tipo e contenuto diverso
  • quelli che non hanno un metalinguaggio descrittivo, in grado di fartici connettere in maniera sicura, pulita e validata, con un qualunque IDE di sviluppo (il famoso Add Service Reference di VS ad esempio)
  • etc…

 

quello che mi sono sempre chiesto sui moderni servizi RESTful, è perché esistano… a che serve inventare dei servizi così scarsi dopo aver inventato il SOAP

 

la risposta di rito è: il SOAP è un protocollo complesso che richiede una libreria di grande dimensione non implementabile in linguaggi poveri come JavaScript/JQuery, o non eseguibile su CPU a bassa potenza come per gli odierni mobile device

ovviamente questa frase era di circa 6 anni fa.. quando un iPhone3 aveva una cpu a 400mhz, monocore, e scarsa in tutto

superato negli anni il problema della CPU, oggi un Lumia ha un quad-core a 2.2ghz e 2GB di ram, praticamente come un laptop, rimane il problema dei linguaggi

nella maggior parte dei linguaggi poveri, vedi JS/JQuery, ancora non esiste il supporto al SOAP…

ed oggi mai come prima soluzioni come le WebApi ti danno troppo comodamente la libertà di programmare un portale web sia  lato server che lato client con JQuery che appunto legge solo il REST, creando applicazioni web accattivanti e scattanti in tutto

e questo è il futuro ed il presente delle applicazioni web, anche in base alle novità della Build 2014, non ci sono cambiamenti in questo frangente

dove invece ulteriormente il potenziale di mercato di REST avanza, è nell’IoT

CPU da 100mhz come quelle dei Gadgeteer della GHI, non hanno ne la potenza e ne le API per usare SOAP, portandoci quindi all’uso di REST

 

il Galileo della Intel che viaggia a 400mhz e porta con se un’architettura x86 potrebbe farci tornare a SOAP, ma ormai è intervenuto un nuovo problema… il mercato, la moda e l’assuefazione

ho visto fin troppe energie in MS per spingere sui Mobile Services, la tecnologia per far fare un Servizio server-side a qualcuno che di servizi e quindi di SOA non ne capisce niente, prima con JS, ed adesso finalmente/sfortunatamente anche con altri linguaggi

e questa energia, può portare solo alla totale differenziazione, che anche oggi esiste, tra il mondo dell’enterprise, del LOB o del B2B (a come lo si voglia dire) dove per servizio se ne intende uno completo, ed il mondo dei servizi per i devices, smartphone o IoT che siano

 

l’importante è esserne coscienti, sapere che esistono entrambi, capirne la differenza, e non dire la solita cosa del “so usare uno, lo uso per tutto”, o tantomeno farne una guerra religiosa, completamente inutile. sono due mondi separati, oggi più che mai. inutile provare a unificarli, anzi, sarebbe un pericolo: immaginate un programmatore JavaScript che programma in C#, dicendo la solita frase “sono quasi uguali”… certo… la sintassi… e lo stesso sarebbe far programmare SOAP ad un RESTiano

 

un saluto

by Antonio Esposito on 4/3/2014
Post archive