Article View: pl.comp.lang.delphi
Article #346803Re: Total off topic - Delphi 10.2 wrażenia po migracji kodu - moze ktos przeczyta zanim kupi :-)
From: kameleonsql
Date: Tue, 11 Dec 2018 14:44
Date: Tue, 11 Dec 2018 14:44
87 lines
6545 bytes
6545 bytes
W dniu wtorek, 4 grudnia 2018 13:00:08 UTC+1 użytkownik danielma...@gmail.com napisał:
> W dniu piątek, 2 listopada 2018 08:33:17 UTC+1 użytkownik kamel...@gmail.com napisał:
> > W dniu czwartek, 25 października 2018 15:13:46 UTC+2 użytkownik kamel...@gmail.com napisał:
> > > W dniu czwartek, 25 października 2018 10:55:53 UTC+2 użytkownik immo napisał:
> > > > W dniu poniedziałek, 22 października 2018 09:28:21 UTC+2 użytkownik Roman Tyczka napisał:
> > > > > On Mon, 22 Oct 2018 00:04:34 -0700 (PDT), immo wrote:
> > > > >
> > > > > >> Ps.
> > > > > >> Dalej uważam, że idę w dobrym kierunku mając to wszystko w jednym projekcie :-)
> > > > > >
> > > > > >
> > > > > > Mam nadzieję że to ironia, a jeśli nie, to jak patrzeć na pierwszego Twojego posta rozpoczynającego ten wątek?
> > > > > > Ten "dobry" kierunek implikuje problem w nim opisany.
> > > > >
> > > > > Nie do końca, ten jego projekt nie jest jakiś ekstremalnie wielki, zarówno
> > > > > IDE jak i kompilator też mają swoje za uszami i jakością nie grzeszą.
> > > > > Najlepszym dowodem na to jest IDEFix Pack od Andreasa, który w najnowszym
> > > > > Delphi ma być częściowo zintegrowany ze środowiskiem przez samą Embę.
> > > >
> > > > Nie o to chodzi... Mam projekty większe i nie mam problemu z szybkością kompilacji. Więc uważam że problem może być w samym specyficznym projekcie.
> > > > Co do kompilatora i IDE, po pierwsze EMB prościej jest zaimplementować IDEFix'a płacąc Andreasowi, niż robiąc coś takiego samemu. To hameryka i mogłoby się zdarzyć że byłby pozew o używanie nie swojego kodu :>
> > > >
> > > > A poważnie - jak przesiądziesz się na Jave lub/i C#.NET to dopiero docenisz to co masz w Delphi. Build dla projektu takiej wielkości grubo powyżej godziny? Nie ma problemu...
> > > >
> > > > pozdrawiam,
> > > > Przemek O.
> > >
> > > Na dziś to jest (Build) 23 min. Nie mam za bardzo czasu się z tym grzebać i tak w "wolnej chwili" się tym zajmuje. Poza tym, nie za bardzo widzę by ktoś inny oprócz mnie to zwalczył, bo znam ten projekt od początku, a jak wiemy "diabeł tkwi w szczegółach" :-).
> > > ---
> > > Pozdrawiam
> > > Roman
> >
> > Dziś skończyłem refaktoring tego kodu ERP pod Delphi 10.2. Obecnie cały build (2.11 mln linii kodu) wykonuje się w 1 min i 10 s. Wszystko co możliwe z interface do implementation ... :-)
> > Tylko pytanie, czy to tak być powinno, że każda migracja kodu to "koryta krwi i morze potu" ? Rozumiem, że to 8 lat w życiu kompilatora, ale ...
> > Mam jeszcze parę zagwozdek w stylu FreeAndil(...) bez problemów działających w D2010, natomiast w 10.2 jest "Access violation ...", ktoś to przerabiał ?
> >
> > ---
> > Pozdrawiam
> > Roman
>
> Pewnie zaczeli już coś motać z referencjami do obiektów, np. w kompilatorze na Androida trzeba uzywac DisposeOf w pozbywaniu się obiektów
Mamy coś takiego :
procedure DsEventsClear(var DsEventsTemp: TClientDataSet;
var localTable: TClientDataSet);
begin
if (DsEventsTemp = nil) or (localTable = nil) then
exit;
try
DsEventsTemp.OnNewRecord := localTable.OnNewRecord;
DsEventsTemp.BeforePost := localTable.BeforePost;
DsEventsTemp.BeforeEdit := localTable.BeforeEdit;
DsEventsTemp.IndexDefs := localTable.IndexDefs;
DsEventsTemp.AfterScroll := localTable.AfterScroll;
localTable.OnNewRecord := nil;
localTable.BeforePost := nil;
localTable.BeforeEdit := nil;
localTable.AfterScroll := nil;
localTable.IndexDefs.Clear;
except
end;
end;
procedure DsEventsApply(var DsEventsTemp: TClientDataSet;
var localTable: TClientDataSet);
begin
if (DsEventsTemp = nil) or (localTable = nil) then
exit;
try
localTable.OnNewRecord := DsEventsTemp.OnNewRecord;
localTable.BeforePost := DsEventsTemp.BeforePost;
localTable.BeforeEdit := DsEventsTemp.BeforeEdit;
localTable.IndexDefs := DsEventsTemp.IndexDefs;
localTable.OnCalcFields := DsEventsTemp.OnCalcFields;
localTable.AfterScroll := DsEventsTemp.AfterScroll;
except
end;
end;
W Delphi 2010 działa bez najmniejszych problemów, w D10.2 jest
"Access violation ..."
Jakieś pomysły, jak to napisać w D10.2 ?
---
Pozdrawiam
Roman
Technical Details
Message-ID:
<489513bf-12d9-4ec7-b495-f83ecb794783@googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!newsreader4.netcologne.de!news.netcologne.de!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.am4!peer.am4.highwinds-media.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!q69no125369itb.0!news-out.google.com!v141ni79ita.0!nntp.google.com!q69no125362itb.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mailReferences:
<a3d7b6d8-9ff8-439d-865d-c3ebc006272d@googlegroups.com> <5bc84d1e$0$521$65785112@news.neostrada.pl> <4a36de87-3f36-4fd0-8024-8c82d4f2ed69@googlegroups.com> <18cfc3b1-92c7-472d-8d6d-1d7ef190d955@googlegroups.com> <5bc87dfd$0$491$65785112@news.neostrada.pl> <4f0b526a-0709-4602-a53e-f89621e487e4@googlegroups.com> <5bccc320$0$487$65785112@news.neostrada.pl> <bcc8d7e2-e8eb-45a0-ab03-a920391cfa4b@googlegroups.com> <561fc419-510e-4eb0-9722-564487aad52b@googlegroups.com> <1xngs8fe87l8b.dlg@tyczka.com> <939d6d88-a7d8-4402-be52-7c73fb94123c@googlegroups.com> <6368d33d-e216-4fa2-8744-ab50be017fed@googlegroups.com> <9da02c0a-bb1a-40df-a2f3-739ab354f78e@googlegroups.com> <45f1f2ea-a395-4ea5-a56b-544573d5ee90@googlegroups.com>Show Full Headers
Complete Article Headers
X-Received: by 2002:a24:5411:: with SMTP id t17mr1939450ita.10.1544539466509; Tue, 11 Dec 2018 06:44:26 -0800 (PST) X-Received: by 2002:a9d:24c3:: with SMTP id z61mr384724ota.1.1544539466166; Tue, 11 Dec 2018 06:44:26 -0800 (PST) Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit0.net!newsreader4.netcologne.de!news.netcologne.de!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer03.am4!peer.am4.highwinds-media.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!q69no125369itb.0!news-out.google.com!v141ni79ita.0!nntp.google.com!q69no125362itb.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: pl.comp.lang.delphi Date: Tue, 11 Dec 2018 06:44:25 -0800 (PST) In-Reply-To: <45f1f2ea-a395-4ea5-a56b-544573d5ee90@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=91.234.102.48; posting-account=lJNmiQoAAAAcuwZEAibFvFBE7IgRs9bN NNTP-Posting-Host: 91.234.102.48 References: <a3d7b6d8-9ff8-439d-865d-c3ebc006272d@googlegroups.com> <5bc84d1e$0$521$65785112@news.neostrada.pl> <4a36de87-3f36-4fd0-8024-8c82d4f2ed69@googlegroups.com> <18cfc3b1-92c7-472d-8d6d-1d7ef190d955@googlegroups.com> <5bc87dfd$0$491$65785112@news.neostrada.pl> <4f0b526a-0709-4602-a53e-f89621e487e4@googlegroups.com> <5bccc320$0$487$65785112@news.neostrada.pl> <bcc8d7e2-e8eb-45a0-ab03-a920391cfa4b@googlegroups.com> <561fc419-510e-4eb0-9722-564487aad52b@googlegroups.com> <1xngs8fe87l8b.dlg@tyczka.com> <939d6d88-a7d8-4402-be52-7c73fb94123c@googlegroups.com> <6368d33d-e216-4fa2-8744-ab50be017fed@googlegroups.com> <9da02c0a-bb1a-40df-a2f3-739ab354f78e@googlegroups.com> <45f1f2ea-a395-4ea5-a56b-544573d5ee90@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <489513bf-12d9-4ec7-b495-f83ecb794783@googlegroups.com> Subject: Re: Total off topic - Delphi 10.2 wrażenia po migracji kodu - moze ktos przeczyta zanim kupi :-) From: kameleonsql@gmail.com Injection-Date: Tue, 11 Dec 2018 14:44:26 +0000 X-Received-Bytes: 6991 X-Received-Body-CRC: 504231783 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit