SlideShare une entreprise Scribd logo
1  sur  23
Télécharger pour lire hors ligne
TECNOLOGIE WEB BASE
Javascript (Node.js):
elementi di base
Programmi sincroni e asincroni
Programmi sincroni
Una istruzione viene
eseguita solo dopo che è
terminata l’esecuzione
dell’istruzione precedente.
Programmi asincroni
Una istruzione può essere
eseguita prima che sia
terminata l’esecuzione
dell’istruzione precedente.
PYTHON
JAVASCRIPT
Nella interrelazione
con il DOM o con un
server
Javascript e Node.js
Node.js è un versione di javascript che può
essere eseguita dal server.
Per fare i primi passi in javascript, utilizzeremo
la versione node.js eseguita da server che, non
interagendo con il dom, non pone problemi di
esecuzione asincrona delle istruzioni.
var MESS
MESS= 'Hello World!';
VARIABILI
Javascript
Assegnazione
Python
Assegnazione
MESS=’Hello World’
dichiarazione
STRINGHE
Javascript
(string/ ‘’)
Python
(str)
var STR, STR1, STR2;
STR1=’Hello ’;
STR2=’world’;
STR =STR1+STR2;
STR.replace(‘Hello’,’Wonderfull’);
STR.lenght
typeof STR
STR.constructor()
STR1=’Hello ’;
STR2=’world’;
STR =STR1+STR2;
STR.replace(‘Hello’,’Wonderfull’);
len(STR)
type(STR)
Numeri
Javascript
(number/ 0)
Python
(int, float)
var NUM1, NUM2, NUM3;
NUM1=5;
NUM2=3.66;
NUM3=NUM1/NUM2;
NUM3.toFixed()
NUM3.toString()
typeof NUM3
NUM3.constructor()
NUM1=5;
NUM2=3.66;
NUM3=NUM1/NUM2;
int(round(NUM3,0))
str(NUM3)
type(NUM3)
Liste
Javascript
(object/ [ ])
Python
(list)
var LIS1, LIS2;
LIS1=[10,12,52,64,37,'a','b']
LIS2=[7,55,44]
LIS1+LIS2 string
LIS1*2 NaN
LIS1.concat(LIS2)
LIS1[0]
LIS1[5]
LIS1.slice(0,3)
typeof LIS1
LIS1.constructor()
LIS1=[10,12,52,64,37,'a','b']
LIS2=[7,55,44]
LIS1+LIS2 concatenazione
LIS1*2 LIS1+LIS1
LIS1+LIS2
LIS1[0]
LIS1[5]
LIS1[0:3]
type(LIS1)
Dizionari
Javascript
(object/ { })
Python
(dict)
var DIZ1, DIZ2;
DIZ1={'DEU':100, 'FRA':150 }
DIZ2={'ITA':50, 'ESP':500}
DIZ1[‘DEU’]
typeof DIZ1
DIZ1.constructor()
DIZ1={'DEU':100, 'FRA':150 }
DIZ2={'ITA':50, 'ESP':500}
DIZ1[‘DEU’]
type(DIZ1)
Blocco if
Javascript Python
var V1=20;
var RIS='';
if (V1<5) {RIS="V1 is <=5";}
else if (V1<15) {RIS="V1 is ranging 5-15";}
else {RIS="V1 is >=15";}
V1=20
if V1<5: RIS="V1 is <=5"
elif V1<15: RIS="V1 is ranging 5-15"
else: RIS="V1 is >=15";
Ciclo for
Javascript Python
var text=''
for (var i=0; i<10; i=i+1) {text = text +" " + i}
text=''
for i in range(0,10):
text = text +" " + str(i)
Ciclo while
Javascript Python
var i=0;
var text=''
while (i < 10) {text = text +" " + i; i=i+1;}
text=''
i=0
while True:
text = text +" " + str(i)
i=i+1
if i >= 10:
break
TECNOLOGIE WEB BASE
Javascript e Node.js:
oggetti globali
Oggetti globali javascript e Node.js
javascript Node.js
console console
E’ un oggetto globale che fornisce una interfaccia di debug.
console.log(‘......’) console.log(‘.....’)
Scrive la stringa passata come argomento nello standard output
L’oggetto console di Node.js non replica perfettamente l’oggetto console dei principali
browser. Ad esempio non ha implementato il metodo .clean() per cancellare il
contenuto dello standard output
Moduli base Node.js e python
Node.js Python
os sys path process os
var os=require('os');
var sys=require('sys');
var path=require('path');
import os
import sys
sys
process.env.PATH sys.path
path.dirname()
path.join('...','...’')
process.cwd();
os.hostname()
os.arch()
process.pid
os.path.curdir
os.sys.join(‘......’, ‘.......’)
os.path.abspath(os.path.curdir)
os.uname()
os.getpid()
LEZIONE 1..
www.fordatascientist.org
D00-Web-JsBase
D10-Nodejs-Introduction
TECNOLOGIE WEB BASE
Funzioni
Funzioni: tramite dichiarazione
Javascript Python
function Sum(N1,N2){
// This function does sum of two number
console.log('Sum is running')
S=N1+N2;
return S
}
var N;
N=Sum(12,74);
def Sum(N1,N2):
‘’’This function does sum of two number’’’
print('Sum is running')
S=N1+N2;
return S
N=Sum(12,74);
Funzioni: tramite assegnazione
Javascript
var Sum= function (N1,N2){
// This function does sum of two number
console.log('Sum is running')
S=N1+N2;
return S
}
var N;
N=Sum(12,74);
dal punto di vista funzionale, la creazione di
una funzione tramite dichiarazione è
equivalente alla creazione tramite
assegnazione. La creazione tramite
assegnazione può essere utile in termini di
“chiarezza del codice” quando si vuole
utilizzare la funzione come input di un’altra
funzione. Ad esempio
var SAY=function(WORD)
{console.log(WORD);}
function Exec(someF, VAL)
{someF(VAL);}
Exec(SAY, "Hello");
Funzioni: dichiarazione e assegnazione
Le funzioni create tramite dichiarazione sono caricate in
memoria centrale prima di processare le altre istruzioni.
Una funzione creata tramite dichiarazione può essere
posizionata anche dopo la sua chiamata.
Scope delle variabili interne ad una funzione
Javascript Python
possono essere sia locali
che globali. Sono locali se
sono create tramite il
costruttore ‘var’. Sono
globali se sono create
tramite una semplice
assegnazione.
una variabile creata
all’interno di una funzione
è sempre locale, a meno
che essa prima di essere
creata non sia stata
definita come ‘global’
LEZIONE 1..
www.fordatascientist.org
D00-Web-JsBase
D12-Nodejs-Function
CONTATTI TELEFONO
051 22 35 20
EMAIL
WORKSHOP@VICEM.IT
var
number
typeof
string
object
[ ]
{ }
constructor

Contenu connexe

En vedette

ForDataScientist - Python matplotlib
ForDataScientist - Python matplotlibForDataScientist - Python matplotlib
ForDataScientist - Python matplotlibAnnalisa Vignoli
 
ForDataScientist - Python advanced data
ForDataScientist - Python advanced dataForDataScientist - Python advanced data
ForDataScientist - Python advanced dataAnnalisa Vignoli
 
WEB BASE - Una visione d'insieme delle tecnologie web
WEB BASE - Una visione d'insieme delle tecnologie webWEB BASE - Una visione d'insieme delle tecnologie web
WEB BASE - Una visione d'insieme delle tecnologie webAnnalisa Vignoli
 
Oracle ebs leave management system
Oracle ebs leave management systemOracle ebs leave management system
Oracle ebs leave management systemRoknuzzaman Suruz
 
ForDataScientist - Python base parte2
ForDataScientist - Python base parte2ForDataScientist - Python base parte2
ForDataScientist - Python base parte2Annalisa Vignoli
 
Dizajn za Facebook stranice - Tanja Dujmović
Dizajn za Facebook stranice - Tanja DujmovićDizajn za Facebook stranice - Tanja Dujmović
Dizajn za Facebook stranice - Tanja DujmovićTanja Dujmović
 
Sales Presentation 2-12-2016 TM
Sales Presentation 2-12-2016 TMSales Presentation 2-12-2016 TM
Sales Presentation 2-12-2016 TMTravis Martin
 
Climate Change White Paper_Published
Climate Change White Paper_PublishedClimate Change White Paper_Published
Climate Change White Paper_PublishedAlita Ostapkovich
 
Don Xem Quan Ao Thoi Trang Nu Moi Nhat Tai Tyty
Don Xem Quan Ao Thoi Trang Nu Moi Nhat Tai TytyDon Xem Quan Ao Thoi Trang Nu Moi Nhat Tai Tyty
Don Xem Quan Ao Thoi Trang Nu Moi Nhat Tai TytyQuân Đào
 
erald kolici portfolio
erald kolici portfolioerald kolici portfolio
erald kolici portfolioErald Kolici
 
Fordatascientist - Tecnologie Web base
Fordatascientist - Tecnologie Web baseFordatascientist - Tecnologie Web base
Fordatascientist - Tecnologie Web baseAnnalisa Vignoli
 

En vedette (19)

Python base lezione 5
Python base lezione 5Python base lezione 5
Python base lezione 5
 
Python base lezione1
Python base lezione1Python base lezione1
Python base lezione1
 
ForDataScientist - Python matplotlib
ForDataScientist - Python matplotlibForDataScientist - Python matplotlib
ForDataScientist - Python matplotlib
 
Python base lezione 2
Python base lezione 2Python base lezione 2
Python base lezione 2
 
Python base lezione 3
Python base lezione 3Python base lezione 3
Python base lezione 3
 
Python base lezione 4
Python base lezione 4Python base lezione 4
Python base lezione 4
 
ForDataScientist - Python advanced data
ForDataScientist - Python advanced dataForDataScientist - Python advanced data
ForDataScientist - Python advanced data
 
Web base - SVG
Web base - SVGWeb base - SVG
Web base - SVG
 
WEB BASE - Una visione d'insieme delle tecnologie web
WEB BASE - Una visione d'insieme delle tecnologie webWEB BASE - Una visione d'insieme delle tecnologie web
WEB BASE - Una visione d'insieme delle tecnologie web
 
Oracle ebs leave management system
Oracle ebs leave management systemOracle ebs leave management system
Oracle ebs leave management system
 
ForDataScientist - Python base parte2
ForDataScientist - Python base parte2ForDataScientist - Python base parte2
ForDataScientist - Python base parte2
 
Dizajn za Facebook stranice - Tanja Dujmović
Dizajn za Facebook stranice - Tanja DujmovićDizajn za Facebook stranice - Tanja Dujmović
Dizajn za Facebook stranice - Tanja Dujmović
 
Celulita
CelulitaCelulita
Celulita
 
Sales Presentation 2-12-2016 TM
Sales Presentation 2-12-2016 TMSales Presentation 2-12-2016 TM
Sales Presentation 2-12-2016 TM
 
Climate Change White Paper_Published
Climate Change White Paper_PublishedClimate Change White Paper_Published
Climate Change White Paper_Published
 
Requsition user menual
Requsition user menualRequsition user menual
Requsition user menual
 
Don Xem Quan Ao Thoi Trang Nu Moi Nhat Tai Tyty
Don Xem Quan Ao Thoi Trang Nu Moi Nhat Tai TytyDon Xem Quan Ao Thoi Trang Nu Moi Nhat Tai Tyty
Don Xem Quan Ao Thoi Trang Nu Moi Nhat Tai Tyty
 
erald kolici portfolio
erald kolici portfolioerald kolici portfolio
erald kolici portfolio
 
Fordatascientist - Tecnologie Web base
Fordatascientist - Tecnologie Web baseFordatascientist - Tecnologie Web base
Fordatascientist - Tecnologie Web base
 

Similaire à Web base - Javascript (Node.js): Elementi di base

Corso base di Tecnologie WEB - Primi passi in javascript
Corso base di Tecnologie WEB - Primi passi in javascriptCorso base di Tecnologie WEB - Primi passi in javascript
Corso base di Tecnologie WEB - Primi passi in javascriptStudiabo
 
node.js e Postgresql
node.js e Postgresqlnode.js e Postgresql
node.js e PostgresqlLucio Grenzi
 
Introduzione a Node.js
Introduzione a Node.jsIntroduzione a Node.js
Introduzione a Node.jsMichele Capra
 
Node js dev day napoli 2016
Node js dev day napoli 2016Node js dev day napoli 2016
Node js dev day napoli 2016Michele Nasti
 
Node.js - Server Side Javascript
Node.js - Server Side JavascriptNode.js - Server Side Javascript
Node.js - Server Side JavascriptMatteo Napolitano
 
06 Android - lavorare in background
06 Android - lavorare in background06 Android - lavorare in background
06 Android - lavorare in backgroundspawn150
 
Sviluppo web dall'antichità all'avanguardia e ritorno
Sviluppo web  dall'antichità all'avanguardia e ritornoSviluppo web  dall'antichità all'avanguardia e ritorno
Sviluppo web dall'antichità all'avanguardia e ritornolordarthas
 
Techbar nodejs+mongodb+mongoose
Techbar nodejs+mongodb+mongooseTechbar nodejs+mongodb+mongoose
Techbar nodejs+mongodb+mongooseMassimo Biagioli
 
Andrea Ceroni - Alexa, please deploy my Azure architecture - Codemotion Rome ...
Andrea Ceroni - Alexa, please deploy my Azure architecture - Codemotion Rome ...Andrea Ceroni - Alexa, please deploy my Azure architecture - Codemotion Rome ...
Andrea Ceroni - Alexa, please deploy my Azure architecture - Codemotion Rome ...Codemotion
 
ASP.NET MVC 6 - uno sguardo al futuro
ASP.NET MVC 6 - uno sguardo al futuroASP.NET MVC 6 - uno sguardo al futuro
ASP.NET MVC 6 - uno sguardo al futuroAndrea Dottor
 
Drupal Day 2011 - Node.js e Drupal
Drupal Day 2011 - Node.js e DrupalDrupal Day 2011 - Node.js e Drupal
Drupal Day 2011 - Node.js e DrupalDrupalDay
 
Primo Incontro Con Scala
Primo Incontro Con ScalaPrimo Incontro Con Scala
Primo Incontro Con ScalaFranco Lombardo
 
Tech Webinar: Test e2e per AngularJS e non solo
Tech Webinar: Test e2e per AngularJS e non soloTech Webinar: Test e2e per AngularJS e non solo
Tech Webinar: Test e2e per AngularJS e non soloCodemotion
 
Progettazione e sviluppo di applicazioni web 2.0 con PHP e Ajax
Progettazione e sviluppo di applicazioni web 2.0 con PHP e AjaxProgettazione e sviluppo di applicazioni web 2.0 con PHP e Ajax
Progettazione e sviluppo di applicazioni web 2.0 con PHP e AjaxGiovanni Cappellini
 
Come Javascript ha cambiato il CSS
Come Javascript ha cambiato il CSS Come Javascript ha cambiato il CSS
Come Javascript ha cambiato il CSS Davide Di Pumpo
 

Similaire à Web base - Javascript (Node.js): Elementi di base (20)

Corso base di Tecnologie WEB - Primi passi in javascript
Corso base di Tecnologie WEB - Primi passi in javascriptCorso base di Tecnologie WEB - Primi passi in javascript
Corso base di Tecnologie WEB - Primi passi in javascript
 
node.js e Postgresql
node.js e Postgresqlnode.js e Postgresql
node.js e Postgresql
 
Introduzione a node.js
Introduzione a node.jsIntroduzione a node.js
Introduzione a node.js
 
Introduzione a Node.js
Introduzione a Node.jsIntroduzione a Node.js
Introduzione a Node.js
 
Applicazioni native in java
Applicazioni native in javaApplicazioni native in java
Applicazioni native in java
 
Node js dev day napoli 2016
Node js dev day napoli 2016Node js dev day napoli 2016
Node js dev day napoli 2016
 
Node.js - Server Side Javascript
Node.js - Server Side JavascriptNode.js - Server Side Javascript
Node.js - Server Side Javascript
 
06 Android - lavorare in background
06 Android - lavorare in background06 Android - lavorare in background
06 Android - lavorare in background
 
Sviluppo web dall'antichità all'avanguardia e ritorno
Sviluppo web  dall'antichità all'avanguardia e ritornoSviluppo web  dall'antichità all'avanguardia e ritorno
Sviluppo web dall'antichità all'avanguardia e ritorno
 
Vb.Net
Vb.NetVb.Net
Vb.Net
 
Techbar nodejs+mongodb+mongoose
Techbar nodejs+mongodb+mongooseTechbar nodejs+mongodb+mongoose
Techbar nodejs+mongodb+mongoose
 
Concurrency
ConcurrencyConcurrency
Concurrency
 
Andrea Ceroni - Alexa, please deploy my Azure architecture - Codemotion Rome ...
Andrea Ceroni - Alexa, please deploy my Azure architecture - Codemotion Rome ...Andrea Ceroni - Alexa, please deploy my Azure architecture - Codemotion Rome ...
Andrea Ceroni - Alexa, please deploy my Azure architecture - Codemotion Rome ...
 
ASP.NET MVC 6 - uno sguardo al futuro
ASP.NET MVC 6 - uno sguardo al futuroASP.NET MVC 6 - uno sguardo al futuro
ASP.NET MVC 6 - uno sguardo al futuro
 
Corso Java 2 - AVANZATO
Corso Java 2 - AVANZATOCorso Java 2 - AVANZATO
Corso Java 2 - AVANZATO
 
Drupal Day 2011 - Node.js e Drupal
Drupal Day 2011 - Node.js e DrupalDrupal Day 2011 - Node.js e Drupal
Drupal Day 2011 - Node.js e Drupal
 
Primo Incontro Con Scala
Primo Incontro Con ScalaPrimo Incontro Con Scala
Primo Incontro Con Scala
 
Tech Webinar: Test e2e per AngularJS e non solo
Tech Webinar: Test e2e per AngularJS e non soloTech Webinar: Test e2e per AngularJS e non solo
Tech Webinar: Test e2e per AngularJS e non solo
 
Progettazione e sviluppo di applicazioni web 2.0 con PHP e Ajax
Progettazione e sviluppo di applicazioni web 2.0 con PHP e AjaxProgettazione e sviluppo di applicazioni web 2.0 con PHP e Ajax
Progettazione e sviluppo di applicazioni web 2.0 con PHP e Ajax
 
Come Javascript ha cambiato il CSS
Come Javascript ha cambiato il CSS Come Javascript ha cambiato il CSS
Come Javascript ha cambiato il CSS
 

Plus de Annalisa Vignoli

Presentazione Ulisse - Rame
Presentazione Ulisse - RamePresentazione Ulisse - Rame
Presentazione Ulisse - RameAnnalisa Vignoli
 
Presentazione Ulisse - Acciaio
Presentazione Ulisse - AcciaioPresentazione Ulisse - Acciaio
Presentazione Ulisse - AcciaioAnnalisa Vignoli
 
Fordascientist - Python reportlab
Fordascientist - Python reportlabFordascientist - Python reportlab
Fordascientist - Python reportlabAnnalisa Vignoli
 
ForDataScientist - Python base parte1
ForDataScientist - Python base parte1ForDataScientist - Python base parte1
ForDataScientist - Python base parte1Annalisa Vignoli
 

Plus de Annalisa Vignoli (6)

Presentazione Corsi FDS
Presentazione Corsi FDSPresentazione Corsi FDS
Presentazione Corsi FDS
 
Presentazione Ulisse - Rame
Presentazione Ulisse - RamePresentazione Ulisse - Rame
Presentazione Ulisse - Rame
 
Presentazione Ulisse - Acciaio
Presentazione Ulisse - AcciaioPresentazione Ulisse - Acciaio
Presentazione Ulisse - Acciaio
 
Fordascientist - Python reportlab
Fordascientist - Python reportlabFordascientist - Python reportlab
Fordascientist - Python reportlab
 
ForDataScientist - Python base parte1
ForDataScientist - Python base parte1ForDataScientist - Python base parte1
ForDataScientist - Python base parte1
 
abstract_tesi
abstract_tesiabstract_tesi
abstract_tesi
 

Dernier

CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...Nguyen Thanh Tu Collection
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxlorenzodemidio01
 
TeccarelliLorenzo-Mitodella.cavernaa.pdf
TeccarelliLorenzo-Mitodella.cavernaa.pdfTeccarelliLorenzo-Mitodella.cavernaa.pdf
TeccarelliLorenzo-Mitodella.cavernaa.pdfteccarellilorenzo
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxlorenzodemidio01
 
Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................giorgiadeascaniis59
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....giorgiadeascaniis59
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxlorenzodemidio01
 
TeccarelliLorenzo-i4stilidellapitturaromana.docx
TeccarelliLorenzo-i4stilidellapitturaromana.docxTeccarelliLorenzo-i4stilidellapitturaromana.docx
TeccarelliLorenzo-i4stilidellapitturaromana.docxteccarellilorenzo
 
Storia-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptxStoria-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptxteccarellilorenzo
 
TeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptx
TeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptxTeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptx
TeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptxteccarellilorenzo
 
Una breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opereUna breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opereMarco Chizzali
 
Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.camillaorlando17
 
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024IISGiovanniVallePado
 
LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................giorgiadeascaniis59
 
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptxAdducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptxsasaselvatico
 
Presentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informaticaPresentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informaticanico07fusco
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxlorenzodemidio01
 

Dernier (17)

CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
 
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
 
TeccarelliLorenzo-Mitodella.cavernaa.pdf
TeccarelliLorenzo-Mitodella.cavernaa.pdfTeccarelliLorenzo-Mitodella.cavernaa.pdf
TeccarelliLorenzo-Mitodella.cavernaa.pdf
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptx
 
Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
 
TeccarelliLorenzo-i4stilidellapitturaromana.docx
TeccarelliLorenzo-i4stilidellapitturaromana.docxTeccarelliLorenzo-i4stilidellapitturaromana.docx
TeccarelliLorenzo-i4stilidellapitturaromana.docx
 
Storia-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptxStoria-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptx
 
TeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptx
TeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptxTeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptx
TeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptx
 
Una breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opereUna breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opere
 
Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.
 
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
 
LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................
 
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptxAdducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
 
Presentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informaticaPresentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informatica
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
 

Web base - Javascript (Node.js): Elementi di base

  • 1. TECNOLOGIE WEB BASE Javascript (Node.js): elementi di base
  • 2. Programmi sincroni e asincroni Programmi sincroni Una istruzione viene eseguita solo dopo che è terminata l’esecuzione dell’istruzione precedente. Programmi asincroni Una istruzione può essere eseguita prima che sia terminata l’esecuzione dell’istruzione precedente. PYTHON JAVASCRIPT Nella interrelazione con il DOM o con un server
  • 3. Javascript e Node.js Node.js è un versione di javascript che può essere eseguita dal server. Per fare i primi passi in javascript, utilizzeremo la versione node.js eseguita da server che, non interagendo con il dom, non pone problemi di esecuzione asincrona delle istruzioni.
  • 4. var MESS MESS= 'Hello World!'; VARIABILI Javascript Assegnazione Python Assegnazione MESS=’Hello World’ dichiarazione
  • 5. STRINGHE Javascript (string/ ‘’) Python (str) var STR, STR1, STR2; STR1=’Hello ’; STR2=’world’; STR =STR1+STR2; STR.replace(‘Hello’,’Wonderfull’); STR.lenght typeof STR STR.constructor() STR1=’Hello ’; STR2=’world’; STR =STR1+STR2; STR.replace(‘Hello’,’Wonderfull’); len(STR) type(STR)
  • 6. Numeri Javascript (number/ 0) Python (int, float) var NUM1, NUM2, NUM3; NUM1=5; NUM2=3.66; NUM3=NUM1/NUM2; NUM3.toFixed() NUM3.toString() typeof NUM3 NUM3.constructor() NUM1=5; NUM2=3.66; NUM3=NUM1/NUM2; int(round(NUM3,0)) str(NUM3) type(NUM3)
  • 7. Liste Javascript (object/ [ ]) Python (list) var LIS1, LIS2; LIS1=[10,12,52,64,37,'a','b'] LIS2=[7,55,44] LIS1+LIS2 string LIS1*2 NaN LIS1.concat(LIS2) LIS1[0] LIS1[5] LIS1.slice(0,3) typeof LIS1 LIS1.constructor() LIS1=[10,12,52,64,37,'a','b'] LIS2=[7,55,44] LIS1+LIS2 concatenazione LIS1*2 LIS1+LIS1 LIS1+LIS2 LIS1[0] LIS1[5] LIS1[0:3] type(LIS1)
  • 8. Dizionari Javascript (object/ { }) Python (dict) var DIZ1, DIZ2; DIZ1={'DEU':100, 'FRA':150 } DIZ2={'ITA':50, 'ESP':500} DIZ1[‘DEU’] typeof DIZ1 DIZ1.constructor() DIZ1={'DEU':100, 'FRA':150 } DIZ2={'ITA':50, 'ESP':500} DIZ1[‘DEU’] type(DIZ1)
  • 9. Blocco if Javascript Python var V1=20; var RIS=''; if (V1<5) {RIS="V1 is <=5";} else if (V1<15) {RIS="V1 is ranging 5-15";} else {RIS="V1 is >=15";} V1=20 if V1<5: RIS="V1 is <=5" elif V1<15: RIS="V1 is ranging 5-15" else: RIS="V1 is >=15";
  • 10. Ciclo for Javascript Python var text='' for (var i=0; i<10; i=i+1) {text = text +" " + i} text='' for i in range(0,10): text = text +" " + str(i)
  • 11. Ciclo while Javascript Python var i=0; var text='' while (i < 10) {text = text +" " + i; i=i+1;} text='' i=0 while True: text = text +" " + str(i) i=i+1 if i >= 10: break
  • 12. TECNOLOGIE WEB BASE Javascript e Node.js: oggetti globali
  • 13. Oggetti globali javascript e Node.js javascript Node.js console console E’ un oggetto globale che fornisce una interfaccia di debug. console.log(‘......’) console.log(‘.....’) Scrive la stringa passata come argomento nello standard output L’oggetto console di Node.js non replica perfettamente l’oggetto console dei principali browser. Ad esempio non ha implementato il metodo .clean() per cancellare il contenuto dello standard output
  • 14. Moduli base Node.js e python Node.js Python os sys path process os var os=require('os'); var sys=require('sys'); var path=require('path'); import os import sys sys process.env.PATH sys.path path.dirname() path.join('...','...’') process.cwd(); os.hostname() os.arch() process.pid os.path.curdir os.sys.join(‘......’, ‘.......’) os.path.abspath(os.path.curdir) os.uname() os.getpid()
  • 17. Funzioni: tramite dichiarazione Javascript Python function Sum(N1,N2){ // This function does sum of two number console.log('Sum is running') S=N1+N2; return S } var N; N=Sum(12,74); def Sum(N1,N2): ‘’’This function does sum of two number’’’ print('Sum is running') S=N1+N2; return S N=Sum(12,74);
  • 18. Funzioni: tramite assegnazione Javascript var Sum= function (N1,N2){ // This function does sum of two number console.log('Sum is running') S=N1+N2; return S } var N; N=Sum(12,74); dal punto di vista funzionale, la creazione di una funzione tramite dichiarazione è equivalente alla creazione tramite assegnazione. La creazione tramite assegnazione può essere utile in termini di “chiarezza del codice” quando si vuole utilizzare la funzione come input di un’altra funzione. Ad esempio var SAY=function(WORD) {console.log(WORD);} function Exec(someF, VAL) {someF(VAL);} Exec(SAY, "Hello");
  • 19. Funzioni: dichiarazione e assegnazione Le funzioni create tramite dichiarazione sono caricate in memoria centrale prima di processare le altre istruzioni. Una funzione creata tramite dichiarazione può essere posizionata anche dopo la sua chiamata.
  • 20. Scope delle variabili interne ad una funzione Javascript Python possono essere sia locali che globali. Sono locali se sono create tramite il costruttore ‘var’. Sono globali se sono create tramite una semplice assegnazione. una variabile creata all’interno di una funzione è sempre locale, a meno che essa prima di essere creata non sia stata definita come ‘global’
  • 22. CONTATTI TELEFONO 051 22 35 20 EMAIL WORKSHOP@VICEM.IT