Zum Inhalt springen

perdian

Mitglieder
  • Gesamte Inhalte

    2758
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von perdian

  1. Einfach ein wenig aktuelle (IT-)Nachrichten verfolgen und solche Fragen klären sich von alleine Aber als Hinweise: Und natürlich: http://www.google.com/search?hl=de&q=%22release+date%22+windows+vista Oder hier: http://en.wikipedia.org/wiki/Windows_Vista
  2. Es geht sich ja aber gar nicht nur ums Programmieren. Ein guter FI sollte auch deutlich mehr können, als nur Algorithmus X programmieren, bzw. Problemstellung Y in ein Programm umsetzen können - eine Tatsache, die in der Ausbildung sehr oft nicht vermittelt wird. Ich halte es für wichtig, dass auch der "einfache" Programmierer einen Überblick über das größere ganze hat. Und genau da verschwimmen manchmal die Grenzen zwischen Entwicklung und Management. Ich würde keine Stelle annehmen, wo ich nur als Coder in der Ecke sitze und still vor mich hin entwickeln muss - einmal finde ich es als Herausforderung für mich nicht interessant, aber auch das Projekt als solches wird deutlich besser laufen, wenn jeder bereit ist über seinen eigenen Tellerrand zu schauen. Und genau da machen sich die Leute die Aufstiegschancen selber kaputt. Ich gebe dir ja recht, wenn du sagst, dass die Luft for "normale" FIs in höheren Positionen dünner wird - aber es alleine darauf zurückzuführen, dass man sagt "die haben halt einen Abschluss, der als zu niedrig angesehen wird" trifft es nicht (überall). Natürlich haben ein Studium und eine Ausbildung unterschiedliche Zielsetzungen - aber sehen wir es mal so: X% der Dipl.Infs besetzen direkt eine Stelle im Management, der Konzeption, werden sog. Evangelists, und so weiter. Das sind sicherlich Positionen wo ein FI in der Regel nicht landen wird - und oftmals auch gar nicht landen will (Produktmarketing z.B. wäre für mich der Horror *g*). Y% der FIs wiederrum machen ihr Berufsleben nichts anderes, als mit PHP und Konsorten (oftmals eher schlecht als recht) dynamische Webseiten zu entwickeln und hier und da mal eine kleine Applikation zu schreiben - was wiederrum Stellen sind, die ein Studierter (verständlicherweise) nicht machen will. Aber genauso gibt es 100-X-Y% an Stellen, deren Tätigkeitsgebiete sich überschneiden. Sowohl ein Dipl.Inf, der an der Technik interessiert ist, als auch ein FI, der Planungs-, Leitungs- und/oder Führungsaufgaben übernehmen kann und übernehmen möchte qualifizieren sich dafür. Es geht mir gar nicht darum zu sagen, jeder FI kann jeden Job machen, den ein Dipl.Inf auch machen kann, sondern darauf hinzuweisen, dass es durchaus FIs gibt, die manches von dem, was man "normalerweise" einem Dipl.Inf anvertrauen würde auch erledigen kann. Sicherlich erfordert das von jedem einzelnen einen fundierten fachlichen Hintergrund. Wenn ich keine Ahnung von Zeitplanung und Menschenführung habe, dann sollte ich die Finger aus dem Projektmanagement - auch von kleineren Projekten - lassen. Aber nicht umsonst sieht man in den meisten Stellenbeschreibungen Sätze wie "Studium der Informatik oder vergleichbare Ausbildung". Und diese vergleichbare Ausbildung kann - je nach genauer Stellenausschreibung - vielleicht ein BWL Quereinsteiger, aber eben auch ein FI sein. Na, ich denke, dass sich manch ein FI oftmals nicht traut, sich auf Stellen zu bewerben, bzw. Aufgaben anzunehmen, die auf den ersten Blick nicht primär an ihn gerichtet sind, die er jedoch trotzdem durchaus managen kann, gesetzt der Fall der nötige Background ist vorhanden. Dazu kommt dann die - scheinbar auch hier oft vertretene Meinung - das hat eh keinen Zweck, du wirst lebenslang kleiner Coder bleiben und das wars.
  3. Und ich finde es immer wieder zugleich faszinierend wie erschreckend und von geringem Selbstwertgefühl zeugend, wie wenig sich manch ein Fachinformatiker zutraut, und auf was für eine Stufe er sich stellen lässt. Natürlich gibt es Jobs, in denen ein Studierter deutlich besser placiert ist, und in denen ein "normaler" Fachinformatiker sicher fehl am Platze ist. Aber es gibt es gibt einen sehr großen Bereich (den ich im IT Bereich für größer als in manch anderem Bereich halte), in dem sich die Berufsbilder überschneiden. Da macht es dann eben keinen Unterschied, ob derjenige nun über eine Ausbildung oder ein Studium in den Beruf hineingekommen sind. Ein gut qualifizierter Fachinformatiker (nicht der durchschnittliche PHP+MySQL Coder) kann es durchaus in vielen Bereichen mit einem Konkurrenten mit Hochschulabschluss aufnehmen. Auf dem Papier schön und gut - nur ob der Arbeitgeber, bei dem ich mich für deie Stelle bewerbe das genauso sieht steht auf einem anderen Blatt. Und ich weiss aus eigener Erfahrung, dass es oftmals eben nicht so ist, dass ein Dipl.Inf. automatisch besser als ein FI angesehen wird.
  4. Posten! Mit Stacktrace! Und dem Quelltextausschnitt, der sie verursacht hat! Nur so lässt sich wirklich feststellen, wo die Ursache liegt. Probier doch zum Debuggen mal folgendes: stmt = c.createStatement(); rset = stmt.executeQuery("select * from tbl_anhang where anhang_id=" + ianhang_id + " FOR UPDATE"); System.out.println("ResultSet implementation: " + rset.getClass().getName()); Was kommt raus?
  5. Dann könnte vielleicht dieser Post hier interessant sein: Quelle: https://listman.redhat.com/archives/ext3-users/2003-May/msg00046.html
  6. 1.5/5.0 ist jetzt seit fast einem Jahr auf dem Markt, und ich setze es daher als vorhanden voraus. Es programmiert auch niemand mehr für die Windows 3.1 API *g*. Eine performante Lösung gehörte nicht zur Aufgabenstellung *g*. Das ist das Problem, wenn der OP sich nicht die Zeit für eine korrekte Rechtschreibung nimmt. Dann sind Eigeninterpretationen Tür und Tor geöffnet. Ich habe es als "inne" also als "in einer" Schleife gelesen. Aber rekursiv geht's natürlich auch. Wiederrum basiert auf Character Operationen, aber damit kommt, wie ich finde, der Ablauf recht schön zum Ausdruck: public static int quersumme(int value) { if(value == 0) { return 0; } else { String valueString = String.valueOf(value); int firstDigitValue = Character.digit(valueString.charAt(0), 10); String restString = valueString.length() > 1 ? valueString.substring(1) : null; if(restString == null) { return firstDigitValue; } else { return firstDigitValue + quersumme(Integer.parseInt(restString)); } } }
  7. Welches Filesystem?
  8. Die Maximalgröße dürfte das unterliegende Filesystem vorgeben. Ich habe schon Archive von -zig Gigabyte gehabt - von daher liegt der beschränkende Faktor woanders.
  9. Eine weitere mögliche Lösung: public static int quersumme(int value) { int result = 0; for(char valueDigit : String.valueOf(value).toCharArray()) { result += Character.digit(valueDigit, 10); } return result; }
  10. Dringenst? Irgendwoher kommt mir das doch bekannt vor Also doch 'ne Hausaufgabe, wo morgen Abgabe ist, was? Lösungsansatz siehe Link weiter oben.
  11. Zwei, die mir spontan einfallen: DBManager http://www.dbtools.com.br/EN/index.php Squirrel SQL http://squirrel-sql.sourceforge.net/
  12. Hier (Firefox 1.0.7) klappts wunderbar, müssen nur genügend Slashes hin file://///ARIZONA/test/
  13. Wenn sich ein Fachinformatiker nicht per E-Mail bewerben sollte, wer dann? Von daher: Sofern eine E-Mail Adresse als Kontaktmöglichkeit angegeben ist, und nicht in der Stellenanzeige selbst ausdrücklich schriftliche Unterlagen angefordert werden, würde ich immer "nur" eine E-Mail senden. Schneller, direkter und trotzdem können alle Infos transportiert werden. Gar nichts. Es wird sich kaum jemand die mühe machen die noch anzusehen - wenn du einen super Eindruck in der Bewerbung hinterlassen hast unter Umständen - aber dann wird dich der Personalverantwortliche auch so zu einem Gespräch einladen. Von daher: Unnötiger Schnickschnack.
  14. Eine gut konfigurierte Firefox/Adblock Kombination wirkt da Wunder
  15. Wie ja hier schon zur Sprache gekommen ist: Du wirst gar nicht drum herum kommen, dich zu spezialisieren. Im IT-Bereich als Anwendungsentwickler alles zu können stellt eine kleine Unmöglichkeit da. Du hast einfach so viele unterschiedliche und komplexe Bereiche, dass es überhaupt nicht mehr möglich ist sich mit allem zu beschäftigen. Allerdings wirst du dich als Anwendungsentwickler nicht auf "die" Programmierung spezialisieren können. Das Beherrschen von mehreren Programmiersprachen gehört zum Handwerkszeug, das hat noch nichts mit Spezialisierung zu tun. Was du nicht wirst machen können ist zu sagen "Ich bin der Programmierer, die Konzeption und die Dokumentation sollen mal andere machen". Nur im stillen Kämmerlein vor sich hinzucoden wird irgendwann zu massiven Problemen in der Kommunikation (sowohl zum Kunden, als auch firmenintern) führen.
  16. Hast du es denn auch wirklich verstanden, oder glaubst du es verstanden zu haben, aber denkst dir hier und da noch "das könnte man jetzt aber auch anders auslegen". Gerade bei Programmierung etc. ist es wichtig in der Kommunikation (im Team und generell) äusserst präzise rüberzukommen. Was für mich glasklar klingt kann für meinen Kollegen komplett verwirrt klingen. Von daher: Wenn du dir nicht wirklich sicher bist, dass du es so verstanden hast, wie dein Kollege/Vorgesetzter es gemeint hat, dann fragen. Und wenn du dich nicht traust, weil du denkst "dann denken die, ich bin doof und raffe nix": Trotzdem fragen! Es bringt niemandem etwas, wenn du dich nicht traust im richtigen Moment die Fragen zu stellen, nur um hinterher als Antwort zu bekommen "Das war aber so und so gedacht. Wieso fragen Sie nicht, wenn Sie es nicht wirklich verstanden haben?" Wenn die Kommunikation am Anfang nicht stimmt wird meistens das ganze Produkt hinter nichts. Mein ehemaliger Chef und ich sind uns auch ab und zu mal an die Kehle gegangen, weil wir beide - vom jeweils anderen - gedacht haben "Jetzt muss ich das schon wieder erklären". Aber diesen Schritt musst du gehen. Und wenn das nicht klappt, dann wird es erst wirklich kritisch. Wie kannst du dann wissen, ob dir das ganze wirklich Spaß macht, wenn du es noch nie wirklich intensiv betrieben hast? Gerade im Zusammenhang mit dem nächsten Punkt: Weder HTML noch XML haben etwas mit Programmierung zu tun. Beides sind Auszeichnungssprachen, denen wichtige Elemente der strukturierten Programmierung fehlen. Was ist denn die Alternative? Wenn du still bleibst und nicht nachfragst, dann stehst du hinterher - zu recht - als derjenige da, der nicht verstanden hat, worum es sich am Anfang drehte und auch nicht wissen wollte worum es denn gehen sollte.
  17. Und, wo ist das Problem bzw. was ist deine Frage?
  18. Also wenn ich das jetzt richtig rausgelesen habe, soll das PDF aus dem Browser heraus angezeigt werden. Wenn auf dem Client-Rechner der Acrobat-Reader richtig installiert ist, sollte es ganz einfach über <a href="http://foo.bar/foobar.pdf">PDF öffnen</a> bzw. per Button über <input type="button" onclick="window.open('http://foo.bar/foobar.pdf', '_self')" /> gehen. Ist das Browser-Acrobat-Plugin nicht richtig installiert, gibt's keine allgemeine Variante das PDF direkt zu öffnen - hängt dann davon ab, wie der Browser konfiguriert ist und auf bestimmte Extensions bzw. Content-Types reagiert.
  19. Minimal. Über welches Programm soll die PDF geöffnet werden, oder anders gefragt: Was soll der Benutzer machen, nachdem er den Gedanken "Bitte PDF aufmachen" gefasst hat. Soll er im Browser auf einen Link klicken? Ein eigenes Programm starten? In zeitlich definierten Intervallen das PDF automatisch vor die Nase gesetzt bekommen? Hä? Klassen laufen nirgendwo. Ein Programm läuft - wobei uns das bei deinem Problem noch immer nicht wirklich weiterbringt.
  20. Richtig, denn public File(URI uri) Creates a new File instance by converting the given file: URI into an abstract pathname. Was vielleicht noch, neben den Tips, die du schn bekommen hast ganz interessant sein könnte, ist ein HTTP Client Package, z.B.: HTTPClient http://jakarta.apache.org/commons/httpclient/ oder (was ich deutlich besser finde) HTTPUnit http://httpunit.sourceforge.net/
  21. perdian

    Fakultät in C

    Dann berichte uns doch einfach mal, was du bisher schon hast, und zeig mal genau die Stelle auf, an der es hakt. Hast du generell noch Probleme mit dem Verstehen des Konzepts "Fakultät" oder bei der genauen Umsetzung? Also lass mal was Input raus, es ist schließlich deine Hausaufgabe, nicht unsere
  22. Erstmal solltest du klarstellen, was du genau machen willst - das geht nämlich aus deinem Posting überhaupt nicht hervor. Wer soll das Öffnen triggern? Wahrscheinlich der Client, aber wann und wie? Wo soll die Datei geöffnet werden - auf dem Server oder auf dem Client? Und was willst du nun mit Java oder JavaScript machen? Die Datei aus einer Applikation, öffnen? Die Datei irgendwohin übertragen? Die Datei im Browser öffnen - wenn ja, wann? Nach einem Klick auf einen Button? Ohne diese Infos ist alles andere wildes herumraten, aber mal ein Beispiel, wie ich mit Java (das scheinst du ja zu wollen) die Datei vom Server öffne: public static void main(String[] args) throws Exception { URL theURL = new URL("http://localhost/somewhere/Test.pdf"); InputStream theStream = theURL.openStream(); // Do stuff with the stream theStream.close(); }
  23. Dafür dürfte es wohl kaum ein fertiges Tool geben - aber ist in ein paar Minuten selbst geschrieben: package de.perdian.demo; import java.io.File; import java.util.Date; public class FileCheck { private static final long THREE_DAYS = 1000 * 60 * 60 * 24 * 3; public static void main(String[] args) { File directory = new File(args[0]); File[] directoryEntries = directory.listFiles(); for(File file : directoryEntries) { long lastFileAccess = file.lastModified(); long timeSinceLastFileAccess = System.currentTimeMillis() - lastFileAccess; if(timeSinceLastFileAccess > THREE_DAYS) { FileCheckEmailSender sender = new FileCheckEmailSender(); sender.sendEmail(file); } } } } class FileCheckEmailSender { public void sendEmail(File modifiedFile) { StringBuilder message = new StringBuilder(); message.append("File geändert: ").append(modifiedFile.getAbsolutePath()); message.append("\nDatum: ").append(new Date(modifiedFile.lastModified())); // Jetzt die message irgendwie versenden EmailSender.send(message); } }
  24. Dann google doch einfach mal nach "object tag applet jar" und du wirst folgendes Ergebnis an erster Stelle finden, dass genau dieses Problem lösen wird: http://ww2.cs.fsu.edu/~steele/XHTML/appletObject.html
  25. Du hast das wichtigsten schon selber vorausgenommen - um das Laden deiner eigenen Plugin-Klassen wirst du nicht herumkommen, das heisst mit dem ClassLoader Konzept wirst du dich auf jeden Fall beschäftigen müssen. Der erste Schritt ist also erstmal herauszufinden welche Plugins überhaupt verfübar sind. Das geht entweder über eine Konfigurationsdatei, in der alle Plugins aufgelistet sind, oder über ein implizites Verzeichnis-Listing (jeder Unterverzeichnis in Verzeichnis X definiert ein Plugin. Diese Infos ziehst du in einen Plugin-Descriptor, der in etwa so aussehen könnte: public class PluginDescriptor { private File myPluginDirectory = null; /** * Sets the directory, in which the plugin files are located */ public void setPluginDirectory(File directory) { this.myPluginDirectory = directory; } /** * Gets the directory, in which the plugin files are located */ public File getPluginDirectory() { return this.myPluginDirectory; } } Damit hast du dann die Info was ist vorhanden. Jetzt gilt es die Frage wie komme ich an die Plugin-Logik zu beantworten. Ich finde da die Eclipse Variante immer noch am besten - in jedem Plugin Verzeichnis ist ein Descriptor vorhanden, der die zu ladende Plugin-Klasse angibt, also in etwa so etwas: <?xml version="1.0" encoding="ISO-8859-1" ?> <plugin> <plugin-class value="de.perdian.test.PluginTest" /> </plugin> Anhand dieser Infos können wir jetzt mit dem Plugin-Laden beginnen. Hierzu nehmen wir uns einen eigenen ClassLoader, aus dem wir die in der XML Datei definierte Klasse laden. Die implementiert das allgemeine Interface Plugin, das als Argument die Einstellungen des aktuellen Systems erhält und dann die eigentliche Logik ausführt. Dem ClassLoader selbst übergeben wir als zusätzlichen Classpath (zum System Classpath) alle Dateien, die im Plugin-Verzeichnis unterhalb eines Lib-Verzeichnisses liegen. Und schon sind wir fertig Implementierungsmäßig in etwa so: public class PluginLoader { public void loadPlugins(ApplicationEnvironment ae) { File pluginsDirectory = this.computePluginDirectory(); File[] pluginDirectories = pluginsDirectory.listFiles(); for(File pluginDirectory : pluginDirectories) { PluginDescriptor pluginDescriptor = new PluginDescriptor(); pluginDescriptor.setPluginDirectory(pluginDirectory); this.loadPlugin(pluginDescriptor, ae); } } protected void loadPlugin(PluginDescriptor pd, ApplicationEnvironment ae) { try { // Compute new classpath File libDirectory = new File(pd.getPluginDirectory(), "lib"); File libFiles[] = libDirectory.listFiles(); URL[] libURLs = new URL[libFiles.length); for(int i=0; i < libFiles.length; i++) { libURLs[i] = libFiles[i].toURL(); } // Compute plugin class name File xmlFile = new File(pd.getPluginDirectory(), "descriptor.xml"); Document xmlDocument = XmlTools.createDocument(xmlFile); Element pluginClassElement = XmlTools.getFirstFittingElement(xmlDocument, "plugin-class"); String pluginClassValue = pluginClassElement.getAttribute("value"); // Create ClassLoader, load plugin and execute ClassLoader pluginClassLoader = new URLClassLoader(libURLs, this.getClassLoader()); Class pluginClass = pluginClassLoader.loadClass(pluginClassValue); Plugin pluginInstance = (Plugin)pluginClass.newInstance(); pluginInstance.executePlugin(ae); } catch(Exception e) { throw new RuntimeException("Cannot load Plugin"); } } }

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...