Press "Enter" to skip to content

Higher-order functions – Part 1 of Functional Programming in JavaScript


ciao in questa serie di video che insegnerò
come fare programmazione funzionale in
JavaScript in questo primo lo farò
inizia raccontandoti uno dei
concetti più importanti in funzionale
programmazione e questo è di ordine superiore
funzioni parlerò di cosa
le funzioni di ordine superiore sono e lo farò
quindi passare al codice e mostrarvi come
usali ma prima che io lo faccia voglio
ti dico perché dovresti imparare a funzionare
programmazione in caso non mi conosci
Sono un pepe mateus per una volta su mpj
Insomma, sono stato un programmatore a tempo pieno
per circa 10 anni lavoro per Absolut
Vodka blackberry e attualmente lavoro come
uno sviluppatore front-end per Spotify che amo
programmazione funzionale funzionale
la programmazione ha reso così tanto la programmazione
più divertente per me se lo sei stato
programmazione per un po ‘ma non ancora
provato la tua mano funzionale
programmazione prima che questo video stia andando
per cambiare la tua vita imparando a programmare
funzionalmente ti renderà così tanto
programmatore migliore ti sentirai molto
più sicuro con la qualità del tuo
lavoro e sarà molto meglio e tu
sarà più ricercato dopo che sarai
in grado di scrivere i tuoi programmi con meno
bug in meno tempo che il tuo codice avrà
meno bug perché il tuo codice sarà
più facile ragionare e tu sarai
in grado di scrivere in meno tempo perché
sarai in grado di riutilizzare più dei tuoi
codice funzioni di ordine superiore piace molto
dire che è come dire
la quintessenza ti fa solo sentire
inteligente
quindi, lascia che te ne parli
funzioni di ordine superiore perché così è
andando a farmi sentire super intelligente dentro
JavaScript e aperto in tutte le funzionalità
le funzioni dei linguaggi di programmazione sono
valori
lascia che ti mostri cosa intendo con questo qui
vedremo la funzione di base nella sua
habitat naturale
Maho così lo riconoscerai anche se
non sai JavaScript perché tutto
linguaggi di programmazione non folle hanno
funzioni ma non tutte le programmazioni
le lingue possono farlo creare un
funzione anonima e assegnare a un
variabile proprio come qualsiasi altro valore noi
può passare in giro come questo e voi
so si questo sarà di nuovo 90 dentro
linguaggi di programmazione funzionale
le funzioni sono valori proprio come le stringhe
o le funzioni numeriche possono essere assegnate a
variabili o passare ad altre funzioni
funzioni di ordine superiore ma quali sono
funzioni di ordine superiore buone per bene
composizione il fatto che possiamo prendere
una funzione e inseriscila in un’altra
la funzione ci consente di comporre molto
piccole funzioni in funzioni più grandi
il pane è tutto un mucchio di teoria
guarda come utilizzare effettivamente uno di questi
le cose probabilmente sono le più basilari e
utile funzione di ordine superiore è il filtro
è un filtro molto semplice è una funzione
sull’array che accetta un altro
funziona come la sua argomentazione che farà
utilizzare per restituire una nuova versione filtrata di
la matrice qui vediamo una lista di animali
abbiamo dei birichini che siamo un coniglio
avere Hamilton che è un cane
e abbiamo Ursula che è un gatto
vogliamo filtrare i cani perché
stiamo scrivendo software di livello enterprise
qui ti mostrerò come fare
questo usando il filtro ma prima voglio farlo
per ricordarti come lo fai con a
normale per ciclo da M quindi questo è solo un
ultra normale per ciclo crea un
array per contenere i cani che itera sopra
l’allineamento degli animali degli animali e se il
specie dell’animale che è
iterato è uguale al cane che spingerà
quel cane sull’arma degli animali ora
riscriviamo questo usando il filtro
funzione sto andando a commentare il per
loop e tenerlo acceso in modo da poter vedere
per scopi di confronto e qui va
Più veloce
quindi diamo un’occhiata a questo filtro
accetta un argomento un’altra funzione
funzioni come questa funzionano tu
inviare in altre funzioni sono chiamati
funzioni di callback perché l’ host
la funzione richiamerà il filtro
passerà attraverso ogni elemento dell’array
e per ogni oggetto lo passerà
nella funzione di callback e quando
si aspetta la richiamata
funzione per restituire vero o falso
per dire al filtro se questo articolo sia o meno
dovrebbe essere nel nuovo array e dopo
è fatto restituirà il nuovo
array filtrato e che saranno cani
ricorda come ho detto che scriverai
software più veloce quando lo fai
avviso di programmazione funzionale qui
l’esempio che usa il filtro è molto
meno codice rispetto al ciclo for e
non è perché la sintassi è
esteticamente più corto o qualsiasi cosa sia
perché in realtà stiamo scrivendo meno codice
meno logica la ragione per cui abbiamo bisogno di meno
la logica è quella quando scriviamo il nostro software
in piccole funzioni semplici compongono
insieme che ci permette di riutilizzare
funziona dappertutto così nel
esempio di filtro ne stiamo solo scrivendo uno
linea di logica in realtà che è questo
la linea che determina quali animali
entra nella matrice e il resto del
programma che crea un nuovo riempimento di array
gli animali in esso che il ciclo for ha da
implementare qui e qui che è in realtà
gestito all’interno della funzione filtro
è gestito per noi quindi non è necessario
scriverlo lì per la funzione di filtro
l’esempio del filtro è
ci siamo appena chiesti un oggetto il callback
funzione e la funzione filtro giusto
si sono fatti l’un l’altro
componibile mi piacerebbe davvero sottolineare come
bene queste semplici funzioni compongono
rompere la richiamata in a
variabile separata in modo da notare qui che è
il cane è solo una funzione che lo controlla
un oggetto è un cane in realtà non lo è
avere qualcosa a che fare con il filtraggio
del tutto è completamente disaccoppiato da esso
in modo che possiamo usarlo anche per altri quattro cose
per esempio se volessimo gli animali
che non siamo cani potremmo passarlo a
respingere quale è un altro un ordine superiore
funzione sull’oggetto matrice che
fa l’inverso del filtro così potrebbe
essere animali non rifiutare il cane e questo
ci darà una serie di animali che
non sono così da confrontare con il ciclo for
vedrai che abbiamo rotto molto bene
il problema in due completamente
problemi separati il problema di
determinare se un animale è un cane
o no e il problema di creare un
array e riempire gli oggetti dentro di loro
e così avremo il permesso di farlo
pensa e ragiona e fai il debug di questi
problemi separatamente e questo è molto
facile che quando le due soluzioni sono
tutti mescolati insieme come nel
per ciclo
oggi ho parlato di come funzionale
programmazione significa che puoi scrivere
software con meno errori in meno tempo
Le funzioni JavaScript sono valori e tu
puoi sfruttare questo dividendo il tuo codice
in
tutte le semplici funzioni e componendole
insieme usando le funzioni di ordine superiore come
un esempio ti ho mostrato l’ordine superiore
Filtro funzioni e come si confronta con
forma normale stiamo solo grattando il
superficie qui apprendimento funzionale
programmazione sta per farvi conoscere
un mondo completamente nuovo che non conoscevi
esistevano ce ne sono molti utili
funzioni di ordine superiore oltre al filtro
la prossima volta parlerò di due di loro
mappa e ridurre da non perdere colpito
iscriviti e seguimi su Twitter in MP
Jamie resta curioso a vederti la prossima volta
Please follow and like us: