Categories
design pattern event linguaggio javascript piattaforme web

Phaser 3 – evento

In JavaScript è un linguaggio che utilizza gli eventi del browser.

Oltre agli eventi per le azioni del giocatore, gli eventi possono essere generati dal programmatore per ottenere un’architettura semplice dell’applicazione e con poco accoppiamento nel codice sorgente.

In questo esempio si creerà un nuovo tipo di evento e un ascoltatore (listener) per permettere la comunicazione tra due diverse Scene.

Categories
linguaggio javascript phaser piattaforme web

Phaser 3 (introduzione)

Quando l’applicazione da sviluppare è un gioco, si può usare un server web e un framework per HTML5. Con Phaser (licenza d’uso MIT) si ottiene un’applicazione multipiattaforma (non solo per dispositivi mobili).

Il framework si chiama Phaser1 e funziona semplicemente sul browser, ma richiede un server web per evitare il problema SOP (Same Origin Policy).

Il gioco si sviluppa costruendo classi e metodi in JavaScript, ma esiste anche un editor visuale (solo a pagamento).

  1. https://phaser.io/ []
Categories
git Linux

Verificare l’ambiente di sviluppo (2)

Dopo aver verificato la compilazione di un’applicazione per Android, si può personalizzare la struttura delle cartelle del proprio progetto e predisporre un backup locale (oltre a quello ufficiale fornito da git).

Categories
Android gradle Linux Node.js npm

Verificare l’ambiente di sviluppo (1)

A distanza di un anno circa, proviamo a riassumere (e ripetere) i passaggi necessari per realizzare e verificare il funzionamento di un ambiente di sviluppo per compilare un semplice progetto React Native di un’applicazione Android composto da una sola pagina.

Sarà cambiato qualcosa rispetto all’anno scorso?

Categories
boilerplate solution iOS Node.js npm package,json piattaforme

File package.json

Quando si crea un nuovo progetto si devono conservare molte informazioni utili al progetto, come ad esempio:

  • la licenza d’uso del software
  • l’autore
  • la versione
  • le dipendenze (di vario tipo)
  • e molto altro
Categories
git linguaggio javascript Linux

git (4)

Git è uno strumento utilissimo per gestire i rami di sviluppo a basso livello, ma è compito del progettista decidere quanti e quali rami deve avere un progetto. Per fortuna esistono delle linee guida per il progettista e uno strumento di livello più alto (da installare), di nome git-flow.

Categories
Node.js React web

Server-Side Rendering

Ci sono due modi in cui un sito web realizzato con ReactJS può fornire una prima pagina al browser:

  • Client-Side Rendering (CSR) una cornice bianca vuota con una clessidra al suo interno (un JavaScript da eseguire nel browser)
  • Server-Side Rendering (SSR) una pagina HTML che appare immediatamente decorata nel browser

La soluzione da scegliere dipende dal tipo di problema da risolvere.

Categories
database React web

Database remoto (2)

Alcune caratteristiche di Apache Cassandra sono molto interessanti.

Apache Cassandra può essere installato su diversi nodi fisici e memorizza i dati in modo distributo.

Dato che ogni server-nodo contiene una replica parziale dei dati, esso fornisce un servizio molto affidabile e con elevata disponibilità.

Categories
database Linux React

Database remoto (1)

Le applicazioni per smartphone possono usare un database locale (come SQLite) oppure un DBMS remoto (come MySQL). Il DBMS remoto è un server, cioè ha una porta aperta dove rimane in attesa di connessione. Per motivi di sicurezza il server NON viene esposto nella rete pubblica. Quando si usa un database remoto si preferisce esporre un server web (http) che espone API di tipo REST

Categories
git Linux

Bridge virtuale

Spesso è necessario collegare la propria macchina virtuale, il proprio ambiente di sviluppo, con la rete reale. Come configurare la macchina host e la macchina guest?

In questo esempio si parte da tre macchine:

  • prima macchina: guest Debian con server ssh
  • seconda macchina: host con libvirt/ virt-manager, al cui interno si ospita la prima macchina
  • terza macchina: macOS, in rete con la seconda macchina