6 GIUGNO 2016
CAS
TESINA PER ESAME DI STATO 2016
NICOLÒ LUTTERI
ITT MARCONI
S. ILARIO, VIA MONTI
CAS
Sommario
INTRODUZIONE .............................................................. 2
CAS (SISTEMA DI ALGEBRA COMPUTAZIONALE) ....................... 3
TECNOLOGIE E LIBRERIE UTILIZZATE .................................... 4
C# ........................................................................... 4
RIBBON ..................................................................... 4
ASP.NET .................................................................... 6
WPF ......................................................................... 6
THREE.JS................................................................... 7
BOOTSTRAP ................................................................ 8
APPROFONDIMENTO DELLE DIFFERENTI PARTI ......................... 9
LIBRERIA ................................................................... 9
SITO IN WEB ............................................................. 10
APPLICAZIONE DESKTOP ............................................... 11
CONCLUSIONI.............................................................. 12
1
CAS
INTRODUZIONE
Il progetto che ho deciso di portare alla prova orale dell' esame di
stato è un programma che riguarda le seguenti materie:
- Matematica (CAS)
- Tecnologie Informatiche (ASP.NET)
- Informatica (C#)
L'applicativo si basa sulla creazione di un CAS, ed è composto
dalle seguenti parti (che verranno spiegate in specifico nelle
pagine successive):
- La libreria
- Il sito web in ASP.NET
- L'applicazione windows Form
2
CAS
CAS (SISTEMA DI ALGEBRA COMPUTAZIONALE)
Il CAS (o sistema di algebra computazionale) è un insieme di
software che permette di manipolare polinomi e funzioni
razionali, derivate, integrali ...
Le manipolazioni sono le seguenti:
3

semplificazione, inclusa la semplificazione automatica e la
semplificazione con presunzioni;

sostituzione di valori simbolici o numerici per le espressioni;

cambiamenti di forma delle espressioni mediante: sviluppo di
prodotti e di potenze, riscrittura sotto forma di frazioni
parziali, riscrittura di funzioni trigonometriche come
esponenziali, etc ;

differenziazione rispetto a una o più variabili;

ottimizzazione globale simbolica sotto vincoli o senza vincoli;

fattorizzazione parziale e completa;

etc
CAS
TECNOLOGIE E LIBRERIE UTILIZZATE
C#
Il C# è un linguaggio di programmazione orientato ad
oggetti sviluppato da Microsoft. La sintassi di C#
prende spunto da C++ (anch'esso orientato ad
oggetti), di Java e di Visual Basic per gli strumenti
di programmazione visuale e per la sua semplicità.
Si basa su .NET Framework.
RIBBON
Ribbon è una libreria open source creata da Jose Menendez Poo.
Quest'ultimo ha deciso di interrompere il supporto, ma lo sviluppo
è continuato grazie ad alcuni fans di questo progetto.
Comprende i seguenti User control:
- Bottoni
- Gruppi
4
LISTA COMPLETA
CAS
- Pannelli
- Tab
Che si adattano al tipo di visualizzazione scelta nelle proprietà
dell'oggetto Ribbon:
- Office 2007
- Office 2010
- Office 2013
La grafica è inspirata dalla suite Office che utilizza questo stile
per il Form che Microsoft a deciso di chiamare Fluent User
Interface
STILE OFFICE 2013
5
STILE OFFICE 2010
CAS
ASP.NET
ASP.NET è un insieme di tecnologie per il web creata da Microsoft
Corporation. Permettono di realizzare applicazione e servizi
riguardanti il web.
Con ASP.NET si possono usare qualsiasi linguaggio di alto livello
supportato dal Framework .NET (come ad esempio C#).
WPF
Windows Presentation Foundation (o WPF), è una libreria di classi
del Framework .NET sviluppata da Microsoft.
E nato per sostituire il vecchio modello di sviluppo Windows
(Windows Form), ormai considerato deprecato.
Schema di WPF
6
CAS
THREE.JS
Three.JS è una libreria che permette di mostrare oggetti
tridimensionali in un web browser (tramite un canvas HTML 5.0),
utilizzando Javascript, senza utilizzare nessun tipo di software
proprietario. Basata su WebGL.
Scena creata
con THREE.JS
Comprende i seguenti oggetti:
- Le scena, composta dai modelli.
- La telecamera, il punto di vista.
- Luci, illuminano la scena.
- Modelli, sono gli oggetti che compongono una scena, come un
cubo, una sfera.
7
CAS
BOOTSTRAP
Bootstrap è una raccolta di modelli basati su HTML e CSS,
sviluppato da Twitter.
Alcuni esempi:
- Bottoni
- Label
- Progressbar
- Pannelli
8
CAS
APPROFONDIMENTO DELLE DIFFERENTI PARTI
TIPI GESTITI
LIBRERIA
E il "cuore" di questo progetto, contiene
differenti classi come:
 La classe Grapich che consente di
disegnare funzioni 2D e 3D
 La classe Equation che permette di
risolvere equazioni
 La classe Area che contiene tutti i
differenti tipi, come Polinomi,
Monomi, Equazioni, etc.
La classe Area consente di:
- Moltiplicare due Aree
- Eseguire conversione da stringa
- Semplificare
- Sommare due Aree
L'intera libreria è scritta in C#.
Viene utilizzata dall'applicazione web e
dall'applicazione desktop.
9
DIAGRAMMA
DELLA CLASSE
PRINCIPALE
CAS
SITO IN WEB
Il sito web basato su ASP.NET.
Questo sito si compone di un interfaccia basica, utilizzando gli
elementi di Bootstrap.
Permette di inserire un equazione e di disegnare il relativo grafico
sia 2D che 3D grazie alla libreria THREE.JS.
INTERFACCIA MINIMALE
PER L'INSERIMENTO
DELL'EQUAZIONE
GRAFICO
REALIZZATO CON
THREE JS
10
CAS
APPLICAZIONE DESKTOP
L'applicazione desktop (Windows Form) che comprende più
funzioni rispetto all'applicazione web.
Le funzioni fornite sono:
- Disegno del grafico 2D e 3D, grazie alle funzionalità integrate di
WPF
- La semplifica
- La risoluzione di equazioni
- Etc
GRAFICO TRAMITE WPF
BARRA RIBBON
DEL FORM
11
CAS
CONCLUSIONI
Con questo progetto ho potuto scoprire nuove tecnologie non
studiate a scuola, come WPF, Bootstrap e Ribbon, e approfondire
quelle già incontrate a scuola come ASP.NET.
Inoltre mi sono accorto della difficoltà di sviluppo di un
applicazione CAS completa.
Infatti la versione che ho sviluppato non comprende tutte le
funzionalità che dovrebbe avere un vero CAS, sicuramente una
difficoltà derivata dal fatto che sono l'unico programmatore di
questo progetto.
12