развитие Tools Borland

Струва ми се, това се случва, поради следните причини:

Освен това, се счита за редица причини програмист професия - не без основание - престижната (макар и не в България), "пари" и все още на мода.

Примери за забавление (и не) на абсурдите, недоразумения и погрешни схващания могат да доведат до прекалено много. Ето някои от тях:

  • Microsoft предоставя на разработчиците с най-модерна технология;
  • Microsoft предоставя на разработчиците с технологията безполезно;
  • C ++ - изключително сложен и сложен език за програмиране;
  • Java - е най-добрият език за програмиране;
  • Java не е подходящ за създаването на ефективни и комплексни програми;
  • Java е по-пълно от C ++, прилагането на концепцията за обектно-ориентираното програмиране;
  • В Java не указатели;
  • COM и CORBA - почти едни и същи;
  • Delphi е по-добре от Visual Basic;
  • Visual Basic е по-добре от Делфи;
  • Последващата версия на всеки софтуерен продукт ще съдържа по-малко грешки, отколкото предишната.

Ако ние говорим за съвременните софтуерни системи, то вероятно има смисъл да кажа няколко думи за тях. Кои трябва да са вписани - с други думи, тя трябва да се осигури развитието на средствата, използвани?

  • скоростта на създаване и отстраняване на грешки;
  • простота и ефективност на подкрепата и развитието на вече създадените софтуерни системи;
  • ефективна работа в екип, не са физически лица, но и на групите на разработчиците;
  • програми се нуждаят от много, затова се нуждаят от много програмисти - оттам и необходимостта от създаване на приложения с високо качество, средната разработчик, квалификация "маса";
  • осигуряване на интеграция в рамките на възможностите на проекта, предоставена от различните технологии;
  • използвате на предишната работа;
  • В много случаи е необходимо да се гарантира, мащабируемостта на системите, генерирани, което не може да се реализира без съответния софтуер архитектура на системата;
  • осигуряване на взаимодействие с мрежата;
  • сигурността и неприкосновеността на личния живот;
  • поддръжка на системата за софтуер в хетерогенна среда и др.

Разбира се, това не означава, че във всеки случай всички по-горе са важни изисквания.

В тази статия, ние ще разгледаме само тези функции, които са от съществено значение за изграждането на клиент-сървър, включително и на много нива, системи.

Delphi в България е далеч от най-често срещаните и най-често използваните инструменти за развитие от Borland. Това се дължи, без съмнение, на факта, че Delphi е първият наистина мощен, гъвкав и многофункционален RAD-инструмент за Windows на пазара - и не само в нашата страна. България специфичност може да се счита за голям брой програмисти, използващи като основен език за програмиране Pascal (Object Pascal, Delphi език).

Огромният успех на Delphi се предопределя от наличието на много добър модел компонент за създаване на клиентски приложения (непряко доказателство за високото си качество е широко разпространен модел компонент JavaBeans, създадена от Sun във връзка с Borland Delphi компонент на базата на модела). Освен това, пакетът от началото бяха готови компоненти за достъп до най-популярните SQL сървъри и локалните бази данни. технология за достъп до данни, в крайна сметка наречен BDE (Borland Database Engine), по това време отговаря на всички изисквания за този вид библиотеки. Например, BDE поддържа многонишково режим с почти никакви усилия от страна на програмиста.

Изключително интересна технология стана MIDAS.

** цялата статия може да се намери в хартиения вариант на списанието

Какво се случва с Delphi в момента?

Предимството на Delphi - хармонично съчетание на модерен обектно-ориентиран език, голям модел компонент за създаване на клиентски приложения, разработени (макар и не най-доброто - тук Microsoft превъзходство е безспорна) Подкрепа COM +, включително MTS и ADO, мощни инструменти за създаване на уеб-базирани приложения ( включително сървър) и лесен за употреба среда за разработка. Delphi умело скрива от строителя много вътрешни функции на изпълнение (например, като оператор, а в някои случаи използването на метод IUnknown.QueryInterface повикване). В същото време, програмистът може да отиде до нивото на използване на API, както е необходимо. Средства за достъп до базите данни ви позволяват бързо създаване на ефективни приложения за работа с всички по-големи релационни бази данни.

  • използването на нестандартни (де факто) език за програмиране;
  • слаба подкрепа за CORBA технология (въпреки това, за избрания COM този недостатък може да изглежда маловажен).

Вторият недостатък е по-обидно, че това е необяснимо, най-малкото, от чисто техническа гледна точка. Пълна поддръжка на CORBA 2.3 (на нивото на клиентски приложения) и поради това взаимодействие с J2EE / EJB за Delphi и Kylix да доведе тези продукти на съвсем ново ниво на качество. CORBA ви позволява да използвате услугата, разпределени JDBC сделки не са Java-приложения.

Аз трябва да кажа, че нещо се прави в тази посока - програмистите могат да създават CORBA клиенти на средна трудност, а след появата на част от SIDL Боланд AppServer 4.5 - и EJB-клиент. Независимо от това, в тази област все още има много въпроси, както и пълната подкрепа на технологията се каже, че не е необходимо.

обобщени изводи

Delphi момента е първокласен инструмент за бързи и висококачествени създават приложения за Windows, включително и уеб-базирани приложения. Това е най-добрият начин (благодарение на модерните обектно-ориентиран език и всестранна подкрепа на различни технологии), ако ние не говорим за създаването на мощни сървърни приложения, които не са ориентирани към технологиите на Microsoft.

В същото време, Делфи все повече и повече започва да изостава от C ++ Builder и JBuilder от гледна точка на силата и откритост. Може би във всичките й функции Delphi е най-слабите средство за създаване на приложения, предлагани от Borland. Независимо от това, чисто техническите пречки за "вземане» Делфи (и Kylix) до нивото на своите "братя» - C ++ Builder и JBuilder - почти не съществува. Надяваме се, че това ще бъде направено скоро.

C ++ Builder

На първо място, трябва да призная, че става дума за C ++ Builder е свързана за мен с някои неприятни неща. I - дългогодишен фен и C ++, и Borland, така че аз съм много тъжно, че този софтуер инструмент може да заеме полагащото му се място само за разработчици небрежност и Borland за контрол на качеството инженери.

С едната си ръка, можем да кажем, че C ++ Builder може да направи всичко същата като тази на Делфи, и в допълнение, напълно подкрепя CORBA. Набор от технологии, които се поддържат от този продукт, можете да създадете широк спектър от приложения.

** цялата статия може да се намери в хартиения вариант на списанието

Говорете за недвижими мултиплатформена Delphi, докато все още е рано.

** цялата статия може да се намери в хартиения вариант на списанието

JBuilder в момента е най-мощният инструмент за създаване на приложения за всички продукти на Borland - и може би най-мощният инструмент за създаване на клиент-сървър приложения като цяло. Аз не мисля, че това твърдение е твърде силна. Важното в случая е не само най-високо качество на продукта - това е в тази конкретна роля в момента играе от технологии, базирани на Java.

VisiBroker, AppServer и AppCenter

Всички тези продукти на инструменти за развитие включва силно условно. Независимо от това, те играят много важна роля в сложните Borland технологии.

** цялата статия може да се намери в хартиения вариант на списанието

Borland Enterprise Studio

Пример споделяне Enterprise JavaBeans и C ++.

Ние ще търсим не съвсем традиционната употреба на EJB компоненти. Те са предназначени за създаване на сървър-базирани приложения, но е интересно да се види как те се справят с ролята на клиента.

Такъв подход е интересен поради две причини:

  • Първо, създаването на C ++ - на EJB клиент-сървър е доста тривиално;
  • Второ, тя позволява да се демонстрира способността си да използват готови C ++ - в допълнение към EJB от страна на сървъра код. Тя показва как можете да получите около една от най-сериозните ограничения на EJB модел - забрана за зареждане на местните библиотеки.

Приложението на сървъра създаден с помощта на C ++ Builder 5 и VisiBroker за C ++ 4.1.

Един от най-важните неща е достъп до името на услугата, например (наименуване Service), обща за C ++ - сървър и EJB-клиент. Такъв например е пуснат като част от EJB сървър - в нашия случай, част от Borland AppServer 4.5. Администраторът може изрично да изберете името на фабриката на контексти (виж фигура 7).

Фигура 7. Посочва името на контекст фабрика

MyImpl.h файл:
MyImpl.cpp файл:
Server.cpp файл:

Фигура 8. Диалог стартиращи параметри

Нека се обърнем към създаването на EJB-клиент компонент. Неговия код е почти изцяло генериран от експерти JBuilder. По-долу е бизнес-метод компонент, написана "на ръка":

Разбира се, проектът е включен в IDL-файлът се използва за създаване на C ++ - Server. MyInterface класове и интерфейси, MyInterfaceHelper и др. Са генерирани от idl2java компилатор.

Фигура 9. Откриване EJB-компонент свойства

Фигура 10. Информацията EJB-компонент / IDL поколение

За метод на бизнеса (или методите) на сървъра C ++ - обектно разговори в рамките на сделката (вероятно започната от контейнера за EJB), трябва да се направи IDL-MyInterface интерфейс, получени от интерфейсни CosTransactions на :: TransactionalObject, което не декларират всякакви методи:

Писане на C ++ - клиентът за генерирания EJB-елемент представлява нито труда, нито лихвите. Можете просто да се основава на EJB-компонент домашно интерфейс за генериране на съответния IDL-файл (фигура 10).

Фигура 11. AppServer конзола

Вече Borland предлага разнообразие от инструменти, които са в състояние бързо и ефективно да се създаде клиент-сървър, включително и разпределени системи, които оперират на различни хардуерни платформи и работи с различни операционни среди. Компанията се стреми да по-тясна интеграция на инструменти за разработка - Delphi, C ++ Builder, JBuilder, компонент кожи (AppServer) и техните средства за функциониране на системите за контрол и управление (AppCenter) в една среда мулти-платформа. Java програмисти могат да се насладят истинската му стойност в момента.

** цялата статия може да се намери в хартиения вариант на списанието