kostenloser Webspace werbefrei: lima-city


Suche auf lima-city

  • in: String-Länge: gespeichert oder errechnet?

    geschrieben von sgm02

    Vielleicht noch ein Tip um das Ganze hier abzurunden, schaut euch auch andere freie Bibliotheken an, da gibt es viele Implementierungen für die unterschiedlichsten Zwecke und die sind dann definitv auch effizient umgesetzt.

    http://commons.apache.org/proper/commons-collections/javadocs/api-release/index.html
    http://docs.guava-libraries.googlecode.com/git/javadoc/index.html
  • in: Roundcube - Filter automatisch importieren

    geschrieben von sgm02

    Hallo zusammen,

    meine Anfrage hat folgenden Hintergrund. Um einen Mailverteiler für unseren Sportverein zu realisieren,
    habe ich ein extra Postfach erstellt und einen Filter über das Roundcube-Frontend angelegt, der eingehende
    Nachrichten an eine Liste von Mailadressen weiterleitet.
    Da man Filter auch importieren kann, würde ich diese Funktionalittät gerne nutzen um die Liste automatisch zu aktualsieren(1xTag). Die dafür notwendige Textdatei mit den Filterreglen lässt sich ja relativ leicht erstellen.

    Nun ist meine Frage, ob man das Löschen und Importieren des Filters automatisieren kann, vielleicht über eine API von Roundcube? Oder muss ich mir ein Script bauen, das so tut als würde es die Funktionaltität auf der Seite klicken?

    Vielen Dank für eure Antworten und Vorschläge!
  • in: Runde Gui in Java?

    geschrieben von sgm02

    Falls du mit einem etwas aktuelleren Framework arbeiten möchtest, würde sich ein Blick auf JavaFX lohnen.
    Swing ist schon etwas in die Jahre gekommen und wird perspektivisch wohl durch JavaFX abgelöst.
    Aber das nur als Tipp am Rande.
  • in: JPanel als GroupLayout verwenden

    geschrieben von sgm02

    Weiß zwar gerade nicht welche Version du verwendet aber ich beziehe mich mal auf das JavaDoc von Java 7:

    setLayout ist von java.awt.Container vererbt:
    public void setLayout(LayoutManager mgr)
    
    Sets the layout manager for this container.
    
    This method changes layout-related information, and therefore, invalidates the component hierarchy.

    validate kommt auch vom Container:
    public void validate()
    Validates this container and all of its subcomponents.
    
    Validating a container means laying out its subcomponents. Layout-related changes, such as setting the bounds of a component, or adding a component to the container, invalidate the container automatically.

    Also versuch mal validate aufzurufen, damit das Panel neu gerendert wird...
  • in: Hochskalierbarer Java Webserver

    geschrieben von sgm02

    Deine jeweiligen Interessengebiete haben zum Teil auch sehr unterschiedliche Aspekte. In der Java Welt, vor allem beim Einsatz in Unternehmen, sind Architektur, Komponentenabhängigkeiten, Code-Wiederverwendung, Deployment etc. von hoher Bedeutung. Es geht den jeweiligen Verwendern/Betreibern primär darum ein System zu haben das möglichst modular und gekapselt ist. Z.Bsp. damit Komponenten während der Laufzeit ausgetauscht bzw. neu eingespielt werden können. Außerdem soll es möglichst unabhängig vom Betriebssystem des Server sein. Auch die Java EE Architektur nimmt einem Anwendungsentwickler viel Arbeit und Detailwissen ab. Der will sich nicht mit Transaktionsproblemen und Laufzeitoptimierungen beschäftigen, sondern seine, unter Umständen auch schon komplexe, Business-Logik implementieren und anderen einfach zur Verfügung stellen. Es geht also eher darum zu abstrahieren und Systeme mit loser Kopplung zu bauen und zu wissen, das einem bestimmte Details einfach egal sind.

    Bei C und Assembler liegt der Fokus eher auf Effizienz und Leistungsorientierung. Wenn man nicht gerade mit ANSI-C programmiert muss man sich schon Gedanken machen für welche Plattform man später kompiliert - bei Java ist dir das vollkommen egal. Assembler ist noch mal ein ganzes Stück weiter unten, hier geht es wirklich um Detailprobleme auf der Low-Level Ebene.
    Ich behaupte jetzt mal das man Assembler-Kenntnisse wirklich nur für ganz spezielle Probleme braucht. Also wenn man Sicherheitslücken sucht oder reverse-engineering betreibt.

  • in: Englischsprachige Ziele (Vorschläge)

    geschrieben von sgm02

    Ich kann Irland sehr empfehlen, zweite Amtssprache ist Englisch, die erste ist Gälisch und etwas eigenartig ;-) Aber so gut wie jeder dort spricht Englisch, außer vielleicht paar ältere Leute in teilweise sehr einsamen Gegenden.

    War dieses Jahr mit einem Kumpel dort zwei Wochen wandern & campen, landschaftlich ganz ansehnlich und für einen Plausch brauchst du bloß in den nächsten Pub steuern und schon hast du mehr als genug Gesprächsstoff, die Iren sind wirklich sehr gesprächig und freundlich. Sind auf Deutsche auch sehr gut zu sprechen, nicht nur seit Sie wissen das viele der Gelder die ihr Land unterstützen aus Deutschland kommen :biggrin:
  • in: Datentyp Double im Parameter erzwingen

    geschrieben von sgm02

    Mal davon abgesehen, das es nicht gängiger Programmierpraxis entspricht eine Benutzereingabe direkt an einen Setter durchzureichen, wirst du wohl kaum eine andere Möglichkeit haben als das ganze vorher irgendwie zu Parsen oder anderweitig vor zu behandeln.

    Der Datentyp kann zwar auch durch die explizite Angabe des Typs erzwungen werden aber das funktioniert nur als Literal im Quelltext:
    1D/2D

    Du musst also deine Eingabewerte erst entsprechend einlesen und verarbeiten, bevor du einen Double bekommst, sonst wirst du immer mit ints rechnen und das liefert eben wieder einen int als Ergebnis.

    Zum Beispiel könnte man beide Werte getrennt einlesen und dann den Operator auswerten:
    double wert1 = Double.parseDouble("wert1 als String");
    double wert2 = Double.parseDouble("wert2 als String");
    
    if(operator.equals("/")) {
       double ergebnis =  wert1 / wert2
    }
  • in: Systeme hacken

    geschrieben von sgm02

    Meiner Meinungen nach kann man das Hacken nicht wirklich lernen, Tutorials über dies und das helfen zwar dabei aber den Großteil des Wissen sammelt man sozusagen am Wegessrand auf, wenn man sich mit allem möglichen rund um IT beschäftigt und es teilweise auch selber ausprobiert und nicht nur ließt.

    Wenn dein Fokus auf Netzwerksicherheit liegt, dann solltest du das OSI-Modell und alles ringsherum sehr gut kennen. Der Aufbau und die Funktionsweise der gängigsten Protokolle (ICMP, HTTP, TCP, UDP, IP, etc.) sollten dir bekannt sein. Zudem solltest du dich mit Penetration-Testing Programmen (Backtrack, Metasploit usw.) vertraut machen.
    Nach meiner Einschätzung sind außerdem exzellente Linux bzw. Unix Kenntnisse (inkl. Shell Programmierung) ein Muss für das Hacken, weil exzessiv über die Kommandozeile gearbeitet wird und vieles nur darin erledigt werden kann und wird.

    Je nach dem wie viel Geld du investieren willst, lohnt sich auch ein Abonnement von hakin9.org, das ist ein offizielles "Hardcore IT-Security" Magazin, das so ziemlich alle Bereiche der IT-Sicherheit mit diversen Artikeln behandelt.

    Sehr interessante Informationen bieten unter anderem die Artikel der Serie "Tatort Internet" auf heise.de
  • in: Private Klassenattribute mit public Methoden schützen

    geschrieben von sgm02

    Also technisch gesehen können pivate Felder nicht vererbt werden, ebenso wie private Methoden.
    Da ich gerade an meinem SCJP arbeite hab ich nochmal schnell das Lehrbuch gewälzt, das dazu folgendes sagt:

    Inheritance allows a class to be a subclass of a superclass, and thereby inherit public and protected variables and methods of the superclass.

    Mit deiner Beschreibung "speichertechnisch" liegst du allerdings nicht ganz falsch, da die Werte der Instanz ja da sind und nur durch die Sichtbarkeit per Polymorphie kontrolliert werden. Allerdings wird erst zur Laufzeit entschieden welche "Version" einer vererbten Methode aufgerufen wird. Im Fall der vererbten und nicht überschriebenen Methode wird die Version der Super-Klasse aufgerufen die dann in der Subklasse den entsprechenden Wert liefert. Der Zugriff auf ein privates Attribut einer Superklasse in einer Unterklasse ist so zusagen nur "virtuell", da sich der Wert des Attributes eigentlich in der Superklasse befindet und die JVM entsprechend entscheidet welche Methode aufzurufen ist. Allerdings weiß ich nicht wie die JVM die Instanzen eines Vererbungsbaumes zur Laufzeit trennt, also ob es sich dabei um eigenständige Objekte handelt oder ob alles in einem Objekt gehalten wird, mit verschiedenen "Layern" sozusagen.

    Kenne jetzt zwar nicht deine konkrete Ableitungsstruktur aber als Idee könnte man sich mal das "Decorator Pattern" anschauen, bietet eine flexible Alternative zur Unterklassenbildung. Kommt wie gesagt aber auf das dann was damit genau umgesetzt werden soll.
  • in: try ... catch Exceptions - Ein haupt bestandteil Javas?

    geschrieben von sgm02

    Hi namphiz,

    fast, das Ganze wird durch das (ich nenne es mal so) Pipe-Symbol getrennt:

    } catch (FirstException | SecondException ex) {
         logger.error(ex);
        throw ex;
    }


    Dieses Feature gehört übrigens zu "Project Coin", indem diverse Spracherweiterungen für Java 7 zusammengefasst wurden.
  • in: try ... catch Exceptions - Ein haupt bestandteil Javas?

    geschrieben von sgm02

    Also im allgemeinen und auch in größeren Projekten sollte man es vermeiden nur "Exception" zu fangen,
    weil es einfach zu allgemein ist und man dann oft nicht mehr entscheiden kann wie mit dem Fehler umzugehen ist.

    Bitte niemals Throwables fangen, damit fängt man nämlich auch Fehler der JVM mit weg (OutOfMemory, StackOverflow etc.) diese sollten nicht vom "fachlichen" Anwendungscode behandelt werden und im Extremfall bis zur main Method propagieren damit die JVM ggf. gestoppt werden kann.

    Übrigens mit Java 7 gibt es dann endlich auch "Multicatch" d.h. es können mehrere Exceptiontypen in einem Block gefangen werden, ein lang ersehntes Feature!.

Login zum Webhosting ohne Werbung!