ScribaEsempi
← Tutti gli esempi

Esempio di file SRT in italiano

Gli stessi contenuti in sottotitoli con i tempi: com'è fatto un .srt e a cosa serve ogni riga.

Un file .srt è testo semplice: per ogni battuta un numero progressivo, la riga dei tempi (inizio --> fine) e il testo. Lo aprono VLC, YouTube, Premiere e qualunque lettore video — basta che si chiami come il video e stia nella stessa cartella.

Sono 108 battute per questa lezione. Le prime quaranta:

00:00:00,11000:00:14,880
Oggi parliamo di alcuni degli argomenti più importanti nell'analisi e progettazione del software, i pattern di progettazione e i code smell, che sono i due lati della stessa medaglia.
00:00:16,61000:00:25,650
I primi riguardano come progettare bene e i secondi come accorgersi di aver progettato male.
00:00:25,65000:00:40,430
Partiamo dalla definizione di design pattern. Che cos'è? È una soluzione comune a un problema di progettazione ricorrente.
00:00:42,35000:00:57,640
Questi differiscono da un altro tipo di pattern, che si chiamano pattern GRASP, con cui condividono parte del nome, ma questi ultimi sono principi, consigli.
00:00:57,64000:01:05,180
mentre i design pattern si spingono oltre e arrivano fino allo schema delle classi
00:01:05,18000:01:11,090
partiamo dalla classificazione GOF
00:01:11,09000:01:14,730
prima di tutto per cosa sta GOF?
00:01:14,73000:01:22,690
sta per Gang of Four che deriva dal fatto che i suoi ideatori erano quattro persone
00:01:22,69000:01:27,870
si tratta di 23 pattern in totale
00:01:27,87000:01:44,600
Però nel corso ne vedremo solamente sette. Come si classificano? Si classificano su due assi, per lo scopo e per il raggio d'azione.
00:01:44,60000:01:54,440
per quanto riguarda lo scopo possono essere creazionali, strutturali o comportamentali
00:01:54,44000:02:04,060
per quanto riguarda il raggio d'azione possono essere su classi oppure su oggetti
00:02:04,06000:02:10,960
facciamo qualche esempio di combinazioni di questi due assi
00:02:10,96000:02:17,200
abbiamo per esempio il factory method che è un creazionale su classi
00:02:17,20000:02:22,560
abbiamo per esempio l'adapter che è un pattern strutturale
00:02:22,56000:02:30,480
e abbiamo observer e strategy che sono due pattern comportamentali su oggetti
00:02:30,48000:02:39,620
adesso soffermiamoci su questi ultimi due perché spesso all'inizio vengono confusi
00:02:39,62000:02:55,470
Allora, partiamo dal definire questi due pattern, indicando quale problema risolvono e come lo risolvono.
00:02:55,47000:03:13,080
Lo strategy risponde al problema di un insieme di algoritmi correlati e variabili e vogliamo poterli cambiare. Cambiare come? Scegliere a quale utilizzare.
00:03:13,08000:03:16,800
Quindi come risolviamo questo problema?
00:03:17,82000:03:24,900
Ogni algoritmo viene messo in una classe separata, tutte con un'interfaccia comune.
00:03:26,27000:03:32,810
Il context tiene un riferimento alla strategia e la usa senza sapere quale sia,
00:03:32,81000:03:51,570
Mentre il client può sostituirla a runtime con una strategia diversa della stessa interfaccia per sostituirla con una strategia diversa all'occorrenza.
00:03:51,57000:04:04,550
Per quanto riguarda l'observer, il problema che si pone è quello di più oggetti che vogliono sapere quando un altro oggetto cambia stato.
00:04:05,05000:04:10,820
Ognuno reagendo a modo proprio. Il publisher non deve conoscerli.
00:04:12,08000:04:21,120
Prima di tutto vediamo chi è il publisher nel pattern observer. È l'oggetto che viene osservato dagli altri.
00:04:23,04000:04:24,740
Come risolviamo questo problema?
00:04:25,50000:04:34,070
Abbiamo un'interfaccia, che è il subscriber, e ogni subscriber si registra al publisher
00:04:34,07000:04:38,670
in modo che possa essere avvisato quando succede qualcosa.
00:04:40,61000:04:45,170
Quindi qual è la distinzione tra questi due pattern?
00:04:45,17000:04:53,430
Lo strategy serve a scambiare un comportamento, quindi scegliere quale comportamento vogliamo applicare.
00:04:55,04000:05:00,780
Observer serve a notificare un cambiamento a più interessati.
00:05:02,43000:05:06,510
Cos'hanno in comune? Si basano entrambi su polymorphism.
00:05:06,69000:05:11,210
e forniscono delle protected variations
00:05:11,21000:05:25,430
vediamo anche un'altra coppia di pattern che vengono spesso confusi
00:05:25,43000:05:29,150
che sono l'adapter e il facade
00:05:29,15000:05:33,220
partiamo vedendo l'adapter
00:05:33,22000:05:40,480
abbiamo due interfacce incompatibili che però hanno bisogno di parlarsi
00:05:40,48000:05:46,680
Quindi cosa facciamo per permettere che comunichino tra loro?
00:05:47,28000:05:55,720
Mettiamo in mezzo un oggetto adattatore che converte i messaggi che si devono scambiare.

Scarica il file originale — è lo stesso che riceveresti tu.

Tutto il materiale di questa sezione viene da una sola lezione vera. Gli altri formati · quanto sarebbe costata.