Beiträge von ComSubVie

    Also die alten LabKits (mit irgendwelchen ncc-nummern :D) wurden über den ISP programmiert, und ich nehme eigentlich nicht an das sich das inzwischen geändert haben sollte, insbesondere da ISP die einfachste und bequemste Art ist, die AVRs zu programmieren (und ich glaube nicht das die inzwischen auf JTAG umgestiegen sind - wobei ich glaube [ich bin heute ein richtig gläubiger Mensch :D] das JTAG auf den AVRs ohnehin die gleichen Pins wie ISP verwendet - aber das müsst ich nachlesen, und dazu bin ich grad zu faul).

    Mit welcher Hardware werden denn die LabKits derzeit programmiert? Ist das noch immer so ein direkter BitBanging-Serial-Programmer, oder ist das inzwischen schon etwas "professionelleres"?

    Was macht diese Komponente? Wozu ist das at16prog da? Vom Namen her würde ich sagen das ist nur ein Programmer, und du kannst stattdessen genausogut avrdude, uisp und ähnliche verwenden.

    Oder du sagst uns was du für Probleme beim Kompilieren hast - welche Fehlermeldungen bekommst du, ... - du kannst auch versuchen das ganze aus darwinports zu kompilieren, vielleicht gehts dort besser.

    Also TW ist ja an sich nicht übel, aber gegen die Klassiker (TD, TS) kommt's nicht ran (die RA-Reihe hat mich nie so überzeugt).

    Auch die anderen Spiele wie Z und KKND fand ich ziemlich gut, auch die Earth 21x0-Serie war nicht übel.


    Sehr empfehlenswert ist auch Supreme Commander, das hat ordentlichen taktischen Tiefgang - dafür ist die Story nicht mal näherungsweise auf C&C-Niveau.

    Für die C&C-Fans kann ich mal einen Blick auf http://www.cncforen.de empfehlen.

    Hallo mal wieder!

    Ich habe ein WebService (EJB3), das mit ein Array von einem selbstgebastelten Objekt zurückliefert - z.B. Country. Wenn ich jetzt dieses WebService als "Web Reference" im Visual Studio einfüge, dann generiert er mir für die Country ja brav eine Klasse.

    Das Problem ist jetzt allerdings wenn ich diese Country irgendwo im UI verwenden will (sei das TextBox, oder das ganze Array in einer ComboBox, etc.), dann zeigt der mir nur (ServiceName).Country an, und nicht was denn da drin ist. Ok, klar, schließlich weiß der ja nicht wie ToString() aussehen soll.

    Jetzt die Frage: kann ich in diese automatisch generierten Klassen (es ist ja nur die Country) eine Methode "ToString()" injecten, sodass ich mir das ableiten neuer Klassen (es handelt sich dabei nicht nur um die Country sondern um einen Haufen anderer Objekte) ersparen kann? Weil sonst muss ich das vom Service in ein neues Objekt umcasten und dann wieder zurückcasten. Ist umständlich. Viel einfacher wäre, wenn ich ihm einfach sagen könnte "für die Klasse Country sieht deine ToString() Methode wie folgt aus".

    Bin für alle Hinweise dankbar!

    Wo Java doch Generics kann, sollte man diese doch auch nutzen. Aber irgendwie scheint die Umsetzung ein bisschen Pfusch zu sein...

    Also ich will in der Superklasse eine generische Funktion haben, damit ich das nicht in jeder Subklasse selbst implementieren muss. Diese Funktion konvertiert mir eine Liste in ein Generic Array (da sind dann aber natürlich noch ein paar andere Funktionen drin). Jedenfalls war das die Idee:

    Und jetzt würde ich mir davon einfach ein paar Klassen bauen, die das verwenden, also z.B. "public class AddressManager extends Manager<Address>"

    Allerdings kompiliert mir die Manager Klasse nicht, weil "Cannot create generic array of E" sowie "The cast from Object to E is actually checking against the erased type Object". Aha. Warum?!?

    Außerdem würd ich auch gerne meine PersistenceManager Abfragen generalisieren, also

    Code
    public E[] getList() {
            Query query = em.createQuery( "SELECT c FROM " + E.class.getName() + " AS c" );
            List resultList = query.getResultList();
            return convertListToArray( resultList );
        }

    Allerdings will er ein E.class.getName() auch nicht "Illegal class literal for the type of parameter E".

    Irgendwelche Vorschläge wie ich Java trotzdem dazu bringen kann meinen Code zu fressen (bzw. mir viel Copy&Paste zu ersparen)?

    Ich ärgere mich mal wieder über das ach so toll dokumentierte J2EE. Also ich hab mir ein kleines Demo-Programm gemacht, das im Prinzip nur Länder (Code/Name) speichern soll. Das Land ist eine EntityBean, und das WebService mit dem ich diese anlegen suchen und löschen kann eine Stateless SessionBean. Funktioniert ja prinzipiell schön, nur die Suche sollte natürlich alle passenden Ergebnisse liefern. Was liegt also näher als eine Collection<Country>? Naja, jedenfalls liefert mir der JBoss dann ein "JAX-RPC does not allow collection types". Ach ja, geil, warum? Naja, vielleicht ist ihm ein Interface zu wischiwaschi, mal ein echtes Ding probieren, also alle Rückgabewerte auf LinkedList<Country> casten. Gleicher Effekt.

    Wie krieg ich das blöde Ding dazu Collections zurückzuliefern? Weil das ich ein search() und next() implementiere kanns ja nicht sein, oder?

    edit: Ein Country[] als Rückgabewert hat er letztendlich gefressen, aber das ist nicht unbedingt elegant, ich mein wofür gibt's denn die Collections wenn man dann erst wieder zu Array gezwungen wird?!?

    Ich habe gerade den Buchauszug Crafting Java with Test-Driven Development, Part 6: Refactoring Tests gelesen, dabei ist mir ein seltsamer Parameter aufgefallen:

    Code
    private void assertPlayers(String... expected) {/**/}

    Zuerst dachte ich das das "..." ein Platzhalter ist, aber warum sollte man nur
    für einen Array-Of-String (stimmt nicht ganz) das nicht gleich so angeben?Also ran an den Editor erster Wahl (vim) und reinklopfen. Überraschung, der Code funktioniert wirklich!!!

    Hier mein kompletter Testcode - nur dafür wesentliche Auszüge aus dem obigen Artikel - nur um zu testen ob das überhaupt funzt, falls es wen interessieren sollte:

    Kann mir da mal wer erklären, was da genau passiert? Funktioniert das nur mit Generics? Ich gehe mal davon aus, das das eine Java5-Erfindung ist.

    Wie gesagt, das kommt aufs Ziel an - wenn du in den embedded Bereich willst, kannst du mit C++ nicht viel anfangen (da kannst du sogar mit Java mehr anfangen, mittlerweile gibt es ja Controller mit einer eigenen VM drauf).

    Anderenfalls ist es egal. OOP ist zwar ein nettes Konzept, kann viele Dinge vereinfachen, aber oft kriegst du eine Lösung ohne OOP schneller fertig. Wenn du aber OOP lernen willst, ist es sicher sinnvoller gleich mit einer OOP-Sprache zu beginnen, sonst blockierst du am Anfang das objektorientierte Denken.

    Naja, das kommt auf das Bakk an - EPROG hast du auf jeden Fall, aber das wird AFAICT auch noch als C(++)-Alternative irgendwo angeboten. Eventuell hast du dann noch OOP, und das ganze ComputerGrafik-Zeug verwendet auch Java (was für mich irgendwie unverständlich ist, aber bitte). Beim bakk. technische Inf. hast du dafür weitaus mehr C: Sysprog, Microcontroller, Embedded Systems Programming.

    In der Software-Entwicklungs-Industrie wird derzeit C(++) etwas mehr gebraucht als Java, im Bereich der Web-Applikationen ist Java eher verbreitet (JBoss und so Zeugs), im Bereich von Webseiten fast nur PHP, ein bisschen Perl, Python, Ruby. Und wenn du was im embedded Bereich machst, wirst du vermutlich nur C und eventuell ein bisschen Shellscripting brauchen.

    Zum Lernen würde auch auch nicht so einfach Java oder C empfehlen. Das kommt darauf an, was du genau lernen willst, und was deine Ziele sind. Wenn du "nur programmieren" lernen willst, nimm C. Wenn du embedded Systems programmieren willst, nimm C. Wenn du Multithreading oder Echtzeitapplikationen programmieren willst, nimm Ada - oder C mit entsprechenden Erweiterungen. Wenn du OOP lernen willst, nimm Smalltalk oder Python. Wenns dir mehr um funktionale Algorithmen geht, nimm Haskell oder ähnliches. Und wenn du Webservices oder Enterprise-Applikationen mit verschiedensten Interfaces machen willst, nimm Java.

    Programmieren lernen kannst du mit jeder dieser Sprachen etwa gleich gut, es kommt eben vor allem aufs Ziel an. Und im Prinzip gehts - wie Kampi schon gesagt hat - ja vor allem um die Grundkonzepte, und da ist die Sprache vollkommen egal. Ob ich 08/15-Übungsbeispiele in C, Java, Pascal, Modula, Ada, oder sonstwas schreibe ist egal, da ist zwar die Syntax zum Teil ein wenig unterschiedlich, aber die Syntax ist ja nicht wirklich das was das Programmieren ausmacht.

    Ne, ich meinte viel langer deutscher Text und dann quasi nach belieben englische Fachausdrücke hineingestreut. Aber du hast da noch einen wunderbaren Punkt gebracht, warum englische Literatur zu bevorzugen ist: dann machen die Namen der ganzen Befehle in den Beispielen erst Sinn. Ich finds zum Beispiel auch grauenhaft einen Code zu haben, wo natürlich englische stdlib-Befehle (oder von mir aus API-Methoden) in deutschnamigen Beispielfunktionen stehen, das ist auch wieder so ein Fall einer bunten Mischung.

    Allerdings muss ich zugeben, das Schlimmste was ich bisher gesehen habe, war Code mit französischen Funktionsnamen und französischen Kommentaren.

    Naja, was ich an deutschen Büchern nicht mag ist das entweder krampfhafte übersetzen von englischen Fachbegriffen ins Deutsche, oder die bunte Mischung aus Deutsch mit englischen Begriffen drin. Du hast schon recht das es durchaus gute deutsche Bücher gibt, aber (leider?) ist die Vielzahl der guten Autoren englischsprachig, und die Bücher daher auch - und Übersetzungen können zwar durchaus gut sein, aber da lese ich dann doch viel lieber das Original.

    Das gilt im übrigen nicht nur für Computerbücher, sondern auch für jegliche andere Literatur - ok, da gibt es weitaus mehr brauchbare deutschsprachige Autoren, aber wenn man sich die Übersetzungen ansieht, dann ist das nur furchtbar. Das derzeit vielleicht populärste Beispiel ist wohl "The Da Vinci Code" bzw. "Das Sakrileg" (alleine die Übersetzung des Titels ist furchtbar, wie bei allen Dan Brown Büchern), und der deutsche Schreibstil ist zwar durchaus brauchbarer, aber in Englisch ist es IMHO besser geschrieben. Noch ein Beispiel? Terry Pratchett - das ist in Deutsch zwar durchaus sehr unterhaltsam, aber der Großteil der Wortwitze kommt nicht so gut - wenn überhaupt - rüber.

    Fazit: nichts gegen deutsche Bücher, die sind durchaus brauchbar, aber Übersetzungen erreichen meistens nicht die Qualität des Originals, und insbesondere in der Informatik kann man sich ruhig angewöhnen die Literatur auf Englisch zu lesen - es gibt da auch meistens weitaus mehr - wirklich gute - Standardliteratur (wie z.B. TIJ) als auf Deutsch.

    Zitat von sauzachn

    Hm da ist vieles, so ein paar Kleinigkeiten:
    Z.b. mit Alt+F2 ein Befehlsfenster aufmachen, wo ich einfach eine URL eingebe. Das muss nicht http:// sein, sondern kann praktisch alles von media:/ bis mailto: umfassen.
    Dann z.b. das schwache Terminal, kann mit Konsole nie mithalten.
    Dann die Webshortcuts. "gg:begriff" sucht in Google nach Begriff, ist aber auch beliebig erweiterbar und es gibt gute Voreinstellungen (wp:Begriff sucht in Wikipedia etc.).
    Das Umschalten mit "Alt+Tab" zw. mehreren Instanzen desselben Programms geht offenbar gar nicht.

    was du brauchst ist:

    quicksilver, damit kannst du mit ctrl+space *alles* machen. tippst die anfangsbuchstaben von einem programm ein, kannst es starten. tippst eine url ein, macht er die auf. tippst wörter ein, suchet er in google. tippst einen namen ein, kannst dir aussuchen obst ichat, mail oder adressbuch damit aufmachen willst. etc, etc, etc. echt genial.

    witch, damit kannst mit alt+tab zwischen allen fenstern umschalten (so wie apfel+tab, nur halt mit allen fenstern, und nicht nur den programmen).