Batch-Unterricht

Palladin007

assimiliert
Moinsens

Bei uns gibt es jedes Jahr einen Tag namens "Coole Schule"

An diesem Tag wird kein normaler Unterricht gemacht, wie man ihn kennt, sondern Kurse mit Themen, die man sich selber auswählen kann.

Da machen viele Firmen mit, Lehrer machen Kurse, die sie gerne unterrichten würden, Schüler zeigen Dinge, die sie können und wollen das Wissen teilen...

Da hab ich mir überlegt, einen Kurz zur Batch-Programmierung zu machen.

Ich werde das nicht alleine machen. Wenn ein Junge aus der Stufe unter mir mit macht, sind wir schon zwei Hobby-Programmierer^^
Und wenn wir noch die Genehmigung bekommen, einen Computer-Raum zu belegen, dann ist die Sache geritzt^^


Ich geh mal davon aus, dass alles glatt läuft und dann muss ich den Unterricht ja auch gestalten.

Ich wollte eigentlich möglichst viel Praxis einbauen. Ich hab es alles gelernt, indem ich es ausprobiert habe. Theorie nur so viel, wie möglich.


Dabei wollte ich den Anfang möglichst kurz halten, also, was das ist und wozu man es braucht. Wie es aufgebaut ist, etc.
Theorie eben^^

Was dann die Reihenfolge der Befehle angeht, da brauche ich mal eure Meinungen.
Es ist klar, dass ich mit so einfachen Befehlen, wie echo und goto anfange, da man sie sehr oft verwendet und sie bei größeren Programmen sehr wichtig werden können.
Dazu kann man noch einfache, aber für Routine-Aufgaben nützliche Befehle, wie Copy einbauen. Damit kann man dann ja auch das erste Programm schreiben und gleich mal anschauen, wie das ganze funktioniert und abläuft.

Aber wie soll ich danach fort fahren? If ist ja noch ganz gut möglich, aber for wird schon komplizierter, kann aber auch sehr wichtig sein.

Wenn jemand spontan ein grober Grundriss einfällt, wie man das aufbauen kann, würde ich mich drüber freuen, wenn das wer tun würde.

Da anhängend noch die Frage:
Sollte ich die Befehlserweiterung und die verzögerte Erweiterung von Umgebungs-Variablen mit rein nehmen?
Das kann ja sehr praktisch sein, WENN man es verstanden hat.

Und man muss auch bedenken, dass wir maximal 90 Minuten haben.
 
Also ich würde natürlich zuerst erklären, für was man Batch braucht.
Dann ein paar Grundlagen.
Danach einfache Aufgabenstellungen im Sinne von "Versucht eine Batch zu schreiben, die folgende Funktion erfüllt: blabla"

Durch Internetrecherchen findest du auch schon gut aufbereitete Kurse.
Suchbegriffe etwa "Batch Basics" oder "Batch Grundlagen" oder "Batch Tutorial" etc.
Hier ein paar Beispiele:

Batch Basics

[Guide]Batch Basics

Batch Guide

Vielleicht kannst du dir da ja Hilfestellungen und Anregungen holen. 90 Minuten gehen auch schneller rum als man denkt. Wenn du zuhause dir mal das ganze in Echtzeit durchspielst und 45 Minuten brauchst, dann reicht das aus, um die 90 Minuten zu füllen (da immer Rückfragen kommen, aber auch unkonzentrierte Phasen).
 
Wie werden diese 90min aussehen?
Steht Ihr vor der Klasse und haltet einen Unterricht, oder sollen die "Schüler" an eigenen Rechnern die jeweiligen Schritte selbst ausführen?

Sollte es wie ein klassischer Untericht aufgebaut sein, so braucht man einige AHA-Effekte damit die Truppe vor einem nicht einschläft.
Werden die Schritte durch jeden Einzelnen selbst ausgeführt, können 90min sehr schnell vorbei sein.

Mach dir einen "roten Faden" und rechne nicht mit den kompletten 90min.
Kurze Einleitung, mit der Erklärung "Sinn & Zweck des Ganzen, Anwendungsgebiete u.s.w.
Kurze Frage an die Anwesenden ob schon jemand Erfahrungen zum Thema hat und los gehts.
Kurze sehr leichte Aufgabe > erster großer AHA Effekt

Wenn Du die Leute vor Dir nicht in den ersten 15min an deinen Lippen kleben hast, hast Du verloren :D
 
Naja, wir haben die Wahl, entweder 45 Minuten, oder 90 Minuten.

Klar, dass ich da 90 nehme^^

Und wie wir die gestalten, das bleibt völlig uns überlassen.
Ich war bei der Schul-Administratorin und wenn die mir grünes Licht gibt, darf ich einen Computer-Raum belegen.

Das heißt, ich alles immer mit einem kleinen Programm zeigen und die können es auch ausprobieren.

Das Haupt-Problem wird wohl einfach nur die Zeit sein^^


PS:
Ich rede ziemlich schnell^^
Ich glaube auch, dass die Hauptzeitfresser die Praxis-Stellen sein werden.

Außerdem bin ich ziemlich gut bei Vorträgen^^ Kam noch nie vor, dass ich den Faden verloren habe^^
Und da ich mich in der Materie ja auskenne, dürfte das kein Problem sein.
 

Sehr Seltene Spezies! Grüße sie mal ganz lieb von uns! :)

@Kurs:
Bei Batch bist du vergleichsweise ein "weit fortgeschrittener" Anwender/Entwickler.

Wenn du einen Vortrag zum Thema hältst, besteht so die Gefahr deine Zuhörer zu Überfordern. Wenn sie nicht folgen können, hören sie bestenfalls nicht mehr zu.

- Halte es möglichst einfach.
- Spiele viel mit Variablen die eh schon definiert sind (echo %username% usw.)
- Neben dem AHA Effekt wirken auch "Boah Ey!" Effekte (Streams verstecken & Erkennen aber auch sichtbar machen.) -> Einblick in die Welt der Hacker und Bösen Buben. Ist relativ unbekannt, kapiert jeder.

- sehr gut kommen auch Praktische Beispiele für die Automatisierung (Das ist meine Welt.)

- ganz Wichtig: Verknüpfung/Einbindung der Verwandtschaft wie vbs, php, perl, exe....

- Windowslogon kann man mit batch, aber auch mit KiXtart....

Meine 4 Punkte wären:
- was ist Batch, was geht und was geht nicht (Wow, das ist ja doppelt so Alt wie ich es bin)
- blick über den Tellerrand
- Praktische Beispiele (aha, boa ey) -> Einfach, Verständlich.
- selber machen (Learning by Doing / Lerning by tuing)

Für den Vortrag "Coole Schule" (Idee finde ich Super) kann ich dir bei Bedarf paar Schnipsel via PN zuspielen.
 
Sehr Seltene Spezies! Grüße sie mal ganz lieb von uns!

Musst du mir erklären^^

Bei Batch bist du vergleichsweise ein "weit fortgeschrittener" Anwender/Entwickler.

Danke für die Blumen^^

Neben dem AHA Effekt wirken auch "Boah Ey!" Effekte (Streams verstecken & Erkennen aber auch sichtbar machen.)

Wie meinst du das? Bei 'AHA' hätte ich dann einfach kleiner, aber praktische Programme (Sicherungsprogramme, etc.) genommen und als Ziel gesetzt. Und dann wird darauf hin gearbeitet. Oder irgendwas anderes...

Einblick in die Welt der Hacker und Bösen Buben. Ist relativ unbekannt, kapiert jeder.

Das, was ich da kenne, ist dann ein einfacher batch-Virus, den ich dann halt erweitere.
Außerdem bringt mich die Frau um, wenn ich da auch nur ein sterbens Wörtchen darüber erwähne...

sehr gut kommen auch Praktische Beispiele für die Automatisierung (Das ist meine Welt.)

Ja, so hätte ich wohl angefangen^^ Brauche ich nur ein interessantes Programm, was einfach genug ist.

ganz Wichtig: Verknüpfung/Einbindung der Verwandtschaft wie vbs, php, perl, exe....

Exe kann ich einbinden^^
Aber die anderen nicht, weil ich das noch nicht kenne.
Oder wie meinst du das?

Windowslogon kann man mit batch, aber auch mit KiXtart..

das kenn ich nicht...

Für den Vortrag "Coole Schule" (Idee finde ich Super) kann ich dir bei Bedarf paar Schnipsel via PN zuspielen.

Deswegen will ich es machen ;)
Freue mich über jede Hilfe^^



Ach ja, viel mir grad so spontan ein:

Man könnte ja als Ziel setzen, dass ein Wecker programmiert werden soll.

Da kann mann dann so einiges gleich mit einbauen.
if, for, goto, echo (für ein Menü) und noch ein paar andere Dinge plus das, was bei der Urzeit passieren soll.
Das Problem wird dann nur for sein^^ Denn das soll die time-Variable so zurecht basteln (also h und min), dass damit gerechnnet werden kann.
 
Nur mal als Tipp fuer einen Fachvortrag in dieser Komplexitaet
deines Themas:

Nenne maximal drei wesentliche Vorteile einer Batchprogrammierung.
Beschreibe maximal 5 Einsatzmoeglichkeiten an praktischen Beispielen.

Ansonsten habe ich keine Ahnung. ;)
 
Werd ich machen, danke^^

Ich kann mir ja auch irgend eine coole Einleitung überlegen...

Ein Programm, was die interessieren könnte (was einfaches)
 
Da ich keine Ahnung von Programieren habe, würde ich mich jetzt gern in deine Stunde setzen und von dieser folgendes verlangen.

-Was bringt mir das?
-Was kann man damit ereichen?
-Selbst ein Programm erstellen, klein aber immerhin ein Erfolg
-Kann ich damit Viren, Trojaner etc. erstellen? Wenn ja, haste ma nen Bsp. Virus

Ergebniss: Intresse am programieren entdeckt und was nützliches gelernt.

Sowas würde ich mir glaube als Schüler wünschen
 
Was für ein Programm würdest du schreiben wollen?
Geht ja nur was einfaches, denn die Schüler sollen es ja verstehen können.


Und Viren, ja, das geht^^
Aber wenn ich das einbaue, dann...
Ich glaub, die erlaubt mir sowas nie mehr, denn es gibt mehr in der Schule, die sich damit weit genug auskennen um ihr heftig Probleme zu bereiten, weil mal wieder irgendwo was manipuliert wurde und so.

Ich will halt fern von allem illigalen sein, auch wenn ich persönlich kein Problem damit habe.
 
Ich würd mir vllt gern sowas wünschen wie nen kleines Spiel, Snake oder sowas. Falls sowas zu schwer ist einfach anfangen mit einem sortierer der Alphbetisch ordnet. Sowas hatten wir mal in unsern 6 Stunden Programierung in der Schule.

Mit dem Virus verständlich
 
Ein Spiel bei Batch zu schreiben, das ist sehr schwer, oder so billig, dass es keinen interessiert.

Einen Sortierer könnte ich schreiben, aber ich weiß nicht, ob das jemanden interessiert^^

Ich hab heute mal einen Freund gefragt und der meinte, man könnte doch eine Roh-Fassung von einem Bank-Konto machen.

Das hat dann halt die Funktionen, ein Bankkonto zu erstellen, einzahlen, abheben, überweisen, etc.

Wenn das zu viel ist, kann man es ja die Option, ein neues Konto zu erstellen, verzichten.

Ich würde es auf jeden Fall erst mal schreiben und dabei so einfach, wie möglich bleiben.

Und dann aussortieren.



Würde dich so ein Programm interessieren?
 
Um auch mal meinen Senf dazuzugeben: Das Problem ist, dass (und da spkulier ich mal die Altersgruppe) die meisten Leute hauptsächlich auf Optik gehen, und das kann ja Batch nun wirklich nicht bieten.
Zwar ist es möglich einfache Grafiken zu erstellen, aber - um es mal so zu formulieren - der Kurs wird vmtl. die Nerds und Freaks von den Usern trennen...
 

Anhänge

  • test.jpg
    test.jpg
    87 KB · Aufrufe: 814
Naja, ich finde mein Menü recht hübsch^^

Aber die farbliche Gestaltung, da versuch ich noch, was nettes hin zu kriegen.


Aber, wie hast du das auf dem Bild gemacht?
Kannst du mal den Code geben?
Wenn ich das so mache, muss ich die Codierung ändern. Also kann kein ANSI mehr nutzen und das mag Batch nicht.
 
Batch gehört in die Kategorie sequentieller Verarbeitung von Befehlen. Wirklich sinnvolle und interaktive "Programme" damit erstellen ist somit praktisch schon ausgeschlossen. Seit den Windows-Anfängen mit 32bit hat Batch mehr und mehr an Bedeutung verloren und ist quasi nur noch für den Aufruf an Systemfunktionen oder Programmen zu gebrauchen. Jeder höhere Scriptsprache sortiert, erstellt, liest Daten schneller aus als dieser minimalistische Kram. Mit Batch eine Doppelstunde zu füllen grenzt aus meiner Sichtweise schon an Masochismus - Basis, Erläuterung, Beispiele, keine Halbe Stunde. Und ohne trockenen Stoff geht gar nichts. Wie will man eine Sortierroutine erklären, wenn 99% aller Begriffe nur Chinesisch für andere bedeuten?

Ich konnte deine anderen Beiträge dazu kurz überfliegen - ja, alles ganz nett, aber effektiv nicht brauchbar, schon gar nicht, wenn abgeschrieben ;) Jede andere Sriptsprache, die später zur einer EXE kompiliert wird, ist schneller, effektiver, vielseitiger. Und es wird fast nur noch mit fertigen Bibliotheken gearbeitet - die gibt es auf jedem Windows, und wenn auch nur in der Urform, ohne Updates, ansonsten fügt man jene direkt dazu. dotNET, Delphi, VC/VB/VNet. Natürlich keine kleinen Pakete, jedoch darauf läuft es hinaus. In Bezug zu Batch - Batch nutzt auch nur fertige Bibliotheken, oder meinst du "sort", "copy" und andere sind eingebaute DOS-Routinen? Das sind alles zusätzliche COM/EXE-Dateien im System - fehlt eine, kann Batch auch nichts. Wenn ich hier ein Script in VC/C++ kompiliere mit vergleichbarem Code, ist diese eine insgesamt kleiner als ein Batch mit Anhängseln.

Von mir der Tip, mit diesem Referat das Thema Batch abzuschliessen und danach abzuschiessen, es ist eine Sackgasse.
 
Es ist im Grunde kein Referat^^
Ich kann das machen, wie ich will.


Und andere SPrachen kenn ich nicht.

Nur Grundlegendes von Java und das will ich nicht nehmen, da es ja im Lehrplan ist.

Ich würde dann irgendwann gerne C# machen, aber das kriege ich in 90 Minuten noch sehr viel weniger so weit erklärt, dass man sinnvoll programmieren kann.

Außerdem bezweifle ich, dass ich den Schülern die wohl mächtigste Programmiersprache beibringen darf und dann noch in ihren heiligen Informatik-Räumen :D


Und was Batch angeht:
Mir machts Spaß, sonst würde ich jetzt ganz viel mit vbs machen^^
 
Code:
@echo off
echo.
echo.       ³³
echo.      ²°°²
echo.     °²²²²°
echo.    ²²°°°°²²
echo.   ²²  ²²  ²²
echo.   °°°°°°°°°°
echo.     ²²  ²²  
echo.    ² °°°° ²
echo.   ² ²²  ²² ²
echo.
echo.
echo.  ²²         ²²²²²²²²²²²   ²²
echo.  ²²         ²²       ²²   ²²
echo.  ²²         ²²       ²²   ²²
echo.  ²²         ²²       ²²   ²²
echo.  ²²         ²²       ²²   ²²
echo.  ²²         ²²       ²²   ²²
echo.  ²²         ²²       ²²   ²²
echo.  ²²²²²²²²²  ²²²²²²²²²²²   ²²²²²²²²²
echo.
pause

Die Kodierung ist i.ü. noch immer ANSI...
 
Naja mich würde erstmal alles interressieren, da ich sowas schon immer ma können/wissen wollte. Ob sowas aber auch die nicht so Interressierten interressiert ist die andere Frage.
 
Oben