Torrent Updater - Open Source-Programm für OS X zum Überprüfen neuer Versionen von .torrent-Dateien auf gängigen Trackern

    Torrent-Updater

    Vor einem Jahr hatte ich ein Problem. Das Problem war, dass ich es leid war, mir die Veröffentlichung neuer Folgen meiner Lieblingsserie anzuschauen, die .torrent-Datei vom Tracker herunterzuladen und zu springen. Ich wollte dieses Geschäft irgendwie automatisieren.

    Wenn es ein Problem gibt, muss es behoben werden. Ich hatte keine OS X-Entwicklungserfahrung mit Obj-c, aber ich hatte die Zeit und den Wunsch, es zu versuchen.



    Ich brauchte zwei Wochen, um die Theorie zu studieren und einen weiteren Monat, um ein Programm zu schreiben. Das Programm funktionierte nur mit dem Verfolger RuTracker.org und war wild fehlerhaft . Anfangs wollte ich den Quellcode auf GitHub stellen, aber als ich mir die Qualität des resultierenden Codes ansah, änderte ich meine Meinung. Ich selbst konnte in diesem Code kaum etwas finden. Das Programm wurde auf demselben RuTracker gepostet, erhielt viele gute Kritiken, aber auch viele Bugs und Anfragen. Nach zwei Zwischenveröffentlichungen habe ich alle Fehler behoben, die Grafiken der Anwendung geändert (danke an den Benutzer olenyev aus dem RuTracker.org-Forum) und einige Funktionen hinzugefügt.

    Aus Unerfahrenheit bin ich auf ein paar Krücken gekommen und habe viele Fehler gemacht:
    • Login / Passwort wurde in einer normalen, in keiner Weise geschützten plist-Datei gespeichert.
    • Der größte Teil des Codes stimmte mit AppDelegate überein.
    • Das Update-System funktionierte folgendermaßen: Auf meiner Website habe ich eine Seite erstellt, auf der die tatsächliche Versionsnummer einfach in Klartext geschrieben wurde. Das Programm verglich diese Nummer mit der Versionsnummer des laufenden Programms und bot an, zu RuTracker.org zu wechseln, um die neueste Version des Programms herunterzuladen.
    • Variablen werden überall unterschiedlich benannt.
    • Es gibt keinen einzelnen Codestil.


    Fast ein ganzes Jahr lang bin ich nicht mehr zu diesem Projekt und zu Objective-C im Allgemeinen zurückgekehrt. Mit den Wurzeln in der Webentwicklung verschwunden, und es blieb keine Zeit für die Entwicklung des Programms. Daran hätte sich nichts geändert, wenn ich nicht an die Person geschrieben hätte, die mir für ein so nützliches Programm gedankt hätte. Und dann fragte er sanft, ob Unterstützung für New-Rutor.org gemacht werden könne.

    Ich selbst wollte schon lange Kinozal.tv unterstützen, war aber nicht motiviert. Ich wollte diesen Code nicht einmal mit einem langen Stock aus sicherer Entfernung berühren, aber ein dankbarer Brief weckte mein Vertrauen in die Menschheit und ich beschloss, alles von Grund auf neu zu schreiben.

    Fünf Tage lang habe ich nicht gearbeitet, ich habe nur dieses Projekt gemacht. Ich habe alles von Grund auf ehrlich geschrieben und den alten Code nur ein paar Mal kopiert. OlenyevIch habe neue Grafiken gezeichnet und eine Seite auf GitHub Pages erstellt. Ein weiterer Monat zum Testen und Beheben von Fehlern, und ich bin bereit, meine Kreation der Welt zu präsentieren.

    Hier ist das Ergebnis:
    • Theoretisch wurde die Unterstützung 10.7 - 10.9 (in der Praxis 10.7 - 10.8 nicht getestet, da ich nur wenige Betatester habe).
    • Alle Tracker-Einstellungen befinden sich in der .plist-Datei => Sie können für eine minimale Zeit neue Tracker hinzufügen.
    • Der Code ist aus meiner rein unprofessionellen Sicht (in diesem Bereich) lesbar.
    • Aktualisieren Sie das System mithilfe des Sparkle-Frameworks.
    • Logins / Passwörter werden in der Regel nirgends eingegeben oder gespeichert. Wird von der Cookie-JAR des Safari-Browsers verwendet.

    Noch ein paar Screenshots



    Jetzt schäme ich mich nicht, den Quellcode der Welt zu zeigen. Sie können die Projekt-Repositorys in GitHub sehen .
    Sie können das Programm auf der offiziellen Website des Projekts herunterladen .

    Jetzt auch beliebt: