Delphi
Delphi – język programowania, którego można używać w środowiskach firmy Borland , Embarcadero , Microsoft (Delphi Prism), oraz w środowisku Lazarus . Narzędzia te są zintegrowanymi środowiskami programistycznymi typu RAD , działającymi zgodnie z zasadą dwustronnej edycji .
Dawniej język Delphi był nazywany Object Pascalem , lecz w świadomości społecznej programistów na całym świecie Delphi zaczęło być postrzegane z czasem jako osobny język programowania i dlatego też przy okazji premiery Delphi 6 w roku 2002 w oficjalnej dokumentacji programu została użyta po raz pierwszy nazwa "Delphi language". Standard języka Delphi obejmuje wiele bogatych funkcjonalnie klas, których nie ma w standardzie Object Pascala , a ponadto umożliwia programowanie wizualne , czyli Object-Oriented Design. Object Pascal jest rozszerzeniem języka Pascal – został on rozwinięty przez firmę Apple Computer przy współpracy Larry'ego Teslera , głównego architekta, i Niklausa Wirtha , twórcy Pascala. Object Pascal wywodzi się z wcześniejszej, obiektowo zorientowanej wersji Pascala nazywanej Clascal , która była dostępna na komputery Lisa .
Programy tworzone w Delphi dla Win32 muszą zostać skompilowane do postaci kodu binarnego przed pierwszym wykonaniem. Niektóre komponenty wizualne działają już podczas tworzenia projektu, umożliwiając oglądanie efektów pracy. Delphi dla Win32 zapisuje informacje o właściwościach obiektów, udostępniając je programiście. Informacje te umożliwiają zmianę ich wartości przez programistę bez pisania kodu programu oraz są używane podczas pracy programu – technika ta zwana jest RTTI . Tworzone programy pracują na zasadzie obsługi zdarzeń , każde polecenie (np. kliknięcie myszką) generuje zdarzenie, które poprzez wewnętrzne mechanizmy programu są przesyłane do odpowiedniego komponentu, a rolą programisty jest tylko dołączenie odpowiedniego kodu umożliwiającego obsługę tego zdarzenia. Natywne programy tworzone w Delphi pod Win32 umożliwiają w prosty sposób stworzenie wydajnej aplikacji, sam język jest przyjazny użytkownikowi i podobny do języka C# [1] dla platformy .NET , który został stworzony znacznie później przez twórcę Delphi Andersa Hejlsberga , by stanowić alternatywę dla Delphi i dla Javy.
Obecnie programy tworzone w Delphi mogą również działać pod platformą .NET Framework. Język użyty w Delphi for .NET nieznacznie różni się składniowo od tego użytego dla programów Win32 i jest projektowany dla architektury platformy .NET. W zależności od wersji środowiska programistycznego można tworzyć aplikację dla .NET w wersji .NET 1.0, 1.1, 2.0, 3.0, 3.5.
Odpowiednik Delphi produkcji firmy Borland dla Linuksa nosił nazwę Kylix . Jego produkcja została zaniechana, gdyż charakteryzował się niską jakością. Obecnie rozwijane jest na licencji GNU GPL zintegrowane środowisko programistyczne ( IDE ) o nazwie Lazarus wzorowane na Delphi. Lazarus jest środowiskiem wieloplatformowym, dostępnym dla różnych systemów operacyjnych.
Spis treści |
[ edytuj ] Szerzej o Delphi
Delphi i Kylix używają języka Delphi bazującego na Pascalu . Kompilatory języka Delphi kompilują kod Delphi do natywnego kodu x86 lub zarządzalnego kodu .NET. Delphi zawiera w standardzie języka klasy VCL/CLX/VCL.NET (Visual Component Library). W przeciwieństwie do języka Pascal, Delphi nie było tworzone dla celów edukacyjnych, lecz biznesowych, jako język, który miał połączyć prostotę i przejrzystość języka Pascal z łatwym i wygodnym tworzeniem aplikacji. Delphi umożliwia również niskopoziomowe programowanie poprzez możliwość wstawiania części kodu napisanego w języku assembler . Delphi jest językiem obiektowym. Posiada dziedziczenie po jednej klasie i po wielu interfejsach, co sprawia, że programy pisane w Delphi są czytelniejsze niż programy pisane w językach pozwalających na wielodziedziczenie . Bazową klasą obiektu jest zawsze metaklasa TObject. Obiekty są przekazywane przez referencje (tak jak w Javie i C#). Konkatenacja łańcuchów (w standardzie języka Pascal istnieje już predefiniowany typ string) przebiega w bardzo wygodny sposób za pomocą znaku '+'. Nie potrzeba ręcznie alokować pamięci dla typu string. Język ułatwia Rapid Application Development . Posiada znaczące wsparcie społeczności usenetowej. Istnieje również wiele stron WWW poświęconych Delphi.
[ edytuj ] Rozwój języka
Wraz z rozwojem technologii informatycznych język Delphi ewoluował, zachowując jednak kompatybilność wstecz. Każdy projekt napisany w poprzedniej wersji języka jest kompilowalny w najnowszych kompilatorach.
Znaczna ewolucja Delphi nastąpiła w edycji języka na rok 2009. Zmiany, które zaszły, to:
- Pełne wsparcie języka dla Unicode (w tym dla VCL)
- Wprowadzenie klasy TStringBuilder dla szybszej konkatenacji łańcuchów
- Wprowadzenie typów generycznych
- Klasa TObject posiada wirtualne metody ToString, GetHashCode, i Equals
- Metody anonimowe
- Pełne wsparcie dla formatu plików PNG dla klasy TImage
Poza tym wprowadzono
- Nowe VCL (klasy komponentów Ribbon Controls , oraz klasy kontrolek TBalloonHint, TLinkLabel, TCategoryPanelGroup, TButtonedEdit)
- Rozszerzono możliwości kontrolek
- TButton (m.in. podpięcie listy obrazków (TImageList) do wyświetlania na przycisku),
- TEdit
- TProgressBar (m.in. zmiana statusu (i tym samym koloru) paska postępu – pbsNormal, pbsError, pbsPaused)
- TListView
- TTreeView
- TRichEdit
- TImageList (wsparcie formatu PNG dla listy obrazków, jednak bez możliwości wyboru koloru dla przezroczystego tła)
W wersji 2010 dodano do języka możliwość używania atrybutów [2] , oraz wprowadzono kilka nowych unitów do bibliotek standardowych języka [3]
[ edytuj ] Historia środowiska programistycznego Delphi
Delphi, opracowane przez firmę Borland , jest następcą środowiska Turbo Pascal , będącego połączeniem kompilatora języka Pascal ze środowiskiem edycyjnym.
- Pierwsza wersja (16-bitowa) Delphi ukazała się w 1995 roku i przeznaczona była do pracy w Microsoft Windows 3.1 . Było to jedno z pierwszych narzędzi typu Rapid Application Development
- Kolejna wersja – Delphi 2 – ukazała się w roku 1996 i była środowiskiem 32-bitowym, generującym kod dla Microsoft Windows 95 .
- Delphi 3 ukazało się w roku 1997 i wprowadziło do środowiska następujące elementy: pakiety, rozproszoną obsługę baz danych, wspomaganie tworzenia aplikacji internetowych, wspomaganie tworzenia kontrolek ActiveX .
- Delphi 4 dodało wiele nowych usprawnień IDE (jak na przykład możliwość dokowania okien), oraz usprawnienia w samym języku programowania (na przykład przeciążanie funkcji oraz metod).
- W wersji 6 pojawiła się m.in. możliwość tworzenia przeźroczystych okien (tylko Windows 2k/XP).
- Wersja 7 wniosła nowy komponent pozwalający na używanie stylów wizualnych z Windows XP w tworzonych programach. W roku 2001 powstała edycja przeznaczona dla Linuksa nazwana Kylix .
- Wersja 8 (rok 2003 ) wprowadziła Delphi w środowisko .NET , po raz pierwszy od powstania uległo też zmianie IDE, upodobniając się do Microsoft Visual Studio .NET.
- W edycji 2005, oprócz zintegrowania w jednym środowisku kompilatorów dla języków Delphi, Delphi.NET oraz C#, wprowadzono dalsze udoskonalenia środowiska (zwłaszcza refactoring kodu)
Na początku 2006 roku firma Borland wystawiła wszystkie przygotowane przez nią środowiska programistyczne – w tym również Delphi – na sprzedaż:
Fragment postu Davida Intersimona: To our loyal developer community:
Today, Wednesday February 8, 2006 at 1am Pacific Time, Borland announced plans to seek a buyer for our IDE product lines that include Delphi, C++Builder, C#Builder, JBuilder (and Peloton), InterBase, JDataStore, nDataStore, Kylix, and our older Borland and Turbo language products and tools. The goal is to create a standalone business focused on advancing individual developer productivity using the people inside Borland who are focused on the success of these award winning products.
Zaraz po tej informacji powstała strona [4] , która gromadziła fundusze na wykupienie Delphi z rąk Borlanda, i opublikowanie go jako środowiska Open Source. Pomimo zapowiedzi sprzedaży w roku 2006 wprowadzono wersję Borland Turbo znana jako Borland Turbo Delphi /Borland Turbo C# / Borland Turbo C++ / Borland Turbo Delphi for .NET
- 14 listopada 2006 – powstała firma-córka CodeGear, która została wyodrębniona z firmy Borland.
- 19 marca 2007 – powstało CodeGear Delphi 2007 for Vista and AJAX.
- 5 września 2007 – powstało CodeGear RAD Studio 2007 (Delphi, Delphi for .NET oraz C++Builder )
- 8 marca 2008 – pojawiło się CodeGear Delphi/400 for PHP
- 14 kwietnia 2008 – pojawiło się CodeGear Delphi for PHP
- 7 maja 2008 roku firma CodeGear przestała być własnością Borlanda. CodeGear została sprzedana za kwotę 23 milionów dolarów firmie Embarcadero .
- Delphi Prism – jest to wtyczka do IDE Microsoft Visual Studio, wraz z kompilatorem – stanowiący nowe środowisko programistyczne. Delphi Prism używa udoskonalonego kompilatora Oxygene firmy RemObjects . Pozwala na pisanie aplikacji .NET dla Windows, Linux i Mac. Nowy kompilator jest oczekiwaną alternatywą dla języka C# – obsługuje .NET 1.1, 2.0, 3.0, 3.5, WinForms, WPF, Silverlight, ASP.NET i LINQ. Nie obsługuje Compact Framework . W języku Delphi Prism nie można używać już VCL.NET. Firma CodeGear oficjalnie zaleca programistom piszącym w Delphi pod .NET i używających VCL.NET przejście na Win32. Autorzy Oxygene zyskali dostęp do teamu i kodu kompilatora Delphi, i mają wpływ na jego dalszy rozwój.
- Delphi 2009 – Delphi dla Windows obsługujące Win32. CodeGear oficjalnie zapowiedziało, że ma zamiar standaryzować i rozwijać język Delphi. Do języka wprowadzono typy generyczne, metody anonimowe i obsługę składniową dla Unicode ze strony języka.
- Delphi 2010 - wydano 25 sierpnia 2009 roku. Jest to druga wersja środowiska Delphi, która obsługuje Unicode. Nie niesie dużych zmian w stosunku do Delphi 2009. Zawiera nowy, ulepszony system RTTI. Nowy system skutkuje tworzeniem większych plików wykonywalnych niż w poprzednich wersjach Delphi. Delphi 2010 posiada wsparcie dla Windows 7, oraz dla ekranów dotykowych i gestów (nowe kontrolki VCL)
- Delphi XE - wydano 30 sierpnia 2010 roku. Dodano kilka narzędzi do środowiska takich jak AQtime (wersja standard), CodeSite (wersja express), Beyond Compare , zapewniono integrację z Subversion w IDE , dodano kontrolki do współpracy z Windows Azure oraz do przetwarzania w chmurze obliczeniowej Amazon EC2 , oraz dokonano kilku ulepszeń w języku (między innymi rozszerzono funkcjonalność TStrings i Date/Time), dodano unit RegularExpressions zawierający zbiór rekordów, które są analogiczne do klas regex w .NET Framework [5]
- Delphi XE Starter Edition - edycja Delphi XE udostępniona 27 stycznia 2011, skierowana dla hobbystów, studentów i małych firm, zatrudniających do pięciu programistów - dostępna za niższą cenę (około 190 $) [6]
[ edytuj ] Cechy i funkcjonalność
- wspomaganie dla obsługi relacyjnych systemów bazodanowych
- obsługa standardowych mechanizmów windowsowych, np. COM / ActiveX
- szeroki zestaw gotowych do użycia komponentów
- rozszerzalność środowiska (zarówno palety komponentów jak i samego IDE)
- dwustronna edycja
- budowa wizualnej części aplikacji za pomocą techniki drag and drop
- zawiera wiele elementów mających na celu uproszczenie tworzenia aplikacji związanych z Internetem
- szybki, efektywny kompilator
- zawiera wiele dodatkowych narzędzi wspomagających programistów
Środowisko Delphi wraz z dołączonymi narzędziami może być uznane za język czwartej generacji .
[ edytuj ] Środowisko użytkowników
Delphi cieszy się w Polsce stosunkowo dużą popularnością, w głównej mierze ze względu na względną prostotę i powszechność różnego rodzaju poradników dla początkujących. Grupa polskich programistów Delphi spotyka się na dorocznych zlotach, podczas których odbywają się wykłady dotyczące programowania. Ostatni zlot odbył się w lutym 2009 w Krakowie.
[ edytuj ] Przykłady oprogramowania napisanego w całości bądź częściowo przy użyciu języka Delphi
- Ad-Aware
- ASuite
- Avant Browser
- Cheat Engine
- Dev-C++
- FastStone Image Viewer
- FeedDemon
- FL Studio (dawniej Fruity Loops)
- HOSxP
- Inno Setup
- InstallAware
- K-Multimedia Player
- MediaMonkey
- MNprogram
- Monate OOP-Assembly
- NetCrunch
- NetWeaver Developer
- Opiekun Dziecka w Internecie
- Pajączek
- Primavera Project Manager
- Sabre Dispatch Manager
- Skype
- Spybot Search & Destroy
- The Bat!
- Total Commander
- Tropes Zoom
- TOAD
- Turbo51
- Turbocash
- Usine
- Virtual Bus
- Xnews
[ edytuj ] Zobacz też
[ edytuj ] Linki zewnętrzne
- http://www.borland.com/delphi/
- http://www.borland.pl/delphi/
- http://www.swissdelphicenter.ch/en/ – baza wiedzy na temat Delphi (po angielsku)
- http://delphi.icm.edu.pl/ – komponenty dla Kyliksa oraz wszystkich wersji Delphi i C++ Buildera
- http://delphi.about.com/ – mnóstwo ciekawych kawałków kodu oraz opis niektórych wersji Delphi
- http://www.unit1.pl/ – strona poświęcona programowaniu w Delphi
- http://www.delphifaq.net/ - mnóstwo ciekawych porad i kawałków kodu w Delphi
|
||||||||||||||||||||||||||||||||||||||||||||||||||
Home Page , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

