Кіріспе

Ашық кодты серверлік бағдарламалық қамтамасыз ету аясы, қолданба сервері платформасы.

Zope – Python тілінде жазылған тегін және ашық кодты веб-қосымша серверлерінің отбасы және олармен байланысты онлайн қауымдастық. Zope – "Z Object Publishing Environment" деген сөзді білдіреді және бұл Веб үшін нысанды жариялау әдістемесін қолданған алғашқы жүйе болды. Zope-ты Python-ның табысқа жетуіне көмектескен, атақты қолданба деп санауға болады. Соңғы жылдары Zope қауымдастығы мақсаттары мен принциптері әртүрлі, бірақ философиясы, адамдары және бастапқы коды ортақ бірнеше қосымша веб-аяларды (framework) құрады. Zope 2 әлі күнге дейін осы аялардың ішінде ең көп тарағаны, себебі Plone мазмұнды басқару жүйесі Zope 2-де жұмыс істейді. BlueBream (бұрын Zope 3 деп аталған) аз таралған, бірақ Launchpad сияқты бірнеше ірі сайттардың негізі болып табылады. Grok бағдарламашыларға қолайлы "Zope 3 for cavemen" аясы ретінде басталып, 2009 жылы Pyramid Zope қауымдастығында Zope принциптеріне негізделген минималистік ая ретінде танымал болды.

Тарих

Zope корпорациясы 1995 жылы Вирджиния штатының Фредериксбург қаласында Digital Creations деген атпен, InfiNet (бірлескен газеттер желісі) компаниясымен бірлесіп құрылды. Компания Интернет үшін жасырын жарнамалар қозғалтқышын жасады. 1997 жылы компания тәуелсіз және жекеменшікке айналды. Компанияның бағдарламалық жасақтама инженерлеріне CTO Джим Фултон жетекшілік етеді. Python-ның жасаушылары PythonLabs 2000 жылы компанияның құрамына кірді (Python негізін қалаушы Гвидо ван Россум 2003 жылы Zope Corp-тен кетіп қалды). Қазіргі Zope 2 деп танылатын бағдарламалық жасақтама үш жеке бағдарламалық өнімнің – Bobo, Document Template және BoboPOS – Principia қолданба серверіне бірігуінен бастау алды. Ең ірі инвесторы Opticality Ventures-тің тілегі бойынша Principia 1998 жылы Zope деген атпен ақысыз бағдарламалық жасақтама ретінде қайта жарияланды. Bobo, демек Zope, алғашқы веб-объектілерді жариялау шешімі болды. "Zope" және "көк балық" – Ballerus ballerus түріндегі балықтың атаулары.

Zope қоры

Zope Foundation – Zope платформасының дамуын, оған қатысты бағдарламалық жасақтама компоненттерін әзірлейтін және қолдайтын қауымдастыққа көмек көрсету арқылы ілгерілететін ұйым. Бұл қауымдастыққа ашық бастапқы кодты бағдарламалық жасақтама, құжаттама және веб-инфрақұрылымға үлес қосушылармен қатар, бағдарламалық платформаны пайдаланатын бизнес және ұйымдар да кіреді. Ол zope.org веб-сайттарын және ашық кодты ынтымақтастық үшін инфрақұрылымды басқарады.

Зоп 2

Zope веб-сайты әдетте Zope Object Database-дегі нысандардан тұрады, файл жүйесіндегі файлдардан емес, көптеген веб-серверлердегідей. Бұл пайдаланушыларға инкапсуляция сияқты объектілік технологиялардың артықшылықтарын пайдалануға мүмкіндік береді. Zope URL-ді мұндай нысандардың құрамындағы иерархияны пайдалана отырып нысандарға байланыстырады; әдістер өз нысандарының құрамында да бар деп есептеледі. Деректер басқа деректер базаларында немесе файл жүйесінде сақталуы мүмкін, бірақ ZODB ең көп қолданылатын шешім болып табылады. Zope HTML үлгілерін жасау үшін екі механизм ұсынады: Document Template Markup Language (DTML) және Zope Page Templates (ZPT). DTML – бұл үлгілерде қарапайым скрипттерді іске асыруға мүмкіндік беретін тегтік тіл. DTML өзгермелілерді қосу, шарттар және циклдар үшін мүмкіндіктерді қамтиды. Дегенмен, DTML мәселелі болуы мүмкін: DTML тегтері HTML кодымен араласып, жарамсыз HTML құжаттарын құрайды, сонымен қатар логиканы үлгілерге қосу кезінде кодты оқуға қолайлы ету үшін сақтылық қажет. Көптеген жетекші Zope әзірлеушілері DTML-ді пайдаланудан бас тартуға кеңес береді. ZPT – бұл DTML-дің кемшіліктерін жойлайтын технология. ZPT үлгілері дұрыс құрылған XML құжаттары немесе HTML құжаттары болуы мүмкін, онда барлық арнайы белгілер TAL (Template Attribute Language) кеңестігіндегі атрибуттар ретінде көрсетіледі. ZPT XML элементтерін шартты түрде қосу және қайталау үшін өте шектеулі құралдар жиынтығын ұсынады. Осының салдарынан үлгілер көбінесе өте қарапайым болады, ал көп бөлігі Python кодында іске асырылады. ZPT үлгілерінің маңызды артықшылығы – оларды көптеген графикалық HTML редакторларында өңдеуге болады. ZPT сонымен қатар халықаралық деңгейде қолдануға тікелей қолдау көрсетеді. Zope 2 Plone контентті басқару жүйесінің, сондай-ақ ERP5 ашық кодты кәсіпорынның ресурстарын жоспарлау жүйесінің негізі болып табылады.

BlueBream

BlueBream – Zope 2 веб-қосымша серверін Zope әзірлеушілері қайта жазған нұсқасы. Ол бастапқыда "Zope 3" деген атпен құрылған, бірақ бірдей атпен екі үйлесімсіз фреймворктің болуы көптеген жаңылысуларға әкелді, сондықтан 2010 жылдың қаңтар айында Zope 3 "BlueBream" деп қайта аталды. BlueBream Zope Public License талаптарына сәйкес таратылады және осылайша ашық кодты бағдарламалық жасақтама болып табылады. Zope 2 веб-қосымшаларды әзірлеуде өте пайдалы екенін дәлелдеді, бірақ оны қолдану кезінде бірқатар кемшіліктер анықталды. Мысалы, Zope 2 өнімдерін жасау үшін көптеген стандартты кодты – "көмескі" кодты – көшіру қажет, ол міндетті түрде болуы керек, сондай-ақ кіріктірілген басқару интерфейсін өзгерту немесе алмастыру қиын. Zope 3 – бұл бағдарламалық жасақтаманы қайта жазу арқылы аталған кемшіліктерді жоюға бағытталған, сонымен бірге Zope-тың танымалдылығына әкелген артықшылықтарын сақтап қалу мақсатында жасалған. BlueBream Python тілінде жазылған әртүрлі көздерден алынған бағдарламалық компоненттерді оңай біріктіретін компоненттік архитектураға негізделген. Бастапқыда Zope 2-ні алмастыру мақсатымен жоспарланған болса да, Zope Component Architecture Zope 2.8 нұсқасынан бастап Zope 2-ге кері енгізілді. Plone сияқты көптеген Zope платформалары да осындай кезеңдік қайта жазудан өтуде. Жаңа бағдарламалық жасақтаманың алғашқы өндірістік нұсқасы, Zope X3 3.0.0, 2004 жылдың 6 қарашасында жарық көрді.

Тарих

Zope 3 жобасы 2001 жылдың ақпан айында Zope-тің жаңа нұсқасын, Zope 2-нің табысты мүмкіндіктерін сақтап, кейбір кемшіліктерін жою мақсатында толыққанды қайта жазу ретінде жасау үшін басталды. Мақсаты – Zope 2-ге қарағанда веб-қосымшаларды бағдарламалау үшін әзірлеушілерге ыңғайлырақ және икемдірек платформа құру. Жоба кодты кішкентай, біріктірілетін бөліктерге, қарастырылатын интерфейстермен құрылымдауға мүмкіндік беретін компоненттік архитектураны әзірлеуден басталды. Интерфейстер Python тіліне нақты түрде жарияланған интерфейстердің функционалдығын ұсыну үшін интерфейс пакетімен қолдалады. Бағдарламалық құралдың алғашқы өндірістік нұсқасы, Zope X3, 2004 жылдың 6 қарашасында жарық көрді. 2010 жылдың қаңтар айында Zope 3 BlueBream деп атауын өзгертті. Спринттер – әртүрлі елдерден келген бағдарламашылардың бір бөлмеде жиналып, бірнеше күн немесе бірнеше апта бойы бірлесіп жұмыс істейтін қарқынды даму сессиялары. Спринттер барысында жұптық бағдарламалау және тесттік даму сияқты шапшаң бағдарламалық жасақтаманы әзірлеуден алынған түрлі тәжірибелер қолданылады. Бағдарламалық құралды жасау мақсатынан бөлек, спринттер географиялық тұрғыдан шалғай орналасқан әзірлеушілердің жеке кездесуіне және жобаға жаңа адамдарды тартуға да көмектеседі. Олар сондай-ақ қатысушылардың бір-бірінен үйренуіне мүмкіндік береді. BlueBream тұрақты құрылғы ретінде қарастырылады және бүкіл әлемдегі өндірістік жобаларда, әсіресе Launchpad-та қолданылады.

Zope құрал жиынтығы

Zope 3 / BlueBream-нің дамуы нәтижесінде қазір BlueBream-нің құрамында қолданылатын және әзірленетін көптеген тәуелсіз Python пакеттері пайда болды. Олардың көпшілігі BlueBream-нен тыс қолданысқа жарамды болғанымен, көбі жарамсыз. Zope Toolkit (ZTK) жобасы, BlueBream-нен тыс қай пакеттерді пайдалануға болатынын нақтылау және пакеттерді қайта қолдану мүмкіндігін арттыру мақсатымен бастауға алынды. Осылайша Zope Toolkit – Zope фреймворктарының базасы болып табылады. Zope 2.12 – Zope Toolkit-ке негізделген веб-фреймворктің алғашқы нұсқасы, ал Grok және BlueBream 2010 жылы ZTK негізінде жаңа нұсқаларын шығаруға жоспарланған.

Грок

2006 жылы бірқатар Zope 3 әзірлеушілері Grok жобасын бастады, олар Zope 3 технологиясын пайдалануды жеңілдету және жаңа пайдаланушыларға ыңғайлы етуді мақсат етті. Содан бері Grok үнемі жаңа нұсқаларын шығарып келеді, ал оның негізгі технологиясы (Martian, grokcore.component) басқа Zope 3 және Zope 2 негізіндегі жобаларда да қолданыс тауып келеді.

Зоп 4

2017 жылдың соңында Zope 4-тің әзірленуі басталды. Zope 4 – Zope 2.13-тің жаңа нұсқасы болып табылады және Zope 2-мен артқа қарай үйлесімді емес көптеген өзгерістерді қамтиды.

Зоп 5

Zope 5 2020 жылы жарық көрді.

Zope-ті қолданатын танымал бағдарламалық қамтамасыз ету

SchoolTool — Zope-ті пайдаланатын ашық кодты оқушы туралы ақпарат жүйесі. Plone — Zope-ті пайдаланатын ашық кодты мазмұн басқару жүйесі.