Oxygene
linguaggio di programmazione
AutoreRemObjects Software
Data di origine2005
Ultima versione10.0.0.2485 (18 febbraio 2020)
Paradigmiprogrammazione orientata agli oggetti e calcolo parallelo
Implementazione di riferimento
Licenzashareware
Sito webelementscompiler.com/elements/oxygene/

Oxygene (noto in precedenza come Chrome) è un linguaggio di programmazione sviluppato da RemObjects Software per la Common Language Infrastructure (CLI). Oxygene è basato sul linguaggio Object Pascal. Rispetto a Delphi.NET (ora deprecato), Oxygene non garantisce piena compatibilità nelle versioni precedenti, ma è progettato per essere pienamente integrato con la piattaforma .NET, supportando tutte le caratteristiche e le tecnologie fornite dal runtime .NET.

A partire dal 2008, RemObjects Software ha fornito in licenza il suo compilatore e la tecnologia IDE a Embarcadero per poterli usare nel prodotto Delphi Prism.[1] Delphi Prism offre piena integrazione in Visual Studio 2005/2008.

Il linguaggio Oxygene

modifica

Oxygene tra le sue origini da Object Pascal (in generale) e da Delphi (in particolare) è stato progettato per riflettere le linee guida .NET. Non tutte le caratteristiche di Object Pascal e Delphi, quindi, sono supportate da Oxygene. Oxygene è un linguaggio di programmazione orientato agli oggetti. Inoltre fornisce supporto al livello del linguaggio per la programmazione parallela. L'obiettivo è utilizzare tutti i processori di un computer al fine di migliorare le prestazioni di un programma. Per raggiungere tale obiettivo, i task devono essere distribuiti su diversi thread.

Overloading degli operatori

modifica

In Oxygene gli operatori possono essere sovraccaricati usando la sintassi class operator:

class operator implicit(i : Integer) : MyClass;

Struttura di un programma

modifica

Oxygene non utilizza le "Units" (unità) come fa invece Delphi, ma utilizza i namespace .NET per organizzare e raggruppare i tipi. Un namespace può estendersi attraverso molteplici file, ma un singolo file può contenere esclusivamente tipi di uno specifico namespace. Il namespace è definito in cima a ciascun file con la seguente sintassi:

namespace ConsoleApplication1;

I file Oxygene distinguono una sezione interfaccia e una di implementazione, una struttura mutuata da Delphi. La sezione interfaccia segue la dichiarazione del namespace e contiene le clausole uses, che in Oxygene importano tipi da altri namespace:

uses 
  System.Linq;

I namespace importati devono trovarsi nello stesso progetto o in "assembly" referenziati dallo stesso. Al contrario di C#, in Oxygene non è possibile definire alias per i namespace, ma solo per i singoli tipi.

Così come in Delphi, la sezione interfaccia può contenere inoltre dichiarazioni di tipo. Ad esempio:

interface

type
  ConsoleApp = class
  public
    class method Main;
  end;

Come in C#, nella sezione di implementazione il metodo Main è il punto d'ingresso (entry point) per ogni programma. Esso può avere un parametro args : Array of String per permettere il passaggio di argomenti da riga di comando.

L'implementazione dei metodi dichiarati è inserita nella sezione di implementazione:

implementation

class method ConsoleApp.Main;
begin
  // add your own code here
  Console.WriteLine('Hello World.');
end;

end.

Infine, i file terminano sempre con l'istruzione end.

Note

modifica
  1. ^ (EN) Pagina Web di Embarcadero Delphi Prism, su embarcadero.com (archiviato dall'url originale il 28 giugno 2010).

Collegamenti esterni

modifica
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica

📚 Artikel Terkait di Wikipedia

Personaggi di Frieren - Oltre la fine del viaggio

Lavagnino (ed. italiana) Un mago di prima classe e supervisore del primo esame dell'esame per maghi di prima classe. Methode (シャルフ?, Metōde) Doppiata da: Reina

Factory method

informazioni non accessibili alla classe di composizione, o non provvedere un sufficiente livello di astrazione. Il factory method indirizza questi problemi definendo

Remote Method Invocation

contesto del linguaggio di programmazione object-oriented Java, Remote Method Invocation (invocazione remota di metodi) o RMI è una tecnologia che consente

Il metodo Kominsky

Il metodo Kominsky (The Kominsky Method) è una serie televisiva statunitense creata da Chuck Lorre. La prima stagione è stata interamente pubblicata a

Singleton (informatica)

#include <iostream> class singleton { public: static singleton& get_instance() { static singleton instance; return instance; } bool method() { return m_something;

Template method

Il template method è un pattern comportamentale basato su classi, utilizzato in informatica nell'ambito della programmazione orientata agli oggetti. Questo

Elizabeth Hurley

(Serving Sara), regia di Reginald Hudlin (2002) Dead Even - Sangue caldo (Method), regia di Duncan Roy (2004) Il ragazzo e il grande elefante (Phoenix Wilder

Michael Fassbender

Fukunaga (2011) X-Men - L'inizio (X-Men: First Class), regia di Matthew Vaughn (2011) A Dangerous Method, regia di David Cronenberg (2011) Knockout - Resa