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
Antwort
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.
Ubuntu Forums hat viele gute Informationen, wo Sie auch spezifische Fragen für ubuntu
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.
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
einen Blick würde ich http://www.wiki.ubuntu.com überprüfen würde.
Der obige Link ist fehlgeschlagen - aber http://wiki.ubuntu.com/ funktioniert – Phantomwhale
- 1. Anfänger Linux-Programmierung mit xCode?
- 2. Java-Buch für erfahrene Programmierer (PHP)
- 3. Erreichbarkeits-Guide für iOS
- 4. Prozessüberwachung - Python/Ubuntu/Linux
- 5. Ubuntu Linux Library Path
- 6. Linux Anfänger, wo Boost-Bibliotheken zu setzen?
- 7. style guide für mehrzeilige html
- 8. Starter Guide für Apache ServiceMix
- 9. Tastenkombinationen in Linux (Ubuntu) deaktivieren
- 10. AndroidStudio Absturz auf Ubuntu Linux
- 11. Verteilen einer Python-Software für Linux
- 12. Anfänger Weg zur Spielentwicklung für OS X und iPhone
- 13. Jboss für Anfänger
- 14. Mobile Entwicklung für Anfänger
- 15. Anfänger Leitfaden für Haskell?
- 16. Anfänger Tutorial für elgg
- 17. Refactoring für Anfänger
- 18. Subversion für Anfänger
- 19. Python Zurückverfolgungsmodul für Anfänger
- 20. Versionskontrolle für Anfänger
- 21. AlarmClock für Anfänger - Android
- 22. Vererbung für Anfänger
- 23. Kreuz kompilieren Linux-Kernel-Modul für ARM auf x86 Ubuntu
- 24. So konfigurieren Sie Zugriffsberechtigungen für Cassandra auf Linux Ubuntu
- 25. Zeile für Zeile c - C++ - Code Debugging in Linux Ubuntu
- 26. Unity 3d Installation von Standard-Assets für Linux/Ubuntu
- 27. Qt Creator - Wie man Anwendungssymbol für Ubuntu Linux setzt?
- 28. ember cli nicht Wächter auf ubuntu finden konnte, ist es nur Lösung für Mac nicht für ubuntu
- 29. Kennen Sie einen Style Guide für VB6?
- 30. GUI für mein Matlab-Projekt mit GUIDE
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
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. –