I bug di Mozilla punto per punto

Ci saremmo probabilmente aspettati di più dal supporto Css del browser Mozilla [nuova finestra].

In realtà, quasi tutti gli errori presenti in Netscape 6 sono stati traghettati anche in questa release, mettendo in difficoltà chi vorrebbe utilizzare i fogli di stile al di là della formattazione del testo.

Gli sviluppatori di Mozilla per la verità non nascondono questi limiti. è possibile accedere ad un documento [nuova finestra] che contiene le specifiche Css del W3c con annotati i bug di cui il browser soffre.

ASP.NET: Introduzione ad ADO.NET


Corso ASP.NET: nona puntata

Con l’avvento della piattaforma .NET, Microsoft ha anche rilasciato la nuova versione delle librerie di accesso ai dati, chiamate oggi ADO.NET.

Le caratteristiche di ADO.NET che ne hanno motivato la nascita sono essenzialmente:

  • modello di dati disconnesso
  • accesso “trasparente” a documenti Xml
  • forte integrazione con i controlli .NET (DataGrid, DataList, ecc.)

Modello di dati disconnesso

Lavorando con ADO.NET e in particolare con l’oggetto DataSet, ci si rende conto di come in ADO.NET si lavora disconnessi dalla sorgente dati:

  • si prelevano i dati dal database o dai file con cui si intende lavorare
  • si manipolano/visualizzano i dati di interesse che sono stati copiati nella “memoria” del DataSet
  • terminate le operazioni, si possono nuovamente salvare i dati

Questa caratteristica poteva essere esplicitamente richiesta in ADO 2.6, mentre in ADO.NET diventa il comportamento di default.

Accesso trasparente a documenti Xml

ADO.NET dispone di un supporto nativo per la gestione e manipolazione di documenti Xml, nonché di sincronizzazione con gli oggetti di tipo DataSet. Passare da una rappresentazione all’altra è quasi trasparente e consente di utilizzare il Data Binding sia quando le sorgenti dati sono database, sia quando stiamo accedendo a documenti Xml.

Integrazione con i controlli

Come abbiamo visto nella puntata precedente, tra le caratteristiche di ASP.NET che tagliano i ponti con il passato ci sono le tecniche di Data Binding, che consentono di legare un controllo ad una sorgente dati. Negli esempi precedente abbiamo in realtà utilizzato delle sorgenti fittizie, come degli array. La vera potenzialità del Data Binding si ottiene associando i controlli a oggetti ADO.NET.

Il modello ad oggetti ADO.NET

[D]

Per collegarsi ai dati in ADO.NET sono possibili diverse strade.

È possibile utilizzare direttamente un oggetto di tipo Command o un DataReader, ma l’oggetto più completo e complesso è sicuramente il DataSet.

In ADO.NET gli oggetti appartengono a due insiemi:

  • i Data Provider, che sono lo strato a contatto con la sorgente dati
  • il DataSet, un “contenitore” dei dati

Nel .NET Framework sono per il momento compresi 2 tipi di Data Provider, quelli per:

  • sorgenti dati di tipo OLE DB
  • Sql Server

Nessuno vi impedisce chiaramente di accedere a SQL Server con il Data Provider di tipo OLE DB; le prestazioni, comunque, non saranno paragonabili a quelle del Data Provider dedicato.

Esiste in realtà un Data Provider per ODBC [nuova finestra], non compreso nel .NET Framework, ma scaricabile dal sito Msdn di Microsoft. Questo provider è utile nel caso sia necessario accedere a sorgenti di tipo non OLE DB, come un database Dbase.

In fase di preparazione c’è inoltre un Data Provider per Oracle [nuova finestra].

Ogni Data Provider è composto da 4 oggetti:

  • Connection, la connessione fisica alla sorgente dati
  • Command, utilizzato per:
    • ottenere un DataReader
    • ottenete un DataSet
    • eseguire delle SELECT, UPDATE e DELETE dirette alla sorgente dati
  • DataReader, un insieme di risultati di tipo forward-only e read-only
  • DataAdapter, un oggetto utilizzato per popolare un DataSet e aggiornare la sorgente dati

DataReader e DataSet

Il DataReader è sicuramente l’oggetto da preferire quando le operazioni sui dati sono visualizzazioni, iterazioni, paginazioni: consente di ottenere le performance maggiori.

Se invece è necessario aggiornare i dati, il DataSet può rappresentare la scelta migliore. Poiché il modello ADO.NET è di tipo disconnesso, il DataAdapter ricopre il ruolo di ponte tra la sorgente dati e il DataSet.

Il DataAdapter si preoccupa così di popolare il DataSet con i dati della sorgente dati e successivamente di aggiornare la sorgente dati con le modifiche eventualmente apportate al DataSet.

Il DataSet è sempre disconnesso dalla sorgente dati e può contenere, a differenza del Recordset ADO, dati provenienti da diverse tabelle e sorgenti dati. Per questo motivo l’oggetto DataSet dispone di un metodo Tables che restituisce una collezione delle tabelle che contiene

Conclusione

Abbiamo appena sfiorato le caratteristiche di ADO.NET, tralasciando tutta la parte relativa al supporto Xml. Lo scopo di questa lezione è in realtà porre l’accento sulle differenze di ADO.NET rispetto ad ADO. Quello che va ricordato è che esistono due tipi di oggetti tra cui scegliere: DataReader, efficiente con dati in sola lettura e forward-only e il DataSet, oggetto completamente disconnesso dalla sorgente dati e comandato da un DataAdapter.

L’accessibilità web e gli standard Wai – Intervista a Jim Thatcher

  1. Ci parli di lei [Risposta 1]
  2. Quali sono gli argomenti trattati nel vostro libro “Constructing Accessible Websites“? [Risposta 2]
  3. L’accessibilità web è utile solo alle persone disabili? [Risposta 3]
  4. In cosa differisce l’accessibilità web dalla usabilità web? [Risposta 4]
  5. Le specifiche Wai sono a volte difficili da applicare. Le pagine di un sito devono “degradare gentilmente”, ma allo stesso tempo è meglio usare i Css anche per il layout. Le due tecniche sembrano agli antipodi. È davvero possibile costruire un sito seguendo queste specifiche così restrittive? [Risposta 5]
  6. Cosa dire dei browser: Internet Explorer 6 e Netscape 6 interpretano correttamente i tag Html rivolti all’accessibilità? [Risposta 6]
  7. A parte il sito Wai, ci sono altre risorse online che ci potrebbe consigliare? [Risposta 7]

Ci parli di lei

Ho cominciato ad occuparmi di accessibilità sviluppando il primo software di sintesi vocale per il Dos nel 1984. Negli anni è poi diventato l’Ibm Screen Reader, software che ha dato origine al temine “screen reader“, oggi usato comunemente. Ho successivamente guidato lo sviluppo della versione 2 del reader Ibm, il primo screen reader per una Gui su Pc.

Ho realizzato per conto di Ibm, con cui ho lavorato 37 anni, le linee guida per l’accessibilità [nuova finestra], nate per la comunità di sviluppatori Ibm, ma consultabili da tutti.

Ho ricoperto il ruolo di vicepresidente dell’EITAAC, comitato scelto dall’Access Board per proporre standard relativi alla Section 508 e ho presieduto il comitato per gli standard software.

Il mio primo impegno dopo aver lasciato Ibm è stato la creazione di un corso web [nuova finestra] sulle tematiche di accessibilità web. Tra i riconocimenti, sono particolarmente orgoglioso del Distinguished Service Award consegnatomi dalla National Federation of the Blind nel 1994 e del Vice Presidents Hammer Award nel 1999 a seguito del mio lavoro al dipartimento dell’educazione relativo alla stesura di standard per l’accessibilità software.

Top

Quali sono gli argomenti trattati nel vostro libro “Constructing Accessible Websites“?

Questo libro è una ricca sorgente di idee, strumenti e tecniche rivolta agli sviluppatori e ai project manager web che si occupano di progetti in cui deve essere garantita l’accessibilità. I sette autori sono profondi conoscitori delle tematiche di accessibilità.

Tra gli argomenti presentati nel testo:

  • Un’introduzione all’accessibilità
  • Le leggi e le linee guida
  • I browser e la tecnologia in aiuto alle persone disabili
  • Come realizzare contenuti accessibili
  • La navigazione e i form
  • Valutare l’accessibilità
  • Gli strumenti di sviluppo
  • Tecnologie emergenti

[Recensione del manuale]

Top

L’accessibilità web è utile solo alle persone disabili?

Alcuni importanti aspetti dell’accessibilità web sono specifici delle persone disabili e riguardano ad esempio gli screen reader. In generale, però, un sito accessibile è un sito progettato per essere utilizzato in modo semplice dal maggior numero di persone possibile.

Top

In cosa differisce l’accessibilità web dalla usabilità web?

L’accessibilità web deve essere vista come parte dell’usabilità. Per una persona disabile usabilità è quello che voi chiamate accessibilità, poiché deve utilizzare il sito con software come gli screen reader.

Top

Le specifiche Wai sono a volte difficili da applicare. Le pagine di un sito devono “degradare gentilmente”, ma allo stesso tempo è meglio usare i Css anche per il layout. Le due tecniche sembrano agli antipodi. È davvero possibile costruire un sito seguendo queste specifiche così restrittive?

Penso che alcune delle linee guida del Wai siano troppo restrittive. È fondamentale porre attenzione a come lo sviluppo di un sito possa rappresentare la differenza tra un sito accessibile ed uno non accessibile. Non dovremmo concentrarci sulle caratteristiche dell’accessibilità web che sono solo parzialmente supportate dai software, ma su quelle ormai mature.

Top

Cosa dire dei browser: Internet Explorer 6 e Netscape 6 interpretano correttamente i tag Html rivolti all’accessibilità?

Sia Netscape sia Microsoft stanno migliorando il supporto dei loro prodotti nei confronti dell’accessibilità. Ma le modifiche più importanti sono quelle che coinvolgono la tecnologia in aiuto alla persone disabili. Un esempio è l’attributo “header” delle celle di una tabella. Questa caratteristica consente al software di associare un’intestazione con il contenuto di una cella e di “leggerla”, magari con un sintetizzatore vocale. Il comune browser, invece, non se ne fa niente di questa informazione. Per questo è meno importante che migliori il supporto dei comuni browser che quello ad esempio degli screen readier

Top

A parte il sito Wai, ci sono altre risorse online che ci potrebbe consigliare?

Ci sono diverse alternative alle risorse del Wai. Provate il sito dell’Ibm per alcune linee guida sull’accessibilità web [nuova finestra], organizzate con logica. Anche Web Accessibility in Mind [nuova finestra] è un’eccezionale risorsa sviluppata dall’Università dello Utah. Visitate anche l’ International Center for Disability Resources [nuova finestra]

Top