Frage Der beste Ort, um Ubuntu Linux für einen Windows Programmierer zu lernen


Ich bin ein Programmierer, ich habe in C / C ++ / C # .NET, JAVA, HTML und Matlab entwickelt

Der Großteil meiner Arbeit war im Allgemeinen in C # und .NET Framework

Ich bin vor kurzem zu Linux für 2 Monate als Exploration versucht, ich möchte wissen, wie man wirklich in Linux und dafür entwickeln.

Ich bin neu in all den Terminal / Shell-Befehlen und so, damit Sie die Idee bekommen


0
2017-12-21 18:29


Ursprung


Das ist offensichtlich eine breite Frage. Ich würde damit anfangen, etwas über bash zu lernen. Hier ist eine beliebte Seite linuxcommand.org . Von da an ist Google dein Freund, hängt davon ab, welche Sprache (n) du lernen möchtest und zu welchem ​​Projekt du beitragen möchtest. - Panther
Willkommen bei Ask Ubuntu! Diese Art von Diskussion passt besser zum Ubuntu-Foren. - Jorge Castro


Antworten:


Ich denke Mono kann sich Ihren bestehenden starken Fähigkeiten anbieten: Mono ist ...

Eine quelloffene, plattformübergreifende Implementierung von C # und CLR, die binärkompatibel zu Microsoft.NET ist

Die wesentlichen Teile der C / C ++ Entwicklung können mit ...

sudo apt-get install build-essential

Der C-Compiler ist cc und der C ++ Compiler ist g++. Es gibt viele großartige IDEs für C / C ++. Codeblocks ist eine, Sonnenfinsternis, Netbeans, Anjuta.

Öffne deinen Paketmanager und suche nach diesen Dingen ... mono, build-essential, ide's zum ausprobieren ... Gute Starthinweise?


4
2017-12-21 18:52





"Linux" ist viel abwechslungsreicher als Windows. Wir haben viele verschiedene Arten von Desktop-Systemen, Telefonsystemen usw. Entwickeln für Ubuntu unterscheidet sich völlig von der Entwicklung für Android, zum Beispiel. Ich nehme an, dass Ubuntu das Ziel ist. :)

In Ubuntu heißt der Hauptdesktop Gnome und bietet viele nette Entwicklungswerkzeuge. Es basiert auf dem GTK + -Toolkit für Benutzeroberflächen und ist relativ einfach zu erlernen. Sie können hier mehr über die Plattform erfahren: http://developer.gnome.org.

GTK selbst basiert auf C, ist aber für alle Arten von Sprachen verfügbar. Eine Sprache, die ich Ihnen empfehlen würde, ist Vala. Dies ist eine Sprache, die C # und Java sehr ähnlich ist, aber anstatt sie zu Bytecode zu kompilieren, kompiliert sie je nach VM und JIT zu C und dann zu nativem Code. Es verwendet ausgiebig Gnomes GLib und GObject, und diese sind ziemlich bequeme Werkzeuge. Hier gibt es ein kurzes Tutorial: http://live.gnome.org/Vala/Tutorial. Es setzt Programmierkenntnisse voraus und ist sehr nützlich, um C # oder Java zu kennen und verschwendet daher nicht viel Zeit mit allgemeinen Programmierkonzepten. Du wirst es sehr schnell abholen.

Eine weitere Sprache, die Sie vielleicht erkunden möchten, ist Python. Dies ist eine Ente-typisierte Sprache mit viel höherer Ebene, mit einer sehr sauberen Syntax und sehr einfach zu erlernen. Python ist in der Ubuntu-Community sehr beliebt. Sie können hier mehr über Python erfahren: http://docs.python.org/tutorial/index.html

Welche Programmiersprache du verwendest, ist von geringer Bedeutung, wenn du für Gnome und Ubuntu entwickelst. Die Tools werden für die meisten Sprachen verfügbar sein, die ich kenne. Also, wähle zuerst eine Sprache aus und lies dann auf der Gnome-Plattform nach. Ubuntu hat auch ein neues Entwicklerportal, das die Dinge beschreibt, die für Ubuntu besonders wichtig sind, wie die Unity-Oberfläche. Es enthält auch Empfehlungen für Entwicklungstools wie Versionskontrollsysteme, GUI-Konstruktoren und Editoren. Sie finden es hier: http://developer.ubuntu.com.


2
2017-12-21 20:10





Mein Meta-Ratschlag besteht darin, Google-Zyklen zu verwenden, um Lernprogramme und HOWTOs zu finden, die Ihnen einen Stapel Fähigkeiten vermitteln. Das ist der Ansatz, den ich auf meiner How-to-Site anwende.

Ich empfehle, einen Scratch-Computer zu greifen, den man löschen kann, und Zyklen von Linux zu installieren (mit Ubuntu und für andere Distributionen). Dann, mit dieser Basis, Google "Unix-Grundlagen lernen", "Bash-Tutorial", und solche Dinge.

Wenn Sie ein Windows-Entwickler sind, können Sie wahrscheinlich den Software-Stack und die Analog- oder Windows-Entsprechungen auf jeder Ebene visualisieren.

Ich denke, ein generischer Programmierneuling würde davon profitieren, jedes Level der LAMP-Architektur zu erklimmen und es wiederum zu lernen, obwohl Sie als erfahrener Programmierer vielleicht ein anderes Ziel vor Augen haben.


0
2017-12-22 17:09