Eclipse platformasidan foydalanishni boshlash. Java dasturiy platformalarining xususiyatlari. Men hamjamiyatga qo'shilishni xohlayman. Buni qanday qilish kerak

- bepul ramka modulli kross-platforma ilovalarini ishlab chiqish uchun.

Loyiha dastlab ishlab chiqilgan IBM IBM platformalari uchun turli tillarda ishlab chiqish uchun korporativ IDE standarti sifatida. Keyin loyiha nomi o'zgartirildi va yanada rivojlantirish uchun jamiyatga taqdim etildi.

Birinchidan, to'liq Java IDE, guruhni rivojlantirishga qaratilgan, versiyalarni boshqarish tizimlari bilan ishlash uchun vositalar bilan jihozlangan (CVS qo'llab-quvvatlashi Eclipse tarqatilishiga kiritilgan, SVN modullarining bir nechta versiyalari faol ishlab chiqilmoqda, VSS va boshqalarni qo'llab-quvvatlash mavjud). Bepul tufayli Ko'pgina tashkilotlarda Eclipse ilovalarni ishlab chiqish uchun korporativ standart hisoblanadi.

Ikkinchi uchrashuv- yangi kengaytmalarni ishlab chiqish uchun platforma bo'lib xizmat qiladi (shuning uchun u mashhurlikka erishdi - har qanday ishlab chiquvchi Eclipse-ni o'z modullari bilan kengaytirishi mumkin). Shunday qilib, ular bo'lishdi C/C++ ishlab chiqish vositalari(CDT), QNX muhandislari tomonidan turli ishlab chiquvchilarning IBM, COBOL, FORTRAN, PHP vositalari bilan birgalikda ishlab chiqilgan. Ko'pgina kengaytmalar Eclipse-ni ma'lumotlar bazalari, dastur serverlari va boshqalar bilan ishlash uchun menejerlar bilan to'ldiradi.

3.0 versiyasidan boshlab Eclipse kengaytmalarni qo'llab-quvvatlaydigan monolit IDE emas, balki kengaytmalar to'plamiga aylandi. U OSGi va SWT/JFace ramkalariga asoslangan bo'lib, uning asosida keyingi qatlam ishlab chiqilgan - to'liq huquqli mijoz ilovalari RCP (Rich Client Platform - (inglizcha rich-client ilovalari) platformasi) RCP platformasi. Azareus va File Arranger kabi RCP ilovalari uchun asos bo'lib xizmat qiladi.Keyingi qatlam Eclipse platformasi bo'lib, u RCP kengaytmalari to'plami - muharrirlar, panellar, istiqbollar, CVS moduli va Java Development Tools (JDT) modulidir.

Yozilgan Java, shuning uchun u barcha umumiy platformalar uchun ishlab chiqilgan SWT kutubxonasi bundan mustasno, platformadan mustaqil mahsulotdir. SWT kutubxonasi "sekin" Swing o'rniga ishlatiladi va to'liq tezlik va tabiiylikni ta'minlaydigan asosiy platformaga (operatsion tizim) bog'liq. tashqi ko'rinish foydalanuvchi interfeysi.

Eclipse-ning asosini boy mijoz platformasi (RCP) tashkil etadi. U quyidagi tarkibiy qismlardan iborat:


  • OSGi (standart paketlarni yetkazib berish muhiti);
  • SWT (ko'chma vidjet asboblar to'plami);
  • JFace (fayl buferlari, matn bilan ishlash, );
  • Eclipse ish muhiti (panellar, muharrirlar, proyeksiyalar, sehrgarlar).
  • GUI SWT asboblar to'plami yordamida yozilgan. Ikkinchisi, Swing-dan farqli o'laroq (faqat foydalaniladigan platformaning individual grafik elementlarini taqlid qiladi), aslida foydalanadi grafik komponentlar ushbu tizimdan. Eclipse foydalanuvchi interfeysi, shuningdek, SWT-ga asoslangan foydalanuvchi interfeysini yaratishni osonlashtiradigan JFace deb nomlangan GUI o'rta dasturiga bog'liq.

    Moslashuvchanlik plaginlar orqali ta'minlanadi, bu nafaqat Java-da, balki C/C++, Perl, Ruby, Python, PHP, ErLang va boshqalar kabi boshqa tillarda ham rivojlanish imkonini beradi.

    Mahalliylashtirish

    3.1.1 versiyasidan boshlab, ruslashtirish uchun til paketi chiqarildi. sifatida rus tiliga tarjima qilingan GUI, va hujjatlar.

    Atrof muhit uchun bir qancha bepul va tijorat modullari mavjud. Ramka dastlab Java tili uchun ishlab chiqilgan, ammo hozirda boshqa tillarni qo'llab-quvvatlash uchun ko'plab kengaytmalar mavjud, masalan

    • C/C++ - CDT Eclipse-ning C/C++ ishlab chiqish vositalari
    • Perl - EPIC moduli, Eclipse Perl Integration
    • PHP - PDT PHP ishlab chiqish vositalari
    • JavaScript - JS Eclipse Java Eclipse muhiti uchun skript plagini
    • Python - Pydev, Python rivojlanish muhiti
    • Ruby - RDT, Ruby Development Tools

    Grafik interfeyslarni yaratish uchun modullar ham mavjud.

    Hisobotlarni ishlab chiqish va qabul qilish va analitik BI ilovalarini ishlab chiqish uchun mavjud uz:BIRT_Project t.

    orqali modullarni o'rnatish va yangilash uchun o'rnatilgan funksiya mavjud.

    Aptana(aptana.com) - Eclipse tarqatish va ishlab chiqishni qo'llab-quvvatlaydigan plagin JavaScript yordamida(barcha asosiy JS Ajax kutubxonalari tarqatishga kiritilgan), HTML, CSS, Ruby on rails, Adobe AIR.

    Fikringizni qoldiring!

    ) ish vaqti muhitining arxitekturasi sifatida OSGi xizmat ko'rsatish platformasining texnik xususiyatlari tanlangan. 3.0 versiyasidan boshlab Eclipse kengaytmalarni qo'llab-quvvatlaydigan monolit IDE bo'lishni to'xtatdi va o'zi kengaytmalar to'plamiga aylandi. U OSGi ramkasi va SWT/JFace asosiga qurilgan bo'lib, uning asosida keyingi qatlam - RCP (Rich Client Platform, to'liq huquqli mijoz ilovalarini ishlab chiqish platformasi) ishlab chiqilgan. RCP nafaqat Eclipse, balki Azureus va File Arranger kabi boshqa RCP ilovalari uchun ham asos bo'lib xizmat qiladi. Keyingi qatlam Eclipse-ning o'zi bo'lib, u RCP kengaytmalari to'plamidir - muharrirlar, panellar, istiqbollar, CVS moduli va Java Development Tools (JDT) moduli.

    2006 yildan beri Eclipse Foundation har yili iyun oyida bo'lib o'tadigan Sinxron nashrni muvofiqlashtirib keladi. Har bir nashr Eclipse platformasi bilan bir qatorda bir qator boshqa Eclipse loyihalarini ham o‘z ichiga oladi.

    Chiqarish sana Platforma versiyasi Loyiha
    Neon 2016 yil 22 iyun 4.6
    Mars 2015 yil 25 iyun 4.5
    Luna 2014 yil 6 iyun 4.4
    Kepler 2013 yil 26 iyun 4.3
    Juno 2012 yil 27 iyun 3.8 va 4.2
    Indigo 2011 yil 22 iyun 3.7
    Helios 2010 yil 23 iyun 3.6
    Galiley 2009 yil 24 iyun 3.5
    Ganymede 2008 yil 25 iyun 3.4
    Yevropa 2007 yil 29 iyun 3.3
    Callisto 2006 yil 30 iyun 3.2
    Eclipse 3.1 2005 yil 28 iyun 3.1
    Eclipse 3.0 2004 yil 28 iyun 3.0

    Afzalliklar

    Eclipse, birinchi navbatda, kengaytmalarni ishlab chiqish uchun platforma bo'lib xizmat qiladi, shuning uchun u mashhurlikka erishdi: har qanday dasturchi Eclipse-ni o'z modullari bilan kengaytirishi mumkin. QNX muhandislari tomonidan IBM bilan birgalikda ishlab chiqilgan Java Development Tools (JDT), C/C++ Development Tools (CDT) va Ada (GNATbench, Hibachi), COBOL, FORTRAN, PHP, X10 (X10DT) tillari uchun vositalar allaqachon mavjud. ) va boshqalar turli ishlab chiquvchilardan. Turli kengaytmalar Eclipse muhitini ma'lumotlar bazalari, dastur serverlari va boshqalar bilan ishlash uchun menejerlar bilan to'ldiradi.

    Eclipse JDT (Java Development Tools) guruhni rivojlantirishga qaratilgan eng mashhur moduldir: muhit versiyalarni boshqarish tizimlari bilan birlashtirilgan - CVS, GIT asosiy tarqatishda, boshqa tizimlar uchun plaginlar mavjud (masalan, Subversion,). Shuningdek, IDE va ​​vazifalarni (xatolarni) boshqarish tizimi o'rtasidagi aloqani qo'llab-quvvatlaydi. Asosiy tarqatish Bugzilla xato kuzatuvchisini qo'llab-quvvatlashni o'z ichiga oladi, shuningdek, boshqa trekerlarni (Trac, Jira va boshqalar) qo'llab-quvvatlash uchun ko'plab kengaytmalar mavjud. Bepul va tufayli Yuqori sifatli,Eclipse ko'pgina tashkilotlarda ilovalarni ishlab chiqish uchun korporativ standartdir.

    Eclipse Java-da yozilgan, shuning uchun u barcha umumiy platformalar uchun ishlab chiqilgan SWT kutubxonasidan tashqari platformadan mustaqil mahsulotdir (pastga qarang). Standart Java Swing kutubxonasi o'rniga SWT kutubxonasi ishlatiladi. U butunlay asosiy platformaga (operatsion tizim) tayanadi, bu tezkor va tabiiy ko'rinishdagi foydalanuvchi interfeysini ta'minlaydi, lekin ba'zida platformalarda muvofiqlik va dastur barqarorligi muammolarini keltirib chiqaradi.

    Arxitektura

    Eclipse asosi Rich Client Platform (RCP) hisoblanadi. boy mijoz platformasi). U quyidagi tarkibiy qismlardan iborat:

  • OSGi (to'plamlarni etkazib berish uchun standart muhit) to'plamlar));
  • SWT (ko'chma vidjet asboblar to'plami);
  • JFace (fayl buferlari, matn bilan ishlash, matn muharrirlari);
  • Eclipse ish muhiti (panellar, muharrirlar, proyeksiyalar, sehrgarlar).
    • Aperi (lot.dan. ochiq) - tarmoq saqlash tizimlarini boshqarish uchun ochiq kodli tizim.
    • BIRT (Business Intelligence and Reporting Tools) - Web va PDF hisobotlari.
    • DTP (Data Tools Platform) - ma'lumotlarga asoslangan tizimlarni, xususan, relyatsion ma'lumotlar bazalaridagi ma'lumotlarni ishlab chiqish; ko'p sonli ulagichlar bilan dasturlarni boshqarish.
    • GEF (Graphical Editing Framework) - o'rnatilgan grafik muharrirlarni yaratish uchun mo'ljallangan ramka.
    • Jazz - Eclipse (IBM Rational mahsulot liniyasining bir qismi) ustiga qurilgan loyihani ishlab chiqish (chat, voqealar jurnali va boshqalarni o'z ichiga oladi) davomida ishlab chiquvchilar o'rtasidagi o'zaro aloqa uchun mijoz-server platformasi.
    • Modellashtirish .
    • Asboblar .
    • TPTP (Test & Performance Tools Platform) - sinov vositalarini ishlab chiqish, - tuzatuvchilar, profillar va boshqalar.
    • VE (Visual Editor Project) - GUI vositalarini ishlab chiqish.
    • WTP (Web Tools Platform Project) - J2EE veb-ilovalarni ishlab chiqish vositalari:
      • HTML, JavaScript, CSS, JSP, SQL, XML, DTD, XSD va WSDL muharrirlari;
      • XSD va WSDL uchun grafik muharrirlar;
      • Web Services Wizards and Explorer, WS-I Test Tools;
      • so'rovlar va ma'lumotlar bazasi modellariga kirish va yaratish vositalari.
    • Eclipse Communication Framework (ECF) Eclipse platformasida aloqa dasturlarini yaratishga qaratilgan.
    • Rivojlanish loyihasi dasturiy ta'minot qurilmalar uchun (DSDP).
    • Parallel asboblar platformasi (PTP) portativ, kengaytiriladigan, standartlarga asoslangan parallel asboblar platformasini taqdim etadi, bu parallel kompyuter arxitekturalariga xos vositalarni birlashtirishni osonlashtiradi.
    • Embedded Enhanced Client Platform (eRCP) - RCPni o'rnatilgan qurilmalarga kengaytirish uchun mo'ljallangan. eRCP RCP komponentlarining kichik to'plami bo'lgan komponentlar to'plamini o'z ichiga oladi. Bu ish stoli kompyuterlarida ishlatiladigan dastur modelini boshqa qurilmalarga o'tkazish imkonini beradi.
    • DLTK (Dynamic Languages ​​Toolkit) bu dinamik dasturlash tillari uchun integratsiyalashgan ishlab chiquvchi muhitdir.
    • Swordfish - bu taqsimlangan korporativ axborot tizimlarini yaratish uchun platforma.

    Eng so'nggi versiyalari

    Eclipse 3.3.2 (Yevropa qishi)

    Yangi kichik loyihalar soni (ikkalasi ham Eclipse Foundation, ham uchinchi tomonlar tomonidan boshqariladi) tez sur'atlar bilan o'sib bormoqda. Biz juda ko'p sonli ishlab chiquvchilarning sa'y-harakatlarini muvofiqlashtirishimiz va umumiy qoidalarni taklif qilishimiz kerak - "Eclipse Development Process".

    Eng so'nggi versiya nashr 21 ta kichik loyihani o'z ichiga oladi.

    Eclipse 3.4 (Ganimede)

    Ganymede nashri (06.2008) 23 ta kichik loyihani o'z ichiga oladi:

    • Eclipse loyihasi 3.4
    • Tenglik 3.4
    • Eclipse Communication Framework loyihasi 2.0.0
    • Eclipse Model Framework texnologiyasi
    • Eclipse Modeling Framework 2.4.0
    • Eclipse Packaging loyihasi 1.0.0
    • Eclipse Web Tools Platform Project 3.0.0
    • Grafik muharrir ramkasi 3.4.0
    • Grafik modellashtirish asosi 2.1
    • Modelni ishlab chiqish vositalari. 1.1
    • Data Tools Platform (DTP) 1.6
    • Device Software Development Platform Project Device Debugging 1.0
    • Qurilma dasturiy ta'minotini ishlab chiqish platformasi loyihasi Maqsadlarni boshqarish 3.0
    • Bukminster komponentlar assambleyasi 1.1
    • BIRT 2.3.0
    • C/C++ dasturlash vositasi (CDT) 5.0.0
    • Dynamic Languages ​​Toolkit 0.95
    • Modeldan matnga (M2T) 0.9.0
    • Modeldan modelga aylantirish (M2M)
    • Mylyn 3.0 (vazifaga yo'naltirilgan UI)
    • Rich Ajax platformasi (RAP) 1.1
    • SOA vositalari (STP) 1.0
    • Subversive - SVN Team Provayderi
    • Maqsadlarni boshqarish 3.0
    • Test va ishlash vositalari platformasi loyihasi 4.5.0

    Eclipse 3.5 (Galiley)

    2009 yil 24 iyunda ommaga taqdim etilgan Galileyning so'nggi versiyasi 33 ta kichik loyihani o'z ichiga oladi:

    • Eclipse platformasi 3.5
    • Eclipse loyihasi 3.5.0
    • Eclipse Modeling Framework (EMF) 2.5.0
    • Eclipse Packaging loyihasi 1.1.0
    • Eclipse Web Tools Platform Project WTP 3.1.0 (Galileo)
    • EclipseLink loyihasi 1.1.2
    • Accessibility Tools Framework 0.7.0
    • Biznes razvedkasi va hisobot berish vositalari (BIRT)
    • C/C++ dasturlash vositalari (CDT) 6.0
    • Dali Java Persistence Tools 2.2
    • Data Tools Platform 1.7 (Galileo)
    • Dynamic Languages ​​Toolkit 1.0
    • Tenglik 3.5
    • GEF - Grafik muharrir ramkasi 3.5.0
    • Grafik modellashtirish asosi 2.2.0
    • Java Workflow Tooling JWT 0.6
    • JDT - Java ishlab chiqish vositalari
    • M2T JET (Java emitter andozalari) - aka JET2 M2T JET 1.0.0 (Galileo)
    • Xotira tahlilchisi 0.8.0
    • Java uchun mobil vositalari
    • Modeldan matnga (M2T) 1.0.0
    • Modeldan modelga o'zgartirish (M2M) Galileoning bir vaqtning o'zida chiqarilishi
    • Monitoring vositalari 4.6
    • Mylyn 3.2
    • PHP ishlab chiqish vositalari 2.1.0
    • Rich Ajax platformasi 1.2
    • Riena platformasi loyihasi 1.1.0.
    • SCA Tools 2.0.0
    • SOA vositalari 2.0
    • Manba tahriri 3.1.0 (Galileo)
    • Swordfish 0.9.0
    • Maqsadlarni boshqarish 3.1
    • Sinov va ishlash vositalari platformasi loyihasi 4.5.3
    • Sinov asboblari TPTP v4.6
    • Matnli modellashtirish ramkasi org.eclipse.xtext
    • Mobil Linux uchun asboblar 0.3
    • TPTP platformasi TPTP v4.6
    • Tracing & Profiling Tools TPTP v4.6

    Mahalliylashtirish

    3.1.1 versiyasidan boshlab Eclipse russifikatsiyasi uchun til paketi chiqarildi. Grafik interfeys ham, hujjatlar ham rus tiliga tarjima qilingan.

    Modullar

    Eclipse muhiti uchun bir qancha bepul va tijorat modullari mavjud. Ramka dastlab Java tili uchun mo'ljallangan edi, ammo hozirda boshqa tillarni qo'llab-quvvatlash uchun ko'plab kengaytmalar mavjud:

    Til Modul
    /C++ CDT
    Fortran Foton
    Perl EPIC
    PHP Tinch okeani kunduzgi vaqti
    JavaScript JSEclipse
    Python PyDev (Eclipse) ( Ingliz)
    Ruby RDT
    1C V8 1C: Korxona DT

    Rivojlanish va olish hisobotlar Eclipse-da analitik BI ilovalarini ishlab chiqish va BIRT loyihasi mavjud ( Ingliz).

    Eclipse Internet orqali modullarni o'rnatish va yangilash uchun o'rnatilgan funksiyaga ega.

    SWT va RCP asosidagi mashhur ilovalar

    Qo'llab-quvvatlanadigan arxitektura va tizimlar

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

    "Eclipse (rivojlanish muhiti)" maqolasi haqida sharh yozing

    Eslatmalar

    1. Darryl K. Taft.(inglizcha). ??? (2005 yil 20 may). 2009-yil 3-sentabrda olindi.
    2. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    3. (inglizcha). 2009-yil 3-sentabrda olindi.
    4. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    5. (inglizcha). Eclipse hujjatlari. Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    6. (inglizcha). Eclipse hujjatlari. Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    7. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    8. Sergey Golubev.. ??? (2005 yil 15 noyabr). 2009-yil 3-sentabrda olindi.
    9. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    10. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    11. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    12. (inglizcha). 2009-yil 3-sentabrda olindi.
    13. Vladimir Paramonov.. Compulenta (2007 yil 31 yanvar). 2009-yil 3-sentabrda olindi.
    14. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    15. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    16. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    17. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    18. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    19. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    20. . Rasmiy sayt. .
    21. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    22. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    23. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    24. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    25. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    26. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    27. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    28. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    29. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    30. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    31. (inglizcha). Rasmiy veb-sayt (2007 yil iyun). 2009-yil 3-sentabrda olindi.
    32. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    33. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    34. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    35. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    36. (inglizcha). Rasmiy sayt. 2011-yil 24-martda olindi.
    37. (inglizcha). . 2009-yil 3-sentabrda olindi.
    38. (inglizcha). Rasmiy sayt. 2009-yil 3-sentabrda olindi.
    39. (inglizcha). ???. 2009-yil 3-sentabrda olindi.
    40. Josh Fet.(ruscha). ??? (2008 yil iyun). - Eclipse-da PyDev-ni o'rnatish. 2009-yil 3-sentabrda olindi.
    41. (inglizcha). ???. 2009-yil 3-sentabrda olindi.
    42. (10.04.2015).
    43. (ruscha). ???. 2009-yil 3-sentabrda olindi.
    44. (inglizcha). . 2009-yil 3-sentabrda olindi.
    45. (inglizcha). . 2009-yil 3-sentabrda olindi.
    46. (inglizcha). ???. 2009-yil 3-sentabrda olindi.
    47. (inglizcha). ???. 2009-yil 3-sentabrda olindi.
    48. (inglizcha) (kirish mumkin bo'lmagan havola - hikoya) . ???. 2009-yil 3-sentabrda olindi.
    49. (inglizcha). ???. 2009-yil 3-sentabrda olindi.

    Havolalar

    • (inglizcha)
    • (inglizcha)
    • (Ingliz tili) - Eclipse SDK uchun hujjatlar
    • (inglizcha)
    • (inglizcha)
    • (inglizcha) - Kengaytirilgan mijoz platformasi
    • (inglizcha)
    • (ingliz) IBM
    • IBM (rus)
    • (ruscha) IBM
    • (ruscha)
    • (Ingliz tili) - turli xil rivojlanish sohalari uchun Eclipse tarqatish variantlari (Expert Java, Desktop Java, Server Java, Mobile Java va boshqalar)
    • (Rus) Art.Lebedev studiyasi

    Eclipse-ni tavsiflovchi parcha (rivojlanish muhiti)

    Ertasi kuni Rostov malika Mariyani Yaroslavlga kuzatib qo'ydi va bir necha kundan keyin o'zi polkga jo'nadi.

    Sonyaning Nikolayga qilgan maktubi, uning ibodatining bajarilishi Trinitydan yozilgan. Bunga sabab bo'lgan. Nikolayning boy kelinga uylanishi haqidagi fikr keksa grafinyani tobora ko'proq band qildi. Bunga asosiy to'siq Sonya ekanligini bilardi. Va Sonya hayoti Yaqinda, ayniqsa Nikolayning Bogucharovoda malika Marya bilan uchrashuvini tasvirlaydigan maktubidan so'ng, grafinyaning uyida tobora og'irlashdi. Grafinya Sonyaga haqoratli yoki shafqatsiz ishora qilish uchun biron bir imkoniyatni qo'ldan boy bermadi.
    Ammo Moskvani tark etishdan bir necha kun oldin, sodir bo'layotgan hamma narsadan hayajonlangan va hayajonlangan grafinya Sonyani chaqirib, ta'na va talablar o'rniga, ko'z yoshlari bilan unga o'girilib, o'zini qurbon qilib, hamma narsa uchun to'lashini so'radi. u uchun qilingan narsa Nikolay bilan aloqalarini uzish edi.
    "Menga bu va'dani bermaguningizcha tinchlanmayman."
    Sonya jazava bilan yig'lab yubordi, yig'lashi orqali hamma narsani qilishini, hamma narsaga tayyor ekanligini aytdi, lekin u to'g'ridan-to'g'ri va'da bermadi va qalbida undan nima talab qilinishini hal qila olmadi. Uni boqgan va tarbiyalagan oila baxti uchun o'zini qurbon qilishga majbur bo'ldi. Boshqalarning baxti uchun o'zini qurbon qilish Sonyaning odati edi. Uning uydagi mavqei shunday ediki, u faqat qurbonlik yo'lida o'zining fazilatlarini ko'rsatishi mumkin edi va u o'zini qurbon qilishga odatlangan va sevgan. Lekin, avvalo, barcha fidoyilik harakatlarida u o'zini qurbon qilish orqali o'zining va boshqalarning oldida o'z qadr-qimmatini oshirganini va hayotda eng yaxshi ko'rgan Nikolayga munosibroq bo'lganini quvonch bilan angladi; lekin endi uning qurbonligi uning uchun qurbonlikning butun mukofoti, hayotning butun ma'nosi bo'lgan narsadan voz kechishdan iborat edi. Va u hayotida birinchi marta uni yanada og'riqli qiynash uchun unga foyda keltirgan odamlarga achindi; Men hech qachon bunday narsalarni boshdan kechirmagan, hech qachon qurbonlikka muhtoj bo'lmagan va boshqalarni o'zini qurbon qilishga majburlagan, ammo hamma tomonidan sevilgan Natashaga hasad qildim. Va birinchi marta Sonya Nikolayga bo'lgan sokin, musaffo muhabbati tufayli to'satdan qoidalar, fazilat va dindan ustun turadigan ehtirosli tuyg'u kuchayganini his qildi; va bu tuyg'u ta'sirida Sonya beixtiyor, o'zining yashirin hayotidan o'rganib, grafinyaga umuman, noaniq so'zlarga javob berdi, u bilan suhbatdan qochdi va bu uchrashuvda u ozod bo'lmasligi uchun Nikolay bilan uchrashuvni kutishga qaror qildi. uni, lekin, aksincha, abadiy unga bog'lab .
    Rostovliklarning Moskvada bo'lishining so'nggi kunlaridagi qiyinchiliklar va dahshat uni og'irlashtiradigan qorong'u fikrlarni g'arq qildi. U amaliy faoliyatda ulardan najot topganidan xursand edi. Ammo u knyaz Andreyning ularning uyida borligini bilgach, unga va Natashaga chin dildan achinishlariga qaramay, Xudo uni Nikolaydan ajralishini istamasligi haqidagi quvonchli va xurofotli tuyg'u uni bosib oldi. U Natashaning shahzoda Andreyni sevishini bilar edi va uni sevishni to'xtatmadi. U endi, shunday dahshatli sharoitda birlashsa, ular yana bir-birlarini sevishlarini va keyin Nikolay ular o'rtasidagi qarindoshlik tufayli malika Maryaga uylana olmasligini bilardi. Bo'lib o'tgan hamma narsaning dahshatiga qaramay oxirgi kunlar va sayohatning birinchi kunlarida bu tuyg'u, Providensning shaxsiy ishlariga aralashishini anglash Sonyani xursand qildi.
    Rostovliklar sayohatining birinchi kunini Trinity Lavra'da o'tkazdilar.
    Lavra mehmonxonasida Rostovlarga uchta katta xona ajratilgan, ulardan birini knyaz Andrey egallagan. O'sha kuni yaradorning ahvoli ancha yaxshi edi. Natasha u bilan o'tirdi. Qo'shni xonada graf va grafinya o'zlarining eski tanishlari va sarmoyadorlariga tashrif buyurgan rektor bilan hurmat bilan suhbatlashishdi. Sonya o'sha erda o'tirardi va u knyaz Andrey va Natasha nima haqida gaplashayotganiga qiziqish bilan qiynalardi. U eshik ortidan ularning ovozlarini eshitdi. Knyaz Andreyning xonasi eshigi ochildi. Natasha u erdan hayajonlangan yuz bilan chiqdi va uni kutib olish uchun o'rnidan turib, o'ng qo'lining keng yengidan ushlab olgan rohibni payqamay, Sonyaning oldiga bordi va uning qo'lini oldi.
    - Natasha, nima qilyapsan? Bu erga kel, - dedi grafinya.
    Natasha marhamat ostida keldi va abbot yordam uchun Xudoga va uning avliyosiga murojaat qilishni maslahat berdi.
    Abbot ketgach, Nashata do'stining qo'lidan ushlab, u bilan birga bo'sh xonaga kirdi.
    - Sonya, to'g'rimi? u tirik bo'ladimi? - dedi u. - Sonya, men qanchalik baxtliman va qanchalik baxtsizman! Sonya, azizim, hammasi avvalgidek. Agar u tirik bo'lsa edi. U qila olmaydi... chunki, chunki... bu... - Va Natasha yig'lab yubordi.
    - Demak! Buni bilgandim! Xudoga shukur, - dedi Sonya. - U tirik bo'ladi!
    Sonya ham qo'rquvi, qayg'usi, ham hech kimga aytilmagan shaxsiy fikrlari bilan do'stidan kam hayajonlanardi. U yig'lab, Natashani o'pdi va yupatdi. "Qaniydi u tirik bo'lsa!" - o'yladi u. Yig'lab, gaplashib, ko'z yoshlarini artib, ikkala do'st knyaz Andreyning eshigiga yaqinlashdi. Natasha eshiklarni ehtiyotkorlik bilan ochib, xonaga qaradi. Sonya uning yonida yarim ochiq eshik oldida turardi.
    Knyaz Andrey uchta yostiq ustida yotdi. Uning rangpar chehrasi xotirjam, ko‘zlari yumilgan, bir tekis nafas olayotganini ko‘rasiz.
    - Oh, Natasha! – Sonya birdan qichqirdi, amakivachchasining qo‘lidan ushlab eshikdan chekindi.
    - Nima? Nima? — soʻradi Natasha.
    "Bu, bu, bu ..." dedi Sonya oqarib, lablari titrab.
    Natasha sekin eshikni yopdi va Sonya bilan birga deraza oldiga bordi, lekin ular unga nima deyishayotganini hali tushunmadi.
    - Esingdami, - dedi Sonya qo'rqinchli va tantanali chehra bilan, - esingdami seni ko'zgudan qidirganim... Otradnoyeda, Rojdestvo vaqtida... Ko'rganlarimni eslaysanmi?..
    - Ha ha! - dedi Natasha ko'zlarini katta ochib, Sonya yotgan holda ko'rgan knyaz Andrey haqida nimadir deganini noaniq esladi.
    - Esingizdami? – davom etdi Sonya. "Men buni o'shanda ko'rdim va hammaga aytdim, siz ham, Dunyasha ham." "Men uning karavotda yotganini ko'rdim, - dedi u qo'li bilan har bir tafsilotga barmog'ini ko'tarib, "ko'zlarini yumganini va pushti adyol bilan o'ralganini va bu u qo'llarini bukdi, - dedi Sonya, hozir ko'rgan tafsilotlarni tasvirlaganidek, xuddi shu tafsilotlarni o'sha paytda ko'rganiga ishonch hosil qilib. Keyin u hech narsani ko'rmadi, lekin uning boshiga tushgan narsani ko'rganini aytdi; lekin u o'ylab topgan narsa unga boshqa xotiralar kabi haqiqiy bo'lib tuyuldi. O'shanda u unga qaradi va jilmayib qo'ydi va qizil bir narsa bilan qoplanganini aytdi, u nafaqat esladi, balki o'sha paytda ham uning pushti, aniq pushti, adyol bilan qoplanganini va ko'rganiga qat'iy ishonch hosil qildi. uning ko'zlari yopiq edi.
    "Ha, ha, aniq pushti rangda", dedi Natasha, u endi pushti rangda aytilgan narsalarni eslaganday tuyuldi va bunda u bashoratning asosiy g'ayrioddiyligi va sirini ko'rdi.
    - Lekin bu nimani anglatadi? — dedi Natasha o'ylanib.
    - Oh, bularning barchasi qanday g'alati ekanligini bilmayman! – dedi Sonya boshini changallab.
    Bir necha daqiqadan so'ng knyaz Andrey qo'ng'iroq qildi va Natasha uni ko'rgani keldi; Sonya esa o‘zi kamdan-kam uchragan his-tuyg‘u va muloyimlikni boshdan kechirib, deraza oldida bo‘lib o‘tgan voqeaning g‘ayrioddiy tabiati haqida o‘ylardi.
    Shu kuni armiyaga xat yuborish imkoniyati paydo bo'ldi va grafinya o'g'liga xat yozdi.
    - Sonya, - dedi grafinya xatdan boshini ko'tarib, jiyani yonidan o'tayotganda. - Sonya, Nikolenkaga yozmaysizmi? - dedi grafinya jim, titroq ovozda va uning charchagan ko'zlarida, ko'zoynagiga qarab, Sonya bu so'zlarda grafinya tushungan hamma narsani o'qidi. Bu qarashda iltijo, rad etish qo'rquvi, so'rashga uyat va rad etilgan taqdirda murosasiz nafratga tayyorlik ifodalangan.
    Sonya grafinyaning oldiga bordi va tiz cho'kib, qo'lini o'pdi.
    — Men yozaman, onam, — dedi u.
    Sonya o'sha kuni sodir bo'lgan hamma narsadan, ayniqsa, hozirgina ko'rgan folbinlikning sirli ijrosidan yumshab, hayajonlandi va ta'sirlandi. Endi u Natashaning knyaz Andrey bilan munosabatlarining yangilanishi munosabati bilan Nikolay malika Mariyaga uylana olmasligini bilgach, u sevgan va yashashga odatlangan fidoyilik kayfiyatining qaytishini quvonch bilan his qildi. Va ko'zlarida yosh bilan va saxovatli ishni amalga oshirishdan xursand bo'lib, u bir necha marta uning baxmal qora ko'zlarini xiralashgan ko'z yoshlari bilan to'xtatib, Nikolayni juda hayratda qoldirgan ta'sirli xatni yozdi.

    Per olib ketilgan qorovulxonada uni olib ketgan ofitser va askarlar unga dushmanlik bilan munosabatda bo'lishdi, lekin shu bilan birga hurmat bilan. Ularning unga bo'lgan munosabatida uning kimligidan shubhalanish (u juda muhim odammi yoki yo'qmi) va u bilan hali ham yangi shaxsiy kurashlari tufayli dushmanlikni his qilish mumkin edi.
    Ammo boshqa kun ertalab smena kelganida, Per yangi qo'riqchi uchun - ofitserlar va askarlar uchun bu endi uni olib ketganlar uchun ma'noga ega emasligini his qildi. Darhaqiqat, dehqon kaftidagi bu katta, semiz odamda ertasi kuni qo'riqchilar talonchi va eskort askarlar bilan juda qattiq kurashgan va bolani qutqarish haqida tantanali iborani aytgan tirik odamni ko'rmadilar, lekin ko'rdilar. yuqori hokimiyat buyrug'i bilan negadir ushlab turilganlarning faqat o'n yettinchi, asir ruslar. Agar Perda biron bir o'ziga xos narsa bo'lsa, bu uning qo'rqoq, o'ychan ko'rinishi va frantsuz tili edi, bu frantsuzlar uchun hayratlanarli darajada yaxshi gapirdi. Xuddi shu kuni Per boshqa gumondorlar bilan aloqada bo'lganiga qaramay, u egallab turgan alohida xonaga ofitser kerak edi.
    Per bilan birga bo'lgan barcha ruslar eng past darajadagi odamlar edi. Va ularning barchasi Perni usta deb bilishgan, ayniqsa frantsuz tilida gaplashgani uchun undan qochdilar. Per o'zini masxara qilishni qayg'u bilan eshitdi.
    Ertasi kuni kechqurun Per bu mahbuslarning hammasi (va ehtimol o'zi ham) o't qo'yish uchun sud qilinishi kerakligini bilib oldi. Uchinchi kuni Perni boshqalar bilan birga oq mo'ylovli frantsuz generali, ikki polkovnik va qo'llarida ro'mol bo'lgan boshqa frantsuzlar o'tirgan uyga olib ketishdi. Perga, boshqalar bilan birga, u kim ekanligi haqida savollar berishdi, ular odatda ayblanuvchilarga nisbatan aniqlik va aniqlik bilan munosabatda bo'lishdi, bu go'yo insoniy zaifliklardan oshib ketadi. u qayerda edi? nima maqsadda? va h.k.
    Bu savollar, hayotning mohiyatini chetga surib, bu mohiyatni ochib berish imkoniyatini istisno qilgan holda, sudlarda qo'yiladigan barcha savollar singari, sudyalar sudlanuvchining javoblari oqib chiqishini va uni olib borishini istagan truba yaratishdan iborat edi. istalgan maqsad, ya'ni ayblovga. U ayblov maqsadiga to‘g‘ri kelmaydigan gaplarni ayta boshlagan zahoti, ular bir truba olishdi, suv qayoqqa xohlasa, oqib ketardi. Bundan tashqari, Per barcha sudlarda sudlanuvchini boshdan kechirgan narsani boshdan kechirdi: nima uchun bu savollarning barchasi unga berilganligidan hayratda. U truba kiritishning bu nayrangi faqat irodalilik uchun yoki go'yo xushmuomalalik uchun ishlatilganini his qildi. U bu odamlarning qo‘lida ekanini, uni bu yerga faqat kuch olib kelganini, savollarga javob talab qilish huquqini faqat kuch berishini, bu uchrashuvdan yagona maqsad uni ayblash ekanini bilardi. Va shuning uchun hokimiyat borligi va ayblash istagi borligi sababli, savol va sudning hiyla-nayrangiga hojat yo'q edi. Barcha javoblar aybdorlikka olib kelishi aniq edi. Ular uni olib ketishganida nima qilayotganini so'rashganda, Per qandaydir fojia bilan bolani ota-onasiga olib ketayotganini aytdi, qu"il avait sauve des flammes [uni olovdan qutqardi]. - Nega u talonchi bilan jang qildi. - deb javob berdi Per, u ayolni himoya qilayotganini, haqoratlangan ayolni himoya qilish har bir insonning burchi ekanligini, buni... Uni to'xtatib qo'yishdi: bu gapga bormadi... Nega u uyning hovlisida yonib ketdi? , Guvohlar uni qayerda ko‘rgan?U Moskvada nima bo‘layotganini ko‘rgani ketyapman, deb javob berdi.Ular uni yana to‘xtatib qo‘yishdi: qayerga ketayotganini so‘rashmadi, nima uchun u olov yonida edi?U kim edi?U yana takrorlashdi. birinchi savoliga javob berishni istamasligimni aytdi va yana buni ayta olmayman deb javob berdi.
    - Yozing, bu yaxshi emas. - Bu juda yomon, - dedi unga qattiq ohangda oq mo'ylovli va qizil, qizil yuzli general.
    To'rtinchi kuni Zubovskiy Valida yong'inlar boshlandi.
    Perni va yana o'n uch kishini Krimskiy Brodga, savdogarning uyiga olib ketishdi. Ko'chalarda yurib, Per butun shahar ustida turgan tutundan bo'g'ilib qoldi. Yong'inlar turli yo'nalishlardan ko'rindi. Per Moskvaning yonib ketishining ahamiyatini hali tushunmadi va bu yong'inlarga dahshat bilan qaradi.
    Per Qrim Brod yaqinidagi uyning vagon uyida yana to'rt kun qoldi va shu kunlarda u frantsuz askarlarining suhbatidan bilib oldiki, bu erda hamma har kuni marshalning qarorini kutishgan. Qaysi marshal, Per askarlardan topa olmadi. Askar uchun, shubhasiz, marshal hokimiyatdagi eng yuqori va qandaydir sirli bo'g'in bo'lib tuyuldi.
    Bu birinchi kunlar, 8 sentyabrgacha, mahbuslar ikkinchi darajali so'roqqa olingan kun Per uchun eng qiyin kun edi.

    X
    8-sentabr kuni juda muhim ofitser mahbuslarni ko'rish uchun omborga kirdi, soqchilar unga qanday hurmat ko'rsatganiga ko'ra. Bu ofitser, ehtimol, shtab ofitseri, qo'lida ro'yxat bilan, butun ruslarni chaqirib, Perni chaqirdi: celui qui n "avoue pas son nom [ismini aytmagan kishi]. Va befarqlik bilan va dangasalik bilan barcha mahbuslarga qarab, u qo'riqchiga ularni marshalning oldiga olib borishdan oldin ularni kiyintirish va tartibga solishni buyurdi.Bir soatdan keyin bir guruh askarlar keldi va Per va yana o'n uch kishini Qizlar dalasiga olib borishdi. Kun musaffo, yomg'irdan keyin quyoshli, havo g'ayrioddiy toza edi.Pyerni Zubovskiy Val qorovulxonasidan olib chiqqan kundagidek tutun qo'nmadi, tiniq havoda ustunlar bo'lib tutun ko'tarildi.Yong'inlar. Yong'inlar hech qaerda ko'rinmasdi, lekin har tomondan tutun ustunlari ko'tarildi va butun Moskva, Per ko'rgan hamma narsa bitta yong'in edi, har tomondan pechka va bacalar bilan bo'sh joylarni va vaqti-vaqti bilan yonib ketgan devorlarni ko'rish mumkin edi. tosh uylar.Per olovlarga diqqat bilan qaradi va shaharning tanish joylarini tanimadi.Ba'zi joylarda omon qolgan cherkovlar ko'rinardi.Buzilmagan Kreml o'zining minoralari va Buyuk Ivan bilan uzoqdan oppoq ko'rinardi. Yaqin atrofda Novodevichy monastirining gumbazi quvnoq yarqirab turardi va Xushxabar qo'ng'irog'i u erdan ayniqsa baland ovozda eshitildi. Bu e'lon Perga yakshanba va Bibi Maryamning tug'ilgan kuni ekanligini eslatdi. Ammo bu bayramni nishonlaydigan hech kim yo'qdek tuyuldi: hamma joyda olovdan vayronagarchilik bor edi va rus xalqidan faqat vaqti-vaqti bilan frantsuzlarning ko'zidan yashiringan, qo'rqib ketgan odamlar bor edi.
    Shubhasiz, rus uyasi vayron qilingan va vayron qilingan; ammo bu rus hayot tartibini yo'q qilish ortida Per behush holda bu vayron bo'lgan uyasi ustida o'ziga xos, butunlay boshqacha, ammo qat'iy frantsuz tartibi o'rnatilganini his qildi. U buni boshqa jinoyatchilar bilan birga kuzatib borayotgan, muntazam saf tortgan, quvnoq va xushchaqchaq yurgan askarlarning ko'zidan sezdi; Buni u o‘ziga qarab ketayotgan qo‘shaloq aravada, askar haydab ketayotgan qaysidir muhim frantsuz amaldorining ko‘zidan sezdi. U buni maydonning chap tomonidan kelayotgan polk musiqasining quvnoq sadolaridan his qildi va ayniqsa, bugun ertalab tashrif buyurgan frantsuz ofitserining mahbuslarni chaqirib o'qigan ro'yxatidan buni his qildi va tushundi. Perni ba'zi askarlar olib ketishdi, o'nlab odamlar bilan u yoki bu joyga olib ketishdi; go'yo ular uni unutishlari, boshqalar bilan aralashtirib yuborishlari mumkin edi. Lekin yo'q: uning so'roq paytida bergan javoblari uning ismi shaklida qaytib keldi: celui qui n "avoue pas son nom. Va Per qo'rqqan bu nom ostida, endi uni qayoqqadir, shubhasiz ishonch bilan olib borishdi. Ularning yuzlariga boshqa barcha mahbuslar va o'zi kerak bo'lganlar va ular kerak bo'lgan joyga olib ketilayotgani yozilgan.Pyer o'zini o'zi uchun noma'lum, lekin to'g'ri ishlayotgan mashinaning g'ildiraklariga ilingan arzimas bir parchadek his qildi.
    Per va boshqa jinoyatchilarni Qizlar dalasining o'ng tomoniga, monastirdan unchalik uzoq bo'lmagan katta bog'li katta oq uyga olib borishdi. Bu knyaz Shcherbatovning uyi bo'lib, u erda Per ilgari uy egasiga tez-tez tashrif buyurgan va hozirda, askarlar suhbatidan ma'lum bo'lishicha, marshal Ekmuhl gertsogi joylashgan edi.
    Ularni ayvonga, birin-ketin uyga olib kirishdi. Per oltinchi o'rinni egalladi. Perga tanish bo'lgan shisha galereya, vestibyul va old kamera orqali uni uzun va past kabinetga olib borishdi, uning eshigida ad'yutant turardi.
    Davut stol ustidagi xonaning oxirida, burnida ko'zoynak taqib o'tirdi. Per unga yaqinlashdi. Davut, ko'zlarini ko'tarmasdan, aftidan, oldida yotgan qog'ozga dosh berar edi. U ko'zlarini ko'tarmay, jimgina so'radi:
    - Nima bo'ladi? [Siz kimsiz?]
    Per jim qoldi, chunki u so'zlarni ayta olmadi. Per uchun Davut shunchaki frantsuz generali emas edi; Per Davut uchun u shafqatsizligi bilan mashhur odam edi. Qattiq o‘qituvchidek hozircha sabr qilib, javob kutishga rozi bo‘lgan Davutning sovuq chehrasiga qarab, Per kechikishning har bir soniyasi uning hayotiga zomin bo‘lishini his qildi; lekin nima deyishni bilmasdi. U birinchi so‘roq paytida aytganlarini aytishga jur’at eta olmadi; martaba va mavqeini oshkor qilish ham xavfli, ham uyatli edi. Per jim qoldi. Ammo Per biron bir qarorga kelmasidan oldin, Davut boshini ko'tardi, ko'zoynagini peshonasiga ko'tardi, ko'zlarini qisdi va Perga diqqat bilan qaradi.
    "Men bu odamni bilaman", dedi u o'lchovli, sovuq ovozda, aniqki, Perni qo'rqitish uchun. Ilgari Perning belidan tushgan sovuq uning boshini illat kabi mahkam ushladi.
    - Mon general, vous ne pouvez pas me connaitre, je ne vous ai jamais vu... [Siz meni tanimaysiz, general, men sizni hech qachon ko‘rmaganman.]
    "C"est un espion russe, [Bu rus josusi,"] Davut uning so'zini bo'lib, xonada bo'lgan va Per buni sezmagan boshqa bir generalga murojaat qildi. Davut yuz o'girdi. Ovozi kutilmagan shovqin bilan Per. birdan tez gapirdi.
    - Yo'q, monsenyor, - dedi u to'satdan Davutning gersog bo'lganini eslab. - Yo'q, monsenyör, vous n"avez pas pu me connaitre. Je suis un officier militianaire et je n"ai pas quitte Moskva. [Yo‘q, oliy hazratlari... Yo‘q, oliy hazratlari, siz meni tanimaysiz. Men politsiyachiman va Moskvani tark etmadim.]
    - Votre nom? [Ismingiz?] - takrorladi Davut.
    - Besouhof. [Bezuxov.]
    – Qu"est ce qui me prouvera que vous ne mentez pas? [Yolg‘on gapirmasligingizni menga kim isbotlaydi?]
    - Monsenyor! [Janob hazratlari!] - Per xafa emas, balki iltijoli ovozda qichqirdi.
    Davut ko'zlarini ko'tarib, Perga diqqat bilan qaradi. Ular bir necha soniya bir-biriga qarashdi va bu qarash Perni qutqardi. Shu nuqtai nazardan, urush va sinovning barcha shartlaridan tashqari, bu ikki kishi o'rtasida insoniy munosabatlar o'rnatilgan. Ularning ikkalasi ham o‘sha bir daqiqada behisob narsalarni boshdan kechirdilar va ikkalasi ham insoniyat farzandi ekanliklarini, aka-uka ekanliklarini angladilar.
    Bir qarashda, insoniy ishlar va hayot raqamlar deb atalgan ro'yxatidan boshini ko'targan Davut uchun Per faqat bir holat edi; Dovut bu yomon ishini vijdoni bilan inobatga olmasa, uni otib tashlagan bo'lardi; lekin endi u allaqachon uning ichida bir odamni ko'rdi. U bir zum o‘ylanib qoldi.
    – Fikr bildiring prouverez vous la verite de ce que vous me dites? [Menga so'zlaringizning haqiqatini qanday isbotlaysiz?] - dedi Davut sovuqqonlik bilan.
    Per Rambalni esladi va o'z polkini, familiyasini va uy joylashgan ko'chani nomladi.
    "Vous n"etes pas ce que vous dites, [Siz aytganingizdek emassiz], - dedi Davut yana.
    Per titroq va tiniq ovozda o'z guvohligining haqiqatini isbotlay boshladi.
    Ammo bu vaqtda ad'yutant ichkariga kirib, Davutga nimadir haqida xabar berdi.
    Davut to'satdan ad'yutant tomonidan etkazilgan xabarni eshitib, tugmachani bosa boshladi. U Perni butunlay unutganga o'xshaydi.
    Ad'yutant unga mahbusni eslatganda, u qovog'ini chimirib, Per tomon bosh irg'adi va olib ketishlarini aytdi. Ammo Per uni qaerga olib borishlarini bilmas edi: stendga yoki o'rtoqlari Qiz dalasida yurganida ko'rsatgan qatl joyiga qaytib.
    U boshini burib qarasa, ad’yutant yana nimadir so‘rayapti.
    - Voy, shubhasiz! [Ha, albatta!] - dedi Davut, lekin Per "ha" nima ekanligini bilmas edi.
    Per qanday, qancha vaqt va qayerda yurganini eslay olmadi. U butunlay bema'nilik va xiralik holatida, atrofida hech narsani ko'rmay, hamma to'xtaguncha boshqalar bilan birga oyoqlarini qimirlatdi va u to'xtadi. Bu vaqt davomida Perning boshida bitta fikr bor edi. Oxir-oqibat uni kim, kim o'limga hukm qildi, degan fikr edi. Bular uni komissiyada so'roq qilgan odamlar emas edi: ulardan hech biri buni xohlamadi va aniqki, qila olmadi. Unga bunchalik insoniy qaragan Davut emas edi. Yana bir daqiqa va Davut noto'g'ri ish qilishayotganini tushungan bo'lardi, ammo bu lahzani ichkariga kirgan ad'yutant to'xtatdi. Va bu ad'yutant, shubhasiz, hech qanday yomon narsani xohlamadi, lekin u kirmagan bo'lishi mumkin. Oxir-oqibat kim qatl etilgan, o'ldirilgan, joniga qasd qilgan - Per butun xotiralari, intilishlari, umidlari, fikrlari bilan? Buni kim qildi? Va Per bu hech kim emasligini his qildi.

    19.04.2005 Natalya Dubova

    Ochiq manbalar hamjamiyati bir nechta asosiy loyihalarga ega, jumladan, Linux OS bilan bir qatorda Eclipse ishlab chiqish platformasini yaratish. Bir necha yil oldin IBM korporatsiyasidan chiqarilgan, bugungi kunda ilovalarni ishlab chiqish vositalarini birlashtirish uchun ochiq platforma butun dunyo bo'ylab erkin tarqatiladi. ochiq manba va foydalanuvchilar jamoasi tomonidan ishlab chiqilgan.

    Dasturlash san'atmi yoki hunarmandchilikmi degan savolni muhokama qilmasdan turib, tan olamiz: ikkala holatda ham dasturchi dasturlar yaratish vositalarisiz ishlamaydi. Dasturlash jarayonining evolyutsiyasi bilan bir qatorda (mashina buyruqlariga nisbatan “jodugarlik”dan yuqori darajadagi tillardan foydalanishgacha) dasturchilarning mashaqqatli mehnatini avtomatlashtirish imkoniyatlari ham yaxshilandi. Dastlabki ishlab chiqish muhitlari interfeysdan foydalangan holda ketma-ket ishlaydigan kompilyatorlar, bog'lovchilar, yuklovchilar va tuzatuvchilar bilan cheklangan edi. buyruq qatori. 80-yillarda, bilan birga shaxsiy kompyuterlar Yangi toifadagi dasturiy mahsulotlar bozori paydo bo'ldi - algoritmik (Paskal va boshqalar), keyin esa ob'ektga yo'naltirilgan (Smalltalk, C++) dasturlash tillari uchun integratsiyalashgan ishlab chiqish muhitlari (IDE). Haqiqiy gullab-yashnamoqda bu hudud Java tilini ishlab chiquvchilarning faol moslashuvi tufayli erishildi; Bu tilda dasturlar yaratish uchun eng mashhur integratsiyalashgan muhitlar Borland JBuilder, Symantec Visual Cafe, Microsoft J++, IBM VisualAge va Oracle JDeveloper hisoblanadi.

    IDE ning asosiy maqsadi ishlab chiquvchilarning samaradorligini oshirishdir. Dastur matn muharrirlari, kompilyatorlar va tuzatuvchilarning funksiyalarini birlashtirgan birinchi ishlab chiqish muhitlari birinchi navbatda iste'molchilarni odatiy operatsiyalardan ozod qildi. Vaqt o‘tishi bilan IDE funksiyalari to‘plami boyib ketdi. U bosqichma-bosqich kompilyatorlarni, dasturlarni yanada mantiqiy taqdim etish uchun brauzerlarni, avtomatik kod yaratish vositalarini va vizual muharrirlar grafik foydalanuvchi interfeyslarini yaratish uchun. Zamon tendentsiyalaridan so'ng, rivojlanish muhitlari dasturchilarning mahsuldorligini oshirish vositalaridan jamoaviy ishning barcha bosqichlarini qo'llab-quvvatlash vositalariga aylandi. dasturiy ta'minot loyihasi. Eng so'nggi tendentsiya IDE-ni ALMga (ilova hayotiy siklini boshqarish), integratsiyalangan ilovalarning hayot aylanishini boshqarish tizimiga - talablarni aniqlash va modellashtirishdan konfiguratsiya va dasturiy ta'minot versiyasini boshqarish, tayyor echimni joylashtirish va texnik xizmat ko'rsatishgacha aylantirishdir.

    IDE evolyutsiyasining har bir yangi bosqichi rivojlanish muhitini yanada murakkablashtirdi. Biroq, bunday mahsulotlarning foydalanuvchilari hali ham IDE-ga integratsiyalanmagan vositalarga murojaat qilishga majbur bo'lishdi, chunki dastur yaratish faqat bitta dasturlash tilida dasturlarni yozish va tuzatish bilan cheklanmagan. Masalan, HTML sahifalari, relyatsion ma'lumotlar bazasi sxemalari yoki boshqa tillardagi kod qismlari (masalan, Cobol yoki PL/1) dastur tizimida foydalanish zarurati ishlab chiquvchilarni dastlab dasturga kiritilmagan tegishli vositalardan foydalanishga majbur qiladi. IDE.

    Shuning uchun ko'plab tijorat rivojlanish muhiti sotuvchilari ularni iloji boricha ochiq qilish va tashqi vositalarni birlashtirish uchun maxsus mexanizmlarni taqdim etishga intiladi. Lekin hech bir muhit barcha mumkin bo'lgan foydalanuvchi talablarini qondira olmaydi. Buning uchun u dasturlash tiliga mutlaqo neytral bo'lishi va maksimal funktsiyalar to'plamini qo'llab-quvvatlashi kerak. Eclipse bunday muhit emas, lekin u ko'p funktsiyali va ko'p tilli rivojlanish muhitlarini yaratishingiz mumkin bo'lgan baza, platformadir.

    Platforma

    Eclipse loyihasining tashabbuskorlari tushuntirganidek, uning g'oyasi maksimal darajada ta'minlovchi ochiq platforma bo'lgan "Apache ishlab chiqish vositalarini" yaratish edi. asosiy qobiliyatlar ishlab chiqish muhitlari uchun va turli xil vositalarni integratsiyalash mexanizmlarini taqdim etish. Ushbu platformaning birinchi versiyasi IBM tomonidan ishlab chiqilgan va 2001 yil oxirida ochiq manba sifatida chiqarilgan. Tez orada WebSphere Studio Application Developer 4.0 tomonidan ishlab chiqilgan Eclipse-ga asoslangan tijorat ilovalari paydo bo'la boshladi. Endi Eclipse atrofida asbob sotuvchilari va foydalanuvchilari, tadqiqot tashkilotlari va individual ishlab chiquvchilarni birlashtirgan ochiq manbali rivojlanish ekotizimlari mavjud.

    Eclipse Foundation rasmiy hujjatlarida ( www.eclipse.org Eclipse platformasi sotuvchi uchun neytral, ochiq rivojlanish platformasi sifatida ta'riflangan bo'lib, u asos va namunaviy imkoniyatlarni hamda kengaytiriladigan vositalarni taqdim etadi. Eclipse platformasidagi asboblar to'plami standart bo'lib, u platformaning asosiy imkoniyatlarining qo'llanilishini tekshiradi, ulardan foydalanishning odatiy holatlarini ko'rsatadi va Eclipse platformasining o'zini ishlab chiqish va texnik xizmat ko'rsatishni qo'llab-quvvatlaydi. Asboblar to'plami kengaytirilishi mumkin, chunki uning funksionalligiga hujjatlashtirilgan dasturiy interfeyslar orqali kirish mumkin. Eclipse platformasini yaratuvchilarga rahbarlik qilgan va unga muvofiq rivojlanishda davom etayotgan asosiy tamoyillar quyidagilardan iborat:

    • ilovalarni ishlab chiqish vositalarini qurishni qo'llab-quvvatlash;
    • mustaqil dasturiy ta'minotni ishlab chiquvchilarni o'z ichiga olgan cheksiz miqdordagi vositalarni ishlab chiqaruvchilarni qo'llab-quvvatlash;
    • HTML, Java, C, JavaServer Pages, EJB, XML, GIF va boshqalarni o'z ichiga olgan ixtiyoriy kontent turlari bilan ishlash vositalarini qo'llab-quvvatlash;
    • bilan ishlash uchun asboblarni "uzluksiz" integratsiyalashuvini ta'minlash har xil turlari mazmuni turli ishlab chiqaruvchilar;
    • oddiy va grafik foydalanuvchi interfeyslari bilan ilovalarni ishlab chiqish muhitini qo'llab-quvvatlash;
    • turli asoslangan rivojlantirish muhitini ishga tushirish qobiliyatini ta'minlash operatsion tizimlar(hozirgi kunda Eclipse-ga asoslangan vositalar Linux, HP-UX, IBM AIX, Sun Solaris, QNX, Mac OS X, Windows uchun joriy qilingan);
    • platformani ishlab chiqish manfaatlari uchun ishlab chiqish vositalarini yaratishda Java tilining mashhurligini hisobga olish.

    Eclipse platformasi Java-da yaratilgan dasturlash muhitidir umumiy maqsad arxitekturasi turli xil muammolarni hal qilish uchun turli xil vositalar va dasturlash tillarini birlashtirishni ta'minlaydi. Bunday integratsiya mexanizmlari Eclipse platformasidan ilg'or rivojlanish muhitlarini yaratish uchun foydalanish imkonini beradi, bu sizni murakkab, maxsus funktsiyalarni yaratish foydasiga asosiy vositalarni yozishdan ozod qiladi. Bu nafaqat ko'p funktsiyali va ko'p tilli rivojlanish muhitlarini qo'llab-quvvatlash muammosini hal qiladi, balki ularning evolyutsiyasi jarayonida bir turdagi muhitdan ikkinchisiga o'tishni soddalashtirish uchun asos yaratadi. Ishlab chiquvchilar hamjamiyati tomonidan ishlab chiqilgan Eclipse platformasi eng so'nggi yutuqlarni to'playdi, ularni muayyan mahsulotlarni ishlab chiquvchilarga taqdim etadi va ularning tizimlarini tubdan qayta loyihalash zaruratini yo'q qiladi.

    Eclipse rivojlanish muhiti

    Eclipse Platform arxitekturasining asosi plaginlardan foydalanish tamoyilidir. Platforma bunday modullarni aniqlash, integratsiya qilish va bajarish mexanizmlarini amalga oshiradi (rasmga qarang). Eclipse Platformasi imkoniyatlaridan foydalanmoqchi bo'lgan dasturchi o'zining asboblar to'plamini Java-da alohida plagin moduli sifatida yozadi. Ushbu modul ish maydoni komponenti yordamida amalga oshiriladigan ish maydonidagi fayllar bilan ishlaydi. Va uning foydalanuvchi interfeysi interfeysning umumiy tuzilishini va uni kengaytirish imkoniyatini belgilaydigan ishchi stol komponentiga asoslangan.

    Odatda, bitta plagin Eclipse Platformasiga asoslangan IDE ning eng oddiy funksiyalarini amalga oshiradi, murakkabroq vositalar esa bir nechta modullardan iborat. Shu bilan birga, Eclipse Platformasining deyarli barcha o'rnatilgan funksiyalari ham shunday modullar yordamida amalga oshiriladi - kichik Platform Runtime yadrosi bundan mustasno. Har bir plagin o'zining manifest fayliga ega bo'lib, u ulanishlarni tavsiflaydi ushbu moduldan boshqalar bilan. Eclipse Platformasiga asoslangan ishlab chiqish muhitini ishga tushirganingizda, Platform Runtime komponenti mavjud plaginlar to'plamini aniqlaydi, ularning manifest fayllarini o'qiydi va plagin registrini yaratadi. Tizim ishga tushirilgandan so'ng qo'shimcha modullar endi qo'shib bo'lmaydi. Eclipse loyihasi plaginlarni yaratish uchun maxsus muhitni - Plug-In Development Environment (PDE)ni amalga oshirdi.

    Maxsus modullar yordamida Eclipse platformasining ish maydoni va foydalanuvchi interfeysi (ish stoli) komponentlari amalga oshiriladi. Ish maydoni plaginlar tomonidan amalga oshirilgan asboblar foydalanuvchilari tomonidan yaratilgan fayllarni o'z ichiga oladi. Ish stoli komponenti Eclipse Platformasi asosida ishlab chiqish muhitining foydalanuvchi interfeysi imkoniyatlarini kengaytirishga imkon beruvchi umumiy tuzilma va vositalarni taqdim etadi va foydalanuvchiga ma'lumot berish vositalarini amalga oshirish uchun ikkita komponentni o'z ichiga oladi.

    • Standard Widget Toolkit (SWT) - interfeys elementlari to'plami va ma'lum bir operatsion platformaning oyna tizimi bilan integratsiyalashuv mexanizmlariga ega bo'lgan grafik kutubxona, lekin OTdan mustaqil bo'lgan API-larni amalga oshiradi. Bu iste'molchiga tanish bo'lgan oyna muhitiga mos keladigan, lekin operatsion tizimlarning eng keng doirasi uchun mo'ljallangan yagona printsiplar bo'yicha ishlab chiqish muhitining foydalanuvchi interfeyslarini yaratishga imkon beradi;
    • JFace - bu SWT vositalaridan foydalangan holda dasturlash interfeyslari bilan bog'liq bir qator umumiy vazifalarni amalga oshirish uchun asboblar to'plami.

    SWT va JFace komponentlari tomonidan taqdim etilgan API-lar asosida iste'molchilarning ishlab chiqish vositalari bilan o'zaro aloqasi strukturasini belgilovchi shaxsiylashtirilgan foydalanuvchi interfeysi yaratilgan. Eclipse Platform interfeysi muharrirlar, ko'rinishlar va istiqbollar yordamida tashkil etilgan.

    Muharrirlarning maqsadi ish maydoni obyektlarini ochish, tahrirlash va saqlashdir. Platformada matn resurslari uchun o'rnatilgan muharrir mavjud va boshqa funktsiyalar plagin sifatida amalga oshirilishi kerak. Ko'rishlar foydalanuvchi ishlayotgan ob'ekt haqida ma'lumot beradi bu daqiqa. Va nihoyat, istiqbolli vosita ekranda ko'rsatiladigan kerakli tahrirlovchilar va ko'rinishlarni tanlash va tartibga solish imkonini beradi.

    Tashkilot

    Ochiq kodli loyihalarni amalga oshirishning bir qancha afzalliklari bor. Shunday qilib, bunday platformaning vazifalaridan biri ishlab chiquvchilarni turli xil rivojlanish muhitlari uchun o'zgarmas umumiy bazadan vositalar bilan ta'minlashdir. Nima uchun har bir ishlab chiqaruvchi bir marta yozilishi mumkin bo'lgan narsani qayta yozishi kerak? Ammo bunday platformada o'z ishlanmalarini qurish uchun ishlab chiqaruvchi uni yaratganga to'liq ishonishi kerak. Va bu faqat unga kiritilgan hamma narsani sinab ko'rish imkoniyatiga ega bo'lsa, ya'ni ochiq kodli platformani olish mumkin bo'ladi.

    Mahsulotni Ochiq manba tamoyillariga muvofiq ishlab chiqish kod sifatini yaxshilaydi, chunki u ko'plab manfaatdor ishlab chiquvchilar tomonidan silliqlangan. Nosozliklarni tuzatish osonroq va yaxshiroq bo'ladi - dasturning dastlabki kodiga kirish va yana taqsimlangan jamoani ishga jalb qilish tufayli. Hamkorlikdagi ish bizga murakkab texnologiyalarni yaratish xavfini bo'lishish imkonini beradi. Va platformaning jamoaviy ishlab chiqish organi muayyan rivojlanish muhitini etkazib beruvchilar bilan yuzaga kelishi mumkin bo'lgan o'zgarishlardan qat'i nazar, uni qo'llab-quvvatlashni ta'minlaydi. Nihoyat, qo‘shimcha funksiyalarni amalga oshirish uchun moslashuvchan plagin mexanizmiga ega ochiq kodli ishlab chiqish platformasidan foydalanish uni takomillashtirish uchun cheksiz imkoniyatlarni ochib beradi.

    Eclipse platformasi arxitekturasi

    Biroq, ochiq kodli ishlab chiqish modelining afzalliklarini uni "yovvoyida" chiqarish orqali tushunib oling. texnik platforma, u ishlamaydi. Biz jarayonni tashkil qilishimiz kerak. 2001 yilda Eclipse-ning birinchi versiyasi chiqarilishi bilan IBM tomonidan tashkil etilgan konsorsium va bir qator yetakchi bozor o'yinchilari bu mas'uliyatni o'z zimmalariga oldilar va 2004 yil fevral oyida Eclipse direktorlar kengashi Eclipse fondini boshqa tashkilotga aylantirishga qaror qildi. foyda, mustaqil korporatsiya.

    Eclipse Foundation, 60 dan ortiq kompaniyalardan iborat konsortsium, Eclipse platformasi va boshqa ochiq manba loyihalarini takomillashtirish bo'yicha sa'y-harakatlarni muvofiqlashtiradi.

    Eclipse loyihasi to'liq ochiq va unda biron bir kompaniyaning xodimi bo'lishi shart bo'lmagan har qanday manfaatdor dasturchi ishtirok etishi mumkin. Asosan, har bir kishi nafaqat rivojlanish tafsilotlari bilan qiziqibgina qolmay, balki xatolarni aniqlashga hissa qo'shishi, balki platformaning keyingi versiyasining kodini va umumiy dizaynini yozishda ham ishtirok etishi mumkin. Biroq, Eclipse professionallikni birinchi o'ringa qo'yish tamoyiliga amal qiladi. Tasdiqlangan professional obro'ga ega bo'lgan ishlab chiquvchi qo'shimcha mas'uliyat va Eclipse loyihalarida o'z mahoratini faol amalga oshirish imkoniyatiga ishonishi mumkin. Ba'zi ishlab chiquvchilar "kommitentlar" deb ta'riflanadi, chunki ular manba kodi uchun mas'uldirlar va faqat ular ochiq kodli kod omborida yangi versiyalarni yaratish huquqiga ega. Odatda, bu ishlab chiquvchilar Eclipse loyihalarida qilgan ishlari uchun ularga pul to'laydigan kompaniyalar xodimlaridir.

    Rivojlanish jarayoni takroriy bo'lib, loyiha ustida ishlashda Eclipse hamjamiyatining a'zolarini maksimal darajada jalb qilishga qaratilgan. Keyingi nashrning chiqarilishidan oldin belgilangan muddatning bir necha bosqichlari (taxminan bir necha hafta) bo'lib, ularning har biri to'liq tsiklni, jumladan, rejalashtirish, ishlab chiqish, sinovdan o'tkazish va versiyaning oraliq chiqarilishini anglatadi. Keyingi tsiklning tugallanishi tizimning yangi imkoniyatlari tavsifining ochiq nashri bilan birga keladi, bu hamjamiyat a'zolarini muhokama qilish, foydalanish va takomillashtirish bo'yicha tavsiyalar berishga undaydi. Natijada, rivojlanishning keyingi bosqichlarida jamoaning vaqtinchalik ozodlikka munosabatini hisobga olish mumkin bo'ladi. Bu Eclipse platformasini doimiy ravishda takomillashtirish va unga asoslangan boshqa tashabbuslarni ishlab chiqish uchun ochiq jarayon.

    Eclipse Technology loyihasining vazifasi Eclipse platformasi va boshqa ochiq manbali ishlanmalar istiqbollarini aniqlash uchun ishlab chiquvchilar, tadqiqotchilar, ilmiy va ta’lim tashkilotlari a’zolarining sa’y-harakatlarini muvofiqlashtirishdan iborat. Ushbu sohadagi eng ko'zga ko'ringan tadqiqot kichik loyihalari qatoriga aspektga yo'naltirilgan dasturiy ta'minotni ishlab chiqish (AspectJ va AJDT), Eclipse Runtime (Equinox) ga muqobil yadro yaratish, hamkorlikda ishlab chiqish platformasini yaratish (Koi), dasturiy ta'minot kiradi. konfiguratsiyani boshqarish (Stellation), XML Schema Definition va modelga asoslangan ishlab chiqish uchun asboblar (Generative Model Transformer).

    Jamiyat

    Eclipse loyihalari tomonidan yaratilgan barcha materiallardan foydalanish Ochiq manba tashabbusi tomonidan tasdiqlangan Umumiy jamoat litsenziyasiga (CPL) bo'ysunadi. CPLga ko'ra, har kim Eclipse-dan tijorat va notijorat maqsadlarda bepul foydalanishi va qayta tarqatishi mumkin. Eclipse.org saytida quyidagilar bepul mavjud:

    • to'g'ridan-to'g'ri foydalanish uchun Eclipse platformasining joriy versiyalari (ikkilik shaklda);
    • har kim istalgan manba faylining mazmuni va qayta ko'rib chiqish tarixini ko'rishi, shuningdek manba kodlaridan Eclipse platformasini qayta kompilyatsiya qilish va yaratish uchun skriptlarni olishi mumkin bo'lgan manba kodlari ombori;
    • Eclipse platformasini muhokama qilish uchun ochiq muhokama forumlari;
    • platformaning joriy versiyalaridagi nuqsonlar va muammolarni kuzatish uchun xato ma'lumotlar bazasi. Ushbu ma'lumotlar bazasidan foydalanib, foydalanuvchilar o'zlarining Eclipse-ga asoslangan ishlanmalarida ma'lum bo'lgan kamchiliklarni aniqlashlari va o'zlari aniqlagan yangi muammolarni nashr etishlari mumkin;
    • rivojlanish rejalari va Eclipse loyihalarida ishtirok etgan ishlab chiquvchilar uchun aloqalar.

    Bugun eclipse.org erkin foydalanish mumkin - Eclipse platformasi uchun manba kodidagi yuzdan ortiq plaginlar. Eclipse’ning ochiq kodli loyihalari jami 2 million satrdan ortiq kodlardan iborat.

    Bozor rivojlanishining kaliti dasturiy ta'minot taraqqiyot tijorat kompaniyalarining Eclipse loyihasida ishtirok etadi. Eclipse Platformasi bilan ular til va operatsion platforma uchun neytral bo'lgan va o'z kuchlari va investitsiyalarini o'zlarining yechimlarini raqobatbardosh qiladigan murakkab funksionallikni rivojlantirishga yo'naltirishlari mumkin bo'lgan asosiy rivojlanish muhiti xizmatlarini oldindan ishlab chiqdilar. Ushbu sohadagi eng ilg'or yechimlarni targ'ib qiluvchi ikkala to'liq xususiyatli ishlab chiqish muhitlarining Eclipse asosidagi tatbiqlari, shuningdek, muayyan vazifalar doirasiga qaratilgan maxsus vositalar mavjud.

    Shunday qilib, IBM Rational oilasining barcha mahsulotlari Eclipse platformasida ishlaydi. Borland o'zining barcha qo'llab-quvvatlash vositalarini Eclipse-ga ko'chirish niyatida hayot davrasi ilovalar. QNX o'rnatilgan ilovalarni ishlab chiqish vositalarining Eclipse versiyasi mavjud; Wind River ham xuddi shunday loyihani amalga oshirmoqda. O'z navbatida, Hewlett-Packard Internetdan foydalanish menejeri tizimi uchun Eclipse-ga asoslangan komponentlarni ishlab chiqish muhitini taklif qiladi, maqsadli auditoriya telekommunikatsiya operatorlari. Nokia Eclipse-ni ishlab chiqish platformasi sifatida qo'llab-quvvatlashini e'lon qildi mobil ilovalar. IBM Eclipse bazasida ishlab chiqilgan ilovalarda avtonom hisoblash texnologiyalarini qo'llab-quvvatlash uchun mo'ljallangan, Autonomic Computing Toolkit maxsus asboblar to'plamini joriy qildi. Dunyoning barcha yetakchi dasturiy ta'minot ishlab chiqaruvchilari orasida faqat Sun Microsystems va Microsoft Eclipse Foundation bilan hamkorlik qilmaydi.

    Eclipse-ga asoslangan tijorat muhitlarining sotuvchilari mustaqil ishlab chiquvchi kompaniyalarga o'zlarining IDE uchun plaginlarni sotishlariga imkon beradi va kompaniya turli xil Eclipse-ga asoslangan muhitlar uchun bir xil xususiy plaginlarni sotishi odatiy holdir. Bu nafaqat yangi bozorlarni rivojlantirish usuli, balki loyihaning ahamiyatini oshirishning yana bir usuli. Foydalanuvchilar tanlash erkinligini qadrlashadi: agar ular ochiq kodli platformaga asoslangan muhitning mavjud funksionalligidan qoniqmasalar, uni o‘z-o‘zini rivojlantirish yoki bir xil formatdagi tijorat yechimlarini xarid qilish orqali kengaytirishlari mumkin.

    Bu guruhlar Eclipse ishlanmalarini turli yo'llar bilan ishlatishadi, lekin ularning barchasi ularning rivojlanishiga hissa qo'shadi. IDE bo'lmagan ilovalarni yaratish uchun Eclipse platformasidan foydalanish tendentsiyasidir. Bu mumkin, chunki Eclipse Platform texnologiyasi yechimida ishlab chiqish muhitiga xos elementlar ko'p emas. Eclipse-ning uchinchi versiyasida rivojlanish muhiti platformasidan to'liq xususiyatli mijoz ish stantsiyalarini (Rich Client Platform) amalga oshirish platformasiga evolyutsiya mavjud. IBM o'zining istiqbolli Workplace hamkorlik muhitini Eclipse asosida amalga oshirishi bejiz emas.

    Adabiyot

    1. Mark R. Erikson, Angus Makintayr. , 2001 yil, noyabr.
    2. J. dea Rivieres, J. Wiegand. Tutilish. Rivojlanish vositalarini integratsiyalash uchun platforma. IBM Systems jurnali, 2004 yil, №. 2.

    Eclipse tashkilot tuzilishi

    Eclipse-ni ishlab chiqishni muvofiqlashtirish va turli tashkilotlar va individual ishlab chiquvchilarning ochiq kodli loyihalarida ishtirok etish Eclipse Foundation notijorat mustaqil konsortsiumi tomonidan amalga oshiriladi.

    Eclipse Foundation direktorlar kengashi to'rtta asosiy toifa a'zolaridan iborat:

    • strategik ishlab chiquvchilar (Strategic Developers) - Actuate, Borland, IBM, Computer Associates, Intel, QNX, Wind River, Sybase, Scapa Technologies, BEA Systems kompaniyalari;
    • strategik iste'molchilar (Strategic Consumers) - HP, Montavista Software, SAP, Serena Software;
    • kiritilgan etkazib beruvchilar (Qo'shimcha provayderlar);
    • Ochiq kodli loyiha yetakchilari.

    Barcha strategik ishlab chiquvchilar va strategik iste'molchilar direktorlar kengashida, qolgan ikki guruh esa o'z vakillarini unga topshiradilar. Konsorsiumning strategik a'zolari, shuningdek, rivojlanish jarayonlarini muvofiqlashtiruvchi loyihalarni boshqarish qo'mitalari va Kengashlarda ishtirok etish uchun ma'lum huquqlarga ega.

    Konsorsium turli xil miqdordagi kichik loyihalarni o'z ichiga olgan bir nechta asosiy ochiq manba loyihalarini boshqaradi. Asosiy loyihani Loyiha boshqaruvi qo'mitasi (PMC) boshqaradi. Rivojlanishni umuman boshqarish uchun uchta asosiy kengash - Talablar Kengashi, Arxitektura Kengashi va Rejalashtirish Kengashi tuziladi.

    Talablar kengashi loyiha talablarini tahlil qiladi va tuzadi. Ular Eclipse Foundationning umumiy maqsadlari va loyihaning aniq maqsadlariga erishish, asosiy konsorsium aʼzolarining muammolarini hal qilish va Eclipse ekotizimini rivojlantirishga qaratilgan talablarni birlashtiradi. Tahlil asosida rivojlanish yo'nalishini belgilaydigan mavzular va ustuvorliklar ro'yxati shakllantiriladi. Arxitektura kengashi Eclipse platformasi arxitekturasini ishlab chiqish, uni aniq belgilash, uni ishlab chiqish guruhlariga etkazish va ularni beixtiyor noto'g'ri ko'rsatishdan himoya qilish uchun javobgardir. Rejalashtirish kengashi muvofiqlashtirilgan platformani chiqarish rejasini tuzadi.

    Loyihalar loyiha menejerlari, shu jumladan ishlab chiquvchilar va mas'ul ishlab chiquvchilar boshchiligidagi rivojlanish guruhlari tomonidan amalga oshiriladi. Birinchisi kod yozish, xatolarni aniqlash, dasturlarni sinovdan o'tkazish va hujjatlashtirish bilan shug'ullanadi, shuningdek, loyiha doirasidagi boshqa vazifalarni bajaradi. Mas'ul ishlab chiquvchilar manba kodlari omboriga qo'shish huquqiga ega va loyiha doirasidagi rivojlanish jarayoniga ta'sir qilishi kerak. Eclipse Foundation tomonidan strategik ishlab chiquvchilar sifatida belgilangan kompaniyalar rahbarlik qilishi kerak kamida bitta loyiha. Ular, shuningdek, qo'mitalarni boshqarishga da'vat etiladi.



    Eclipse - bu Java-ga asoslangan, ochiq manba, kengaytiriladigan rivojlanish platformasi. Aslini olganda, bu shunchaki ishlab chiqish muhiti va o'rnatilgan komponentlar (plaginlar) asosida ilovalarni yaratish uchun xizmatlar to'plamidir. Yaxshiyamki, Eclipse standart plaginlar to'plami bilan birga keladi, jumladan taniqli Java Development Tools (JDT).

    Eclipse-dan Java integratsiyalashgan ishlab chiqish muhiti (IDE) sifatida foydalanadigan ko'pchilik foydalanuvchilar undan mamnun bo'lishsa-da, bundan ham ko'proq narsa bor. Eclipse, shuningdek, plaginlarni ishlab chiqish muhitini (PDE) o'z ichiga oladi, bu birinchi navbatda Eclipse-ning o'zini kengaytirmoqchi bo'lganlar uchun qiziqish uyg'otadi, chunki u Eclipse muhitiga o'rnatilgan o'z vositalaringizni yaratishga imkon beradi. Eclipse butunlay plaginlardan yaratilganligi sababli, barcha asboblar to'plamini ishlab chiquvchilari Eclipse-ga o'zlarining kengaytmalarini taklif qilish va foydalanuvchilarga izchil va uzluksiz integratsiyalashgan rivojlanish muhitini (IDE) taqdim etish imkoniyatiga ega.

    Bu yaxlitlik va izchillik Java ishlab chiqish vositalariga xos emas. Eclipse Java-da yozilgan bo'lsa-da, uni boshqa tillar bilan ishlatish mumkin. Masalan, C/C++ va COBOL kabi dasturlash tillarini qo'llab-quvvatlaydigan plaginlar allaqachon mavjud (yoki ishlab chiqilmoqda). Eclipse ramkasi, shuningdek, kontentni boshqarish tizimlari kabi dasturiy ta'minotni ishlab chiqish bilan bog'liq bo'lmagan boshqa turdagi ilovalar uchun asos sifatida ishlatilishi mumkin.

    Eclipse-ga asoslangan ilovaning ajoyib namunasi IBM ning Rational Software Architect dasturi bo'lib, u IBM ning Java ishlab chiqish vositalari oilasining asosini tashkil qiladi.

    Eclipse ochiq manba hisoblanadi

    Ochiq kodli dasturiy ta'minot foydalanuvchilarga ma'lum huquqlarni kafolatlash uchun mo'ljallangan litsenziya ostida chiqariladi. Ulardan eng yaqqol ko‘rinib turgani, albatta, manba kodi foydalanuvchilarga taqdim etilishi kerak va ular dasturiy ta’minotni o‘zlari o‘zgartirish va tarqatish huquqiga ega. Foydalanuvchi huquqlarini himoya qilish "copyleft" deb nomlangan mexanizm orqali amalga oshiriladi: Dasturiy ta'minot litsenziyasi mualliflik huquqi bilan himoyalangan va agar foydalanuvchiga bunday huquqlar berilmasa, dasturiy ta'minotni tarqatishni taqiqlaydi. Kopileft litsenziyasi, shuningdek, foydalanuvchilar tomonidan tarqatiladigan barcha dasturiy ta'minot o'zgartirishlarsiz asl litsenziya bilan qoplanishini ham talab qiladi. Shunday qilib, mualliflik huquqining ma'nosi mohiyatan ostin-ustun bo'lib, mualliflik huquqidan foydalanuvchiga huquqlarni dasturiy ta'minot ishlab chiqaruvchisi uchun saqlab qolish uchun emas, balki ularni berish uchun ishlatadigan copyleft litsenziyasi ko'pincha hazil bilan "barcha huquqlar buzilgan" (barcha huquqlar o'zgartirilgan) deb aytiladi. ).

    Ochiq kodli dasturiy ta'minotga nisbatan qo'rquv, noaniqlik va shubhalarning aksariyati ba'zi copyleft litsenziyalarining virusli tabiatiga asoslanadi. G'oya shundan iboratki, agar siz o'zingiz ishlab chiqqan dasturning bir qismi sifatida ochiq kodli dasturiy ta'minotdan foydalansangiz, siz o'zingizning intellektual mulkingizni yo'qotasiz, chunki litsenziya dasturning shaxsiy qismlarini ifloslantiradi. Boshqacha qilib aytganda, litsenziya barcha ochiq kodli dasturiy ta'minotni, shu jumladan har qanday yangi yaratilgan dasturiy ta'minotni bir xil litsenziya ostida tarqatishni talab qilishi mumkin. Bu eng mashhur copyleft litsenziyasi, GNU General Public License (masalan, Linux tarqatilgan) uchun to'g'ri bo'lsa-da, tijorat va jamoat manfaatlarining boshqa muvozanatini ta'minlaydigan boshqa litsenziyalar mavjud.

    Ochiq dasturiy ta'minot tashabbusi - OSI (Ochiq dasturiy ta'minot tashabbusi) nodavlat notijorat tashkilot bo'lib, ochiq manba nima ekanligini aniq belgilaydi va uning mezonlariga javob beradigan litsenziyalarni tasdiqlaydi. Eclipse EPL - Eclipse Public License V1.0, OSI tomonidan tasdiqlangan litsenziya bo'yicha tarqatiladi, bu esa Eclipse-ni tijoratda qabul qilishni osonlashtirish va asl kod mualliflariga kreditni saqlab qolish uchun mo'ljallangan.

    Eclipse uchun plaginlarni yaratadigan yoki Eclipse-dan dasturiy ta'minotni ishlab chiqish uchun asos sifatida foydalanadiganlar EPL bo'yicha foydalanadigan yoki o'zgartiradigan har qanday Eclipse kodini nashr etishlari shart, ammo o'zlarining qo'shimcha dasturlarini xohlagancha litsenziyalashlari mumkin. Eclipse dasturiy ta'minoti bilan birlashtirilgan mahalliy kod ochiq manba sifatida litsenziyalanishi shart emas va manba kodining o'zi ham hamma uchun ochiq bo'lishi shart emas.

    Aksariyat dasturchilar Eclipse-dan plaginlarni ishlab chiqish yoki unga asoslangan yangi mahsulotlar yaratish uchun foydalanmasalar-da, Eclipse-ning ochiq manba tabiati nafaqat Eclipse-ni mutlaqo bepul (va tijoratga yo'naltirilganligiga qaramay) taqdim etishi bilan ahamiyatlidir. plaginlar pulga tushishi mumkin). Ochiq manba innovatsiyalarni targ'ib qiladi va ishlab chiquvchilarga (hatto tijoriy bo'lganlar ham) o'zlarining manba kodlarini jamiyatga hissa qo'shishlari uchun rag'bat yaratadi. Buning bir nechta sabablari bor, lekin, ehtimol, eng muhimi shundaki, ishlab chiquvchilar loyihaga qanchalik ko'p hissa qo'shsa, u hamma uchun shunchalik mazmunli bo'ladi. Loyiha foydali bo'lganda, ko'proq ishlab chiquvchilar undan foydalanadilar va uning atrofida Apache va Linux atrofida shakllanganlarga o'xshash hamjamiyat yaratadilar.

    Eclipse nima?

    Eclipse - bu ochiq kodli ishlab chiquvchilar hamjamiyatidir, uning loyihalari butun umr davomida dasturiy ta'minotni yaratish, joylashtirish va boshqarish uchun kengaytiriladigan rivojlanish muhiti, asboblar va ish vaqti kutubxonalaridan iborat ochiq rivojlanish platformasini yaratishga qaratilgan. Eclipse Foundation notijorat tashkilot boʻlib, aʼzolar tomonidan qoʻllab-quvvatlanadigan tashkilot boʻlib, u Eclipse loyihalariga mezbonlik qiladi va ochiq manbalar hamjamiyatini hamda qoʻshimcha mahsulotlar va xizmatlar ekotizimini yaxshilashga yordam beradi.

    Eclipse loyihasi 2001 yil noyabr oyida IBM tomonidan yaratilgan va dasturiy ta'minot ishlab chiqaruvchilari konsorsiumi tomonidan qo'llab-quvvatlangan. Eclipse Jamg'armasi 2004 yil yanvar oyida Eclipse hamjamiyatining boshqaruvchisi bo'lib xizmat qiluvchi mustaqil, notijorat tashkilot sifatida tashkil etilgan. U Eclipse atrofida sotuvchi-neytral, ochiq va shaffof hamjamiyatning rivojlanishiga yordam berish uchun yaratilgan. Bugungi Eclipse hamjamiyati dasturiy ta'minot sanoatini ifodalovchi shaxslar va tashkilotlardan iborat.

    Eclipse Foundation Eclipse ning doimiy rivojlanishini nazorat qiladi va boshqaradi. Jamg'arma jamiyatga xizmat qiladi, ammo Eclipse loyihalarida ishlaydigan qo'mituvchilar deb ataladigan ochiq manba ishlab chiquvchilari uning xodimlarida emas. Odatda, Eclipse komitentlari ba'zi bir tashkilotning a'zolari yoki mustaqil dasturchilar bo'lib, ular ochiq kodli loyiha ustida ishlash uchun vaqt ajratadilar.

    Endi biz Eclipse ning nazariy, tarixiy va siyosiy jihatlarini ko'rib chiqdik, keling, mahsulotning o'ziga qaraylik.

    Eclipse ish maydoni

    Eclipse-ni birinchi marta ishga tushirganingizda, ish maydoni ichida xush kelibsiz sahifasini ko'rasiz (1-rasmga qarang). Eclipse foydalanuvchisi umumiy ko'rinish sahifasiga o'tish uchun bir nechta variantga ega, men buni qilishni tavsiya qilaman (2-rasmga qarang). Keyinchalik, siz yangi funktsiyalar haqida ma'lumot bilan tanishishingiz, ba'zi misollarni o'rganishingiz yoki o'quv kursidan o'tishingiz mumkin.

    Shakl 2. Eclipse umumiy ko'rinish sahifasi

    Eclipse ish maydoni navigatsiya yoki kontur ko'rinishlari kabi ko'rinishlar deb ataladigan bir nechta panellardan iborat. Bunday tasvirlar majmuasi istiqbol deb ataladi. Eng keng tarqalgan istiqbollardan biri bu Resurs istiqboli bo'lib, u loyihalarni boshqarish va loyiha fayllarini ko'rish va tahrirlash uchun asosiy ko'rinishlar to'plamidir.

    Ko'pchilik birinchi marta foydalanuvchilarga 2-rasmda ko'rsatilgan umumiy ko'rinish sahifasidan boshlashni va Eclipse haqida ko'proq ma'lumot olishni tavsiya qilaman. Ish stolining asoslari bo'limida Eclipse-ning turli komponentlari va ularning bir-biri bilan o'zaro ta'siri haqida juda ko'p foydali dastlabki ma'lumotlar mavjud. Buni o'qish uchun bir necha daqiqa vaqt ajrating va keyin keling, Eclipse-ning Java Development Tools (JDT) ga sho'ng'iymiz. Eng yaxshi yo'l biror narsani o'rganish - amalda sinab ko'ring.

    Eclipse bo'yicha ushbu qisqa sayohatni davom ettirib, biz Java-da yangi loyiha yaratamiz. Tanlang Fayl > Yangi > Java loyihasi va loyiha nomi so'ralganda Salom ni kiriting, so'ngra bosing Tugatish.

    Keling, "Java" istiqbolini ko'rib chiqaylik (agar siz hali unda bo'lmasangiz). Ekranni qanday boshqarishni afzal ko'rganingizga qarab, tanlash orqali joriy oynadagi istiqbolni o'zgartirishingiz mumkin Oyna > Perspektivni ochish > Java (Oyna > Perspektivni ochish > Java), yoki tanlash orqali yangi oynani oching Oyna > Yangi oyna, va yangi nuqtai nazarni tanlang.

    Siz kutganingizdek, Java istiqboli Java rivojlanishini boshqarish uchun mo'ljallangan bir qator qarashlarga ega. Ulardan biri yuqori chap burchakda joylashgan bo'lib, turli xil Java paketlari, sinflari, JAR arxivlari va turli fayllarni o'z ichiga olgan ierarxiyadir. Ushbu ko'rinish Package Explorer deb ataladi. Iltimos, asosiy menyuga ikkita yangi element qo'shilganligini unutmang: Source va Refactor.

    Java rivojlantirish vositalari (JDT)

    Java ishlab chiqish muhitini sinab ko'rish uchun biz "Hello World" deb nomlangan ilovani yaratamiz va ishga tushiramiz. Java nuqtai nazaridan, loyihaning "Salom" (src) manba testi bo'lgan papkani o'ng tugmasini bosing va tanlang Yangi > Sinf, 3-rasmda ko'rsatilganidek. Ko'rsatilgan muloqot oynasida sinf nomi sifatida Salom ni kiriting. Quyida yozuv mavjud Qaysi usul stublarini yaratmoqchisiz? (Qaysi usul stublarini yaratmoqchisiz?) Eslatma umumiy statik bekor asosiy (String args) va bosing Tugatish.

    Rasm 3. Java istiqbolida yangi sinf yaratish

    Bu 4-rasmda ko'rsatilganidek, Hello klassi va muharrir maydonida bo'sh main() usuli bilan .java faylini yaratadi. Keling, metodga quyidagi kodni qo'shamiz (i uchun tavsif ataylab o'tkazib yuborilganiga e'tibor bering).

    Rasm 4. Java muharriridagi salom sinf

    Yozish jarayonida siz Eclipse muharririning baʼzi funksiyalarini, jumladan, sintaksisni tekshirish va kodni avtomatik toʻldirishni koʻrasiz. Bundan tashqari, ochilish qavsni kiritganingizda yoki qo'sh tirnoq, Eclipse ular uchun avtomatik ravishda yopish juftligini kiritadi va kursorni o'rtaga qo'yadi.

    Boshqa hollarda, kombinatsiya yordamida kodni avtomatik to'ldirishga olib kelishi mumkin Ctrl+1. Kodni to'ldirish funksiyasi klaviatura yoki sichqoncha yordamida tanlashingiz mumkin bo'lgan kontekstga sezgir variantlar ro'yxatini taqdim etadi. Variantlar ma'lum bir ob'ektga xos bo'lgan usullar ro'yxati yoki turli xil kodlar bo'lagi bo'lishi mumkin kalit so'zlar For yoki while kabi .

    Sintaksisni tekshirish qo'shimcha kompilyatsiyaga bog'liq. Kodni saqlaganingizda, u kompilyatsiya qilinadi fon va sintaksis xatolari tekshirildi. Odatiy bo'lib, sintaksis xatolari qizil rang bilan chiziladi va chap chetida oq X bilan qizil nuqta paydo bo'ladi.Boshqa xatolar muharrir chetida lampochka belgisi bilan belgilanadi; bu muharrir siz uchun tuzatishi mumkin bo'lgan muammolar (Tezkor tuzatish deb nomlangan xususiyat).

    Yuqoridagi kodda lampochka belgisi for iborasi yonida paydo bo'ladi, chunki i uchun tavsif o'tkazib yuborilgan. Lampochka ustiga ikki marta bosish tavsiya etilgan tuzatishlar ro'yxati paydo bo'lishiga olib keladi. Bizning holatda, bizdan metod uchun i sinf maydoni, mahalliy o'zgaruvchi i yoki i parametrini yaratish so'raladi; sichqoncha bilan ushbu variantlardan birini tanlash, hosil bo'ladigan kodni ko'rsatadi. 5-rasmda tavsiya etilgan variantlar ro'yxati va mahalliy o'zgaruvchida tavsiya etilgan kod ko'rsatilgan.

    5-rasm: Tezkor tuzatish imkoniyatlari

    Gapni ikki marta bosish dasturning kerakli joyiga kodni kiritadi.

    Agar dastur xatosiz kompilyatsiya qilinsa, uni tanlash orqali ishga tushirishingiz mumkin Yugurish Eclipse menyusida. (E'tibor bering, kompilyatsiya uchun alohida qadam yo'q, chunki kompilyatsiya kodni saqlashingiz bilan sodir bo'ladi. Agar kodingizda sintaksis xatosi bo'lmasa, u ishlashga tayyor.) Konfiguratsiyalarni ishga tushirish dialog oynasi kerakli standart sozlamalar bilan paydo bo'ladi; bosing Yugurish pastki o'ng. Pastki panelda paydo bo'ladi yangi panel yorliqlar bilan (Konsol), quyida ko'rsatilganidek, dastur natijasini ko'rsatadi.

    Rasm 6. Dastur natijasi

    Siz dasturni Java tuzatuvchisida ham ishga tushirishingiz mumkin. Avval siz tahrir oynasining chap tomonidagi System.out.println() chaqiruvi yonidagi kulrang katakchani ikki marta bosish orqali main() System.out.println() da to‘xtash nuqtasini o‘rnatishingiz kerak. Ko'k nuqta paydo bo'ladi. Menyuda Yugurish jamoani tanlang Nosozliklarni tuzatish. Yuqorida aytib o'tilganidek, "Konfiguratsiyalarni ishga tushirish" dialog oynasi paydo bo'ladi. Jamoa tanlang Yugurish. Perspektiv avtomatik ravishda quyida ko'rsatilganidek, bir qator qiziqarli yangi ko'rinishlarni o'z ichiga olgan Nosozliklarni tuzatish istiqboliga o'zgaradi.

    Shakl 7. Nosozliklarni tuzatish istiqboli

    Perspektivning yuqori chap burchagidagi Nosozliklarni tuzatish ko'rinishiga e'tibor bering. Ushbu ko'rinish qo'ng'iroqlar to'plamini ko'rsatadi va sarlavha satrida dastur bajarilishini boshqarish imkonini beruvchi asboblar panelini o'z ichiga oladi. Panelda dasturni davom ettirish, toʻxtatib turish yoki tugatish, keyingi bayonotga oʻtish, keyingi iboraga oʻtish yoki usuldan qaytish tugmalari mavjud. Yuqori o'ngdagi panelda bir qator yorliqli ko'rinishlar mavjud, jumladan, o'zgaruvchilar, uzilish nuqtalari, ifodalar va displey. Endi o'zgaruvchilar yorlig'i tanlangan, shuning uchun biz i o'zgaruvchisining joriy qiymatini ko'rishimiz mumkin.

    Ko'proq batafsil ma'lumot har qanday ko'rinishni kontekstli maslahatlar yordamida olish mumkin; Buning uchun ko'rish sarlavhasini bosing va bosing F1.

    Qo'shimcha plaginlar

    Ilovalarni tahrirlash, kompilyatsiya qilish va disk raskadrovka qilish uchun JDT tipidagi plaginlarga qo'shimcha ravishda butun ishlab chiqish jarayonini qo'llab-quvvatlovchi plaginlar mavjud: modellashtirish, qurish avtomatlashtirish, birlik sinovi, ishlash testi, versiyalar yaratish va konfiguratsiyani boshqarish.

    Eclipse manba kodini boshqarish uchun Concurrent Versions System (CVS) bilan ishlash uchun plaginni o'z ichiga oladi. Team plagini CVS serveriga ulanadi, bu esa ishlab chiqish guruhi a'zolariga boshqalar tomonidan kiritilgan o'zgarishlarga aralashmasdan manba kodini o'z ichiga olgan fayllar to'plami bilan ishlash imkonini beradi. Biz bu erda Eclipse manbalarini boshqarishni batafsil ko'rib chiqmaymiz, chunki buning uchun CVS serverini o'rnatish kerak bo'ladi, garchi o'z-o'zini rivojlantirish emas, balki dasturchilar jamoasini qo'llab-quvvatlash Eclipse-ning muhim va ajralmas qismidir.

    Eclipse Foundation tomonidan yuritiladigan va tarqatiladigan plaginlarni Eclipse veb-saytida topish mumkin. Ko'pchilik to'liq ro'yxat mavjud plaginlar plagin katalogi bo'lib xizmat qiluvchi Eclipse Plug-in Central sahifasida mavjud.

    Eclipse platformasi arxitekturasi

    Eclipse platformasida JDT va PDE kabi loyihalarni qo'llab-quvvatlaydigan kuchli plaginlar to'plami (8-rasmga qarang).

    Shakl 8. Eclipse platformasining soddalashtirilgan arxitekturasi

    To'q ko'k bloklar Eclipse'dagi Rich Client Platform (RCP) uchun markaziy komponentlarni ifodalaydi. RCP kontseptsiyasining o'zi ushbu maqola doirasidan tashqarida, lekin keling, RCP ni oddiygina Eclipse plaginlari to'plami deb hisoblaylik, ulardan odamlar Lotus Notes® 8 kabi ilovalarni ishlab chiqishda foydalanishi mumkin. Ochiq ko'k bloklar ixtiyoriydir (tavsiya etilgan bo'lsa ham) RCP-ga asoslangan ilovalarga qo'shiladigan komponentlar. Va kulrang bloklar butunlay ixtiyoriydir. Platforma bir nechta komponentlardan iborat, biz ulardan ba'zilarini ko'rib chiqamiz:

    Ish vaqti Runtime - bu OSGi spetsifikatsiyasi va kengaytmalar va kengaytma nuqtalari g'oyasiga asoslangan Eclipse plagin modelini belgilaydigan kod. Runtime shuningdek, syslogging va concurrency kabi qo'shimcha xizmatlarni taqdim etadi. JFace/SWT Standard Widget Toolkit (SWT) - bu Eclipse-ning foydalanuvchi interfeysi va funksionalligini ta'minlovchi vidjetlar to'plami. JFace oddiygina SWT ning yuqori to'plami bo'lib, u grafik ilovalarni ishlab chiqishni osonlashtirish uchun bir nechta Model-View-Controller (MVC) sinflarini taqdim etadi. Ish stoli Ish maydoni Eclipse-ga o'zining shaxsiyligini beradi. Aynan shu darajada qarashlar, istiqbollar va oynalarni tahrirlash kabi narsalar tushunchasi amalga oshiriladi. Yordam (foydalanuvchilarni qo'llab-quvvatlash) Ushbu Eclipse komponenti sizning foydalanuvchilaringizni qo'llab-quvvatlash imkonini beradi. Buni foydalanuvchilarga yordam hujjatlarini qidirish imkonini beruvchi yordam tizimi yoki oxirgi foydalanuvchilarga interaktiv vazifalar roʻyxati sifatida taqdim etilishi mumkin boʻlgan “cheat varaqlari” orqali amalga oshirish mumkin. Yangilash Yangilash komponenti Eclipse uchun ilovalarni bir versiyadan ikkinchisiga yangilash uchun vositani taqdim etadi. Jamoa Jamoa komponenti ishlab chiqish kompaniyalariga o'z versiyalarini boshqarish tizimlarini ulash imkonini beruvchi infratuzilmadir. Eclipse-ga o'rnatilgan CVS plagini provayderning namunasi hisoblanadi.

    Xulosa

    IBM tomonidan yozilgan dastlabki koddan Eclipse 100 dan ortiq ishtirokchi kompaniyalar bilan to'liq xususiyatli ochiq manba ekotizimiga aylandi. Portativ, kengaytiriladigan, ochiq manba infratuzilmasi - endi yo'q yangi fikr, lekin o'zining puxta o'ylangan, mustahkam va nafis dizayni tufayli Eclipse butunlay yangi dinamikani oladi.

    Eclipse ekotizimiga xush kelibsiz. Bizning maqsadimiz Eclipse platformasida tezlikni oshirishga yordam berish edi. Biz bunga kirish matni va oddiy mashq mashqi orqali erishdik. Ushbu maqolani o'qish orqali olgan bilimlaringizdan foydalaning va Eclipse ekotizimining faol a'zosi bo'ling.

    Eclipse loyihasi veb-saytning ochiq manbali loyihasi bo'lib, u Loyiha boshqaruvi qo'mitasi (PMC) va loyiha rahbarlari tomonidan nazorat qilinadi. Ish qarshi ishlaydigan kichik loyihalarda amalga oshiriladi. Eclipse loyihasi nizomi loyihani tashkil etishni, ishtirokchilarning roli va mas'uliyatini hamda loyihaning yuqori darajadagi ishlab chiqish jarayonini tavsiflaydi. JDT va PDE Eclipse platformasi uchun plagin vositalaridir. Ushbu uchta bo'lak birgalikda Eclipse SDK ni tashkil qiladi, bu Eclipse-ga asoslangan vositalar uchun to'liq ishlab chiqish muhiti va Eclipse-ning o'zini rivojlantirish uchun.

    • Eclipse loyihasini ishlab chiqish
      Reliz rejalari va Eclipse loyihasini ishlab chiqish jarayoni haqidagi boshqa ma'lumotlar.

    • Eclipse SDK, Eclipse RCP, SWT, Eclipse Java kompilyatori va boshqalarni yuklab oling. Joriy nashrni bu yerda topishingiz mumkin. Yoki ishlab chiqilayotgan eng yangi funksiyalarni sinab koʻrmoqchi boʻlsangiz yoki loyihaga hissa qoʻshishni boshlamoqchi boʻlsangiz, eng soʻnggi barqaror va integratsiya tuzilmalarini yuklab oling.

    • Eclipse Project relizlariga kiritilgan hujjatlarni ko'rib chiqing.

    Kichik loyihalar


    • Platforma Eclipse-dan komponent model sifatida, boy mijoz platformasi () va keng qamrovli integratsiya platformasi sifatida foydalanishni qo'llab-quvvatlash uchun zarur bo'lgan "integratsiya vositalari" ni tashkil etadigan ramkalar va umumiy xizmatlar to'plamini belgilaydi. Ushbu xizmatlar va ramkalar standart ish stoli foydalanuvchi interfeysi modeli va portativ mahalliy vidjet asboblar to'plamini, resurslarni boshqarish uchun loyiha modelini, qo'shimcha kompilyatorlar va quruvchilar uchun avtomatik manba deltasini boshqarishni, tildan mustaqil disk raskadrovka infratuzilmasini va taqsimlangan ko'p foydalanuvchili versiyali resurslarni boshqarish infratuzilmasini o'z ichiga oladi. .

    • JDT har qanday Java ilovasini, shu jumladan Eclipse plaginlarini ishlab chiqishni qo'llab-quvvatlaydigan kuchli foydalanuvchilar uchun Java IDE-ni amalga oshiradigan platforma uchun plaginlarni taqdim etadi. JDT Eclipse platformasiga Java loyihalari va Java istiqbollari tushunchasini, shuningdek, bir qator ko‘rinishlar, muharrirlar, sehrgarlar, quruvchilar va kodlarni birlashtirish va qayta ishlash vositalarini qo‘shadi. JDT Eclipse-ga o'zi uchun rivojlanish muhiti bo'lishiga imkon beradi. JDT plaginlarining o'zlari ham boshqa asbob ishlab chiqaruvchilar tomonidan kengaytirilishi mumkin.

    • PDE loyihasi Eclipse uchun plaginlarni yaratishni osonlashtiradigan bir qator ko'rinishlar va muharrirlarni taqdim etadi. PDE-dan foydalanib, siz plagin manifest faylini (plugin.xml) yaratishingiz, plaginning ishlash vaqtini va boshqa kerakli plaginlarni belgilashingiz, kengaytma nuqtalarini, jumladan, ularning maxsus belgilarini belgilashingiz, XML sxema fayllarini kengaytma nuqtasi belgilari bilan bog'lashingiz mumkin. shuning uchun kengaytmalarni tekshirish mumkin, boshqa plagin kengaytma nuqtalarida kengaytmalar yarating va hokazo. PDE plaginlarni integratsiyalashni oson va qiziqarli qiladi.

    • e4 loyihasi Eclipse platformasining keyingi avlodini ishlab chiqish uchun inkubator hisoblanadi. e4 loyihasining vazifasi keng tarqalgan, komponentlarga asoslangan ilovalar va vositalar uchun keyingi avlod platformasini yaratishdir.