Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   ADBShoutcastQuery - Suchen nach Internetz-Radiosendern (https://www.delphipraxis.net/90649-adbshoutcastquery-suchen-nach-internetz-radiosendern.html)

Dunkel 21. Apr 2007 00:01


ADBShoutcastQuery - Suchen nach Internetz-Radiosendern
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen!

Ich habe mir für mein Projekt AudioDB eine Klasse geschrieben, welche es ermöglicht, den Service von Shoutcast.com, Internetz-Radiosender im eigenen Programm suchen, zu nutzen.

Die entsprechende Unit inklusive einer Demo-Applikation hängen an diesem Beitrag dran. Die Demo sollte eigentlich den aktuellen Funktionsumfang, auch ohne weitere Erklärungen meiner Seits, deutlich machen.
Falls dennoch Fragen zur Benutzung von ADBShoutcastQuery.pas auftreten sollten, immer her damit! :wink:

INDYs (zumindest IdHTTP & IdComponent) werden benötigt!!


Den Code stelle ich as-it-is zur freien Verfügung. Bitte beachtet das Copyright! Über eine kleine Erwähnung meiner Einer in Euren Programm(en) würde ich mich ebenfalls sehr freuen!


Grüße
Michael

---
2007/07/10 v1.0.0.5 : [done] minor code-review-changes
{... oha, hier hab ich das ja auch upgeloaded ...}
2007/04/30 v1.0.0.2 : [+] Proxysettings
2007/04/21 v1.0.0.1 : [fix] die Vorschläge von alzaimar umgesetzt

alzaimar 21. Apr 2007 07:11

Re: ADBShoutcastQuery - Suchen nach Internetz-Radiosendern
 
Kosmetik und refactoring:
Da Du englische Beschreibungen und englische Variablennamen verwendest, solltest Du bezüglich der Rechtschreibung nochmal nachbessern (InProgres, Kommaregeln, Im Englischen werden '-' selten verwendet. 'query result', statt 'query-result')

Weiterhin solltest Du dich an die Delphi-Konvention zur Bennung von Events und Recordmembers halten. Events verschicken in ihrem ersten Parameter i.A. sich selbst, also statt:
Delphi-Quellcode:
TMyEvent = Procedure (Parameter : TType) Of Object;
lieber
Delphi-Quellcode:
TMyEvent = Procedure (Sender : TObject; Parameter : TType) Of Object;
Und dann beim Abfeuern des Events;
Delphi-Quellcode:
fMyEvent (Self, MyParameter);
Anstatt
Delphi-Quellcode:
If Assigned (fEvent) Then
  fEvent(Self)
Solltest Du jedem Event ein
Procedure MyClass.DoEvent;
Delphi-Quellcode:
Begin
  If Assigned (fEvent) Then
    fEvent(Self)
End;
spendieren. Im Code rufst Du dann 'DoEvent' auf, das erhöht die Übersichtlichkeit. Für jeden Event 'fXXXXX' schreibst Du eine private Methode 'DoXXXXX'.

Statt Records kannst Du vielleicht noch Klassen deklarieren, falls die Ergebnisse (TPlayList, TPlayListItem) eine Funktionalität besitzen oder besitzen sollen.

Das ist aber kein Muss: Nur ist es dann irgendwie konformer.

Dunkel 21. Apr 2007 11:13

Re: ADBShoutcastQuery - Suchen nach Internetz-Radiosendern
 
Hallo alzaimar,

besten Dank für Deine Vorschläge!
Bis auf, dass ich TPlaylist & TPlaylistItem noch als Record belassen habe, habe ich alles umgesetzt.

Dunkel 10. Jul 2007 00:43

Re: ADBShoutcastQuery - Suchen nach Internetz-Radiosendern
 
v1.0.0.5 out now!

Gehstock 21. Sep 2008 01:34

Re: ADBShoutcastQuery - Suchen nach Internetz-Radiosendern
 
Die Unit funktioniert nur noch nach einer kleinen Änderung aus

SCQSERVER = 'http://www.shoutcast.com';
wird
SCQSERVER = 'http://205.188.234.120';

Dunkel 21. Sep 2008 01:50

Re: ADBShoutcastQuery - Suchen nach Internetz-Radiosendern
 
Zitat:

Zitat von Gehstock
Die Unit funktioniert nur noch nach einer kleinen Änderung aus

SCQSERVER = 'http://www.shoutcast.com';
wird
SCQSERVER = 'http://205.188.234.120';

Eigentlich sollte sie garnicht mehr funktionieren. Shotcast.com wurde umgestalltet. Da die Unit den HTML-Quelltext parst, sollte da nix mehr laufen. Aber wenn's so ist, um so besser. :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz