AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Niki Source-Code Design

Ein Thema von roboter202 · begonnen am 5. Apr 2011 · letzter Beitrag vom 5. Apr 2011
Antwort Antwort
Seite 1 von 2  1 2      
roboter202

Registriert seit: 6. Mär 2011
98 Beiträge
 
Delphi 6 Professional
 
#1

Niki Source-Code Design

  Alt 5. Apr 2011, 14:38
Hi,

Wir machen gerade NIKI in Info

Wer es nicht kennt : Ist eine abgespeckte Version von Pascalohne Variablen ... Simmuliert einen Roboter ....


Mein Lehere würde etwas so schreiben

Code:
PROGRAM test ;

PROCEDURE drehe_rechts ;
BEGIN
drehe_links; drehe_links; drehe_links;
END;

BEGIN
vor; vor; vor;
drehe_rechts;
vor; vor; vor;
END.
^^Davon bekomme ich AUGENKREBS

Et moi

Code:
PROGRAMM test ;

PROCEDURE drehe_rechts ;
BEGIN
  drehe_links;
  drehe_links;
  drehe_links;
END;

BEGIN
  vor;
  vor;
  vor;
  drehe_rechts;
  vor;
  vor;
  vor;
END.
Was findet ihr besser?
Was entspricht dem PASCAL STYLE GUIDE?
Wie würdet ihr es machen?

Gruß
Christian
Christian
i := 0 ; While i = 0 do beep ;
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Niki Source-Code Design

  Alt 5. Apr 2011, 14:43
Wie du schon schreibst bekommt man davon Augenkrebs.

Somit ist deine Schreibweise auch nach Pascal StyleGuide

Die Gedankenwege eines Lehres sind manchmal unergründlich, die bauen ein Gliederung auch so auf
Code:
1. foo
a) foo
2. foo
Da fragt man sich, wo waren die während des Studiums
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Niki Source-Code Design

  Alt 5. Apr 2011, 14:44
Ohne Variablen ... aaaaja

Wie wäre es - allgemein - mit keins von beidem?! Funktionen und Schleifen wären schön.
Zum Beispiel so:
Delphi-Quellcode:
function GoForward(ASteps: Integer = 1);
begin
  While ASteps > 0 do
  begin
    vor;
    Dec(ASteps);
  end;
end;

begin
  GoForward(3);
  drehe_rechts;
  GoForward(3);
end;
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Niki Source-Code Design

  Alt 5. Apr 2011, 14:52
Kuckst du hier mal http://de.wikipedia.org/wiki/Niki_–_der_Roboter und vergiss die Variablen wieder.

Die Frage bezog sich ja auch auf die Schreibweise und nicht auf die Art der Umsetzung.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
roboter202

Registriert seit: 6. Mär 2011
98 Beiträge
 
Delphi 6 Professional
 
#5

AW: Niki Source-Code Design

  Alt 5. Apr 2011, 14:52
Ohne Variablen ... aaaaja

Wie wäre es - allgemein - mit keins von beidem?! Funktionen und Schleifen wären schön.
Zum Beispiel so:
Delphi-Quellcode:
function GoForward(ASteps: Integer = 1);
begin
  While ASteps > 0 do
  begin
    vor;
    Dec(ASteps);
  end;
end;

begin
  GoForward(3);
  drehe_rechts;
  GoForward(3);
end;
Schön wärs PROCEDURES gibts zwar aber Funktion können nicht gehen OHNE VARIABLEN man könnte zwar

Code:
PROCEDURE 3vor ;
BEGIN
  vor;
  vor;
  vor;
END;
schreiben aber ohne varibalen

Ist wiklich so die wollten Pascal, was "damals" noch sehr neu war vereinfachen.
Nach dem Motto :

Zitat:
Ey, Alta wer braucht Variablen. Das checken wir doch selber nicht.
So wie Bill Gates mal sagte

Zitat:
640 KBytes (Arbeitsspeicher) ist alles, was irgendeine Applikation jemals benötigen sollte
^^ Und heite sind wir wo ? -- Bei 32 GB ?!

Gruß
Christian
Christian
i := 0 ; While i = 0 do beep ;
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#6

AW: Niki Source-Code Design

  Alt 5. Apr 2011, 14:56
@Sir Rufo:
Darum sagte ich ja auch "allgemein" ^^ ...


So wie Bill Gates mal sagte
Zitat:
640 KBytes (Arbeitsspeicher) ist alles, was irgendeine Applikation jemals benötigen sollte
Das Zitat ist nicht von Bill Gates (und zudem falsch zitiert ^^). Guckst du: Gates talks @ U.S. News.


Nachtrag:
Hab gerade bemerkt, dass es natürlich nicht "function GoForward(...);" heißen muss, sondern "procedure GoForward(...);". Kommt davon wenn man zu schnell ist ^^
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.

Geändert von Deep-Sea ( 5. Apr 2011 um 15:01 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#7

AW: Niki Source-Code Design

  Alt 5. Apr 2011, 15:12
Wie du schon schreibst bekommt man davon Augenkrebs.

Somit ist deine Schreibweise auch nach Pascal StyleGuide

Die Gedankenwege eines Lehres sind manchmal unergründlich, die bauen ein Gliederung auch so auf
Code:
1. foo
a) foo
2. foo
Da fragt man sich, wo waren die während des Studiums
Wenn ein Lehrer sowas aber an einen Platz schreiben muss, der einfach sehr klein ist, dann kann ich schon verstehen, dass man es in gekürzter Fassung schreibt. Meinst sind Lehrer ja auch keine Informatiker, die somit auch keine Ahnung von schönem Code haben. Von dem her finde ich das durchaus vertretbar

Man sollte allerdings den Lehrer auf sowas hinweisen und er sich eben daraufhin die Mühe machen, die Klasse von entsprechenden Richtlinenen zu unterrichten. Wenn man Dinge lernt, dann sollte man auch Wert auf ein wenig Qualität legen.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#8

AW: Niki Source-Code Design

  Alt 5. Apr 2011, 15:18
Aber macht es überhaupt einen Unterschied, ob nun in einer Zeile oder in mehreren, wenn bei solchem Kram selbst Variablen als Ausgeburt der Hölle gelten?

Ich denke da gerne an einen Chemielehrer zurück: "Ihr lernt das jetzt erst mal falsch, weil ihr (noch) zu blöd seid, um es richtig zu lernen." - Aja! Warum lernen wir's dann überhaupt?
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#9

AW: Niki Source-Code Design

  Alt 5. Apr 2011, 15:22
Naja, zumindest ein Hinweis darauf, wie man es richtig macht, wäre sehr sehr sinnvoll. Allein aus dem Grund Lesbarkeit ist es eigentlich essentiell, dass pro Zeile ein Befehl steht. Es ist ja auch nicht so, dass die Schüler, wenn man es richtig begründet, zu dumm wären, es zu verstehen. In Chemie und Physik gibts manche Dinge, die ein 16 Jahre alter Schüler nicht unbedingt verstehen kann, da auch einfach die Grundlagen fehlen.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#10

AW: Niki Source-Code Design

  Alt 5. Apr 2011, 15:24
[OT]
Man sollte allerdings den Lehrer auf sowas hinweisen und er sich eben daraufhin die Mühe machen, die Klasse von entsprechenden Richtlinenen zu unterrichten.
Kann aus eigener Erfahrung nur davon abraten. Es bringt erstens meist sowieso nichts, und zweitens handelt man sich unter Umständen noch eine schlechtere Note ein, weil der Lehrer als unfehlbare Instanz sich dann von einem bedroht fühlt und sich dafür an einem rächt. Es ist wirklich armselig, aber glaub mir, ich habe es schon mehrfach erlebt... (auch wenn ich immer freundlich und vorsichtig drauf hingewiesen habe)

Trifft sicher nicht auf alle zu, aber auf viele...
[/OT]
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz