По-стари материали с инструкции за Delphi [затворено]

Има много стари книги за Delphi, достъпни на ниска цена. Като самоук (напреднал) начинаещ ми е трудно да разбера кои идеи са все още актуални и актуални и кои са остарели. Надявам се на малко насоки. Например, би ли било остаряло да научите за бази данни, захранвани от BDE? COM вече не е ли често използван модел? (забележка: може да не разбирам как използвам тези термини... не знам много за тях.)

Благодаря за вашите мисли!


person Al C    schedule 21.07.2009    source източник
comment
Не използвайте BDE. Вижте коментара на Брус за COM и пушенето по-долу. Същото правило важи и за BDE, само че в по-голяма степен.   -  person Nick Hodges    schedule 22.07.2009
comment
За бази данни използвайте компоненти dbExpress, ADO (само за SQL Server) или DevArt. По всякакъв начин стойте далеч от BDE, Paradox и DBase.   -  person Ertugrul Kara    schedule 24.07.2009


Отговори (7)


Повечето книги на Delphi все още имат големи части от подходящи неща в тях. Повечето от нещата, които все още са добри, са неща от ниско ниво, като писане на код, използване на dlls и bpls. Дори писането на компоненти е почти същото. Онзи ден се върнах към книга за Delphi 3 и намерих това, което исках.

Като препоръка ще взема комбинация от по-стари и по-нови книги. От гледна точка на новите бих получил наръчниците на Marco Cantu Delphi 2007 и 2009 и неговия Mastering Delphi 2005 (пренебрегвайки нещата .net) или Mastering Delphi 7, които ще ви осигурят доста добро покритие и са отлични книги. Боб Суарт също има някои полезни книги.

Вероятно не искате да се връщате към нещо по-рано от Delphi 3, но някои книги за програмиране на Pascal могат да бъдат полезни.

Вероятно не трябва да сте параноични да четете за остарели неща, да сте наясно с това е много полезно, ако трябва да работите с наследен код, стига да освежите някои по-модерни книги, трябва да сте добре.

Също така бих препоръчал да прочетете Code Complete 2 или The Pragmatic Programmer. Може също да искате да прочетете книги за Design Patterns и Refactoring - които няма написани специално за Delphi.

person Alister    schedule 21.07.2009
comment
+1 за Прагматичния програмист. Отлична книга. В момента чета Code Complete 2. - person Pauk; 22.07.2009

Много от концепциите (и кода) на Delphi, дори от по-стари версии, се прилагат еднакво добре към по-новите. Определени компоненти вече не съществуват (NetMasters и т.н.), някои са замразени и не трябва да се използват за нова разработка (BDE) и има ГОЛЯМ брой нови функции, които да наваксате.

Колкото до COM. По безсмъртните думи на Лино Тадрос (човекът, отговорен до голяма степен за получаване на COM поддръжка в Delphi):

COM е като ПУШЕНИЕ: Ако не сте започнали, не трябва да започвате сега, ако вече го правите, време е да спрете.

person Bruce McGee    schedule 21.07.2009
comment
+1 да - все едно да пушиш лошо пот! :-) - person marc_s; 22.07.2009

BDE е мъртъв, но може да се използва някъде и може да намерите ентусиасти на BDE. BDE беше труден за инсталиране и имаше и някои правни проблеми. COM също е мъртъв, но все още е достъпен и се използва широко в наследени приложения. Повечето хора използват безплатни библиотеки като JEDI или Zeos - или търговски, DevExpress или TMS. Мисля, че изучаването на основен VCL и някои безплатни библиотеки ще бъде добре да започнете. Също така да знаете точно как работят обектите и класовете в Delphi ще бъде голяма помощ за вашето кариерно развитие.

person smok1    schedule 21.07.2009

Смъртта на практиката на кодиране е много относително нещо. Все още знам за COBOL приложения, които все още работят... главно защото все още работят и не се занимават с дати, така че беше повече от добре просто да ги пусна да работят. Понякога това може да не е най-добрият „нов начин“ за правене на нещата, но ако работи без никакви промени... защо да се забърквате с него.

Концепцията за COM всъщност не е умряла... тя се развива и знанието как да я използвате може да ви помогне да разберете и приложите най-новата еволюция. Трябва ли да знаете асемблиране, за да бъдете добър програмист на Delphi? Абсолютно не, но това е знание, което може да ви помогне да разберете как да оптимизирате по-добре вашите рутинни процедури.

В Delphi COM не е само обектен модел. Става въпрос и за интерфейси. Интерфейсите все още могат да бъдат много полезен инструмент в чантата и ако познавате COM разработката в Delphi, знаете как работят интерфейсите.

Що се отнася до наследствените книги... казвам, дръжте ги на рафта и ги поглеждайте от време на време. Понякога погледът назад може да ви помогне да скочите напред. Ето защо имам копие на Алгоритми + Структури на данни = Програми на моя рафт. Странно, по-голямата част от кода в книгата все още се компилира с няколко незначителни промени. Разбира се, кодът не е ООП, но концепциите все още са тези, които използвам днес. Може да се изненадате колко много не се е променило едно двоично дърво и как най-добрият начин за оптимизирането му е все същият. Как понякога използването на обикновена рутинна програма стар майстор нов майстор е по-бързо от зареждането на данните в SQL таблица и след това извършването на актуализация.

Не ВИНАГИ става дума за готиния фактор... понякога става въпрос за това, което работи.

person skamradt    schedule 21.07.2009
comment
+1. Ако не е счупено, не го поправяйте. - person Mason Wheeler; 22.07.2009

Delphi unleashed на Calvert също е добро начало за Delphi и COM.

person Marco van de Voort    schedule 22.07.2009

За достъп до базата данни по-старите книги ще препоръчват използването на BDE, но BDE е отхвърлен и не трябва да се използва в нови приложения.

BDE означава Borland Database Engine. Всяко приложение, което използва компонентите TTable, TQuery, TSession и TDatabase, използва BDE.

Методът за достъп до базата данни, който трябва да използвате вместо това, е моделът за несвързан достъп до данни dbExpress/клиентски набор от данни. Това звучи малко сложно и да, в сравнение със старите неща на BDE е малко по-трудно.

В типично BDE приложение компонентите от GUI към базата данни бяха свързани по този начин

TDBEdit към TDataSource към TTable към TDatabase

В приложение в стил на клиентски набор от данни на dbExpress компонентите са свързани по този начин

TDBEdit към TDataSource към TClientDataSet към TDataSetProvider към TSQLDataSet към TSQLDatabase

Първите две части в тази верига (TDBEdit, TDataSource) работят точно както всяка книга за Delphi, която можете да намерите, ще опише.

Следващите две части, ClientDataSet и TDataSetProvider, първоначално се наричаха MIDAS, но сега са известни като DataSnap. Те също съществуват от доста време, но едва в последните няколко версии станаха официално препоръчаното решение за достъп до база данни.

TSQLDataSet и TSQLDatabase са най-новата част от тази верига и са известни като DBExpress.

person LachlanG    schedule 23.07.2009

Всяка книга за Delphi след Delphi 3 все още трябва да бъде до голяма степен уместна в повечето аспекти. В Delphi 3 бяха направени големи промени, така че всичко преди това може да е остаряло.

Бих се съгласил с други, че BDE не съществува. Никога не ми харесваше, дори когато трябваше да е основната опция с Delphi. Това може да обясни защо на Borland отне толкова време, за да осигури приличен вграден ADODB набор от компоненти (трябваше да ги закупите като допълнителни екстри в Delphi 5).

COM все още е много подходящ, ако имате някаква необходимост да осъществявате междупроцесна комуникация (не съм сигурен какви алтернативи са налични за всички хора, които казват, че COM е мъртъв). Всъщност COM+ (услуга на Windows сървъри, която хоства обекти за мащабируемост) все още е неразделна част от стратегията на Microsoft. COM в никакъв случай не е перфектен, но все още не е заменен от Microsoft като концепция (не .NET не го замества).

person Toby Allen    schedule 23.07.2009