2010-08-14 10 views
6

Ich bin ein Windows-Entwickler mit über 15 Jahren Erfahrung. Ich habe gerade angefangen, die neueste Version von Ubuntu Linux zu betrachten. Könnte mir jemand auf einen guten Einsteigerleitfaden zu Ubuntu hinweisen (am besten von einem Entwickler), der sich an einen Windows-Benutzer richtet? Ich habe mehrere mit Google gefunden, aber leider weiß ich so wenig zu diesem Thema, dass ich keinen guten Führer von einem schlechten erzählen kann. Ich habe Version 10.04 LTS.Anfänger Ubuntu Linux Guide für erfahrene Windows-Entwickler

+1

Ich denke, Sie möchten vielleicht Ihre Frage ein wenig konkreter stellen. Warum fragst du gerade nach Ubuntu? Wenn Sie nicht gerade versuchen, an Debian/Ubuntu-spezifischen Anwendungen zu arbeiten (d. H. Ein paar grundlegende Dinge wie aptitude), würde ich vermuten, dass Sie Linux-Anwendungen mit Ubuntu für Ihre Umgebung entwickeln wollen? Fragen Sie also, ob Ubuntu als Entwicklungsumgebung eingerichtet wird? Oder vielleicht bin ich weit weg und Sie wollen wirklich nur etwas über die Entwicklung für Linux wissen. – Cascabel

+1

Es könnte einen Besuch wert sein: ubuntu.stackexchange.com (jetzt public-beta) oder unix.stackexchange.com (public-beta in 3 Tagen) für Antworten dort. –

Antwort

5

Die Linux-Welt ist viel fragmentierter als die Windows-Welt; Für die Entwicklung von GUI-Programmen gibt es mehrere GUI-Toolkits zur Auswahl (GTK und QT sind die zwei beliebtesten; es gibt auch FLTK, TK, und sogar das alte Motiv kickt immer noch herum).

System-Programmierung ist Gott sei Dank viel besser, kaufen Sie eine Kopie von Advanced Programming in the UNIX® Environment, Second Edition und Sie haben genug, um große System-Tools auf Dutzenden von Plattformen zu schreiben.

Wenn Sie irgendwo in den mittleren Schichten arbeiten, eine höhere Ebene als Systemprogrammierung, werden Sie normalerweise mit anderen Bibliotheken und Toolkits arbeiten: Apache, PostgreSQL, Hadoop, Libevent, Tomcat, Ruby on Rails, Django, Expat, GnuTLS, OpenSSL, Perl, Python, Ruby, Erlang, etc. Herauszufinden, welche der Optionen, mit denen Sie arbeiten müssen, kann entmutigend sein, aber die meisten Projekte haben eine angemessene Dokumentation.

Die meisten Werkzeuge haben manpages: abschöpfen man man, und dann: man 1 intro, man 2 intro, man 3 intro, man 4 intro, man 5 intro, man 7 intro, man 8 intro. (Fühlen Sie sich frei auf man 6 intro suchen, wenn Sie wollen, aber manuelle Abschnitt 6 ist für Spiele.) 1 ist für Benutzer-Befehle, 2 für Systemaufrufe, 3 für Bibliotheksaufrufe, 4 für Gerätedateien, 5 für Konfigurationsdateien, 7 für " Frameworks "(socket(7) und ip(7) für Socket- und IP-Details), 8 für Systemverwaltungsbefehle.

Vielleicht würde die Frage nach einem konkreten Rat zu konkreteren Antworten führen - die einfache Wahrheit ist, dass es auf Linux-Systemen keine einfache Programmieranleitung gibt.

0

Ubuntu Forums hat viele gute Informationen, wo Sie auch spezifische Fragen für ubuntu

1

Einige, dass das Erlernen einer Linux-Distribution speziell kontraintuitiv auf das Ganze könnte argumentieren, fragen ‚Linux Mentalität.‘ Ich fürchte, ich kann Ihre Frage nicht speziell in Bezug auf gute Führungsressourcen beantworten, aber ich habe in meiner Suche etwas Neues zu finden, einen Platz in der Lage, Fragen zu stellen ist wichtiger als eine all-inclusive mir. Zu diesem Zweck würde ich auch http://ubuntuforums.org/ empfehlen - es gibt Ihnen eine Chance, alles zu klären, was keine Bände beantworten konnten.

Ich könnte auch vorschlagen, alles zu vergessen, was Sie über Windows wissen, wenn Sie lernen. Ich bin sicher, dass Sie mit fünfzehn Jahren ein erfahrener Windows-Entwickler sind. Es gibt eine Menge Dinge, die sich gut übertragen lassen, wie zum Beispiel gute Programmierpraktiken, und es gibt einige Dinge, die scheinbar kontraintuitiv sind (oder sogar sein können). Wenn du lernst, diese in deinem Schritt zu nehmen und zu akzeptieren, dass du lernst und nicht versagst, werden eine Installation von Ubuntu und der Wunsch zu lernen dich besser machen als jeder andere Ubuntu-Band.

0

Erstens würde ich bei https://help.ubuntu.com/community/Programming für einige Ideen suchen

Aber für uns hilfreicher zu sein müssen Sie entscheiden, was genau sind Sie zu entwickeln suchen? Zum Beispiel ist es eine C# -, C++ - oder Java-Anwendung?Ist es eine Desktop-, mobile oder Web-Anwendung?

Es gibt verschiedene Werkzeuge für verschiedene Projekte.

Going durch Ihre vorherigen Fragen würde ich Ihr eine C# Programmierer denken, so dass ich am mono project