Sviluppo software

AtSafe è specializzata nelo sviluppo di soluzioni software in vari linguaggi di programmazione:

  • Java (Multipiattaforma)
  • C/C++
  • RealBasic (Cross platform Windows/MacOSX/Linux)
  • Objective-C (applicazioni per iPhone/iPad)

Per le nostre soluzioni software ci basiamo sull’utilizzo di database di vario tipo:

  • SQL Server (Microsoft)
  • MySQL
  • RealSQL
  • SQLite

JAVA

Java è stato creato a partire da ricerche effettuate alla Stanford University agli inizi degli anni Novanta. Nel 1992 nasce il linguaggio Oak (in italiano “quercia”), prodotto da Sun Microsystems e realizzato da un gruppo di esperti sviluppatori capitanati da James Gosling. Tale nome fu successivamente cambiato in Java a causa di un problema di copyright (il linguaggio di programmazione Oak esisteva già).

Per facilitare il passaggio a Java ai programmatori old-fashioned, legati in particolare a linguaggi come il C++, la sintassi di base (strutture di controllo, operatori e così via) è stata mantenuta pressoché identica a quella del C++; tuttavia, non sono state introdotte caratteristiche ritenute fonti di una complessità non necessaria a livello di linguaggio e che favoriscono l’introduzione di determinati bug durante la programmazione, come l’aritmetica dei puntatori, l’ereditarietà multipla delle classi, e l’istruzione goto. Per le caratteristiche object-oriented del linguaggio ci si è ispirati al C++ e soprattutto all’Objective C.

RealBasic

REALbasic è stato creato da Andrew Barry. Il nome originariamente era CrossBasic, per sottolineare la sua capacità di compilare lo stesso codice di programmazione per Mac OS e Java (anche se l’ambiente di sviluppo integrato era solo Mac). Nel 1997 CrossBasic fu acquistato da FYI Software, che cambiò il suo nome in REALbasic e il nome dell’azienda stessa in REAL Software. Fu in questo periodo che venne abbandonato il target Java e furono aggiunti il target Windows ed il supporto database. L’IDE è ora disponibile per Microsoft Windows, Mac OS X, e Linux 32-bit x86 e può compilare applicazioni per Windows (Windows 2000 e superiore), Mac OS X (PowerPC, Intel, e Universal Binary) e Linux 32-bit x86. Anche se REALbasic (RB) usa la parola “basic” nella sua descrizione come una variante del linguaggio di programmazione BASIC, RB non si conforma allo standard ANSI per il linguaggio di programmazione BASIC. Ad esempio, il codice sorgente ANSI Standard di semplici programmi demo in TrueBASIC non compilerà in RB senza una riscrittura completa. RB non supporta l’operazione matematica matrix standard “mat” che rende ANSI BASIC uno strumento utile per l’insegnamento di concetti di programmazione introduttivi. RB è un linguaggio fortemente tipizzato con una conversione automatica di tipo ridotta al minimo, che supporta ereditarietà singola e interfacce, metodi e proprietà di classe, gestione della memoria automatica tramite il conteggio dei riferimenti, e il sovraccarico degli operatori. Una funzione importante è la capacità di estendere (non solo ereditare) classi esistenti, come le categorie Objective-C. Questa particolarità riduce considerevolmente il bisogno di Abstract Factory Pattern, che complicano l’uso di Framework applicativi in Java e C++. REALbasic include anche la funzione delegate, l’introspezione, e il supporto a namespace, che consentono ai moduli di contenere classi, interfacce e altri moduli.

Objective-C

Objective C, spesso citato anche come Objective-C o ObjC o Obj-C, è un linguaggio di programmazione riflessivo orientato agli oggetti, sviluppato da Brad Cox alla metà degli anni ottanta presso la Stepstone Corporation. Come lo stesso nome suggerisce, l’Objective C è un’estensione a oggetti del linguaggio C. Esso mantiene la completa compatibilità col C (a differenza di quanto avviene, per esempio, nel caso del C++). Tra l’altro, anche a causa di questa compatibilità, Objective C non è dotato di forte tipizzazione (caratteristica che invece esibiscono, tra gli altri, sia C++ che Java). Le estensioni a oggetti con cui Objective C arricchisce il modello semantico del C sono ispirate al linguaggio Smalltalk, in particolar modo alla gestione dei messaggi. Le caratteristiche del runtime system collocano l’Objective C tra i linguaggi ad oggetti dinamici. Sono supportati tutti gli elementi classici della programmazione a oggetti; ma non mancano concetti innovativi anche su questo fronte, come il meccanismo delle categorie e strumenti legati alla riflessione. La sua diffusione è principalmente legata al framework OpenStep di NeXT e al suo successore Cocoa, presente nel sistema operativo Mac OS X di Apple. A NeXT si deve il supporto dell’Objective C nel compilatore gcc di GNU.

SQL Server

Microsoft SQL Server è un DBMS relazionale, meglio noto come Relational Database Management System (RDBMS), prodotto da Microsoft. Nelle prime versioni era utilizzato per basi dati medio-piccole, ma a partire dalla versione 2000 è stato utilizzato anche per la gestione di basi dati di grandi dimensioni.
Microsoft SQL Server usa una variante del linguaggio SQL standard (lo standard ISO certificato nel 1992) chiamata T-SQL Transact-SQL. Sia Microsoft SQL Server che Sybase Adaptive Server Enterprise comunicano sulla rete utilizzando un protocollo a livello di applicazione chiamato “Tabular Data Stream” (TDS). SQL Server supporta anche “Open Database Connectivity” (ODBC).

MySQL

MySQL è un Relational database management system (RDBMS), composto da un client con interfaccia a caratteri e un server, entrambi disponibili sia per sistemi Unix come GNU/Linux che per Windows, anche se prevale un suo utilizzo in ambito Unix. Dal 1996 supporta la maggior parte della sintassi SQL e si prevede in futuro il pieno rispetto dello standard ANSI. Possiede delle interfacce per diversi linguaggi, compreso un driver ODBC, due driver Java, un driver per Mono e .NET ed una libreria per python. Il codice di MySQL venne sviluppato fin dal 1979 dalla ditta TcX ataconsult, poi rinominata MySQL AB, ma è solo dal 1996 che viene distribuita una versione che supporta SQL, prendendo spunto da un altro prodotto: mSQL. MySQL AB è stata rilevata da Sun Microsystems nel 2008, mentre nel 2010 quest’ultima è stata acquisita da Oracle Corporation. MySQL svolge il compito di DBMS nella piattaforma LAMP, una delle più usate e installate su Internet per lo sviluppo di siti e applicazioni web dinamiche.

SQLite

SQLite è una libreria software scritta in linguaggio C che implementa un DBMS SQL di tipo ACID incorporabile all’interno di applicazioni. Il suo creatore, D. Richard Hipp, lo ha rilasciato nel pubblico dominio, rendendolo utilizzabile quindi senza alcuna restrizione. SQLite permette di creare una base di dati (comprese tabelle, query, form, report) incorporata in un unico file, come nel caso dei moduli Access di Microsoft Office e Base di OpenOffice.org e analogamente a prodotti specifici come Paradox o Filemaker. SQLite non è un processo standalone utilizzabile di per sé, ma può essere incorporato all’interno di un altro programma. È utilizzabile con il linguaggio C/C++, ed esistono binding anche per altri linguaggi, in particolare Tcl. È inoltre stato integrato nella versione 5 di PHP, consentendo a tale popolare linguaggio di disporre di un altro RDBMS indipendentemente dalla presenza di MySQL. Viene utilizzato in Mozilla Firefox per memorizzare i bookmark, la cronologia di navigazione ed altre informazioni.

Captcha:
6 + 7 =

line
footer
AtSafe di Silvio Balduzzi - P.IVA: 03660270160 C.F. BLDSLV84M21C800W
RSS