Funktionale Programmierung - Hilft es berufliche Perspektiven, wenn man es weiß? [geschlossen]


13

Die Hauptsprache, die ich im Moment benutze, ist C # und ich fühle mich am wohlsten damit. Ich habe jedoch angefangen, mich mit F # und Haskell zu beschäftigen und genieße diese Sprachen wirklich. Ich würde gerne meine Kenntnisse in einer dieser Sprachen im Laufe der Zeit verbessern, da es mir wirklich Spaß macht, sie zu benutzen (im Gegensatz zu Ruby, der als "lustig" gehypt wird, verstehe ich einfach nicht, wo der Spaß ist, aber Ich schweife ab...). Meine Frage richtet sich an diejenigen, die für Programmierpositionen eingestellt / interviewt wurden (Junior / Mid-Level): Wenn Sie eine funktionierende Programmiersprache in einem Lebenslauf sehen, hat dies Auswirkungen auf Ihre Meinung (ob positiv oder negativ) zu diesem Kandidaten?

Mein Grund für die Kenntnis der funktionalen Programmierung, die sich auf die Sichtweise eines Kandidaten auswirkt, ist, dass sie zeigen kann, dass sich der Kandidat an verschiedene Methoden anpassen und Probleme mehrdimensional angehen kann als mit dem "gleichen alten OO-Ansatz". (Dies kann außerhalb der Basis sein, bitte lassen Sie mich wissen, ob diese Annahme ebenfalls zutrifft!)


Als ich mich auf meine aktuelle Stelle bewarb, habe ich Lisp in meinen Lebenslauf aufgenommen, weil ich ihn während meines Masterstudiums ausgiebig genutzt hatte. Später erzählte mir mein Chef, dass er, nachdem er Lisp gesehen hatte, meinen Lebenslauf sofort auf den "kurzen Haufen" legte. Es hat mir also direkt geholfen, ein Interview zu bekommen, obwohl die Position keine Kenntnisse der funktionalen Programmierung erfordert.
ckb

Antworten:


12

Ich war der Techniker, der kürzlich bei Interviews für C # / ASP.NET-Entwickler half, und ich kann Ihnen sagen, dass es ihnen verdient hätte, wenn sich einer von ihnen mit funktionalen Sprachen beschäftigt hätte - oder tatsächlich mit etwas, das eindeutig von ihrer Arbeitserfahrung entfernt war definitive tick von mir. Ich denke, es gibt eine enorme Korrelation zwischen Spaß am Lernen und dem Herumtollen mit neuen Dingen und der Tatsache, dass man zu den besten Programmierern gehört.

Speziell für die funktionale Programmierung: Ich denke, LINQ ist eine der bedeutendsten Neuerungen in der C # -Sprache. Wir verwenden es sehr häufig, und obwohl es nicht für alle selbstverständlich ist, kann ich mir nicht vorstellen, dass jemand mit funktionaler Erfahrung Schwierigkeiten beim Arbeiten hat mit.


1
Das ist gut zu wissen! Ich LIEBE LINQ absolut und da ich funktionale Programmierung gelernt habe, habe ich mich von den SQL-ähnlichen Abfragen abgewandt und bin dazu übergegangen, Lambda-Ausdrücke zu verwenden.
Jetti

2
@ Jetti - yep Ich bevorzuge auch den Lambda-Ansatz. Außerdem gibt es etwas an den SQL-ähnlichen Abfragen, das mich dazu bringt, den klassischen "= wo ich ==" Fehler zu machen. Ich denke, meine Finger schreiben TSQL, nicht C #. :-)
Carson63000

22

Wenn Sie das Funktionsparadigma kennen, sind Sie ein besserer Programmierer. Sprachen wie Haskell zeigen, dass Sie mehr als ein Instrument in Ihrem mentalen Werkzeugkasten haben möchten.

Das sollte Ihre Attraktivität als Angestellter konkret steigern. (Wenn nicht, wäre ich nicht daran interessiert, für dieses Unternehmen zu arbeiten.)


3

Meiner persönlichen Meinung nach (ohne einschlägige Erfahrung) hängt dies von der Stelle ab, für die Sie ein Vorstellungsgespräch führen, und davon, ob Sie über spezifische Erfahrungen in einem Sprachparadigma verfügen. Wenn Sie ein Vorstellungsgespräch für eine Java-Rolle führen (oder in Ihrem Fall für C #), werden Sie nicht für Ihre funktionalen Programmierkenntnisse eingestellt und umgekehrt. Wenn Sie sich jedoch für eine Programmierrolle entscheiden und mehrere Sprachen programmieren können, kann dies nur als gutes Zeichen angesehen werden, dh Sie sind ein guter Informatiker mit einem breiten Erfahrungsspektrum.


1

Absolut. Die Industrie schreit jetzt nach F # -Programmierern und ist bereit, Top-Dollar zu zahlen. Beachten Sie, dass sich dies nicht von anderen kommenden Technologien wie LINQ, TPL, Silverlight usw. unterscheidet.


4
Können Sie einen Link oder eine Liste von Unternehmen bereitstellen, die F # -Programmierer einstellen? Die einzige, die ich mit Sicherheit kenne, ist die Credit Suisse, und zwar nur, weil Don Syme sie in seinen Blog aufgenommen hat.
Jetti
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.