User Tools

Site Tools


basics

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
basics [2017/06/29 11:09] – [Unterschiede User, EDV-TechnikerIn, AdministratorInnen, ProgrammiererIn, InformatikerIn] ggbasics [2017/07/05 11:44] (current) – [Primitive Datentypen] gg
Line 1: Line 1:
 ====== Basiswissen ====== ====== Basiswissen ======
 ===== Üben, quälen, üben, quälen ===== ===== Üben, quälen, üben, quälen =====
-Jeder Programmierer kennt die quälenden Stunden wenn man das Handwerk lernt und man irgendetwas nicht begreift. Das einzige was hilft ist üben, lesen, üben, quälen, üben, mit jemanden darüber reden, üben, schlafen, üben und dann von vorne.+Jeder Programmierer kennt die quälenden Stunden wenn man das Handwerk lernt und man irgendetwas nicht begreift. Das Einzige was hilft ist üben, lesen, üben, quälen, üben, mit jemanden darüber reden, üben, schlafen, üben und dann das Ganze wiederholen.
  
 ===== Testen, testen, testen, testen ===== ===== Testen, testen, testen, testen =====
-Selbst erfahrene Programmierer machen einfache Fehler, deshalb ist das A und O testen. Überschlagsmässig kann man sich merken, dass man 20% programmiert und 80% testet.+Selbst erfahrene Programmierer machen einfache Fehler, deshalb ist das A und O testen. Überschlagsmässig kann man sich merken, dass man 20% der Zeit programmiert und 80% davon testet.
  
 ===== Unterschiede User, EDV-TechnikerIn, AdministratorInnen, ProgrammiererIn, InformatikerIn ===== ===== Unterschiede User, EDV-TechnikerIn, AdministratorInnen, ProgrammiererIn, InformatikerIn =====
Line 11: Line 11:
   * EDV-TechnikerInnen installieren Programme und lösen Probleme an einem PC   * EDV-TechnikerInnen installieren Programme und lösen Probleme an einem PC
   * AdministratorInnen installieren Programme auf einem oder mehreren Servern oder PCs und lösen Probleme auf diesen. Sie verwalten ein Netzwerk   * AdministratorInnen installieren Programme auf einem oder mehreren Servern oder PCs und lösen Probleme auf diesen. Sie verwalten ein Netzwerk
-  * ProgrammierInnen lösen Probleme (durch -nona- programmieren), die AdministratorInnen und EDV-TechnikerInnen wiederum nutzen +  * ProgrammierInnen lösen Probleme (durch -nona- programmieren), die Ergebnisse nutzen AdministratorInnen und EDV-TechnikerInnen wiederum 
-  * Informatiker lösen nicht nur Probleme. Sie suchen nach dem bestmöglichen Weg ein Problem zu lösen+  * InformatikerInnen lösen nicht nur Probleme. Sie suchen nach dem bestmöglichen Weg ein Problem zu lösen
  
 ===== Wahl der Programmiersprache ===== ===== Wahl der Programmiersprache =====
 Die Wahl der Programmiersprache hängt vom Projekt ab. Für ein Webprojekt wird man nicht C++ verwenden, sondern eher PHP oder Python, Javascript und Ajax. Anders herum wird man für ein Ressourcenhungriges Problem C++, Go oder eventuell Java verwenden. Entscheidungskriterien gibt es viele und hängen vom zu lösenden Problem, der Projektgrösse, der Präferenz des Programmierers und vielen weiteren Faktoren ab.  Die Wahl der Programmiersprache hängt vom Projekt ab. Für ein Webprojekt wird man nicht C++ verwenden, sondern eher PHP oder Python, Javascript und Ajax. Anders herum wird man für ein Ressourcenhungriges Problem C++, Go oder eventuell Java verwenden. Entscheidungskriterien gibt es viele und hängen vom zu lösenden Problem, der Projektgrösse, der Präferenz des Programmierers und vielen weiteren Faktoren ab. 
- 
-===== Quelltext ===== 
-Der Quelltext ist der für menschen lesbare Code, welcher meist in einer (bzw. mehreren) Textdateien vorliegt. Dieser Quelltext wird dann interpretiert oder kompiliert um tatsächlich von einer Maschine ausgeführt werden zu können. 
  
 ===== Verwendete Sprache im Quelltext ===== ===== Verwendete Sprache im Quelltext =====
-Man sollte sich englisch angewöhnen. Die meisten Beispiele findet man auf englisch. Benötigt man Hilfe findet man die oft auf englisch. Die programmierende Welt hat sich auf englisch geeinigt. +Man sollte sich englisch angewöhnen. Die meisten Beispiele findet man auf englisch. Benötigt man Hilfe findet man die oft auf englisch. Die programmierende Welt hat sich auf englisch geeinigt. \\ 
 +Da diese Seite in deutsch gehalten ist, sind die Kommentare ebenso in deutsch gehalten. 
 + 
 +===== Quelltext ===== 
 +Der Quelltext ist der für **menschen lesbare Code**, welcher meist in einer (bzw. mehreren) **Textdateien** vorliegt. Dieser Quelltext wird dann interpretiert oder kompiliert um tatsächlich von einer Maschine ausgeführt werden zu können.
  
 ===== Syntax und Semantik ===== ===== Syntax und Semantik =====
-Jede Programmiersprache unterliegt einer gewissen Syntax. Damit ist gemeint welche Zeichenfolge zugelassen wird bzw. welche Zeichenfolge 'Sinn' ergibt. Umgelegt auf menschliche Sprache ist das, etwas hinkend formuliert, die Grammatik. Programmiersprachen sind da sehr strikt. Ist ein Zeichen falsch oder an der falschen Stelle kann das Programm nicht ausgeführt werden. Computer sind wahnsinnig schnell, aber wahnsinnig Idioten. \\ +Jede Programmiersprache unterliegt einer gewissen **Syntax**. Damit ist gemeint welche Zeichenfolge zugelassen wird bzw. welche Zeichenfolge gültig ist. Umgelegt auf menschliche Sprache ist das, etwas hinkend formuliert, die **Grammatik**. Programmiersprachen sind da sehr strikt. Ist ein Zeichen falsch oder an der falschen Stelle kann das Programm nicht ausgeführt werden. Computer sind wahnsinnig schnell, aber wahnsinnige Idioten. \\ 
-Die Semantik hingegen ist das, was das Programm machen soll. Will man einen Taschenrechner programmieren, es kommt aber eine Tabellenkalkulation raus kann das syntaktisch vollkommen korrekt sein, semantisch liegt es aber weit daneben. Semantische Korrektheit ist die eigentliche Schwierigkeit beim Programmieren. Man muss das Problem genau kennen, um es semantisch richtig lösen zu können. Viele Projekte gehen den Bach runter, weil sich Programmierer und Auftraggeber schlecht verständigt haben.+Die **Semantik** hingegen ist das, was das Programm machen soll. Will man einen Taschenrechner programmieren, es kommt aber eine Tabellenkalkulation raus kann das syntaktisch vollkommen korrekt sein, semantisch liegt es aber weit daneben. Semantische Korrektheit ist die **eigentliche Schwierigkeit** beim Programmieren. Man muss das Problem genau kennen, um es semantisch richtig lösen zu können. Viele Projekte gehen den Bach runter, weil sich Programmierer und Auftraggeber schlecht verständigt haben.
  
 ===== Kompilieren oder Interpretieren ===== ===== Kompilieren oder Interpretieren =====
Line 35: Line 36:
 Wird allerdings der Quelltext in eine maschinenlesbare Form (Die Nullen und Einsen sind gemeint) übersetzt, spricht man von **kompilieren**. Wird allerdings der Quelltext in eine maschinenlesbare Form (Die Nullen und Einsen sind gemeint) übersetzt, spricht man von **kompilieren**.
 Beispiele für kompilierbare Sprachen sind: C/C++, C#, Go, Java, Perl, Python. Wobei C#, Java, Perl, Python zuerst in Bytecode übersetzt werden. Beispiele für kompilierbare Sprachen sind: C/C++, C#, Go, Java, Perl, Python. Wobei C#, Java, Perl, Python zuerst in Bytecode übersetzt werden.
 +
 +===== Primitive Datentypen =====
 +=== Integer ===
 +Als Integer werden ganze Zahlen bezeichnet, also ...-2, -1, 0, 1, 2... Oft wird unterschieden zwischen der Grösse derartiger Zahlen. Zum Beispiel bei **Java**: byte, short, int, long
 +=== Float/Double ===
 +Kommazahlen werden float oder double genannt. Je nach Genauigkeit wird float (weniger genau) oder double verwendet (genauer). Da ein Computer ein diskretes System ist, kann eine Kommazahl nie ganz genau, sondern nur mit einer bestimmten Genauigkeit, dargstellt werden.
 +=== Boolean ===
 +Variablen, die wahr oder falsch sein können, werden bool'sche Variablen genannt. bool oder boolean ist meist der primitive Datentyp.
 +=== Character ===
 +Das ist ein einzelnes Zeichen, wie beispielsweise 'a', '4', 'G', '\n'...
 +=== Strings ===
 +Zeichenketten werden auch Strings genannt. "Hallo Welt", "Werner", ...
basics.1498727372.txt.gz · Last modified: 2017/06/29 11:09 by gg