Kategorie: Softwareentwicklung
-
Smart Cards durch die in Java eingebaute Java Smartcard I/O javax.smartcardio.* ansprechen
Zuerst mache ich eine kleine Einführung in das Thema Java und Smartcads und beschreibe danach wichtige Punkte für Linux und Windows. Java hat seit Version 1.5 (5.0) eine Unterstützung für Smartcards bereits eingebaut. Es nutzt dafür die eigene Provider Technik und greift über PC/SC auf die Smartcard zu. Das bedeutet es sind keine weiteren Module…
-
In Eclipse Galileo (3.5.X) Plugins installieren/nachinstallieren Probleme
Das Eclipse Update System ist leider sehr complex und damit für Fehler anfällig. Unter bestimmten Bedingungen bekommt man bei der Installation von neuen Plugins folgende Fehler: „No repository found containing: …..“ Dieser Fehler trat bei mir auf und deutet auf die Galileo Update Site direkt von Eclipse: [code] An error occurred while collecting items to…
-
Unter Eclipse über Java auf zugriffsbeschränkte (not accessible) Pakete am Beispiel von javax.smartcardio.*) im Java Projekt zugreifen
Die Nutzung von bestimmten Paketen ist unter Eclipse mit Java mit Access Rules beschränkt (standardmäßig nicht erlaubt). Das gilt insbesondere für „javax.*“ Pakete. In meinem Fall bestand die Schwierigkeit auf die Klassen „javax.smartcardio.*“ zuzugreifen. Das Problem kann auf die folgende Art und Weise (auch für andere Pakete) in Eclipse festgelegt werden: Java Projekt erstellen oder…
-
Mit Java über JPCSC auf den Smartcardreader und die Smartcard unter Linux zugreifen
Nach etwas Arbeit habe ich den JPCSC Wrapper in der Version 0.8.0 für PCSC unter Ubuntu Jaunty 9.04 zum laufen gebracht. Dafür waren diverse Änderungen am Quellcode von JPCSC notwendig, die ich zuerst beschreibe. Die folgenden Pakete müssen zuerst auf dem System installiert werden: [code] sudo aptitude install sun-java6-jdk libpcsclite-dev libpcsclite1 [/code] Danach muss JPCSC…
-
Mit ThreadPoolExecutor Arbeit unter Java effizient parallelisieren
Es gibt immer wieder Aufgaben, die sehr lange dauern und sehr große Mengen an Daten verarbeiten müssen. Dabei geht es meistens um Minuten oder gar Stunden, Tage … Diese sollten sinnvollerweise parallelisiert werden, um die Leistungs des Systems zu nutzen. Heutige Systeme sind sehr oft Mehrkern- bzw. Mehrprozessorsysteme. Auch ist das GHz-Rennen im Moment zu…
-
Anzahl Prozessoren bestimmen welche für die Java Virtual Machine (JVM) vom System zur Verfügung stehen
Da derzeitige Computersysteme in Anzahl der Prozessoren (im Moment Kerne) und nicht mehr im GHz wachsen, muss auch ein Umdenken bei der Programmierung passieren. Das bedeutet wir müssen als Programmierer Aufgaben parallelisieren oder unabhängige Prozesse bzw. Threads parallel ausführen, um die Leistung möglichst effizient ausnutzen zu können. Wenn das möglich ist, dann sollte das Programm…
-
Die 25 gefährlichsten Programmierfehler zum Thema Sicherheit
Ein Zusammenschluss von vielen namhaften Firmen hat eine List der 25 gefährlichsten Programmierfehlern veröffentlicht. Mindestens diese sollte sich jeder Programmierer merken und sie nicht mehr machen. Hier ist der Bericht zu finden: http://www.sans.org/top25errors/ Natürlich helfen solche Maßnahmen, aber die imperfiktion des Menschen ist das eigentliche Problem und der Ausweg daraus sind ordentliche Tests, die sicher…
-
Gute Ratschläge für Software und Softwarekomponenten für die Softwareentwicklung sind teuer
Die Entscheidung für die Verwendung einer Software oder Softwarekomponente hat meistens weitreichende Folgen für das Projekt. Natürlich kann durch entsprechende Abstraktion und gute Programmierung das Risiko für Abhängigkeiten gegenüber einer fremden Softwarekomponente reduziert werden und damit die Austauschbarkeit garantiert werden. Aber eigentlich will man direkt am Anfang „die richtige Wahl“ treffen, ohne nachträglich „das Pferd“…
-
Gute und schlechte Programmierer
Ich bin zufälligerweise über eine Seite zum Thema „Gute und schlechte Programmierer“ gestoßen und veröffentliche hiermit nur die Links, weil die Inhalte sehr aussagekräftig sind. Besonder gut haben mir die ersten zwei Links gefallen. Ich will damit weniger Kritik üben, sondern es mehr als Ansporn geben ein besserer Programmierer zu werden! Quellen und weitere Hinweise:…