# Einstieg Programmieren mit Schach [toc] Ziel ist es einen Objektorientierten Einstieg in die Programmierung zu ermöglichen. - **Projekt**: Schach ## Brainstorming Spielablauf ... ## Schach Grundlagen ### Schachspiel - Schachregeln [^1] ### Schachbrett Ausgabe in HTML (Überlegung in Emmett) - div.chessboard>div#row$@-*8>div*8 ### Schachfiguren Eigenschaften | Name | HTML | Figur | | --- | --- | :---: | | Bauer (schwarz) | \&#9823; | &#9823; | | Springer (schwarz) | \&#9822; | &#9822; | | Läufer (schwarz) | \&#9821; | &#9821; | | Turm (schwarz) | \&#9820; | &#9820; | | Dame (schwarz) | \&#9819; | &#9819; | | König (schwarz) | \&#9818; | &#9818; | | Bauer (weiß) | \&#9817; | &#9817; | | Springer (weiß) | \&#9816; | &#9816; | | Läufer (weiß) | \&#9815; | &#9815; | | Turm (weiß) | \&#9814; | &#9814; | | Dame (weiß) | \&#9813; | &#9813; | | König (weiß) | \&#9812; | &#9812; | ### Schachfiguren Ausgabe - Die Schachfiguren stehen im Standard-Zeichensatz UTF8 zur Verfügung: [^2] | Name | HTML | Figur | | --- | --- | :---: | | Bauer (schwarz) | \&#9823; | &#9823; | | Springer (schwarz) | \&#9822; | &#9822; | | Läufer (schwarz) | \&#9821; | &#9821; | | Turm (schwarz) | \&#9820; | &#9820; | | Dame (schwarz) | \&#9819; | &#9819; | | König (schwarz) | \&#9818; | &#9818; | | Bauer (weiß) | \&#9817; | &#9817; | | Springer (weiß) | \&#9816; | &#9816; | | Läufer (weiß) | \&#9815; | &#9815; | | Turm (weiß) | \&#9814; | &#9814; | | Dame (weiß) | \&#9813; | &#9813; | | König (weiß) | \&#9812; | &#9812; | <div style="color: black; font-size: 15rem;">&#9821;</div> ## Klassendiagramm ```plantuml skinparam style strictuml skinparam class { BackgroundColor white ArrowColor gray BorderColor black } class Player { - name: string - color: char + setName(string) + getName(): string + setColor(char) + getColor(): char } class Chessgame { - board: Chessboard - status: int - player_1: Player - player_2: Player - player_active: Player - piece_active: Piece } class Chessboard { squares[x][y]: array pieces[]: array } class Chesspiece { x: int y: int } Player "2" -- "1" Chessgame Chessgame "1" o-- "1" Chessboard Chessgame "1" o-- "n" Chesspiece Chessboard "1" o-- "*" Chesspiece ``` [^1]: Übersicht [Schachregeln in Wikipedia](https://de.wikipedia.org/wiki/Kategorie:Schachregeln) [^2]: Schachfiguren [UTF8: 9812-9823](https://www.w3schools.com/charsets/ref_utf_misc_symbols.asp)