KUMBE · BLOG


MORENO: Un mondo di scelte in un tempo finito



nuove tecnologie software web service
15 apr 2016

Moreno Trainini
Posted by:
Moreno Trainini

[Bisogna ammetterlo, il primo approccio con la programmazione per il web non è sicuramente dei più semplici, un mare sterminato di linguaggi, soluzioni hardware, software e meccanismi tra i quali scegliere e la necessità di mettere a fuoco un ambito specifico sul quale operare possono rendere la vita difficile all’inizio, ma la pazienza e la volontà di imparare piano piano prendono il sopravvento e consentono di districarsi in questa selva di scelte…]


Questo preambolo per far capire come il lavoro del programmatore non sia altro che un continuo imparare, un processo trial-error-success che accompagnerà per tutta la vita lavorativa e che consentirà di sviluppare le competenze necessarie per poter risolvere problemi sempre più complessi ed articolati. In questo breve articolo cercherò di spiegare le tecnologie ed i linguaggi da me finora utilizzati con i relativi difetti, pregi e possibili concorrenti.

Cominciamo dicendo che in questo caso suddividiamo i linguaggi in due grossi filoni, linguaggi lato client e linguaggi lato server (d'ora in poi verrà utilizzata una terminologia più consona all'ambito e dei tecnicismi inerenti l'informatica, buona lettura : -) ).

[CLIENT SIDE] JavaScript

: linguaggio interpretato di scripting client-side OOP open-source utilizzato diffusamente nella programmazione per il web per creare da singole funzioni, ad eventi fino alla creazione di vere e proprie classi con relativi metodi. Sono successivamente indicati i framework javascript che ho utilizzato maggiormente:

  • jQuery: libreria JavaScript open-source nata con l’obiettivo di migliorare e semplificare la selezione e la manipolazione del DOM stesso, oltre a questo ha visto largo uso per l’ottima implementazione della funzionalità AJAX (per poter comunicare tramite richieste asincrone con delle funzioni/classi lato server). Conosciuta, amata e molto supportata dalla community è una libreria che non può senza dubbio mancare nel bagaglio culturale di un qualsiasi programmatore per il web. [https://jquery.com/]
  • Framework7: framework HTML e JavaScript ottimizzato per creare applicazioni web per iOS ed Android, utilizza un templating interno chiamato Template7 (molto simile ad Handlebars) per gestire tutto in modo ordinato, supporta ovviamente una gestione di tipo MVC (Model View Controller) dei dati. Essendo ottimizzato e pensato per mobile contiene molti widget per dispositivi touch ed è aggiornato di frequente. [http://www.idangero.us/framework7]
  • ExtJS: libreria JavaScript per la creazione di web-app interattive, presenta moltissimi widget ed è senza dubbio il framework leader nella gestione di interfacce complesse di amministrazione. Supporta griglie multi-livello, campi di tipo data, alberi ed in generale un po’ tutte le funzionalità richieste da un'applicazione web anche molto complessa. La sua curva di apprendimento è abbastanza ripida, ma una volta presa la mano consente con poco codice di generare interfacce anche molto complesse e funzionali. [https://www.sencha.com/products/extjs/]

PREGI:

  1. probabilmente il linguaggio di scripting più sicuro ed affidabile;
  2. codice eseguito dal browser dell’utente (client-side, riducendo l’utilizzo del server);
  3. è un linguaggio relativamente semplice da comprendere;

DIFETTI:

  1. linguaggio con tipizzazione debole;
  2. problemi di sicurezza relativi a codice malevolo eseguito sul computer dell’utilizzatore;
  3. possibili problemi di rendering considerando che ogni browser presenta un motore Javascript diverso;
  4. il codice dello script deve essere scaricato completamente sulla macchina dell’utilizzatore prima di essere eseguito.

ALTERNATIVE: Le alternative più conosciute sono senza dubbio due:

  • Dart: linguaggio open-source sviluppato da Google, vicino a JavaScript ma che viene eseguito all'interno di una VM (Virtual Machine) dedicata. L'obiettivo di Dart è di ottenere le migliori performance possibili per applicazioni web, il difetto è che il supporto per ora è dato solo da Google e nessun altro browser presenta piani per supportarlo. [https://www.dartlang.org/]
  • TypeScript: linguaggio open-source sviluppato da Microsoft, estende la sintassi di JavaScript consentendo una tipizzazione, si basa sulle specifiche ECMAScript 6 ed aggiunge classi, tipi e namespace mantenendo contemporaneamente la sintassi base di JavaScript. [http://www.typescriptlang.org/

[SERVER SIDE] PHP

: (Hypertext Preprocessor) linguaggio interpretato server-side open-source . Riprende la sintassi del C e del Perl e supporta il paradigma di programmazione ad oggetti (OOP), presenta inoltre delle interfacce built-in per comunicare con innumerevoli database e supporta numerose tecnologie tra cui XML, SOAP, IMAP e FTP.
Fornisce inoltre un'API specifica per interagire con Apache e con numerosi altri server web.

PREGI:

  1. linguaggio open source ottimamente supportato, con una vasta community ed un numero eccezionale di estensioni;
  2. è relativamente veloce;
  3. semplice da utilizzare (la sintassi non è molto differente dal C);
  4. sabile e potente (bug corretti velocemente e librerie che consentono di gestire da grafi a pdf);
  5. può essere eseguito su molte piattaforme, tra cui Windows, Linux e Mac.

DIFETTI:

  1. sicurezza, il fatto che sia open source può portare all’utilizzo di debolezze del PHP da parte di utenti malevoli;
  2. difficile da mantenere per applicazioni grandi dato che non è molto modulare;
  3. tipizzazione debole.

ALTERNATIVE:

  • Java: linguaggio di programmazione concorrente, basato su classi e OOP. È il linguaggio che ha per la maggior parte portato il fatto di scrivere il codice una sola volta e di poterlo eseguire su multiple piattaforme. Ha una community enorme, è facile da imparare ed è indipendente dalla piattaforma su cui è eseguito. Il difetto maggiore era la lentezza di esecuzione, anche se questa è migliorata notevolmente con gli aggiornamenti della Java VM. [http://docs.oracle.com/javase/tutorial/java/]
  • Perl (CGI): linguaggio di programmazione di alto livello ed interpretato, è utilizzato in ambienti come la programmazione grafica, amministrazione di sistema, finanza e bioinformatica. Presenta un sistema nativo che supporta espressioni regolari e utilizza costrutti non presenti in PHP, ha anch'esso un'ottima community ed è molto modulare. Il difetto è senza dubbio la sintassi, che può essere difficile da gestire anche per programmatori esperti, e spesso l'analisi di codice scritto da altri può risultare complicata. [https://www.perl.org/]
  • Python: linguaggio di programmazione di alto livello, supporta multipli paradigmi di programmazione (OOP, imperativo, funzionale o procedurale), porta un sistema di tipizzazione dinamico, un sistema automatico di gestione della memoria ed una grande ed estensiva libreria standard. È modulare, facile e veloce da imparare e può essere eseguito su diversi sistemi e piattaforme. Il difetto è essenzialmente uno, la piccola community di supporto risposto ad altri linguaggi. [https://www.python.org/]
  • Ruby: linguaggio di programmazione di alto livello ad oggetti interpretato, funziona per applicazioni web tramite il full-stack framework Ruby On Rails. Possiede anch'esso un sistema di gestione automatica della memoria, è open-source e funziona su multiple piattaforme. I difetti rilevabili sono: una maggior lentezza di esecuzione (tempo CPU), una minor presenza di aggiornamenti frequenti e la difficoltà di apprendimento. [https://www.ruby-lang.org/]


La conclusione è la somma di questi mille fattori e variabili, se la domanda è se c'è un linguaggio perfetto per tutto la risposta è senza dubbio un no, o meglio ogni linguaggio ha i suoi pro ed i suoi contro e si adatta meglio ad una situazione rispetto ad un'altra. Tutto sta nelle mani del programmatore, dopotutto come già affermato precedentemente le scelte sono molte ma quella giusta non è mai una sola.





Prossimo articolo


Kumbe blog



blog,2444.jpg?WebbinsCacheCounter=1
gdpr-kumbe,2423.jpg?WebbinsCacheCounter=1
facebook-novita-follower-2021-kumbe,2404.jpg?WebbinsCacheCounter=1

Web marketing, siti web & nuove tecnologie...
La tribù Kumbe è a tua disposizione.


PER IL TURISMO

PER IL TURISMO
Web marketing per l'ospitalità, i servizi e le destinazioni



PICCOLE E MEDIE IMPRESE

PICCOLE E MEDIE IMPRESE
Software e applicativi web-based per l'impresa



ECOMMERCE

ECOMMERCE
Soluzioni per il il commercio elettronico



PUBBLICA AMMINISTRAZIONE

PUBBLICA AMMINISTRAZIONE
Strumenti siti e portali per la PA



CONSULENZA E STRATEGIA

CONSULENZA E STRATEGIA
Consulenza professionale e supporto alle imprese



NUOVE TECNOLOGIE e RICERCA

NUOVE TECNOLOGIE e RICERCA
Servizi avanzati ed integrati per imprese high-tech



logo quik kumbe

Quik, un nuovo prodotto made in Kumbe

QUIK è un software gestionale, un sistema operativo automatizzato che organizza i tuoi dipendenti, le loro attività lavorative, logistica, fatturazioni e anagrafiche. Business Intelligence, reportistica e controllo economico dei progetti ne fanno una completa soluzione manageriale.

Scopri di più di Quik

Azienda per il Turismo Dolomiti Paganella
Madonna di Campiglio Pinzolo-Val Rendena, Azienda per il Turismo

Madonna di Campiglio Pinzolo-Val Rendena, Azienda per il Turismo
Madonna di Campiglio, Pinzolo-Val Rendena (TN)


Dettagli   Visita il Sito
Visit Verona
Azienda per il Turismo Val di Non
Finale Outdoor Region

Finale Outdoor Region
Bike, Climbing, Sailing, tutto l'Outdoor che desideri è a Finale!


Dettagli   Visita il Sito
Prosecco Hills
Terme di Rabbi
Ski Area Campiglio Dolomiti


Kumbe Tribu


I guerriglieri del Web

Il nostro totem: la zwebra!

Tre capostipiti e tanti sciamani con un'unica battaglia da combattere: la qualità sul web!
Tutti battaglieri giovani e professionali pronti per affrontare qualsiasi sfida nella comunicazione sul web, la strategia digitale, il web marketing online, i social media e le applicazioni informatiche.
Ciascuno con mille passioni e dedito a numerose attività: chi fa pesca subacquea, chi canta e suona la chitarra, chi è sempre in sella alla propria mountain bike, chi scrive e chi legge, chi kazzeggia, chi ama il buon vino, chi la birra, chi camminare in montagna, chi crogiolarsi al sole, chi arrampicarsi sui pendii innevati, chi farsi del male, chi si sposa, si fidanza, chi si lascia e chi s'innamora. Chi ama il mare e chi la montagna, chi vive d'adrenalina e chi di tranquillità. Chi è nato sul lago, chi in Svizzera, in Spagna, in Germania, in Transilvania, in Brasile ... e tutti con un fattor comune: la passione per il web!



Nicola Mosca

Nicola Mosca
CEO | Software Consultant

Davide Aldrighetti

Davide Aldrighetti
DIGITAL STRATEGIST

Marco Parolari

Marco Parolari
PM | web consultant

Ernesto Baruzzi

Ernesto Baruzzi
IT consultant

Mirian Molina

Mirian Molina
Digital account

Francesca Novali

Francesca Novali

Digital Media and Web Content Editor

Niccolò Pennestre

Niccolò Pennestre
Sales account

Marta Sufaru

Marta Sufaru
Sales Account

Philipp Matz

Philipp Matz
Art director - UX/UI designer

Valentina Giovanelli

Valentina Giovanelli
UX Designer

Laura Palluello

Laura Palluello
SEO SPECIALIST & ADS

Marco Aldegheri

Marco Aldegheri
Senior Software Developer

Fabrizio Leonardi

Fabrizio Leonardi
SENIOR SOFTWARE DEVELOPER

Moreno Trainini

Moreno Trainini
Junior Software developer

Mattia Malfatti

Mattia Malfatti
PROJECT MANAGER

Lino Tisi

Lino Tisi
JUNIOR WEB DEVELOPER

Ion Turcan

Ion Turcan
JUNIOR WEB DEVELOPER

Daniele Salvini

Daniele Salvini
JUNIOR SOFTWARE DEVELOPER

«WE ARE HIRING»<br> Full Stack Senior WEB Developer

«WE ARE HIRING»
Full Stack Senior WEB Developer
Inviaci il tuo curriculum

MI CANDIDO!
Vuoi far parte della tribù?

Vuoi far parte della tribù?
Inviaci il tuo curriculum


Ecco chi ha dato fiducia alla tribù...

In groppa alla zebra! Loro galoppano, combattono e vivono il web al nostro fianco.

Azienda per il Turismo S.p.A. Madonna di Campiglio Pinzolo Val Rendena
Dolomiti Paganella Bike
logo-ski
Andalo Life
Val di Non
Prosecco Hills
Skirama Dolomiti Adamello-Brenta
3tre Campiglio
Trentino
Mieli thun
Unox
Adler
Trentino Fishing
Diatec Group
Sportsul
Cantine Lunelli
Comano Valle Salus

KUMBE DIGITAL TRIBU
Via Fabbrica 52/B, 38079 Tione di Trento TN
tel +39 0465 322204
info@kumbe.it

Contattaci:

Hai raggiunto il limite

Invia richiesta

Grazie

Ti abbiamo inviato un'email. Per attivare la newsletter clicca sul link che troverai nel messaggio, grazie!

Iscriviti alla newsletter