Eclipse (yazılım) - Eclipse (software)

tutulma
Eclipse-Luna-Logo.svg
Eclipse 4.12 ekran görüntüsü.png
Eclipse 4.12'nin karşılama ekranı
Orijinal yazar(lar) IBM
Geliştirici(ler) Eclipse Vakfı
İlk sürüm 1.0/7 Kasım 2001 ; 19 yıl önce ( 2001-11-07 )
kararlı sürüm
4.21.0  Bunu Vikiveri'de düzenleyin / 15 Eylül 2021 (31 gün önce)
Önizleme sürümü
4.21 (2021-09 sürümü)
depo
Yazılmış Java ve C
İşletim sistemi Linux , macOS , Windows
platformu Java SE , Standart Widget Araç Takımı , x86-64
Uygun 44 dil
dillerin listesi
Arnavutça, Arapça, Baskça, Bulgarca, Katalanca, Çince (basitleştirilmiş, geleneksel), Çekçe, Danca, Felemenkçe, İngilizce (Avustralya, Kanada), Estonca, Fince, Fransızca, Almanca, Yunanca, İbranice, Hintçe, Macarca, Endonezyaca, İtalyanca, Japonca, Klingonca, Korece, Kürtçe, Litvanca, Malayalamca, Moğolca, Myanmar, Nepalce, Norveççe, Farsça, Lehçe, Portekizce (Portekiz, Brezilya), Rumence, Rusça, Sırpça, Slovakça, Slovence, İspanyolca, İsveççe, Tayca, Türkçe, Ukraynaca , Vietnamca
Tip Programlama aracı , entegre geliştirme ortamı (IDE)
Lisans Eclipse Kamu Lisansı
İnternet sitesi www .eclipse .org Bunu Vikiveri'de düzenleyin

Eclipse , bilgisayar programlamada kullanılan entegre bir geliştirme ortamıdır (IDE) . Ortamı özelleştirmek için bir temel çalışma alanı ve genişletilebilir bir eklenti sistemi içerir. Eclipse çoğunlukla Java ile yazılır ve birincil kullanımı Java uygulamaları geliştirmek içindir, ancak Ada , ABAP , C , C++ , C# , Clojure , COBOL , D dahil olmak üzere eklentiler aracılığıyla diğer programlama dillerinde uygulamalar geliştirmek için de kullanılabilir. , Erlang , Fortran , Groovy , Haskell , JavaScript , Julia , Lasso , Lua , NATURAL , Perl , PHP , Prolog , Python , R , Ruby ( Ruby on Rails çerçevesi dahil ), Rust , Scala ve Scheme . Ayrıca LaTeX (bir TeXlipse eklentisi aracılığıyla) ile belgeler ve Mathematica yazılımı için paketler geliştirmek için de kullanılabilir . Geliştirme ortamları, diğerleri arasında Java ve Scala için Eclipse Java geliştirme araçlarını (JDT), C/C++ için Eclipse CDT'yi ve PHP için Eclipse PDT'yi içerir.

İlk kod tabanı , IBM VisualAge'den kaynaklanmıştır . Java geliştirme araçlarını içeren Eclipse yazılım geliştirme kiti (SDK), Java geliştiricileri içindir. Kullanıcılar, diğer programlama dilleri için geliştirme araç takımları gibi Eclipse Platformu için yazılmış eklentileri yükleyerek yeteneklerini genişletebilir ve kendi eklenti modüllerini yazabilir ve katkıda bulunabilir. Eclipse'in 3. sürümünde OSGi uygulamasının ( Equinox ) tanıtılmasından bu yana, eklentiler dinamik olarak takılıp durdurulabilir ve (OSGI) demetleri olarak adlandırılır.

Eclipse yazılım geliştirme kiti (SDK), GNU Genel Kamu Lisansı ile uyumlu olmamasına rağmen , Eclipse Kamu Lisansı koşulları altında yayınlanan ücretsiz ve açık kaynaklı bir yazılımdır . GNU Classpath altında çalışan ilk IDE'lerden biriydi ve IcedTea altında sorunsuz çalışıyor .

Tarih

Eclipse, Smalltalk tabanlı VisualAge entegre geliştirme ortamı (IDE) ürünleri ailesinden ilham almıştır . Oldukça başarılı olmasına rağmen, VisualAge ürünlerinin önemli bir dezavantajı, geliştirilen kodun bileşen tabanlı bir yazılım mühendisliği modelinde olmamasıydı . Bunun yerine, bir projenin tüm kodu sıkıştırılmış bir yığın halinde tutuldu (biraz zip dosyası gibi ama .dat adı verilen tescilli bir biçimde). Bireysel sınıflara, kesinlikle aracın dışından kolayca erişilemedi. Öncelikli olarak IBM Cary, NC laboratuvarında bulunan bir ekip, yeni ürünü Java tabanlı bir yedek olarak geliştirdi. Kasım 2001'de, Eclipse'in açık kaynaklı yazılım olarak geliştirilmesini ilerletmek için bir yönetim kurulu ile bir konsorsiyum kuruldu . IBM'in o zamana kadar yaklaşık 40 milyon dolar yatırım yaptığı tahmin ediliyor. Orijinal üyeler Borland , IBM , Merant , QNX Software Systems , Rational Software , Red Hat , SuSE , TogetherSoft ve WebGain'di . 2003 yılı sonunda komiser sayısı 80'in üzerine çıktı. Ocak 2004'te Eclipse Vakfı kuruldu.

Eclipse 3.0 (21 Haziran 2004'te yayınlandı) , çalışma zamanı mimarisi olarak OSGi Hizmet Platformu özelliklerini seçti .

For Computing Machinery Derneği 2011 Eclipse tanınan ACM Yazılım Sistemleri Ödülü 26 Nisan 2012 tarihinde.

lisanslama

Eclipse Public License (EPL) Eclipse projeleri salınan altında temel lisans bulunmaktadır. Bazı projeler, Eclipse Dağıtım Lisansının (EDL) mevcut olduğu ikili lisans gerektirir, ancak bu lisansın kullanımı için başvurulması gerekir ve duruma göre değerlendirilir.

Eclipse başlangıçta Ortak Kamu Lisansı altında yayınlandı , ancak daha sonra Eclipse Kamu Lisansı altında yeniden lisanslandı. Free Software Foundation hem lisanslardır söyledi özgür yazılım lisansları, ama uyumsuzdur GNU Genel Kamu Lisansı (GPL).

İsim

O zamanlar IBM'in Rational bölümünün (2003'te başlayan) Baş Teknoloji Sorumlusu Lee Nackman'a göre , "Eclipse" adı (en az 2001'den kalma) Sun Microsystems'de bir kelime oyunu değildi , çünkü o sırada ürünün ana rakibiydi. adlandırma oldu Microsoft Visual Studio , Eclipse Tutulma etmekti.

Eclipse'in farklı sürümlerine bilimle ilgili farklı isimler verildi. Adını versiyonları Callisto , Europa ve Ganymede ayları olan, Jüpiter , adını taşıyan sürümü izledi Galileo , keşfeden bu uyduları. Bunları güneş temalı iki isim, Yunan mitolojisindeki Helios ve gökkuşağının yedi renginden biri olan (güneş tarafından üretilen) Indigo izledi . Bundan sonraki versiyon, Juno'nun üçlü bir anlamı var: bir Roma mitolojik figürü , bir asteroit ve Jüpiter'e bir uzay aracı . Kepler , Luna ve Mars , astronomi temasını sürdürdü ve ardından Neon ve Oksijen , kimyasal elementlerin bir temasını oluşturdu . Foton , güneş temalı isimlere dönüşü temsil ediyordu.

2018 itibariyle, yeni Eşzamanlı Yayın stratejisiyle daha iyi uyum sağlamak için alfabetik şemadan vazgeçildi. Sürümler, 2018-09 adlı 4.9 sürümünden başlayarak üç aylık sürümleri yansıtacak şekilde YYYY-AA biçiminde adlandırılır.

Salıverme

2006'dan beri Vakıf, yıllık Eşzamanlı Yayını koordine etmektedir . Her sürüm, Eclipse Platformunu ve diğer birkaç Eclipse projesini içerir.

2008'den 2018'e kadar her Eşzamanlı Yayın 4 Haziran Çarşamba günü gerçekleşti. 2018 yılında proje , ara hizmet sürümleri olmadan üç ayda bir (13 hafta) YYYY-AA sürümlerine geçti.

Sürüm adı Tarih Platform sürümü Projeler Ana değişiklikler
Yok 21 Haziran 2004 Eski sürüm, artık korunmuyor: 3.0
Yok 28 Haziran 2005 Eski sürüm, artık korunmuyor: 3.1 Java 5 desteği eklendi : jenerikler, açıklamalar, kutulama-kutu açma, numaralandırmalar, geliştirilmiş döngü, varargs, statik içe aktarma
Kalisto 30 Haziran 2006 Eski sürüm, artık korunmuyor: 3.2 Callisto projeleri
Avrupa 29 Haziran 2007 Eski sürüm, artık korunmuyor: 3.3 Avrupa projeleri
Ganymede 25 Haziran 2008 Eski sürüm, artık korunmuyor: 3.4 Ganymede projeleri
Galileo 24 Haziran 2009 Eski sürüm, artık korunmuyor: 3.5 Galileo projeleri
helios 23 Haziran 2010 Eski sürüm, artık korunmuyor: 3.6 Helios projeleri
çivit 22 Haziran 2011 Eski sürüm, artık korunmuyor: 3.7 çivit projeleri Java 7 desteği eklendi (3.7.1 sr1): Genel Örnek Oluşturma (Elmas), Çoklu yakalama, kaynaklarla deneme ifadesi, Basitleştirilmiş Varargs Yöntem Çağrısı, Anahtardaki dizeler, İkili Değişmezler ve Sayısal Değişmezlerde Alt Çizgiler için Geliştirilmiş Tür Çıkarımı, Polimorfik Yöntemler
Juno 27 Haziran 2012 Eski sürüm, artık korunmuyor: 3.8 ve 4.2

Juno projeleri
Kepler 26 Haziran 2013 Eski sürüm, artık korunmuyor: 4.3 Kepler projeleri
ay 25 Haziran 2014 Eski sürüm, artık korunmuyor: 4.4 Luna projeleri Entegre Java 8 desteği; önceki sürümde bu, bir Java 8 yama eklentisi aracılığıyla mümkündü .
Mars 24 Haziran 2015 Eski sürüm, artık korunmuyor: 4.5 Mars projeleri
Neon 22 Haziran 2016 Eski sürüm, artık korunmuyor: 4.6 Neon projeleri
Oksijen 28 Haziran 2017 Eski sürüm, artık korunmuyor: 4.7 oksijen projeleri Oxygen.1a, Java 9 ve Junit 5 desteğini ve Oxygen.3a, Java 10 desteğini tanıttı.

Aşağıdaki Unix tabanlı platformlar için destek kaldırıldı: AIX, Solaris, HP-UX ve s390.

Foton 27 Haziran 2018 Eski sürüm, artık korunmuyor: 4.8 foton projeleri 32bit Windows ve Linux desteği kaldırıldı.
2018-09 19 Eylül 2018 Eski sürüm, artık korunmuyor: 4.9 2018-09 projeleri
2018-12 19 Aralık 2018 Eski sürüm, artık korunmuyor: 4.10 2018-12 projeleri Java 11 desteği eklendi.
2019-03 20 Mart 2019 Eski sürüm, artık korunmuyor: 4.11 2019-03 projeleri
2019-06 19 Haziran 2019 Eski sürüm, artık korunmuyor: 4.12 2019-06 projeleri
2019-09 18 Eylül 2019 Eski sürüm, artık korunmuyor: 4.13 2019-09 projeleri
2019-12 18 Aralık 2019 Eski sürüm, artık korunmuyor: 4.14 2019-12 projeleri
2020-03 18 Mart 2020 Eski sürüm, artık korunmuyor: 4.15 2020-03 projeleri Dil Sunucusu Protokolüne dayanarak Web Geliştirme dilleri için güncelleme desteği
2020-06 17 Haziran 2020 Eski sürüm, artık korunmuyor: 4.16 2020-06 projeleri
2020-09 16 Eylül 2020 Eski sürüm, artık korunmuyor: 4.17 2020-09 projeleri Çalıştırmak için JDK 11 gerektirir.
2020-12 16 Aralık 2020 Eski sürüm, artık korunmuyor: 4.18 2020-12 projeleri Çoğu pakete bir JDK yerleştirilmiştir, bu nedenle Java yüklemesi bir ön koşul değildir.
2021-03 17 Mart 2021 Eski sürüm, artık korunmuyor: 4.19 2021-03 projeleri
2021-06 16 Haziran 2021 Eski sürüm, artık korunmuyor: 4.20 2021-06 projeleri
2021-09 15 Eylül 2021 Mevcut kararlı sürüm: 4.21 2021-09 projeleri
2021-12 8 Aralık 2021 Gelecek sürüm: 4.22 2021-12 projeleri
Efsane:
Eski versiyon
Eski sürüm, hala korunuyor
En son sürüm
En son önizleme sürümü
Gelecek sürüm
  1. ^ Eclipse Juno'nun 3.8 sürümü var; ana indirmeler sayfasında tanıtılmaz, ancak indirilmek üzere paketlenmiş bir dağıtım mevcuttur. Eclipse 3.8, Indigo için hata düzeltmeleri sağlar ve Java 7 desteği ekler ve bakımı 4.2 ile çift akışlıdır. Paketlenmiş dağıtıma eşdeğer özellikler ve eklentiler IDE içinden eklenebilir.

Mimari

Eclipse, çalışma zamanı sisteminin içindeki ve üstündeki tüm işlevleri sağlamak için eklentileri kullanır. Bu çalıştırma sistemi dayanan Equinox'ta , bir uygulama OSGi çekirdek çerçeve tarifnamede.

Eklenti çerçevesi, Eclipse Platformunun C ve Python gibi diğer programlama dilleri kullanılarak genişletilmesine izin vermenin yanı sıra, Eclipse Platformunun LaTeX gibi dizgi dilleriyle ve telnet ve veritabanı yönetim sistemleri gibi ağ uygulamalarıyla çalışmasına olanak tanır . Eklenti mimarisi, yapılandırma yönetimi gibi herhangi bir istenen uzantının ortama yazılmasını destekler . Eclipse SDK'da Java ve CVS desteği, üçüncü taraf eklentiler tarafından sağlanan diğer sürüm kontrol sistemleri desteği ile sağlanır .

Küçük bir çalışma zamanı çekirdeği dışında, Eclipse'deki her şey bir eklentidir. Böylece geliştirilen her eklenti Eclipse ile diğer eklentilerle aynı şekilde entegre olur; bu bakımdan tüm özellikler "eşit yaratılmıştır". Eclipse, bazıları hem ücretsiz hem de ticari modelleri kullanan üçüncü şahıslardan gelen çok çeşitli özellikler için eklentiler sağlar. Eklenti örnekleri arasında Birleşik Modelleme Dili (UML), Sıra ve diğer UML diyagramları, DB Explorer için bir eklenti ve daha fazlası yer alır.

Eclipse SDK, yerleşik bir Java artımlı derleyicisi ve Java kaynak dosyalarının tam bir modelini içeren bir IDE sunan Eclipse Java geliştirme araçlarını (JDT) içerir. Bu, gelişmiş yeniden düzenleme tekniklerine ve kod analizine izin verir . IDE ayrıca bir çalışma alanını kullanır , bu durumda ilgili çalışma alanı kaynağı daha sonra yenilendiği sürece harici dosya değişikliklerine izin veren düz bir dosya alanı üzerinde bir dizi meta veri .

Eclipse , Java araç setinin Standard Widget Toolkit (SWT) olarak adlandırılan grafiksel kontrol öğelerini uygularken, çoğu Java uygulaması Java standardı Abstract Window Toolkit (AWT) veya Swing'i kullanır . Eclipse'in kullanıcı arabirimi ayrıca, SWT'ye dayalı uygulamaların oluşturulmasını basitleştiren JFace adlı bir ara grafik kullanıcı arabirimi katmanı kullanır . Eclipse, 2014 yılında bir Google Summer of Code (GSoC) Projesi sırasında Wayland'da çalıştırılmak üzere yapılmıştır .

2017 itibariyle, Babel Projesi tarafından geliştirilen dil paketleri, 40'tan fazla doğal dile çeviri sağlıyor .

Zengin müşteri platformu

Eclipse, genel amaçlı uygulamalar geliştirmek için zengin istemci platformu (RCP) sağlar.

Aşağıdaki bileşenler zengin istemci platformunu oluşturur:

Eclipse tabanlı zengin istemci uygulamalarına örnekler:

sunucu platformu

Eclipse, Tomcat , GlassFish ve diğer birçok sunucu için geliştirmeyi destekler ve genellikle gerekli sunucuyu (geliştirme için) doğrudan IDE'den kurma yeteneğine sahiptir. Uzaktan hata ayıklamayı destekler, kullanıcının değişkenleri izlemesine ve bağlı sunucuda çalışan bir uygulamanın kodunda gezinmesine olanak tanır.

Web Araçları Platformu

Eclipse Web Araçları Platformu (WTP) projesi, Web ve Java EE uygulamaları geliştirmek için araçlar içeren Eclipse platformunun bir uzantısıdır. Çeşitli diller için kaynak ve grafik düzenleyiciler, geliştirmeyi basitleştirmek için sihirbazlar ve yerleşik uygulamalar ile uygulamaları dağıtmayı, çalıştırmayı ve test etmeyi desteklemek için araçlar ve API'ler içerir.

modelleme platformu

Modelleme projesi, Eclipse Foundation'ın model tabanlı geliştirme teknolojilerine odaklanan tüm resmi projelerini içerir. Hepsi, IBM tarafından oluşturulan Eclipse Modeling Framework ile uyumludur. Bu projeler birkaç kategoriye ayrılır: Model Dönüşümü, Model Geliştirme Araçları, Somut Sözdizimi Geliştirme, Soyut Sözdizimi Geliştirme, Teknoloji ve Araştırma ve Amalgam.

Model Dönüşüm projeleri, girdi olarak Eclipse Modeling Framework (EMF) tabanlı modelleri kullanır ve çıktı olarak bir model veya metin üretir. Modelden modele dönüşüm projeleri, belirli bir modeli dönüştürmek veya belirli bir EMF modelinden yeni bir model oluşturmak için kullanılan bir açık kaynak dönüştürme dili ve araç takımı olan ATLAS Dönüşüm Dili'ni (ATL) içerir . Metin dönüşüm projelerine Modeli içeren Acceleo , bir uygulamasıdır MOFM2T , metin dili için standart bir model Object Management Group (OMG). Acceleo kod üreteci , herhangi bir metamodel ( Unified Modeling Language (UML), Systems Modeling Language (SysML), vb.) ile tanımlanan EMF tabanlı modellerden herhangi bir metin dili (Java, PHP, Python, vb .) oluşturabilir. Açık kaynak kodludur.

Model Geliştirme Araçları projeleri, endüstride kullanılan çeşitli modelleme standartlarının ve bunların araç setlerinin uygulamalarıdır. Bu projeler arasında çeşitli standartların uygulamaları bulunabilir:

Somut Sözdizimi Geliştirme projesi, EMF tabanlı modellerin grafik temsiline adanmış Eclipse tabanlı bir çerçeve olan Grafik Modelleme Çerçevesini içerir.

Soyut Sözdizimi Geliştirme projesi, Eclipse Foundation'ın modelleme projesinin çoğunun çekirdeği olan Eclipse Modelleme Çerçevesini ve Bağlı Veri Nesneleri (CDO), EMF sorgusu veya EMF doğrulaması gibi EMF için mevcut olan çerçeveyi barındırır .

Teknoloji ve Araştırma projeleri Modelleme projesinin prototipleridir; bu proje, kuluçka aşamasında Eclipse Foundation'ın tüm modelleme projelerine ev sahipliği yapmak için kullanılıyor.

Amalgam, modelleme araçlarına ayrılmış Eclipse paketi için mevcut tüm modelleme araçları arasında paketleme ve entegrasyon sağlar.

Uygulama yaşam döngüsü yönetimi

Uygulama ömrü yönetimi (ALM) görev yönetimi Eclipse (Mylyn adlandırılan isteğe bağlı bir bileşen mi / m l ɪ n / ), bir açık kaynak uygulanmasını görev odaklı arayüz . Görev odaklı arayüzü içeren araçlar için bir API sağlar. Yazılım geliştiricileri için, bir geliştiricinin birçok farklı görevle (hatalar, sorun raporları veya yeni özellikler gibi) verimli çalışmasına yardımcı olur. Görevler Mylyn'e entegre edilmiştir. Mylyn, entegre edilmiş tüm görevler için kullanıcı etkinliğini izler ve eldeki görevle ilgili bilgileri belirlemeye çalışır. Eclipse kullanıcı arayüzünü ilgili bilgilere odaklamak için bu görev bağlamını kullanır. Mylyn, Bugzilla , Trac , Redmine , Mantis , JIRA , Unfuddle ve GitHub gibi depolarla entegre olabilir . Arama, kaydırma ve gezinmeyi azaltarak üretkenliği artırmaya odaklanır. Mylyn, görev bağlamını açık hale getirerek aynı zamanda çoklu görevleri, planlamayı, geçmiş çabaları yeniden kullanmayı ve uzmanlık paylaşımını kolaylaştırmayı amaçlıyor.

Proje adı gelen miyelin , nöronların aksonları çevreleyen bir elektriksel yalıtım katmanının. Bu projenin orijinal adı olan "Mylar", bir boPET film şirketinin ticari markasını kopyaladı , bu nedenle Eclipse Vakfı proje adını değiştirdi.

Uzantılar

Eclipse için destek ekleyerek, uzantıları zengin bir seçim destekler Python aracılığıyla Pydev , Android yoluyla gelişme Google'ın ADT (yerini Android Studio 2015 yılından bu yana), JavaFX üzerinden e (fx) Clipse, JavaScript , jQuery Eclipse Pazar Yeri'nde, ve diğerleri. Valable, Eclipse için bir Vala eklentisidir.

alternatif dağılımlar

Eclipse projesinde birkaç alternatif dağıtım vardır.

PHP Geliştirme Araçları

PHP Köprü Metni Ön İşlemcisi (PHP) Geliştirme Araçları projesi, Eclipse platformu için bir çerçeve sağlar. Proje, kod tamamlama, PHP geliştirme ve genişletilebilirliği kolaylaştırma dahil tüm geliştirme bileşenlerini kapsar. Mevcut Eclipse Web Araçları Platformunu (WTP) ve Dinamik Diller Araç Takımı'nı (DLTK) kullanır.

Android Geliştirme Araçları

Android Geliştirme Araçları'nın (ADT), Google'ın Eclipse IDE için eklentilerinin geliştirilmesini durdurmasının ardından , 2015 yılında Eclipse vakfının Andmore: Android için Geliştirme Araçları adlı kendi eklentisi tarafından değiştirildi. Android uygulamaları oluşturun. ADT/Andmore, geliştiricilerin yeni Android projeleri oluşturmasına, bir uygulama kullanıcı arabirimi oluşturmasına, Android Framework API'sine dayalı paketler eklemesine, Android SDK araçlarını kullanarak uygulamalarında hata ayıklamasına ve imzalı (veya imzasız) .apk dosyalarını dışa aktarmasına olanak tanımak için Eclipse'in yeteneklerini genişletir. uygulamalarını dağıtmak için. İndirmek için ücretsiz olarak kullanılabilir. Google'ın ADT'si, 2015 yılına kadar Android için resmi IDE idi, ancak yerini Eclipse'in Andmore ve resmi Android Studio aldı .

Ayrıca bakınız

Referanslar

Kaynaklar

Dış bağlantılar