89 lines
2.3 KiB
Markdown
89 lines
2.3 KiB
Markdown
# C# basics
|
|
|
|
## Dokumentation
|
|
|
|
```
|
|
/// <summary>
|
|
/// Was Macht diese Klasse / Methode / constante
|
|
///
|
|
/// Unten kommt immer der Name des Developers welcher diese class programmiert hat
|
|
/// </summary>
|
|
/// <param name="NameDesParameters"></param>
|
|
/// <returns>Was wird mit return zurückgegeben</returns>
|
|
|
|
```
|
|
|
|
if (Expression) Genau so auch bei While und for etc. { }
|
|
|
|
## Namespaceaufbau
|
|
|
|
```
|
|
1 2
|
|
namespace NameDesNamespaces
|
|
{
|
|
1: Das ist immer gleich. einfach namespace
|
|
2: das ist der name des namespace dieser wird eigentlich durch die ordnerstrucktur erstellt
|
|
}
|
|
|
|
```
|
|
|
|
## Classaufbau
|
|
|
|
```
|
|
1 2 3 4
|
|
public/privat partial/nichts class NameDerKlasse
|
|
{
|
|
1: Ist die class nur für diesen Namespace gedacht oder auch für auserhalb
|
|
2: Wenn partial geschrieben wird kann innerhalb des selben Namespace mehr zu der classe geaddet werden
|
|
wird eigentlich nur in grossen projeckten verwendet.
|
|
3: das keyword class ist immer gleich.
|
|
4: Der Klassen name dieser wird gross geschrieben wenn es eine public class sein soll.
|
|
}
|
|
|
|
```
|
|
|
|
## variablen einer class
|
|
|
|
```
|
|
1 2 3 4
|
|
public/privat string/int VariablenName { get; set; }
|
|
1: Ist die variable nur für diesen Namespace gedacht oder auch für auserhalb
|
|
2: Type der variable.
|
|
3: Name der variable wenn gross dann public sonst klein für privat.
|
|
|
|
```
|
|
|
|
## Constructor einer class
|
|
|
|
```
|
|
public class Person
|
|
{
|
|
private string last;
|
|
private string first;
|
|
1 2 3
|
|
public Person(string lastName, string firstName)
|
|
{
|
|
last = lastName;
|
|
first = firstName;
|
|
}
|
|
1: public/privat um es öffentlich zu machen
|
|
2: Name der class ist immer gleich wie vom costructor
|
|
3: alle parameter welche von anfang an initalisiert werden sollen.
|
|
}
|
|
|
|
```
|
|
|
|
## Funktionsaufbau
|
|
|
|
```
|
|
1 2 3 4 5
|
|
public/privat static/nichts void/string/int Name(string/int Args)
|
|
{
|
|
1: Ist die funktion nur für diesen Namespace gedacht oder auch für auserhalb
|
|
2: muss diese funktion mit new initialisiert werden oder nicht
|
|
3: was wird aus der funktion returnt
|
|
4: Der Name der funktion klein bei privaten gross bei public
|
|
5: Die Args weilche Mitgegeben werden. immer mit dem type im vorfeld.
|
|
}
|
|
|
|
```
|