AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MultipleTexture Loader

Ein Thema von EWeiss · begonnen am 17. Okt 2010 · letzter Beitrag vom 3. Nov 2010
 
Benutzerbild von mleyen
mleyen

Registriert seit: 10. Aug 2007
609 Beiträge
 
FreePascal / Lazarus
 
#16

AW: MultipleTexture Loader

  Alt 2. Nov 2010, 14:42
...
Uppercase(ExtractFileExt....
...
Ja natürlich geht ebenfalls
Wer es denn haben will ändert alles nach
if Uppercase(ExtractFileExt(sImgName)) = '.PNGthen um

Obwohl diese Funktion letztendlich genau das gleiche tut

gruss
Das Problem ist weniger die eine Zeile, eher der (doppelte) Code an sich. ZB hab ich schon ewig keine 2XX LOC-Methode gesehen. Dabei wurd hier doch immer Clean Code usw für heilig gesprochen.

Hier beispielsweise wird immer wieder copy(), Uppercase(), length(), ...copy() Uppercase(), ... aufgerufen.
Dabei könnte man daraus einen kleinen Einzeiler machen, welcher sicherlich performanter und dynamischer ist:
Delphi-Quellcode:
const
  SupportedImageTypes: array[0..8] of string = (
    '.BMP', '.DIB', '.GIF', '.ICO', '.JPEG', '.JPG', '.PNG', '.TIF', '.TIFF');

function GetImageType(const AImgName: string; out ImageType: string): Boolean;
begin
  ImageType := ExtractFileExt(AImgName);
  Result := StrUtils.IndexText(ImageType, SupportedImageTypes) > 0;
end;

// Und in der seitenlangen Methode dann nur noch:
  if GetImageType(sImgName, ImageType) then
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz