„sea“ – Mein Betrag für den 5. Coding Contest

Veröffentlicht: 13. Mai 2013 in Programmiertes
Schlagwörter:, , , ,

Nun ist der Coding-Contest vorbei, meine Lösung ist eingereicht und ich bin gespannt, wie meine Lösung bewertet werden wird. In diesem Artikel möchte ich euch einen kurzen Einblick in mein Programm geben.

sea-logo

Die Aufgabe

In der dritten Kategorie des Wettbewerbs (Java, Ruby, C#) war es die Aufgabe ein Programm zu entwickeln, das eine Textdatei einliest und die darin enthaltene DNA-Sequenz auf bestimmte Muster hin analysiert.

Meine Lösung

Zunächst ein kleiner erster Eindruck der Oberfläche meines Wettbewerbsbeitrags.

Diese Diashow benötigt JavaScript.

Mit „sea“ habe ich die Aufgabe für die Kategorie Java, Ruby und C# gelöst. sea steht für sequence analyzer.
Es ist eine kleine Java und JavaFX2.2 Anwendung, die, der Aufgabe entsprechend, eine Textdatei einliest und die analysierten Daten auf einem neuen Bildschirm in Kacheln anordnet (Siehe Screenshot).

Interface

Bei der Gestaltung der GUI habe ich mich entschieden, dem aktuellen Designtrend zu folgen und das Flat Design anzuwenden. Dank JavaFX habe ich die Möglichkeit, die Elemente meiner Oberfläche mit CSS zu manipulieren und meinen Entwürfen entsprechend anzupassen. Das Farbschema habe ich dem Titel des Programms hin angepasst und blau gehalten. Zwei Blautöne und Weiß für die Schrift ergeben damit ein stimmiges Gesamtbild. Elemente, die eine Interaktion zulassen, sind mit abgerundeten Ecken versehen (Buttons, Scrollbalken), die anderen Elemente sind ohne abgerundete Ecken gestaltet.

Technisches

Da das Erzeugen einer ausführbaren jar mit Maven und JavaFX nicht so recht klappen wollte, bin ich auf das JavaFX-Maven-Plugin von Daniel Zwolenski gestoßen. Damit war das Problem, dass die JavaFX-Abhängigkeiten nicht in der jar zu finden waren, auch schnell behoben und die jar endlich korrekt erzeugt.
Neben Maven und JUnit (genauer Build und Test Werkzeuge) durften keine externen Bibliotheken zur Lösung genutzt werden.

Und sonst…?

Da nur genau eine Woche Zeit war, steht hier und da noch Optimierungspotential für einige Stellen im Code an. Es gibt Bedarf an Refactorings und zusätzlichen Testfällen. Den geforderten Funktionsumfang deckt meine Lösung allerdings ab. Eine Erweiterung der Funktionalität könnte z.B. das Speichern eines Reports in eine PDF-Datei sein oder die Auswahl der zu analysierenden Muster regelbar und erweiterbar zu gestalten.

Den Code findet ihr in meinem GitHub Repository!

Advertisements
Kommentare
  1. matteo sagt:

    Ich habe den ganzen Post gelesen und denke, dass mit ein bisschen Optimizationen, Sea kann ein sehr mächtig Werkzeug für die Genetiker werden.
    Was mir gefallen hat, ist die Einfachheit des ganzen Programm. Allen können es benutzen, aber fast niemend kann seiner Arbeit machen.
    Ich denke dass du sollst diese Project weiterbringen.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s