Want to create interactive content? It’s easy in Genially!

Over 30 million people create interactive content in Genially.

Check out what others have designed:

Transcript

Sblocca Il Codice

Presentazione a cura di Emili Samuel, Impallara Riccardo, Filosofi Simone e Brai Filippo

3N

Start

Linguaggi di programmazione

Böhm e Jacopini

C e C++

Hackeraggio

INDEX

  • Che cos'è un linguaggio di programmazione
  • Evoluzione
  • Tipi di linguaggi di programmazione

Linguaggi di programmazione

01

Che cos'è unlinguaggio di programmazione

01

Un linguaggio di programmazione è un sistema formale di comunicazione che permette agli esseri umani di scrivere istruzioni che un computer può eseguire.

INFORME TECH

SwiftRust

PhytonJava JavaScript

C#GO

TypeScript

BasicLogo

CPascal

C++Perl

FortranCobol

2020
2010
2000

Evoluzione

01

1950
1960
1970
1980
1990

INFORME TECH

Esempio: Phyton

Esempio: Assembly

Tipi di linguaggi di programmazione

02

Linguaggio di basso livello

livello sono orientati "alla macchina".

Linguaggio di alto livello

Adatto per lo sviluppo di software e applicazioni in generale

Linguaggio di altissimo livello

Il linguaggio di altissimo livello serve a semplificare la scrittura di programmi, rendendo più facile per gli esseri umani scrivere e comprendere il codice.

INFORME TECH

Böhm e Jacopini

  • Biografia dei matematici
  • Come nasce il Teorema
  • a cosa è servito
  • il teorema vero è proprio

02

Giovanni Jacopini

  • Nato in Italia nel 1939
  • Ottenne un dottorato in matematica
  • Nei vari anni contribuì alla diffusione dell’
  • nel 1966 assieme al suo Professore Böhm per dimostrare il teorema che prende il loro Nome
  • La sua famiglia ha eliminato ogni singola traccia di lui sul web dopo la sua morte.

02

INFORME TECH

Corrado Böhm

  • Nato nel 1923
  • Studia ingegneria e nel 1942 scappa in Svizzera e continua gli studi lì
  • nel 1946 ottiene il diploma in ingegneria portando in tesi il linguaggio di programmazione (compilatori meticolari)
  • e nel 1954 ottiene il dottorato in Matematica
  • Dal 1953 al 1968 diventa ricercatore a Roma presso (IAC)
  • dal 59’ al 74’ Diventa professore all’Università di Pisa, Roma e Torino.
  • Nel 1966 assieme a Giuseppe Jacopini.

02

INFORME TECH

Come nasce il Teorema di Böhm-Jacopini

  • Il teorema nasce come esigenza di dimostrare che ogni programma può essere rappresentato utilizzando un insieme limitato di strutture di controllo.
  • Grazie agli studi di Böhm sulla macchina di Turing nel 1966 enunciano il teorema Di Böhm-Jacopini
  • Durante l’invenzione del teorema Böhm è attivo nell’Accademia di Roma e ha collaborato con altri ricercatori nel campo dell'informatica teorica.
  • Jacopini ha lavorato in ambito accademico

02

INFORME TECH

A cosa è servito questo teorema?

  • Semplificazione dei linguaggi di programmazione.
  • ha fornito una base teorica per studiare i principi dell’informatica.
  • Ha contribuito alla standardizzazione dei linguaggi di programmazione.

02

INFORME TECH

Il teorema

Il teorema afferma: che ogni programma può essere rappresentato utilizzando un insieme finito di strutture di controllo.

02

INFORME TECH

  • Storia ,scopo e derivati del linguaggio in C
  • Caratteristiche del linguaggio C
  • Storia e caratteristiche linguaggio C++
  • Perchè C++ è meglio di C

C e C++

03

Storia, scopo e derivati del linguaggio in C

  • Il linguaggio in C nasce negli USA presso i laboratori “Bell labs” nel 1972 e fu sviluppato da Dennis Ritchie.
  • Deriva dall’unione dei linguaggi BCPL e B,è un linguaggio di programmazione imperativo di natura procedurale e fa parte dei linguaggi di alto livello che ha caratteristiche di basso livello(numeri,lettere e indirizzi combinati tra loro da operatori aritmetico-logici.
  • Generalmente il C si presta per scrivere programmi e scopi di diversi ambiti: compilatori,sistemi di telecomunicazioni,sistemi embedded,sistemi in tempo reale.
  • Un problema causato dall’espansione dell’utilizzo del linguaggio in C sui vari computer fu l’incompatibilità rispetto ad alcuni dispositivi,quindi nel 1983 l'ANSI fondò un comitato per modernizzare il C e da quest’anno in poi siamo arrivati a raggiungere le seguenti evoluzioni del linguaggio: C89,C99,C11,C18(il numero indica l’anno di pubblicazione di ciascun derivato del C).

03

INFORME TECH

Caratteristiche del linguaggio C

  • Il C è un linguaggio di programmazione definibile minimalista poiché utilizza un piccolo insieme di concetti semplici e vicini al funzionamento dell'hardware dei calcolatori.
  • La maggior parte delle istruzioni in C sono traducibili con una solo istruzione di linguaggio macchina.
  • Il linguaggio utilizza un modo di accedere alla memoria hardware caratteristico di tutte le moderne cpu,ossia tramite il concetto di Puntatore che è generalizzato fino a farlo coincidere con l’indirizzamento indiretto.
  • C ha una struttura logica leggibile e definita con funzioni in stile pascal e centrali sui tipi(in fase di compilazione)
  • La sintassi di C è piuttosto versatile e il linguaggio è in forma libera non essendo influenzata dal posizionamento dei caratteri.
  • C non possiede il Garbage collection dunque la memoria bisogna gestirla da soli,questo implica una grande attenzione riguardo alla questione bug ma allo stesso tempo rende il linguaggio ideale per scrivere programmi con Arduini.

03

INFORME TECH

Storia e caratteristiche linguaggio C++

  • Il C++ è linguaggio di programmazione ad uso generale creato dall informatico danese Bjarne stroustrup pubblicato nel 1985 ed è l’estensione del C ed è stato nel tempo esteso notevolmente.
  • Dal 1997 C++ ha caratteristiche per la programmazione funzionale,generica e orientata agli oggetti,oltre a strutture per la gestione a basso livello della memoria.
  • Il C++ viene implementato come linguaggio compilato,ci sono molti compilatori creati da varie organizzazioni tra cui Microsoft ed Intel.
  • C++ fu progettato con in mente la programmazioni di sistemi e software integrati presentando come punti principali:prestazioni,efficienza e flessibilità.
  • C++ è stato ritenuto utile in molti contesti come per le app e per i server(e-commerce,ricerca in rete o basi dati).

03

INFORME TECH

Perchè C++ è meglio di C

  • Libreria Standard:lo Standard del 1998 si divide in due parti (nucleo del linguaggio e libreria);quest’ultima comprende la maggior parte della Standard Template Library,però esistono diverse librerie per il C++ che non fanno parte dello Standard ed è possibile usando linking esterno,utilizzare le librerie scritte per il linguaggio C.
  • Compilatori:GCC(multiplate),Clang,Mingc per Windows,DJGPP,compilatori commerciali (Visual C++ e C++ BUILDER) e MACos si può Xcode,lo standard del C++ non specifica l’implementazione della decorazione dei nomi e della gestione delle eccezioni.
  • Operatori:in C++ gli operatori sono punteggiature speciali che eseguono operazioni su una o più operandi che possono essere logici o di assegnazione e anche booleani che consentono di scrivere espressioni e di manipolare dati in modo più efficace internamente.

03

INFORME TECH

Hackeraggio

I linguaggi di programmazione si basano su istruzioni logiche e strutture di controllo che permettono di manipolare dati e controllare il comportamento dei computer.

04

Tentativi di indovinare password o codici di accesso provando tutte le combinazioni possibili.

Software dannoso installato sul dispositivo della vittima per rubare dati, spiare o bloccare l'accesso fino a pagamento di un riscatto.

Tecnica che inganna le persone per ottenere informazioni sensibili.

Attacchi brute force
Malware
Phishing

Metodi di hackeraggio

04

INFORME TECH

Uno degli attacchi di phishing più famosi è stato quello ai danni di John Podesta, il capo della campagna elettorale di Hillary Clinton nel 2016. Questo attacco portò al furto e alla pubblicazione di migliaia di email riservate, creando una grande controversia durante le elezioni presidenziali americane del 2016.

Phishing

vicenda famosa

04

INFORME TECH

Uno degli attacchi malware più famosi è stato WannaCry, un attacco ransomware che colpì nel maggio 2017. WannaCry infettò oltre 230.000 computer in 150 paesi, sfruttando una vulnerabilità di Windows per diffondersi rapidamente in reti non aggiornate. Questo malware criptava i file delle vittime e chiedeva un riscatto in Bitcoin per sbloccarli.

Malware

vicenda famosa

04

INFORME TECH

Un famoso attacco brute force è stato quello alla piattaforma GitHub nel 2013. In quell'episodio, ttaccarono con un attacco brute force per cercare di accedere a numerosi account utente di GitHub, una piattaforma di sviluppo collaborativo. Gli aggressori sfruttarono una combinazione di tentativi automatizzati per indovinare le password degli utenti e accedere ai loro repository di codice.

Attacchi brute force

vicenda famosa

04

INFORME TECH