5 Stimmen

asm / C / Python / Perl / Lisp / Scheme Programmierer auf der Suche nach etwas Neuem zum Lernen

Ich brauche ein Projekt für zu Hause, jetzt, wo ich bei der Arbeit an Python/Django arbeite. Ich würde gerne etwas Neues lernen, also habe ich mir überlegt, Java auszuprobieren.

Welches ist das bekannteste Web-Framework für die Bereitstellung von Java-Webanwendungen? Der einzige Grund, warum ich mir Ruby on Rails nicht ansehe, ist die Ähnlichkeit des ORM und anderer Teile mit Django.

Oder meint jemand, dass ich mir seaside/smalltalk ansehen sollte? Kann mir jemand erklären, warum ich das tun sollte?

Haskell ist etwas, das ich in Betracht ziehen werde, wenn jemand ein gutes Argument dafür vorbringen kann. Ich bräuchte allerdings ein Web-Framework und eine Bibliothek für den Datenbankzugriff, um es zu begleiten.

Ich würde factor/forth in Betracht ziehen, wenn ich nicht so sehr an das Stack-Paradigma über x86/asm gewöhnt wäre. Ich würde auch gerne alle Gegenargumente dazu hören.

Siehe auch: http://www.reddit.com/r/programming/comments/9v3uf/asm_c_python_perl_lisp_scheme_programmer_looking/

2voto

Pete Kirkham Punkte 47746

Ich bräuchte allerdings ein Web-Framework und eine Bibliothek für den Datenbankzugriff, um das Ganze zu begleiten.

Wenn Ihre gesamte Programmierung auf Web-Frameworks und SQL-Datenbanken basiert, werden Sie nur die gleichen Probleme mit einer anderen Syntax lösen, wenn Sie die Sprache wechseln.

Bauen Sie etwas mit einem anderen Datenmodell - Prolog, Conceptual Graphs, RDF, Linda/JavaSpaces, XQuery, HDF5, ASN.1, oder einem anderen Netzwerkmodell - XMPP pub-sub, SNMP, einem Zero-Config-Mesh oder einem Schwarm von ZigBee-fähigen Arduinos.

Vielleicht sollten Sie sich Sprachen wie Oz , Io o Erlang/OTP die nicht wie die von Ihnen genannten primär monolithisch, sondern verteilt sind.

0voto

Kris Krause Punkte 7218

Was ist mit dem Java Spring Framework?

http://www.springsource.org/

Oder vielleicht NHibernate?

http://en.wikipedia.org/wiki/NHibernate

Letzten Endes liegt es an Ihnen. Ich habe ja nur zwei von vielen aufgezählt. Wenn ich beruflich eine statische Sprache programmiere... versuche ich, eine dynamische oder Skriptsprache zu lernen. Und andersherum.

Außerdem versuche ich, etwas völlig anderes oder außerhalb meines Fachgebiets zu lernen... vielleicht sogar Powershell oder Korn Shell oder ActionScript.

0voto

Pascal Thivent Punkte 548176

Welches ist das bekannteste Web-Framework für die Bereitstellung von Java-Webanwendungen?

Es gibt kein einzelnes Web-Framework, das angesehener ist als andere. Struts2, Spring MVC, Stripes oder Wicket (das ereignisbasiert ist) sind alle gute Kandidaten (ich persönlich mag Stripes). Aber Sie brauchen etwas mehr für die Persistenz (Hibernate oder JPA) und für den Glue (Spring).

Grails (Groovy on Rails) ist eine weitere gute Option.

Oder meint jemand, dass ich mir seaside/smalltalk ansehen sollte? Kann mir jemand erklären, warum ich das tun sollte?

Nun, ich denke, Smalltalk zu lernen kann nicht schaden, aber ich sehe keinen guten Grund, Smalltalk einer moderneren Sprache wie Java vorzuziehen. Was das Tooling betrifft, so kenne ich mich in diesem Bereich nicht aus, außer VisualAge für Smalltalk aber ich persönlich würde mich wirklich weit davon entfernen.

Haskell ist etwas, das ich in Betracht ziehen werde, wenn jemand ein gutes Argument dafür vorbringen kann. [...]

Sieht so aus, als wäre ich nicht der richtige Mann dafür.

Ich würde factor/forth in Betracht ziehen, wenn ich nicht so sehr an das Stack-Paradigma über x86/asm gewöhnt wäre. Ich würde auch gerne alle Gegenargumente dazu hören.

Dasselbe wie oben.

0voto

Ich hätte vorgeschlagen, Lisp (in einem relevanten Dialekt) zu beherrschen. Selbst wenn Sie Lisp und Scheme in Ihrem Lebenslauf stehen haben, könnte es sich lohnen, wirklich tief zu lernen. Siehe http://www.paulgraham.com/avg.html für die Gründe dafür.

Ansonsten könnte Sie Prolog interessieren. Es ist mit SQL verwandt, aber für die Programmierung und nicht für die Kommunikation mit einem organisierten Satz von Datentabellen.

Wenn Sie auf Webtechnologien abzielen wollen, habe ich nur Erfahrung mit Java. Hier ermöglichen die neuesten Java Server Faces (JSF) die Verwendung von Ajax zur Aktualisierung von Seiten, und das Google Web Toolkit ermöglicht sehr umfangreiche komponentenbasierte Webseiten. Vielleicht sind diese Themen interessant genug für Sie, um genug Java zu lernen, damit sie Ihnen Spaß machen :)

0voto

jarhead Punkte 1

Ich sehe C# und die .NET-Plattform nicht auf Ihrer Liste. Und ich bin überrascht, dass sie noch niemand erwähnt hat.

Ich habe 5 Jahre lang in C# gearbeitet. Ich habe mir einige Java-Code angesehen, aber ich habe nie in ihm codiert. Ich glaube, dass Java und C# so ähnlich sind, dass man, wenn man das eine beherrscht, sich das andere in wenigen Tagen aneignen kann.

Eine Idee könnte sein, eine eigene Sprache / einen eigenen Compiler zu entwickeln. Ich würde gerne einen Compiler auf Assembler-Niveau mit einer objektorientierten Syntax erstellen (oder erstellen lassen), der Python sehr ähnlich wäre aber es wäre eine typisierte Sprache. Man könnte mit den grundlegenden Binärtypen db, dw, dd beginnen und diese dann erweitern Die Funktionen und Methoden könnten Assembler frei in den High-Level-Code mischen. Das wäre ein lustiges Projekt, denke ich?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X