Basit bir Eclipse RCP uygulamasının geliştirilmesi. Eclipse platformu nedir ve nasıl kullanılır

  • 09.05.2019

) OSGi hizmet platformu özellikleri, çalışma zamanı ortamının mimarisi olarak seçilmiştir. Sürüm 3.0'dan bu yana Eclipse, uzantıları destekleyen monolitik bir IDE olmaktan çıktı, ancak kendisi bir uzantılar kümesi haline geldi. OSGi çerçevesine ve SWT / JFace'e dayalıdır ve bir sonraki katmanın temelini oluşturur - RCP (Zengin İstemci Platformu, tam teşekküllü istemci uygulamaları geliştirmek için bir platform). RCP, yalnızca Eclipse için değil, Azureus ve File Arranger gibi diğer RCP uygulamaları için de temel görevi görür. Sonraki katman, editörler, paneller, perspektifler, bir CVS modülü ve bir Java Geliştirme Araçları (JDT) modülü olan RCP uzantılarının bir koleksiyonu olan Eclipse'nin kendisidir.

2006'dan beri Eclipse Vakfı, Haziran ayında gerçekleşen yıllık Eşzamanlı Yayın koordine etmektedir. Her sürüm, Eclipse platformunun yanı sıra bir dizi başka Eclipse projesini içerir.

Serbest bırakmak tarih Platform versiyonu Proje
Neon 22 Haziran 2016 4.6
Mars 25 Haziran 2015 4.5
Luna 6 Haziran 2014 4.4
Kepler 26 Haziran 2013 4.3
Juno 27 Haziran 2012 3.8 ve 4.2
Indigo 22 Haziran 2011 3.7
Helios 23 Haziran 2010 3.6
Galileo 24 Haziran 2009 3.5
Ganymede 25 Haziran 2008 3.4
Europa 29 Haziran 2007 3.3
Callisto 30 Haziran 2006 3.2
Eclipse 3.1 28 Haziran 2005 3.1
Eclipse 3.0 28 Haziran 2004 3.0

Faydaları

Eclipse, öncelikle uzantılar geliştirmek için bir platformdur, bu yüzden popülerlik kazanmıştır: herhangi bir geliştirici, Eclipse'i modülleriyle genişletebilir. IBM ile birlikte QNX mühendisleri tarafından geliştirilen Java Geliştirme Araçları (JDT), C / C ++ Geliştirme Araçları (CDT) ve Ada dilleri (GNATbench, Hibachi), COBOL, FORTRAN, PHP, X10 (X10DT) vb. İçin araçlar mevcuttur. çeşitli geliştiriciler. Pek çok uzantı, Eclipse ortamını veritabanları, uygulama sunucuları ve daha fazlasıyla çalışmak için dağıtım programlarıyla tamamlar.

Eclipse JDT (Java Geliştirme Araçları), grup geliştirmeyi amaçlayan en ünlü modüldür: ortam sürüm kontrol sistemleriyle entegre edilmiştir - ana dağıtımda CVS, GIT, diğer sistemler için (örneğin, Subversion) eklentiler vardır. Ayrıca IDE ile görev (hata) yönetim sistemi arasındaki iletişim için destek sunar. Ana paket, Bugzilla hata izleyici desteği içerir, ayrıca diğer izleyicileri (Trac, Jira, vb.) Desteklemek için birçok uzantı vardır. Ücretsiz ve yüksek kaliteli olduğu için Eclipse, birçok kuruluşta uygulama geliştirme için kurumsal standarttır.

Eclipse Java ile yazılmıştır, bu nedenle tüm yaygın platformlar için geliştirilen SWT kütüphanesi dışında platformdan bağımsızdır (aşağıya bakın). Standart Java Swing kitaplığı yerine SWT kitaplığı kullanılır. Tamamen, hızlı ve doğal görünen bir kullanıcı arabirimi sağlayan temel platforma (işletim sistemi) dayanır, ancak bazen platformlar arasında uyumluluk ve uygulama kararlılığı sorunlarına neden olur.

Mimari

Eclipse, Zengin İstemci Platformuna (RCP) dayanmaktadır. zengin müşteri platformu). Aşağıdaki bileşenlerden oluşur:

  • OSGi (paketler için standart teslimat ortamı (eng. paketler));
  • SWT (Taşınabilir Widget Araç Seti);
  • JFace (dosya arabellekleri, metinle çalışma, metin düzenleyicileri);
  • Eclipse çalışma ortamı (paneller, editörler, projeksiyonlar, sihirbazlar).
    • Aperi (enlem. açık) açık kaynaklı bir ağ depolama yönetim sistemidir.
    • BIRT (İş Zekası ve Raporlama Araçları) - Web ve PDF raporları.
    • DTP (Veri Araçları Platformu) - veri merkezli sistemlerin, özellikle ilişkisel veritabanlarındaki verilerin geliştirilmesi; çok sayıda konektöre sahip programların yönetimi.
    • GEF (Grafik Düzenleme Çerçevesi), yerleşik grafik düzenleyiciler oluşturmak için bir çerçevedir.
    • Jazz, Eclipse (IBM Rational ürün serisinin bir parçası) üzerine inşa edilen, proje geliştirme sırasında geliştiriciler (sohbet, olay günlüğü vb. İçerir) arasındaki etkileşim için bir istemci-sunucu platformudur.
    • Modelleme .
    • Araçlar .
    • TPTP (Test ve Performans Araçları Platformu) - test araçlarının geliştirilmesi, - hata ayıklayıcılar, profil oluşturucular vb.
    • VE (Görsel Düzenleyici Projesi) - GUI araçlarının geliştirilmesi.
    • WTP (Web Araçları Platformu Projesi) - J2EE web uygulaması geliştirme araçları:
      • hTML, JavaScript, CSS, JSP, SQL, XML, DTD, XSD ve WSDL editörleri;
      • xSD ve WSDL için grafik düzenleyiciler;
      • web Hizmetleri Sihirbazları ve Gezgini, WS-I Test Araçları;
      • sorgulara ve veritabanı modellerine erişmek ve oluşturmak için araçlar.
    • Eclipse Communications Framework (ECF), Eclipse platformunda iletişim uygulamaları oluşturmayı amaçlamaktadır.
    • Cihaz Yazılım Geliştirme Projesi (DSDP).
    • Paralel Araçlar Platformu (PTP), paralel bilgisayar mimarilerine özel araçların entegrasyonunu kolaylaştıracak taşınabilir, ölçeklenebilir, standartlara dayalı bir paralel araçlar platformu sağlar.
    • Gömülü Gelişmiş İstemci Platformu (eRCP) - RCP'yi gömülü aygıtlara genişletmek için tasarlanmıştır. ERCP, RCP bileşenlerinin bir alt kümesi olan bir dizi bileşen içerir. Masaüstü bilgisayarlarda kullanılan uygulama modelini başka cihazlara aktarmanıza izin verecektir.
    • DLTK (Dinamik Diller Araç Seti), dinamik programlama dilleri için entegre bir geliştirme ortamıdır.
    • Swordfish, dağıtılmış kurumsal bilgi sistemleri oluşturmak için bir platformdur.

    En son sürümler

    Eclipse 3.3.2 (Europa Winter)

    Yeni alt projelerin sayısı (hem Eclipse Vakfı hem de üçüncü taraf tarafından yönetilen) hızla artıyor. Çok sayıda geliştiricinin çabalarını koordine etmeli ve ortak kurallar önermeliyiz - "Eclipse Geliştirme Süreci".

    En son sürüm 21 alt proje içerir.

    Tutulma 3.4 (Ganymede)

    Ganymede yayını (06.2008) 23 alt proje içeriyor:

    • Eclipse Projesi 3.4
    • Equinox 3.4
    • Eclipse İletişim Çerçeve Projesi 2.0.0
    • Eclipse Model Çerçeve Teknolojisi
    • Eclipse Modelleme Çerçevesi 2.4.0
    • Eclipse Ambalaj Projesi 1.0.0
    • Eclipse Web Araçları Platformu Projesi 3.0.0
    • Grafik Editör Çerçevesi 3.4.0
    • Grafik Modelleme Çerçevesi 2.1
    • Model Geliştirme Araçları. 1.1
    • Veri Araçları Platformu (DTP) 1.6
    • Cihaz Yazılım Geliştirme Platformu Projesi Cihaz Hata Ayıklama 1.0
    • Cihaz Yazılım Geliştirme Platformu Projesi Hedef Yönetimi 3.0
    • Buckminster Bileşen Montajı 1.1
    • BIRT 2.3.0
    • C / C ++ Geliştirme Aracı (CDT) 5.0.0
    • Dinamik Diller Araç Seti 0.95
    • Metin Modeli (M2T) 0.9.0
    • Modelden Modele Dönüşüm (M2M)
    • Mylyn 3.0 (görev odaklı kullanıcı arayüzü)
    • Zengin Ajax Platformu (RAP) 1.1
    • SOA Araçları (STP) 1.0
    • Yıkıcı - SVN Takım Sağlayıcısı
    • Hedef Yönetimi 3.0
    • Test ve Performans Araçları Platformu Projesi 4.5.0

    Tutulma 3.5 (Galileo)

    24 Haziran 2009'da halka sunulan Galileo'nun son sürümü 33 alt proje içeriyor:

    • Eclipse Platformu 3.5
    • Eclipse Projesi 3.5.0
    • Eclipse Modeling Framework (EMF) 2.5.0
    • Eclipse Ambalaj Projesi 1.1.0
    • Eclipse Web Araçları Platformu Projesi WTP 3.1.0 (Galileo)
    • EclipseLink Projesi 1.1.2
    • Erişilebilirlik Araçları Çerçevesi 0.7.0
    • İş Zekası ve Raporlama Araçları (BIRT)
    • C / C ++ Geliştirme Araçları (CDT) 6.0
    • Dali Java Kalıcılık Araçları 2.2
    • Veri Araçları Platformu 1.7 (Galileo)
    • Dinamik Diller Araç Seti 1.0
    • Equinox 3.5
    • GEF - Grafik Düzenleyici Çerçevesi 3.5.0
    • Grafik Modelleme Çerçevesi 2.2.0
    • Java İş Akışı Aracı JWT 0.6
    • JDT - Java geliştirme araçları
    • M2T JET (Java Verici Şablonları) - aka JET2 M2T JET 1.0.0 (Galileo)
    • Bellek Çözümleyici 0.8.0
    • Java için Mobil Araçlar
    • Metne Göre Model (M2T) 1.0.0
    • Modelden Modele Dönüşüm (M2M) Galileo Eşzamanlı Yayın
    • İzleme Araçları 4.6
    • Mylyn 3.2
    • PHP Geliştirme Araçları 2.1.0
    • Zengin Ajax Platformu 1.2
    • Riena Platform Projesi 1.1.0.
    • SCA Araçları 2.0.0
    • SOA Araçları 2.0
    • Kaynak Düzenleme 3.1.0 (Galileo)
    • Kılıç Balığı 0.9.0
    • Hedef Yönetimi 3.1
    • Test ve Performans Araçları Platformu Projesi 4.5.3
    • Test Araçları TPTP v4.6
    • Metinsel Modelleme Çerçevesi org.eclipse.xtext
    • Mobil Linux 0.3 için araçlar
    • TPTP Platformu TPTP v4.6
    • İzleme ve Profil Oluşturma Araçları TPTP v4.6

    Yerelleştirme

    3.1.1 sürümünden başlayarak, Eclipse Russification için bir dil paketi yayınlandı. Hem grafik arayüz hem de belgeler Rusçaya çevrildi.

    Modüller

    Eclipse ortamı için bir dizi ücretsiz ve ticari modül mevcuttur. Ortam başlangıçta Java dili için geliştirildi, ancak şimdi diğer dilleri destekleyen çok sayıda uzantı var:

    Dil Modül
    / C ++ CDT
    Fortran Photran
    Perl EPİK
    PHP Pasifik yaz saati
    JavaScript JSEclipse
    Python PyDev (Tutulma) ( ingilizce)
    Yakut RDT
    1C V8 1C: Kurumsal DT

    Geliştirmek ve elde etmek raporlar Eclipse'de analitik BI uygulamalarının geliştirilmesi bir BIRT Projesi var ( ingilizce).

    Eclipse, internet üzerinden eklentileri yüklemek ve güncellemek için yerleşik bir işleve sahiptir.

    Popüler SWT ve RCP tabanlı uygulamalar

    Desteklenen mimariler ve sistemler

    • HP-UX (HP9000 / Motif)
    • Linux (x86, x86-64, PPC, IA-64 / GTK 2)
    • Linux (x86 / Motif)
    • Solaris 8 (SPARC / GTK 2, Motif)
    • QNX (x86 / Foton)
    • Microsoft Windows (Win32, Win64)
    • Android (ARM)

    "Eclipse (Geliştirme Ortamı)" hakkında bir inceleme yazın

    Notlar

    1. Darryl K. Taft. (İngilizce). ??? (20 Mayıs 2005). Erişim tarihi: 3 Eylül 2009.
    2. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    3. (İngilizce). Erişim tarihi: 3 Eylül 2009.
    4. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    5. (İngilizce). Eclipse belgeleri... Resmi site. Erişim tarihi: 3 Eylül 2009.
    6. (İngilizce). Eclipse belgeleri... Resmi site. Erişim tarihi: 3 Eylül 2009.
    7. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    8. Sergey Golubev. ... ??? (15 Kasım 2005). Erişim tarihi: 3 Eylül 2009.
    9. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    10. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    11. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    12. (İngilizce). Erişim tarihi: 3 Eylül 2009.
    13. Vladimir Paramonov. ... Compulenta (31 Ocak 2007). Erişim tarihi: 3 Eylül 2009.
    14. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    15. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    16. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    17. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    18. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    19. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    20. ... Resmi site. ...
    21. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    22. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    23. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    24. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    25. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    26. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    27. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    28. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    29. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    30. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    31. (İngilizce). Resmi site (Haziran 2007). Erişim tarihi: 3 Eylül 2009.
    32. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    33. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    34. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    35. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    36. (İngilizce). Resmi site. Erişim tarihi: Mart 24, 2011.
    37. (İngilizce). ... Erişim tarihi: 3 Eylül 2009.
    38. (İngilizce). Resmi site. Erişim tarihi: 3 Eylül 2009.
    39. (İngilizce). ???. Erişim tarihi: 3 Eylül 2009.
    40. Josh Fet. (Rusça). ??? (Haziran 2008). - PyDev'i Eclipse'e yükleme. Erişim tarihi: 3 Eylül 2009.
    41. (İngilizce). ???. Erişim tarihi: 3 Eylül 2009.
    42. (10.04.2015).
    43. (Rusça). ???. Erişim tarihi: 3 Eylül 2009.
    44. (İngilizce). ... Erişim tarihi: 3 Eylül 2009.
    45. (İngilizce). ... Erişim tarihi: 3 Eylül 2009.
    46. (İngilizce). ???. Erişim tarihi: 3 Eylül 2009.
    47. (İngilizce). ???. Erişim tarihi: 3 Eylül 2009.
    48. (eng.) (kullanılamayan bağlantı - tarih) ... ???. Erişim tarihi: 3 Eylül 2009.
    49. (İngilizce). ???. Erişim tarihi: 3 Eylül 2009.

    Bağlantılar

    • (eng.)
    • (eng.)
    • (İngilizce) - Eclipse SDK Belgeleri
    • (eng.)
    • (eng.)
    • (İngilizce) - Gelişmiş İstemci Platformu
    • (eng.)
    • (eng.) IBM
    • IBM (Rusça)
    • (rus.) IBM
    • (Rusça)
    • (İngilizce) - Farklı geliştirme alanları için Eclipse dağıtımlarının anahtar teslimi sürümleri (Uzman Java, Masaüstü Java, Sunucu Java, Mobil Java, vb.)
    • (rus.) Art.Lebedev Stüdyosu

    Eclipse'i (geliştirme ortamı) karakterize eden bir alıntı

    Ertesi gün Rostov, Prenses Mary'ye Yaroslavl'a kadar eşlik etti ve birkaç gün sonra alay için ayrıldı.

    Sonya'nın, duasının gerçekleşmesi olan Nicholas'a yazdığı mektup, Trinity'den yazılmıştır. Buna sebep olan buydu. Nikolai'nin zengin bir gelinle evlenmesi fikri, eski kontes'i giderek daha fazla meşgul etti. Sonya'nın bunun önündeki en büyük engel olduğunu biliyordu. Ve Sonya'nın hayatı, özellikle de Nikolai'nin Bogucharovo'daki Prenses Marya ile buluşmasını anlatan mektubundan sonra, kontesin evinde gittikçe zorlaştı. Kontes, Sonya'ya hakaret eden veya zalimce bir ipucu için tek bir olayı bile kaçırmadı.
    Ancak Moskova'dan ayrılmadan birkaç gün önce, olanlara dokunan ve tedirgin olan kontes, Sonya'yı suçlama ve talepler yerine ona çağırarak, kendini feda ettiği, her şeyin karşılığını ödeyeceği bir dua ile ona döndü. onun için yapılan, Nikolai ile bağlarını koparmaktı.
    - Bana bu sözü verene kadar dinlenmeyeceğim.
    Sonya histerik bir şekilde gözyaşlarına boğuldu, her şeyi yapacağını, her şeye hazır olduğunu, ancak doğrudan bir söz vermediğini ve kalbinde ondan ne talep edildiğine karar veremediğini hıçkırarak yanıtladı. Onu besleyen ve büyüten ailenin mutluluğu için kendini feda etmek gerekiyordu. Başkalarının mutluluğu için kendini feda etmek, Sonya'nın alışkanlığıydı. Evdeki konumu, ancak fedakarlık yolunda erdemlerini gösterebilecek ve kendini feda etmeye alışmış ve sevmişti. Ama önce, tüm fedakarlık eylemlerinde, kendini feda ederek, bununla kendi değerini kendisinin ve başkalarının gözünde yükselttiğinin ve hayatta en çok sevdiği Nicolas'a daha değerli hale geldiğinin memnuniyetle farkındaydı; ama şimdi fedakarlığı, onun için fedakarlığın tüm ödülü olan, hayatın tüm anlamı olan şeyden vazgeçmekten ibaret olmalıydı. Ve hayatında ilk kez, ona daha fazla işkence etmek için kendisine fayda sağlayan insanlara karşı acı hissetti; Hiç böyle bir şey yaşamamış, asla fedakarlıklara ihtiyaç duymamış, başkalarını kendileri için fedakarlık yapmaya zorlayan ve hala herkes tarafından sevilen Natasha'ya kıskançlık duydum. Ve ilk kez Sonya, Nicolas'a olan sessiz, saf sevgisinin nasıl birdenbire kuralların, erdemin ve dinin üzerinde duran tutkulu bir duygunun büyümeye başladığını hissetti; ve bu duygunun etkisi altında, istemsizce, bağımlı hayatının gizliliğinden öğrenilen Sonya, kontese genel olarak belirsiz sözlerle cevap verdi, onunla konuşmaktan kaçındı ve Nikolai ile bir toplantı için beklemeye karar verdi, böylece bu toplantıda kendini serbest bırakmayacak, aksine, sonsuza dek kendini ona bağlayacaktı. ...
    Rostovs'un Moskova'da kalışının son günlerinin sıkıntıları ve dehşeti, Sonya'da ona ağırlık veren kasvetli düşünceleri boğdu. Pratik faaliyetlerde onlardan kurtuluş bulduğu için mutluydu. Ama Prens Andrew'un evlerinde olduğunu öğrendiğinde, kendisi ve Natasha için hissettiği tüm içten acıma rağmen, Tanrı'nın Nicolas'tan ayrılmasını istemediğine dair neşeli ve batıl inanç onu ele geçirdi. Natasha'nın bir prens Andrey'i sevdiğini ve onu sevmekten vazgeçmediğini biliyordu. Artık bu kadar kötü koşullarda bir araya geldiklerinde, birbirlerini tekrar seveceklerini ve aralarındaki ilişki nedeniyle Nicholas'ın Prenses Marya ile evlenemeyeceğini biliyordu. Gezinin son günlerinde ve ilk günlerinde yaşanan her şeyin tüm dehşetine rağmen, bu duygu, İlahi Takdir'in kişisel işlerine müdahalesinin bu bilinci Sonya'yı memnun etti.
    Rostov'lar, yolculuklarında Trinity Lavra'daki ilk günlerini yaptılar.
    Lavra otelinde Rostovs'a biri Prens Andrey tarafından işgal edilen üç büyük oda tahsis edildi. Yaralı adam o gün çok daha iyiydi. Natasha onunla oturdu. Yan odada sayım ve kontes oturdu, eski tanıdıklarını ve yatırımcılarını ziyaret eden başrahiple saygılı bir şekilde konuşuyorlardı. Sonya tam orada oturuyordu ve Prens Andrei ve Natasha'nın ne hakkında konuştukları konusunda meraktan işkence gördü. Kapının arkasından gelen seslerini dinledi. Prens Andrei'nin odasının kapısı açıldı. Natasha endişeli bir yüzle dışarı çıktı ve onunla tanışmak için ayağa kalkan ve sağ elinin geniş kolunu tutan keşişi fark etmeden Sonya'nın yanına gitti ve elini tuttu.
    Natasha, nesin sen? Buraya gel, ”dedi Kontes.
    Natasha kutsamayla yaklaştı ve başrahip Tanrı'dan ve azizinden yardım istemeyi tavsiye etti.
    Başrahip gittikten hemen sonra Nashata arkadaşını elinden tuttu ve onunla boş bir odaya gitti.
    - Sonya, ha? yaşayacak mı? - dedi. - Sonia, ne kadar mutluyum ve ne kadar mutsuzum! Sonya, canım, her şey eskisi gibi. Keşke hayatta olsaydı. Yapamaz ... çünkü, çünkü ... çünkü ... - Ve Natasha gözyaşlarına boğuldu.
    - Yani! Biliyordum! Tanrıya şükür - dedi Sonya. - Yaşayacak!
    Sonya hem korkusu hem kederi hem de kişisel, söylenmemiş düşünceleriyle arkadaşı kadar tedirgin olmuştu. Ağlayarak öptü, Natasha'yı teselli etti. "Keşke hayatta olsaydı!" Düşündü. Ağladıktan, konuştuktan ve gözyaşlarını sildikten sonra iki arkadaş da Prens Andrew'un kapısına yaklaştı. Natasha, kapıları dikkatlice açarak odaya baktı. Sonya, yarı açık kapıda yanında durdu.
    Prens Andrew üç yastığın üzerinde yüksekte yatıyordu. Soluk yüzü sakindi, gözleri kapalıydı ve nasıl eşit nefes aldığını görebiliyordu.
    - Natasha! - Sonia neredeyse aniden çığlık attı, kuzeninin kolunu tuttu ve kapıdan geri adım attı.
    - Ne? ne? Natasha sordu.
    "Bu, şu, şu ..." dedi Sonya solgun bir yüz ve titreyen dudaklarla.
    Natasha sessizce kapıyı kapattı ve Sonya ile pencereye gitti, ona ne söylendiğini henüz anlamadı.
    "Hatırlıyor musun," dedi Sonya korkmuş ve ciddi bir yüzle, "Senin için aynaya baktığım zamanı hatırlıyor musun ... Otradnoye'de, Noel zamanı ... Ne gördüğümü hatırlıyor musun? ..
    - Evet evet! - Natasha, gözlerini genişçe açarak, belirsiz bir şekilde, Sonya'nın yalan söylediğini gördüğü Prens Andrei hakkında bir şeyler söylediğini söyledi.
    - Hatırlıyor musun? - Sonya'ya gitti. - O zaman gördüm ve herkese söyledim, hem sen hem de Dunyasha. Yatakta yattığını gördüm - dedi, eliyle her ayrıntısına kaldırılmış parmağıyla bir jest yaptı - ve gözlerini kapattığını, pembe bir battaniyeyle örtüldüğünü ve ellerini katladığını - dedi Sonya emin olarak şimdi gördüğü detayları anlatırken, o zamanlar gördüğü bu detayları. Sonra hiçbir şey görmedi, ama kafasına ne geldiğini gördüğünü söyledi; ama icat ettiği şey ona diğer anılar kadar geçerli göründü. Daha sonra ona bakıp gülümsediğini ve kırmızı bir şeyle kaplı olduğunu söylediğini, sadece hatırlamakla kalmayıp, o zaman bile onun pembe bir battaniyeyle, yani pembe bir battaniyeyle kaplı olduğunu söylediğine ve gördüğüne kesinlikle ikna oldu. gözleri kapalıydı.
    - Evet, evet, tam olarak pembe - dedi Natasha, şimdi de pembe olarak söylenenleri hatırlıyor gibiydi ve bunda tahminin ana tekilliğini ve gizemini gördü.
    - Ama bu ne anlama geliyor? - Natasha düşünceli bir şekilde söyledi.
    "Oh, her şeyin ne kadar olağanüstü olduğunu bilmiyorum! - dedi Sonya, kafasını tutarak.
    Birkaç dakika sonra Prens Andrei zili çaldı ve Natasha onu görmeye gitti; Nadiren yaşadığı heyecanı ve sevgiyi deneyimleyen Sonya, neler olup bittiğinin sıradışı doğasını düşünerek pencerenin kenarında kaldı.
    Bu gün orduya mektup gönderme fırsatı vardı ve kontes oğluna bir mektup yazdı.
    "Sonya," dedi kontes, yeğeni yanından geçerken başını mektuptan kaldırdı. - Sonya, Nikolenka'ya yazacak mısın? - dedi Kontes sessiz, titreyen bir sesle ve yorgun gözleriyle, gözlüklerinden bakarak, Sonya Kontesin bu sözlerle anladığı her şeyi okudu. Bu bakış, yalvarma, reddedilme korkusu, istenmesi gerekenlere karşı utanç ve reddedilme durumunda uzlaşmaz nefrete hazır olmayı ifade ediyordu.
    Sonya kontesin yanına gitti ve diz çökerek elini öptü.
    Yazacağım anne, dedi.
    Sonya, o gün olan her şey, özellikle de az önce gördüğü falın gizemli performansı karşısında yumuşadı, tedirgin oldu ve dokundu. Artık Natasha'nın Prens Andrei ile ilişkisinin yenilenmesi vesilesiyle, Nikolai'nin Prenses Marya ile evlenemeyeceğini bildiğine göre, sevdiği ve yaşadığı fedakarlık ruh halinin geri dönüşünü mutlu bir şekilde hissetti. Gözlerinde yaşlarla ve cömert bir eylemin başarıldığının farkında olmanın sevinciyle, kadife siyah gözlerini karartan gözyaşlarıyla birkaç kez kesintiye uğradı, makbuzu Nicholas'ı çok şaşırtan dokunaklı mektubu yazdı.

    Pierre'in götürüldüğü nöbetçide, subay ve onu götüren askerler ona düşmanlıkla ama aynı zamanda ve saygıyla davrandılar. Ayrıca, ona karşı tutumlarında hem onun kim olduğundan şüphe (belki de çok önemli bir kişi) olduğundan hem de onunla hala taze kişisel mücadelelerinin bir sonucu olarak düşmanlık hissedilebilirdi.
    Ancak, başka bir günün sabahı vardiya geldiğinde, Pierre yeni muhafız için - memurlar ve askerler için - artık onu alanlara taşıdığı anlamın kalmadığını hissetti. Ve gerçekten de, bir köylünün kaftanındaki bu büyük, şişman adamda, geçen günün muhafızları, yağmacı ve eskort askerleriyle bu kadar çaresizce savaşan ve çocuğu kurtarmakla ilgili ciddi bir söz söyleyen yaşayan kişiyi görmediler, ancak bir nedenden dolayı içerilenlerin yalnızca on yedisini gördüler. Ruslar tarafından alınan yüksek makamlarca emredildi. Pierre hakkında özel bir şey varsa, sadece garip, yoğun düşünceli görünümü ve Fransızlar için şaşırtıcı bir şekilde iyi konuştuğu Fransızcaydı. Pierre'in aynı gün alınan diğer şüpheli kişilerle bağlantılı olmasına rağmen, memurun işgal ettiği ayrı bir odaya ihtiyacı vardı.
    Pierre ile birlikte gözaltına alınan Rusların tamamı en alt seviyedeki insanlardı. Ve Pierre'i bir usta olarak tanıyan hepsi, özellikle Fransızca konuştuğu için ondan uzak durdu. Pierre ne yazık ki kendisiyle alay etti.
    Ertesi gün akşam Pierre, tüm bu mahkumların (ve muhtemelen o da onların arasındaydı) kundakçılıktan yargılanması gerektiğini öğrendi. Üçüncü gün Pierre, başkalarıyla birlikte, beyaz bıyıklı bir Fransız generalin, iki albayın ve ellerinde eşarplı diğer Fransızların oturduğu bir eve götürüldü. Pierre'e, diğerleriyle eşit olarak, sanıkların genellikle tedavi edildiği, insan zayıflıklarını, doğruluğunu ve kesinliğini aştığı iddia edildi, kim olduğu hakkında sorular soruldu. o neredeydi? ne amaçla? vb.
    Hayatın özünü bir kenara bırakan ve bu özü ifşa etme olasılığını dışlayan bu sorular, mahkemelerde sorulan tüm sorular gibi, yalnızca yargıçların sanığın cevaplarının akmasını ve onu istenen amaca götürmesini istediği oluğun yerini almak amacını taşıyordu. suçlamaya. Suçlamanın amacını karşılamayan bir şey söylemeye başlar başlamaz, oluğu kabul ettiler ve su istediği yere akabilirdi. Ayrıca Pierre, sanığın tüm mahkemelerde yaşadığı aynı şeyi yaşadı: tüm bu soruların ona neden sorulduğu şaşkınlık. Bu oyuk numarasının kullanılmasının sadece küçümseme ya da olduğu gibi nezaketten kaynaklandığını hissetti. Bu insanların iktidarında olduğunu, onu buraya yalnızca gücün getirdiğini, onlara sorulara cevap talep etme hakkı verdiğini, bu toplantının tek amacının onu suçlamak olduğunu biliyordu. Ve bu nedenle, iktidar olduğu ve suçlama arzusu olduğu için, soru hilelerine ve mahkemeye gerek yoktu. Tüm cevapların suçluluk duygusuna yol açması gerektiği açıktı. Pierre, götürüldüğünde ne yaptığı sorulduğunda bir trajediyle anne babasına, yani alevlerden kurtardığı bir çocuğu taşıdığını söyledi. "Neden yağmacı ile savaştı? Pierre cevap verdi, kadını savundu, kırgın kadının korunmasının her erkeğin görevi olduğunu, o durdu: o noktaya gelmedi.Neden evin avlusunda yanıyordu, tanıkların onu gördüğü yerde, neler olup bittiğini görmeye gittiğini söyledi. Onu tekrar durdurdular: Ona nereye gittiğini sormadılar, ama neden ateşin yanındaydı? Kimdi? Cevap vermek istemediğini söylediği ilk soruyu tekrarladılar. Tekrar söyleyemeyeceğini söyledi. ...
    - Yaz, bu iyi değil. Çok kötü, ”dedi beyaz bıyıklı ve kırmızı, kırmızı yüzlü general ona sertçe söyledi.
    Dördüncü gün Zubovsky Val'da yangınlar başladı.
    Pierre ve on üç kişi, bir tüccarın evinin arabasına, Krymsky Brod'a götürüldü. Sokaklardan geçerken Pierre, tüm şehrin üzerinde duruyormuş gibi görünen dumandan nefesini tuttu. Yangınlar farklı yönlerden görülebiliyordu. Pierre, o dönemde Moskova'nın yanmasının önemini henüz anlamadı ve bu yangınlara dehşetle baktı.
    Pierre, Krymsky Brod yakınlarındaki bir evin araba barakasında dört gün daha kaldı ve o günlerde Fransız askerlerinin konuşmalarından burada bulunanların her gün mareşalin kararını beklediğini öğrendi. Ne tür bir mareşal, Pierre askerlerden öğrenemedi. Asker için, açıkçası, mareşal gücün en yüksek ve biraz da gizemli bağı gibi görünüyordu.
    Mahkumların ikinci sorguya götürüldüğü 8 Eylül'e kadar olan bu ilk günler Pierre için en zor günlerdi.

    X
    8 Eylül'de çok önemli bir memur, gardiyanların ona davranışlarına saygı duyarak ahıra mahkumların yanına girdi. Muhtemelen bir kurmay subay olan bu memur, ellerinde bir liste olan tüm Rusları çağırarak Pierre'i çağırdı: celui qui n "avoue pas son nom [adını söylemeyen kişi]. Ve tüm mahkumlara kayıtsız ve tembelce bakarak, gardiyana emir verdi. subay onları uygun şekilde giydirmeli ve onları mareşale götürmeden önce temizlemelidir. Bir saat sonra bir grup asker geldi ve Pierre ve diğer on üçü Kız Tarlasına götürüldü. Gün açıktı, yağmurdan sonra güneşli ve hava alışılmadık derecede açıktı. Duman aşağıya sürüklenmedi. Pierre'in Zubovsky şaftının bekçiliğinden çıkarıldığı gün; temiz havada sütunlar halinde duman yükseliyordu.Yangınlar hiçbir yerde görünmüyordu ama her taraftan duman sütunları yükseliyordu ve Pierre'in görebildiği tek şey Moskova'nın tamamı tek bir yangıydı. her tarafta soba ve bacalarla dolu boş arsalar ve zaman zaman taş evlerin yanmış duvarları görülebilir.Pierre, yangınlara yakından baktı ve şehrin tanıdık mahallelerini tanımadı. yüz. Yakınlarda Yeni Devichy Manastırı'nın kubbesi neşeyle parlıyordu ve çanlar özellikle oradan yüksek sesle duyuluyordu. Bu mesaj Pierre'e Pazar günü ve Bakire Doğuş Bayramı'nı hatırlattı. Ancak bu bayramı kutlayacak kimse yokmuş gibi görünüyordu: Her yerde yangının yıkımı vardı ve Rus halkından sadece ara sıra Fransızların gözünde saklanan yırtık pırtık, korkmuş insanlar vardı.
    Açıkçası, Rus yuvası tahrip edildi ve yok edildi; ama bu Rus yaşam düzeninin yok edilmesinin ardında Pierre, bilinçsizce, bu harap olmuş yuvanın üzerinde kendi, tamamen farklı, ancak sıkı bir Fransız düzeninin kurulduğunu hissetti. Onu diğer suçlularla birlikte ona eşlik eden düzenli sıralar halinde yürüyen askerlerin neşeyle ve neşeyle gözünden hissetti; bunu, kendisine doğru gelen bir askerin sürdüğü buharlı bir arabadaki bazı önemli Fransız yetkililerin görüşünden hissedebiliyordu. Bunu sahanın sol tarafından gelen alay müziğinin neşeli sesleriyle hissetti ve bunu özellikle bu sabah mahkumları arayarak gelen Fransız subayın bu sabah okuduğu listeden hissetti ve anladı. Pierre bazı askerler tarafından, düzinelerce başka insanla birlikte bir yere götürüldü; Görünüşe göre onu unutup başkalarıyla karıştırabilirlerdi. Ama hayır: sorgulama sırasında verdiği cevapları ona adı olarak geri döndü: celui qui n "avoue pas son nom. Ve Pierre'in korktuğu bu isim altında, şimdi bir yere götürülüyordu, üzerinde şüphesiz bir güvenle yazılıyordu. diğer mahkumların ve kendisinin ihtiyaç duyulanların kendisi olduğunu ve doğru yere götürüldüklerini anlatan yüzler. ”Pierre, kendisi tarafından bilinmeyen, ancak doğru çalışan bir makinenin tekerleklerine takılmış önemsiz bir çip gibi hissetti.
    Pierre ve diğer suçlular, Manastırdan çok uzak olmayan Kız Tarlası'nın sağ tarafına, büyük bir bahçeye sahip büyük bir beyaz eve götürüldü. Bu, Pierre'in daha önce sahibini sık sık ziyaret ettiği ve şimdi askerlerin konuşmasından öğrendiği gibi, Eckmühl Dükü Mareşal'in bulunduğu Prens Shcherbatov'un eviydi.
    Verandaya götürüldüler ve birer birer eve götürüldüler. Pierre altıncı oldu. Pierre'e tanıdık gelen camdan bir galeriden, bir giriş koridorundan geçerek, kapısında bir yardımcı duran uzun, alçak bir ofise götürüldü.
    Davout odanın ucunda masanın üzerinde burnunda gözlüklerle oturuyordu. Pierre ona yaklaştı. Davout, gözlerini kaldırmadan, görünüşe göre önünde yatan bir tür kağıtla başa çıktı. Gözlerini kaldırmadan sessizce sordu:
    - Qui etes vous? [Kimsin?]
    Pierre, kelimeleri telaffuz edemediği için sessizdi. Pierre için Davout sadece bir Fransız general değildi; Pierre Davout zulmü ile tanınan bir adamdı. Pierre, katı bir öğretmen gibi, bir süre sabırlı olmayı ve bir cevap beklemeyi kabul eden soğuk yüzüne bakarken, Pierre, gecikmenin her saniyesinin hayatına mal olabileceğini hissetti; ama ne söyleyeceğini bilmiyordu. İlk sorgulamada söylediklerini söylemeye cesaret edemedi; rütbesini ve konumunu ortaya çıkarmak hem tehlikeli hem de utanç vericiydi. Pierre sessizdi. Ama Pierre'in herhangi bir şeye karar verecek vakti olmadan, Davout başını kaldırdı, gözlüğünü alnına kaldırdı, gözlerini kıstı ve Pierre'e dikkatle baktı.
    Pierre'i korkutacağı belli olan ölçülü, soğuk bir sesle, Bu adamı tanıyorum, dedi. Daha önce Pierre'in sırtından geçen soğuk, sanki bir mengene gibi başını kavradı.
    - Mon general, vous ne pouvez bana connaitre pas, je ne vous ai jamais vu ... [Beni tanımazsınız general, sizi hiç görmedim.]
    "C" bu bir Rus casusudur, "Davout, odada olan ve Pierre'in fark etmediği başka bir generalle konuşarak sözünü kesti ve Davout arkasını döndü. Pierre, aniden aniden konuştu.
    "Hayır, Monseigneur," dedi, birden Davout'un bir Dük olduğunu hatırlayarak. - Non, Monseigneur, vous n "avez pass connaitre. Je suis un officier militione and je n" ai pass Moscou. [Hayır, Majesteleri ... Hayır, Majesteleri, beni tanıyamazdınız. Ben bir polisim ve Moskova'dan ayrılmadım.]
    - Votre nom? [Adınız?] Davout tekrarladı.
    - Besouhof. [Bezukhov.]
    - Qu "est ce me prouvera que vous ne mentez pas? [Yalan söylemediğini bana kim kanıtlayacak?]
    - Monseigneur! [Majesteleri!] - Pierre gücenmeyen, ama yalvaran bir sesle haykırdı.
    Davout gözlerini kaldırdı ve dikkatle Pierre'e baktı. Birkaç saniye birbirlerine baktılar ve bu bakış Pierre'i kurtardı. Bu görüşe göre, bu iki kişi arasında tüm savaş ve yargılama şartlarının yanı sıra insan ilişkileri kurulmuştur. O anda ikisi de belirsiz bir şekilde sayısız şey hissettiler ve her ikisinin de insanlığın çocuğu, kardeş olduklarını anladılar.
    İlk bakışta, insan ilişkilerinin ve yaşamın sayı olarak adlandırıldığı listesinden sadece başını kaldıran Davout için Pierre sadece bir durumdu; ve vicdanına kötülük yapmayan Davout onu vururdu; ama şimdi içinde bir adam gördü. Bir anlığına düşündü.
    - Bana yorum yap? [Sözlerinin doğruluğunu bana nasıl kanıtlayacaksın?] - Davout soğuk bir şekilde dedi.
    Pierre, Rambal'ı hatırladı ve alayını, soyadını ve evin bulunduğu sokağı adlandırdı.
    - Vous n "etes pass s time dites, [Sen söylediğin gibi değilsin.] - Davout yine dedi.
    Pierre titreyen, kırık bir sesle ifadesinin geçerliliğini kanıtlamaya başladı.
    Ancak o sırada emir subayı girdi ve Davout'a bir şey bildirdi.
    Davout, emir subayı tarafından bildirilen habere aniden ışıldadı ve kendisini iliklemeye başladı. Görünüşe göre Pierre'i tamamen unutmuş.
    Komutan ona tutsağı hatırlattığında kaşlarını çatarak Pierre'e işaret etti ve ona önderlik edilmesini söyledi. Ancak onu nereye götürmeleri gerektiğini - Pierre bilmiyordu: standa ya da Kızlık Tarlası boyunca yoldaşlarının ona gösterdiği hazırlanmış infaz yerine geri döndü.
    Başını çevirdi ve yardımcının yine bir şey sorduğunu gördü.
    - Oui, sans doute! [Evet, elbette!] - Davout dedi, ama "evet," Pierre bilmiyordu.
    Pierre nasıl, ne kadar uzun ve nerede yürüdüğünü hatırlamıyordu. Tam bir saçmalık ve donukluk içinde, çevresinde hiçbir şey görmeden, herkes durana ve durana kadar bacaklarını diğerleriyle birlikte hareket ettirdi. Tüm bu zaman boyunca bir düşünce Pierre'in kafasındaydı. Sonunda onu kimin ölüm cezasına çarptırdığı düşüncesiydi. Komisyonda onu sorgulayanlar bunlar değildi: Hiçbiri istemedi ve belli ki yapamadı. Ona bu kadar insanca bakan Davout değildi. Bir dakika daha ve Davout neyi yanlış yaptıklarını anlayacaktı, ancak bu dakika içeri giren emir subayı tarafından yarıda kesildi. Ve bu emir subayı, belli ki, kötü bir şey istemiyordu, ama giremezdi. Sonunda kim idam etti, öldürdü, canını aldı - Pierre tüm anılarıyla, özlemleriyle, umutlarıyla, düşünceleriyle? Kim yaptı? Ve Pierre bunun hiç kimse olmadığını hissetti.

    Java, 1995 yılında Sun Microsystems tarafından geliştirilmiş yüksek seviyeli bir programlama dilidir. Bugün, bu teknoloji JCP (Java Community Process) tarafından geliştirilmektedir. Dilin ana özelliklerinden biri, program kurulduğunda doğrudan gerçekleştirilen derlemedir.

    Kod bayt koduna dönüştürülür ve ardından Java sanal makinesinde çalıştırılır. JVM, programlama dilini gerekli bilgisayar bileşenleriyle ilişkilendiren bir çevirmen görevi görür. Bu ilke, programların sanal bir makinenin kurulu olduğu herhangi bir sistemde çalışmasına izin verir.

    Programlama dilinin özellikleri

    Nesne yönelimli ve yazılan Java dili, geliştiriciler için birçok yararlı özelliğe sahiptir. Bunlar arasında şunlar yer almaktadır:

    • Öğrenmesi kolay. Nesne yönelimli programlama ile ilgili temel bilgi, dilin rahatça öğrenilmesi için yeterli olacaktır.
    • Nesneye yönelik metodoloji. Programlar, hedeflerinize ulaşmak için kolayca genişletilebilen ve uyarlanabilen nesnelerden oluşur.
    • Emniyet. Açık anahtar şifrelemesi, en iyi kimlik doğrulama yöntemlerini sağlar.
    • Platform bağımsızlığı. Dilde yazılan programlar, kesinlikle modern işletim sistemlerinin herhangi bir platformunda çalışabilen bayt kodu halinde derlenir.
    • Taşınabilirlik. Programlama dili, uygulanmakta olan spesifikasyonların yönlerine hiçbir şekilde bağlı değildir.
    • Güç. Java makinesi, geliştiricinin yönlendirmesi ve sürekli doğrulama ve derleme süresinin kısaltılmasına verdiği önem sayesinde birçok hatayı ele alabilir.

    Ayrıca bu dil, çok iş parçacıklı, yüksek performanslı, yorumlanmış ve dinamik olarak nitelendirildiği için çok yaygındır.

    Java yazılım platformlarının özellikleri

    Eclipse'in özel bir yere sahip olduğu bu platformun çeşitli uygulamaları vardır. Modüler çapraz platform uygulamaları için geliştirme ortamı, diğer benzer ürünlerde bulunan bir dizi zorunlu özelliğe sahiptir. Aralarında:

    • Programları bir kullanıcı ortamında dağıtmak için genel olarak kabul edilen teknolojiler.
    • Herhangi bir karmaşıklıkta grafik arayüzler oluşturmak için araç takımları.
    • Uzaktan nesne yönetimi ve programlı veri erişimi için kitaplıklar.
    • Uygulamalar ile çalıştırma, hata ayıklama, derleme, izleme ve diğer eylemler için araçlar.

    Eclipse nedir?

    Eclipse, şu anda Eclipse Vakfı tarafından kontrol edilen bir geliştirme ortamıdır. Geliştiriciler için yeni fırsatlar sağlayan açık kaynak kodu sağlar. Java ile yazılmıştır ve yazılım geliştirme sürecini iyileştirmek için tasarlanmıştır.

    Bu proje, geliştiriciler için temel hizmetleri sağlayan bir altyapıdır. Mevcut araçlar, Eclipse'de yeni teknolojiler oluşturmanıza olanak tanır. Bir geliştirme ortamı yalnızca bir API koleksiyonu değildir - tam teşekküllü görevleri gerçekleştirebilir.

    Çok sayıda açık kaynaklı eklenti, araç geliştiricileri için sınırsız olanaklar sağlar. Programa herhangi bir ekleme eklenebilir, bu da nihayetinde onu herhangi bir görev için özelleştirmenize ve uyarlamanıza olanak tanır.

    Platform özellikleri

    Programlama ortamı aşağıdaki özelliklere sahiptir:

    • Yeni modüller eklemek için geniş API derlemesinin yanı sıra herhangi bir uzantıyı programlamak için bir çerçeve.
    • Tüm popüler işletim sistemleri için destek.
    • Geliştirme ortamı olan Eclipse, en iyi bilinen dillerde programlamaya izin verir. C Sharp (C #), Java, PHP, C, Python, C ++ ve diğer birçok dil bu program tarafından desteklenmektedir.
    • Herhangi bir karmaşıklık ve ölçekte istemci yazılımının geliştirilmesi için yetenekleri yeterli olacak RCP teknolojisi mevcuttur.
    • Programın modülerliği, işte inanılmaz kolaylık ve esneklik sağlar.

    Eclipse projesi birçok yönden gelişmeye devam ediyor. Program sürekli geliştiriliyor, işlevselliği yeni eklentiler ekleyerek genişletiliyor.

    Platform mimarisi

    Programlama ortamı birkaç temel unsurdan oluşur. İlk olarak, modüllerin ve eklentilerin çalışmasından sorumlu Eclipse Runtime var. Temel işlevsellik, bu çalışma zamanı ortamına aittir. Bu, güncellemeleri yönetmeyi, sistemle etkileşim kurmayı, eklentileri yapılandırmayı, yardım bölümünün işlevselliğini korumayı içerir.

    İkinci olarak, projelerin yönetilmesinden, programın önde gelen öğelerinin yanı sıra hata ayıklama, ekip geliştirme ve dosyalar arasında arama yapmaktan sorumlu olan IDE'nin kendisidir.

    PDE ve Java Geliştirme Araçları gibi eklentiler de Eclipse'e dahildir. Java programları için geliştirme ortamı ve bu eklentileri kullanan yeni eklemeler, birçok kez daha işlevsel hale gelir.

    Diğer özel montaj örnekleri

    Yukarıdaki Eclipse SDK, platform sürümlerinden biridir. Benzersiz özelliklere sahip birkaç IDE derlemesi daha vardır:

    • Java EE Geliştiricileri için. Sürüm, kurumsal veya web uygulamalarını Java EE kullanarak programlamak için tasarlanmıştır.
    • JavaScript Web Geliştiricileri için. CSS, XML, HTML ve JavaScript kullanarak web ürünleri oluşturmak için oluşturun.
    • Java Geliştiricileri için. Java programlama sürümü.
    • C / C ++ Geliştiricileri için. C ++ ve C'de programlama için derleme

    Her sürümün benzersiz özellikleri vardır, ancak yeni başlayanlar için temel işlevsellik tamamen standart Eclipse (geliştirme ortamı) tarafından sağlanmaktadır. Bununla ilgili dersler çevrimiçi olarak ücretsiz olarak mevcuttur ve bu, programın çalışmasını büyük ölçüde basitleştirecektir.

    Rakip ürünler

    Bu geliştirme ortamının birçok rakibi vardır, ancak sonunda en iyi temsilciyi seçmek imkansızdır. Eclipse, güvenle en popüler olanı olarak kabul edilebilir. Hemen hemen tüm geliştiriciler, bir dizi inkar edilemez avantajı nedeniyle kullanmıştır.

    Mobil uygulamalar geliştirirken, genellikle Eclipse (geliştirme ortamı) kullanılır. Android platformu hızla gelişiyor ve IDE'nin Java dil desteği geliştiricilerin ilgisini çekti. Ancak, yeteneklerinin çok daha büyük olduğu unutulmamalıdır.

    Bu programın ana rakibi NetBeans'tir ve tamamen ücretsizdir. Eclipse lisansını ödemek zorundasınız ve bazıları gözünü korkutuyor. Diğer rakip ürünler arasında IntelliJ IDEA, JDeveloper, Android Studio, DrJava ve MyEclipse bulunmaktadır. Ancak çoğu, Eclipse'in en iyisi olduğunu düşünüyor. Geliştirme ortamı uzun yıllardır kullanıcıları memnun ediyor ve bunu yapmayı bırakmıyor!

    Eclipse eklentilerini düzenlemek, derlemek, hata ayıklamak ve ayrıca uygulamalarınız için temel oluşturmak üzere kullanma

    David Gallardo'nun makalesine yapılan bu ek, Eclipse V3.3 ile ilgili yeni bilgiler sunuyor.

    Eclipse nedir?

    Eclipse, Java tabanlı, genişletilebilir bir açık kaynak geliştirme platformudur. Aslında, yalnızca bir geliştirme ortamı ve gömülü bileşenlere (eklentiler) dayalı uygulamalar oluşturmak için bir dizi hizmettir. Neyse ki Eclipse, iyi bilinen Java Geliştirme Araçları (JDT) dahil olmak üzere standart bir eklenti setiyle birlikte gelir.

    Eclipse'i Java Entegre Geliştirme Ortamı (IDE) olarak kullanan çoğu kişi bundan memnun olsa da, çok daha güçlüdür. Eclipse ayrıca, Eclipse ortamında yerleşik kendi araçlarını oluşturmalarına izin verdiği için, öncelikle Eclipse'in kendisini genişletmek isteyenlerin ilgisini çekecek bir eklenti geliştirme ortamı (PDE) içerir. Eclipse tamamen eklenti olduğu için, tüm araç geliştiricileri uzantılarını Eclipse'e sunma ve kullanıcılara tutarlı ve sorunsuz bir entegre geliştirme ortamı (IDE) sağlama fırsatına sahiptir.

    Bu bütünlük ve tutarlılık, Java geliştirme araçlarına özgü değildir. Eclipse Java ile yazılmış olmasına rağmen diğer dillerde de kullanılabilir. Örneğin, C / C ++ ve COBOL gibi programlama dillerini destekleyen eklentiler zaten var (veya geliştiriliyor). Eclipse çerçevesi, içerik yönetim sistemleri gibi diğer yazılım dışı uygulama türleri için de temel olarak kullanılabilir.

    Eclipse tabanlı bir uygulamanın mükemmel bir örneği, IBM Java geliştirme araçları ailesinin temelini oluşturan IBM® Rational® Software Architect'tir (bkz.).

    Eclipse açık kaynaktır

    Açık kaynaklı yazılım, kullanıcılara belirli hakları garanti etmeyi amaçlayan bir lisans altında yayınlanmıştır. Elbette bunlardan en bariz olanı, kaynak kodun kullanıcılara sağlanması gerektiği ve yazılımı kendileri değiştirme ve yeniden dağıtma hakkına sahip olmalarıdır. Kullanıcı haklarının bu şekilde korunması "copyleft" adı verilen bir mekanizma aracılığıyla sağlanır: Yazılım lisansı, telif hakkı koruması altındadır ve kullanıcıya bu tür haklar verilmemişse yazılımın dağıtımını yasaklar. Copyleft lisansı ayrıca kullanıcılar tarafından dağıtılan tüm yazılımların değişiklik yapılmadan orijinal lisans kapsamında olmasını gerektirir. Bu nedenle, telif hakkının anlamı, özünde tersine çevrilir ve telif hakkını, kullanıcı haklarını vermek için kullanan ve bunları yazılım geliştiricisi için saklamak için kullanan bir copyleft lisansı hakkında, genellikle şaka yollu "tüm haklar saptırılmıştır" derler (tümü haklar tersine çevrildi).

    Açık kaynaklı yazılımlarla ilgili yaygın korku, belirsizlik ve şüphelerin çoğu, bazı copyleft lisanslarının sözde viral doğasına dayanmaktadır. Buradaki fikir şudur: Kendi geliştirme programınızın bir parçası olarak açık kaynak yazılımı kullanırsanız, fikri mülkiyetinizi kaybedersiniz çünkü lisans programın kişisel parçalarınıza "bulaşacaktır". Başka bir deyişle, bir lisans, yeni oluşturulan herhangi bir yazılım da dahil olmak üzere tüm açık kaynaklı yazılımların aynı lisans altında dağıtılmasını gerektirebilir. Bu, en iyi bilinen copyleft lisansı olan GNU Genel Kamu Lisansı (örneğin Linux®'un dağıtıldığı) için doğru olsa da, farklı bir ticari ve kamu yararı dengesi sağlayan başka lisanslar da vardır.

    Open Software Initiative - OSI (Open Source Initiative), neyin açık kaynak olduğunu açıkça tanımlayan ve kriterlerini karşılayan lisansları onaylayan, kar amacı gütmeyen bir kuruluştur. Eclipse, OSI tarafından onaylanan ve orijinal kaynağa bağlılığını korurken Eclipse'in ticari olarak kabul edilmesini kolaylaştırmayı amaçlayan EPL - Eclipse Public License V1.0 altında lisanslanmıştır.

    Eclipse için eklentiler oluşturan veya Eclipse'i yazılım geliştirme için bir temel olarak kullananların, kullandıkları veya değiştirdikleri herhangi bir Eclipse kodunu EPL kapsamında yayınlamaları gerekir, ancak kendi eklentilerini istedikleri gibi lisanslamakta özgürdür. Eclipse yazılımıyla birlikte verilen yerel kodun açık kaynak olarak lisanslanması gerekmez ve kaynak kodun kendisinin halka açık hale getirilmesi gerekmez.

    Çoğu programcı, eklentiler geliştirmek veya ondan yeni ürünler oluşturmak için Eclipse'i kullanmayacak olsa da, Eclipse'in açık kaynak doğası, yalnızca Eclipse'i tamamen ücretsiz olarak sunması nedeniyle değil (ve ticari odaklı olmasına rağmen) lisans, eklentilerin paraya mal olabileceği anlamına gelir). Açık kaynak, yeniliği teşvik eder ve geliştiricilerin (hatta ticari olanlar) ortak kumbaraya bir katkı olarak kaynak kodlarına katkıda bulunmaları için bir teşvik oluşturur. Bunun birkaç nedeni var, ancak belki de en önemlisi, geliştiricilerin projeye ne kadar çok katkıda bulunursa, herkes için o kadar önemli hale gelmesidir. Ve proje yararlı hale geldiğinde, giderek daha fazla geliştirici onu kullanacak ve Apache ve Linux çevresinde oluşanlara benzer şekilde, onun etrafında bir topluluk oluşturacak. (Lisanslar hakkında daha fazla bilgi için bölüme bakın.)

    Eclipse nedir?

    Eclipse, projeleri, yaşam döngüsü boyunca yazılım oluşturmak, dağıtmak ve yönetmek için genişletilebilir geliştirme ortamları, araçları ve çalışma zamanı kitaplıklarından oluşan bir açık geliştirme platformu oluşturmayı amaçlayan bir açık kaynak geliştiriciler topluluğudur. Eclipse Vakfı, Eclipse projelerine ev sahipliği yapan ve açık kaynak topluluğunu ve tamamlayıcı ürün ve hizmetlerin ekosistemini iyileştirmeye yardımcı olan, kar amacı gütmeyen, üye destekli bir kuruluştur.

    Eclipse projesi Kasım 2001'de IBM tarafından oluşturuldu ve bir yazılım satıcıları konsorsiyumu tarafından destekleniyor. Eclipse Vakfı, Eclipse topluluğunun temsilcisi olarak hizmet veren bağımsız, kar amacı gütmeyen bir kuruluş olarak Ocak 2004'te kuruldu. Eclipse çevresinde satıcıdan bağımsız, açık ve şeffaf bir topluluğun büyümesine yardımcı olmak için oluşturuldu. Bugün Eclipse topluluğu, yazılım endüstrisindeki bireylerden ve kuruluşlardan oluşmaktadır.

    Eclipse Vakfı, Eclipse'in devam eden gelişimini denetler ve yönlendirir. Vakıf topluluğa hizmet ediyor, ancak açık kaynak geliştiriciler taahhüt edenler ve bu nedenle Eclipse projelerinde çalışanlar kadrosunda değil. Tipik olarak, Eclipse taahhütçileri ya bir kuruluşa bağlıdır ya da zamanlarını açık kaynaklı bir proje üzerinde çalışmak için gönüllü olarak harcayan bağımsız geliştiricilerdir.

    Şimdi Eclipse'in teorik, tarihsel ve politik yönlerine baktığımıza göre, ürünün kendisine bir göz atalım.

    Eclipse çalışma alanı

    Eclipse'i ilk başlattığınızda, çalışma alanının içinde bir karşılama sayfası göreceksiniz (bkz. Şekil 1). Bir Eclipse kullanıcısı, genel bakış sayfasına gitmek için birkaç seçeneğe sahiptir, ben de bunu tavsiye ederim (bkz. Şekil 2). Daha sonra, yeni özelliklerle ilgili bilgileri görüntüleyebilir, bazı örnekleri inceleyebilir veya bir eğitim alabilirsiniz.

    Şekil 1. Eclipse Karşılama Sayfası
    Şekil 2. Eclipse'e genel bakış sayfası

    Eclipse çalışma alanı, adı verilen birkaç panelden oluşur görüntülemegezgin veya anahat görünümleri gibi. Bu tür temsiller kümesine denir perspektif... En yaygın perspektiflerden biri, projeleri yönetmek ve proje dosyalarını görüntülemek ve düzenlemek için temel bir görünüm kümesi olan Kaynak perspektifidir.

    Çoğu acemi kullanıcının Şekil 2'de gösterilen genel bakış sayfasından başlamasını ve Eclipse hakkında daha fazla bilgi edinmesini tavsiye ederim. Çalışma tezgahının temelleri bölümü, Eclipse'deki çeşitli bileşenler ve birbirleriyle nasıl etkileşime girdikleri hakkında birçok yararlı başlangıç \u200b\u200bbilgisi içerir. Bunu okumak için birkaç dakikanızı ayırın ve ardından Eclipse Java Geliştirme Araçları'na (JDT) dalalım. Bir şeyi öğrenmenin en iyi yolu, onu pratikte denemektir.

    Bu hızlı Eclipse turuna devam ederken, yeni bir Java projesi oluşturacağız. Lütfen seçin Dosya\u003e Yeni\u003e Java Projesi ve proje adı sorulduğunda Merhaba girin ve ardından Bitiş.

    Şimdi Java perspektifine bakalım (henüz içinde değilseniz). Ekranınızı nasıl kontrol etmek istediğinize bağlı olarak, seçimini yaparak mevcut pencerede perspektifi değiştirebilirsiniz. Pencere\u003e Perspektifi Aç\u003e Java (Pencere\u003e Perspektifi Aç\u003e Java)veya seçerek yeni bir pencere açın Pencere\u003e Yeni Pencereve yeni bir bakış açısı seçin.

    Tahmin edebileceğiniz gibi, Java perspektifinin Java geliştirme için tasarlanmış bir dizi görünümü vardır. Sol üst köşede bulunan bunlardan biri, çeşitli Java paketlerini, sınıflarını, JAR arşivlerini ve çeşitli dosyaları içeren bir hiyerarşidir. Bu görünüme Paket Gezgini denir. Ana menüye iki yeni öğe eklendiğine dikkat edin: Kaynak ve Yeniden Düzenleme.

    Java Geliştirme Araçları (JDT)

    Java geliştirme ortamını denemek için, "Hello World" adlı bir uygulama oluşturup çalıştıracağız. Java perspektifinde, "Merhaba" projesinin (src) kaynak test klasörüne sağ tıklayın ve şunu seçin: Yeni\u003e Sınıf, Şekil 3'te gösterildiği gibi. Görünen iletişim kutusunda, sınıf adı olarak Merhaba girin. Yazıtın altında Hangi yöntem taslaklarını oluşturmak istersiniz? (Hangi yöntem taslaklarını oluşturmak istiyorsunuz?) Not public static void main (String argümanları) ve bas Bitiş.

    Şekil 3. Java perspektifinden yeni bir sınıf oluşturma

    Bu, Şekil 4'te gösterildiği gibi editör alanında Hello sınıfı ve boş bir main () yöntemiyle bir .java dosyası oluşturacaktır. Yönteme aşağıdaki kodu ekleyin (açıklamasının ben kasıtlı olarak ihmal edilmiştir).

    Şekil 4. Java düzenleyicisindeki Hello sınıfı

    Yazarken, sözdizimi denetimi ve otomatik tamamlama dahil olmak üzere Eclipse editörünün bazı özelliklerini fark edeceksiniz. Ayrıca, açık bir parantez veya çift tırnak girdiğinizde, Eclipse bunlar için otomatik olarak bir kapatma çifti ekler ve imleci ortaya yerleştirir.

    Diğer durumlarda, kombinasyonu kullanarak otomatik kod tamamlamaya neden olabilirsiniz Ctrl + 1... Kod ekleme işlevi, klavye veya fareyi kullanarak aralarından seçim yapabileceğiniz içeriğe duyarlı bir seçenekler listesi oluşturur. Varyantlar, belirli bir nesneye özgü yöntemlerin bir listesi veya for veya while gibi çeşitli anahtar kelimelere dayanan bir kod parçası olabilir.

    Sözdizimi denetimi, artımlı derlemeye bağlıdır. Kodu kaydettiğinizde, arka planda derlenir ve sözdizimi hataları açısından kontrol edilir. Varsayılan olarak, sözdizimi hatalarının altı kırmızıyla çizilir ve kenar boşluklarında solda beyaz bir X ile kırmızı bir nokta görünür Diğer hatalar, düzenleyici kenar boşluklarında bir ampul sembolü ile işaretlenir; bunlar bir düzenleyicinin sizin için çözebileceği sorunlardır (Hızlı Düzeltme adı verilen bir özellik).

    Yukarıdaki kodda, ampul, for ifadesinin yanındadır çünkü i için açıklama atlanmıştır. Ampule çift tıklamak, önerilen düzeltmelerin bir listesini getirecektir. Bizim durumumuzda, bir yöntem için bir sınıf alanı i, yerel bir değişken i veya bir parametre i oluşturmanız istenecektir; Bu seçeneklerden herhangi birine tıklamak, oluşturulacak kodu gösterecektir. Şekil 5, önerilen seçeneklerin bir listesini ve yerel bir değişken durumunda önerilen kodu gösterir.

    Şekil 5. Hızlı Onarım işlevinin sunduğu seçenekler

    Bir cümlenin çift tıklanması, kodu programda istenen yere ekler.

    Program hatasız derlenirse, seçimini yaparak çalıştırabilirsiniz. Çalıştırmak Eclipse menüsünde. (Kod kaydedilirken derleme gerçekleştiği için ayrı bir derleme adımı olmadığını unutmayın. Kodunuzda sözdizimi hatası yoksa çalıştırılmaya hazırdır.) Başlatma Yapılandırmaları iletişim kutusu istenen varsayılanlarla görüntülenir; Tıklayın Çalıştırmak sağ alt. Alt bölmede, aşağıda gösterildiği gibi program çalışmasının sonucunu görüntüleyen yeni bir sekmeli panel (Konsol) belirir.

    Şekil 6. Programın sonucu

    Programı Java hata ayıklayıcısında da çalıştırabilirsiniz. Öncelikle, System.out.println () çağrısının yanındaki düzenleme penceresinin sol tarafındaki gri kutuya çift tıklayarak main () System.out.println () 'de bir kesme noktası ayarlamanız gerekir. Mavi bir nokta görünecektir. Menüde Çalıştırmak takım seç Hata ayıklama... Daha önce açıklandığı gibi, Başlatma Yapılandırmaları iletişim kutusu görünecektir. Takım Seçin Çalıştırmak... Perspektif, aşağıda gösterildiği gibi, bir dizi ilginç yeni görünüm içeren Hata Ayıklama perspektifine otomatik olarak değişecektir.

    Şekil 7. Hata ayıklama perspektifi

    Perspektifin sol üst köşesindeki Hata Ayıklama görünümüne dikkat edin. Bu görünüm, çağrı yığınını gösterir ve başlık çubuğunda programın yürütülmesini kontrol etmenizi sağlayan bir araç çubuğu içerir. Panel, bir programı sürdürmek, duraklatmak veya sonlandırmak, sonraki ifadeye geçmek, sonraki ifadeye geçmek veya bir yöntemden dönmek için düğmeler içerir. Sağ üstteki panel Değişkenler, Kesme Noktaları, İfadeler ve Görüntü gibi çeşitli sekmeli görünümler içerir. Değişkenler sekmesi şimdi seçildi, böylece i değişkeninin mevcut değerini görebiliriz.

    Herhangi bir görünüm hakkında daha ayrıntılı bilgi, bağlam yardımı kullanılarak elde edilebilir; bunu yapmak için, görünümün başlığına tıklayın ve F1.

    Ek eklentiler

    Uygulamaları düzenleme, derleme ve hata ayıklama için JDT gibi eklentilere ek olarak, tüm geliştirme sürecini destekleyen eklentiler vardır: modelleme, derleme otomasyonu, birim testi, performans testi, sürüm oluşturma ve yapılandırma yönetimi.

    Eclipse, kaynak kontrolü için bir Eşzamanlı Sürüm Sistemi (CVS) eklentisi içerir. Takım eklentisi CVS sunucusuna bağlanarak geliştirme ekibinin üyelerinin başkalarının değişikliklerine müdahale etmeden bir dizi kaynak dosyayla çalışmasına izin verir. Bir CVS sunucusunun kurulmasını gerektireceğinden, Eclipse'den kaynak yönetimi hakkında daha fazla ayrıntıya girmeyeceğiz, ancak yalnızca kendi kendini geliştirmeyi değil, bir geliştirme ekibini destekleme yeteneği Eclipse'in önemli ve ayrılmaz bir parçası.

    Eclipse Foundation tarafından bakımı yapılan ve dağıtılan eklentiler Eclipse Web sitesinde bulunabilir. Kullanılabilir eklentilerin en eksiksiz listesi, eklenti dizini olarak hizmet veren Eclipse Plug-in Central sayfasında mevcuttur.

    Eclipse Platform Mimarisi

    Eclipse platformu, JDT ve PDE gibi projeleri destekleyen güçlü bir eklenti seti (bkz. Şekil 8) içerir.

    Şekil 8. Eclipse platformunun basitleştirilmiş mimarisi

    Koyu mavi kutular, Eclipse'deki Zengin İstemci Platformunun (RCP) merkezinde bulunan bileşenleri temsil eder. RCP kavramının kendisi bu makalenin kapsamı dışındadır, ancak RCP'nin, insanların Lotus Notes® 8 gibi uygulamaları geliştirmek için kullanabilecekleri Eclipse'den gelen bir eklenti koleksiyonu olduğunu varsayalım. Açık mavi kutular, dahil edilecek isteğe bağlı (ancak tavsiye edilen) bileşenleri temsil eder. RCP tabanlı uygulamalara. Ve gri kutular tamamen isteğe bağlıdır. Platform birkaç bileşenden oluşuyor, bunlardan bazılarına bakacağız:

    Çalışma süresi Çalışma zamanı, OSGi spesifikasyonuna ve uzantıların ve uzantı noktalarının görünümüne dayalı olarak Eclipse eklenti modelini tanımlayan koddur. Runtime ayrıca syslog ve eşzamanlılık gibi ek hizmetler de sağlar. JFace / SWT Standard Widget Toolkit (SWT), Eclipse kullanıcı arayüzü ve işlevselliği sağlayan bir widget koleksiyonudur. JFace, grafiksel uygulamaların geliştirilmesini kolaylaştırmak için birkaç Model-View-Controller (MVC) sınıfı sağlayan bir SWT eklentisidir. Tezgah Çalışma alanı Eclipse'e kişiliğini verir. Görüşler, perspektifler ve düzenleme kutuları gibi şeyler kavramı bu düzeyde uygulanır. Yardım Bu Eclipse bileşeni, kullanıcılarınıza destek sağlamanıza olanak tanır. Bu, kullanıcıların yardım belgelerini aramasına izin veren yardım sistemi aracılığıyla veya son kullanıcılara etkileşimli görev listeleri olarak sunulabilecek kopya sayfaları aracılığıyla yapılabilir. Güncelleme Güncelleme bileşeni, Eclipse'de uygulamaları bir sürümden diğerine güncellemek için araçlar sağlar. Takım Takım bileşeni, geliştiricilerin kendi sürüm kontrol sistemlerini eklemelerine olanak tanıyan bir çerçevedir. Örnek sağlayıcı uygulaması, Eclipse'de yerleşik olarak bulunan CVS eklentisidir.

    Sonuç

    IBM tarafından yazılan orijinal koddan Eclipse, 100'den fazla şirketin dahil olduğu, tamamen işlevsel bir açık kaynak ekosistemine dönüştü. Taşınabilir, genişletilebilir bir açık kaynak çerçevesi artık yeni bir fikir değil, iyi düşünülmüş, sağlam ve zarif bir tasarıma sahip olan Eclipse, tamamen yeni bir dinamiğe bürünüyor.

    Eclipse ekosistemine hoş geldiniz. Amacımız, Eclipse platformuyla hız kazanmanıza yardımcı olmaktı. Bunu bir giriş metni ve basit, uygulamalı bir alıştırma ile başardık. Bu makaleden edindiğiniz bilgileri kullanın ve Eclipse ekosisteminin aktif bir üyesi olun.

    BT teknolojileri durmuyor, her gün gelişiyor. Bir bilgisayarın bize sunduğu tüm olanakları kullanmamıza izin veren yeni programlama dilleri yaratılıyor. En esnek, güçlü ve ilginç dillerden biri Java'dır. Java ile çalışmak için bir yazılım geliştirme ortamına sahip olmanız gerekir. Eclipse'e bir göz atacağız.

    Eclipse, ücretsiz olarak kullanılabilen, genişletilebilir bir IDE'dir. Ana rakip ve soru olan Eclipse'dir: "Hangisi daha iyi?" hala açık kalıyor. Eclipse, birçok Java ve Android geliştiricisinin herhangi bir işletim sistemi üzerinde çeşitli uygulamalar yazmak için kullandığı güçlü bir IDE'dir.

    Dikkat!
    Eclipse, en son sürümleri resmi Java web sitesinden indirilebilen birçok ek dosya gerektirir. Onlar olmadan Eclipse kurulmaya bile başlamaz.

    Elbette, Eclipse program yazmak için oluşturulmuştur. Projeyi oluşturduktan sonra, metin düzenleyicide program kodunu girebilirsiniz. Hata durumunda, derleyici bir uyarı yayınlayacak, hatanın yapıldığı satırı vurgulayacak ve nedenini açıklayacaktır. Ancak derleyici mantıksal hataları, yani koşullu hataları (yanlış formüller, hesaplamalar) algılayamayacaktır.

    Eclipse, modüler çapraz platform uygulamaları için ücretsiz bir entegre geliştirme ortamıdır. Eclipse Foundation tarafından geliştirilmiş ve sürdürülmüştür.

    Eclipse Platformunu temel alan en ünlü uygulamalar, birçok dilde yazılım geliştirmeye yönelik çeşitli "Eclipse IDE'leridir" (örneğin, orijinal olarak desteklenen en popüler "Java IDE", herhangi bir özel uzantıya dayanmaz, Eclipse Platformuna erişmek için standart bir açık API kullanır. ).

    Eclipse, IBM tarafından, IBM platformu için çok dilli geliştirme için kurumsal IDE standardı olarak, IBM VisualAge geliştirme ortamının halefi olarak geliştirildi. IBM'e göre tasarım ve geliştirme maliyeti 40 milyon dolardır. Kaynak kodu tamamen açık kaynaktı ve Eclipse, daha fazla geliştirme için IBM'den bağımsız bir topluluğa teslim edildikten sonra kullanıma sunuldu.

    Eclipse 3.0'da (2003), OSGi hizmet platformu özellikleri, çalışma zamanı mimarisi olarak seçilmiştir. Sürüm 3.0'dan bu yana Eclipse, uzantıları destekleyen monolitik bir IDE olmaktan çıktı, ancak kendisi bir uzantılar kümesi haline geldi. OSGi çerçevesine ve SWT / JFace'e dayalıdır ve bir sonraki katmanın temelini oluşturur - RCP (Zengin İstemci Platformu, tam teşekküllü istemci uygulamaları geliştirmek için bir platform). RCP, yalnızca Eclipse için değil, Azureus ve File Arranger gibi diğer RCP uygulamaları için de temel görevi görür. Bir sonraki katman, editörler, paneller, perspektifler, bir CVS modülü ve bir Java Geliştirme Araçları (JDT) modülü olan RCP uzantılarının bir koleksiyonu olan Eclipse'in kendisidir.

    2006'dan beri Eclipse Vakfı, Haziran ayında gerçekleşen yıllık Eşzamanlı Yayın koordine etmektedir. Her sürüm, Eclipse platformunun yanı sıra bir dizi başka Eclipse projesini içerir.

    Eclipse avantajları

    Eclipse, öncelikle uzantıların geliştirilmesi için bir platform görevi görür, bu yüzden popülerlik kazanmıştır: herhangi bir geliştirici, Eclipse'i modülleriyle genişletebilir. IBM ile birlikte QNX mühendisleri tarafından geliştirilen Java Geliştirme Araçları (JDT), C / C ++ Geliştirme Araçları (CDT) ve çeşitli geliştiricilerin Ada dilleri (GNATbench, Hibachi), COBOL, FORTRAN, PHP vb. İçin araçları zaten mevcuttur. Birçok uzantı, Eclipse ortamını, veritabanları, uygulama sunucuları ve daha fazlasıyla çalışmak için yöneticilerle tamamlar.

    Eclipse JDT (Java Geliştirme Araçları), grup geliştirmeyi amaçlayan en ünlü modüldür: ortam sürüm kontrol sistemleri ile entegre edilmiştir, ana dağıtımda CVS, GIT, diğer sistemler için (örneğin, Subversion, MS SourceSafe) eklentiler vardır. Ayrıca IDE ile görev (hata) yönetim sistemi arasındaki iletişim için destek sunar. Ana paket, Bugzilla hata izleyici desteği içerir, ayrıca diğer izleyicileri (Trac, Jira, vb.) Desteklemek için birçok uzantı vardır. Ücretsiz ve yüksek kalitede olduğu için Eclipse, birçok kuruluşta uygulama geliştirme için kurumsal standarttır.

    Eclipse Java ile yazılmıştır, bu nedenle tüm yaygın platformlar için geliştirilen SWT kitaplığı dışında platformdan bağımsızdır (aşağıya bakın). Standart Java Swing kitaplığı yerine SWT kitaplığı kullanılır. Tamamen, hızlı ve doğal görünen bir kullanıcı arabirimi sağlayan temel platforma (işletim sistemi) dayanır, ancak bazen platformlar arasında uyumluluk ve uygulama kararlılığı sorunlarına neden olur.

    Eclipse, zengin istemci platformuna (RCP) dayanmaktadır. Aşağıdaki bileşenlerden oluşur:

    OSGi (paketler için standart teslimat ortamı);

    SWT (Taşınabilir Widget Araç Seti);

    JFace (dosya arabellekleri, metinle çalışma, metin düzenleyicileri);

    Eclipse çalışma ortamı (paneller, editörler, projeksiyonlar, sihirbazlar).

    Eclipse'deki GUI, SWT araç takımı kullanılarak yazılmıştır. İkincisi, Swing'in (kendi başına grafik kontrolleri taklit eden) aksine, bu işletim sisteminin grafik bileşenlerini kullanır. Eclipse kullanıcı arabirimi ayrıca, SWT tabanlı bir kullanıcı arabirimi oluşturmayı kolaylaştıran JFace adlı bir GUI ara yazılımına da bağlıdır.

    Eclipse'in esnekliği, yalnızca Java'da değil, aynı zamanda C / C ++, Perl, Groovy, Ruby, Python, PHP, Erlang, Component Pascal, Zonnon ve diğerleri gibi diğer dillerde de geliştirmeyi mümkün kılan eklentiler tarafından sağlanır.

    Java platformu

    Java Yazılım Platformu, önceden bağımsız bir şirket olan ve şimdi Oracle Corporation'ın bir yan kuruluşu olan Sun Microsystems'in bir dizi yazılım ürünü ve spesifikasyonudur ve birlikte uygulama yazılımı geliştirmek ve bunu herhangi bir çapraz platform yazılımına yerleştirmek için bir sistem sağlar. Java, alt uçtaki gömülü aygıtlar ve cep telefonlarından en üst uçtaki kurumsal sunucular ve süper bilgisayarlara kadar çok çeşitli bilgi işlem platformlarında kullanılmaktadır. Java uygulamaları masaüstü bilgisayarlarda nadiren kullanılsa da, bazen World Wide Web'e göz atarken işlevselliği geliştirmek ve güvenliği artırmak için kullanılırlar.

    Java sanal makinesi, Java'da yazılmış kodu Java bayt koduna dönüştürür. Ancak Ada, JavaScript, Python ve Ruby gibi diğer programlama dilleri için bayt kodu derleyicileri vardır. Java sanal makinesiyle çalışmak üzere tasarlanmış birkaç yeni programlama dili de vardır. Bunlar Scala, Clojure ve Groovy gibi dillerdir. Java sözdizimi çoğunlukla C ve C ++ 'dan ödünç alınır, ancak nesne yönelimli yetenekler Smalltalk ve Objective-C'de kullanılan modeli temel alır. Java, işaretçiler gibi belirli düşük seviyeli yapılardan yoksundur ve Java ayrıca, her nesnenin yığın üzerinde bulunduğu ve tüm nesne değişkenlerinin referans olduğu çok basit bir bellek modeline sahiptir. Bellek yönetimi, JVM'nin entegre otomatik çöp toplama tarafından gerçekleştirilir.