Solution: Unterschied zwischen den Versionen
Aus Das Sopra Wiki
Keine Bearbeitungszusammenfassung |
|||
| (8 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
{{ | {{complete}} | ||
Eine [[Solution]] ist in [[VisualStudioTutorial|Microsoft Visual Studio]] eine Zusammenfassung von mehreren [[Projekt|Projekten]] zu einer großen "Lösung". | Eine [[Solution]] ist in [[VisualStudioTutorial|Microsoft Visual Studio]] eine Zusammenfassung von mehreren [[Projekt|Projekten]] zu einer großen "Lösung". | ||
| Zeile 7: | Zeile 7: | ||
Der Vorteil einer [[Solution]] besteht darin, dass eingestellt werden kann, welche der enthaltenen [[Projekt|Projekte]] wie [[Compiler|kompiliert]] werden sollen - also mit welchen Parametern und Einstellungen - und wie die gegenseitigen Abhängigkeiten aussehen. Es ist also möglich, bei der [[Compiler|Kompilierung]] seiner Anwendung festzulegen, dass zunächst die [[DLL]] im in der [[Solution]] enthaltenen Nebenprojekt kompiliert werden soll, bevor mit der [[Compiler|Kompilierung]] der Hauptanwendung begonnen wird. Dies stellt sicher, dass die Anwendung auch bei kleineren Änderungen in den anderen [[Projekt|Projekten]] stets die aktuellste Version der abhängigen [[Projekt|Projekte]] verwendet. | Der Vorteil einer [[Solution]] besteht darin, dass eingestellt werden kann, welche der enthaltenen [[Projekt|Projekte]] wie [[Compiler|kompiliert]] werden sollen - also mit welchen Parametern und Einstellungen - und wie die gegenseitigen Abhängigkeiten aussehen. Es ist also möglich, bei der [[Compiler|Kompilierung]] seiner Anwendung festzulegen, dass zunächst die [[DLL]] im in der [[Solution]] enthaltenen Nebenprojekt kompiliert werden soll, bevor mit der [[Compiler|Kompilierung]] der Hauptanwendung begonnen wird. Dies stellt sicher, dass die Anwendung auch bei kleineren Änderungen in den anderen [[Projekt|Projekten]] stets die aktuellste Version der abhängigen [[Projekt|Projekte]] verwendet. | ||
Eine weitere Anwendungsmöglichkeit besteht darin, logisch voneinander getrennte Bereiche in verschiedenen [[Projekt]]en zu entwickeln, um eine bessere Arbeitsteilung und größere Unabhängigkeit zwischen den Bereichen zu ermöglichen. So kann z.B. bei einem Spiel die [[Engine]] separat von der [[Spiellogik]] entwickelt werden, in dem für beide Bereiche ein eigenes Projekt erstellt wird. Das gesamte Spiel (bestehend aus diesen beiden Projekten) wird dann in einer gemeinsamen [[Solution]] verwaltet. Dies ermöglicht sowohl die leichte Wiederverwendung der [[Engine]], als auch die bessere Testbarkeit der [[Spiellogik]]. | |||
Ein neues [[Projekt]] wird zu einer bestehenden [[Solution]] hinzugefügt, indem entweder per Rechtsklick auf die [[Solution]] geklickt wird und "Add -> New Project..." ausgewählt, oder dies über die Hauptmenüeinträge "File -> Add -> New Project..." erledigt wird. | Ein neues [[Projekt]] wird zu einer bestehenden [[Solution]] hinzugefügt, indem entweder per Rechtsklick auf die [[Solution]] geklickt wird und "Add -> New Project..." ausgewählt, oder dies über die Hauptmenüeinträge "File -> Add -> New Project..." erledigt wird. | ||
== Solution am Beispiel == | == Solution am Beispiel == | ||
Befinden sich in einer [[Solution]] mehrere [[Projekt|Projekte]], so stehen diese im Solution-Explorer untereinander. Dabei können in allen [[Projekt|Projekten]] alle darin enthaltenen Dateien wie auch in einem einzelnen [[Projekt]] geöffnet und bearbeitet werden. | Befinden sich in einer [[Solution]] mehrere [[Projekt|Projekte]], so stehen diese im Solution-Explorer untereinander. Dabei können in allen [[Projekt|Projekten]] alle darin enthaltenen Dateien wie auch in einem einzelnen [[Projekt]] geöffnet und bearbeitet werden. | ||
| Zeile 15: | Zeile 17: | ||
[[Datei:solution_multiple_projects.jpg|thumb|Solution mit mehreren Projekten]] | [[Datei:solution_multiple_projects.jpg|thumb|Solution mit mehreren Projekten]] | ||
Jedes [[Projekt]] besitzt seine separaten Kompilierungseinstellungen. Ist zum Beispiel eine [[DLL]] fertig gestellt und wird nicht mehr großartig verändert, können die [[Projekteigenschaften|Kompilierungseinstellungen]] der DLL auf "Release" gesetzt werden, bevor die Hauptanwendung diesen Status erreicht. Die [[.NET]]-eigenen Codeoptimierungen werden dann bereits auf die [[DLL]] angewendet. | Jedes [[Projekt]] besitzt seine separaten [[Projekteigenschaften|Kompilierungseinstellungen]]. Ist zum Beispiel eine [[DLL]] fertig gestellt und wird nicht mehr großartig verändert, können die [[Projekteigenschaften|Kompilierungseinstellungen]] der DLL auf "[[Release]]" gesetzt werden, bevor die Hauptanwendung diesen Status erreicht. Die [[.NET]]-eigenen Codeoptimierungen werden dann bereits auf die [[DLL]] angewendet. | ||
Um die [[Build]]-Order innerhalb einer [[Solution]] festzulegen, reicht es, mit einem Rechtsklick die [[Solution]] auszuwählen und "Project Dependencies..." anzuklicken. Es öffnet sich ein Fenster, in dem jedes [[Projekt]] innerhalb der [[Solution]] ausgewählt werden kann und die abhängigen [[Projekt|Projekte]] über einen Haken gesetzt werden können. | Um die [[Build]]-Order innerhalb einer [[Solution]] festzulegen, reicht es, mit einem Rechtsklick die [[Solution]] auszuwählen und "Project Dependencies..." anzuklicken. Es öffnet sich ein Fenster, in dem jedes [[Projekt]] innerhalb der [[Solution]] ausgewählt werden kann und die abhängigen [[Projekt|Projekte]] über einen Haken gesetzt werden können. | ||
| Zeile 23: | Zeile 23: | ||
[[Datei:project_dependencies.jpg]] | [[Datei:project_dependencies.jpg]] | ||
Unter dem Reiter "Build Order" kann dann die aktuell generierte [[Build]]-Order | Unter dem Reiter "Build Order" kann dann die aktuell generierte [[Build]]-Order eingesehen und überprüft werden. | ||
[[Datei:build_order.jpg]] | [[Datei:build_order.jpg]] | ||
