Bildersprache für PureBasic

Hier kann alles mögliche diskutiert werden. Themen zu Purebasic sind hier erwünscht.
Flames und Spam kommen ungefragt in den Mülleimer.
Benutzeravatar
STARGÅTE
Kommando SG1
Beiträge: 7031
Registriert: 01.11.2005 13:34
Wohnort: Glienicke
Kontaktdaten:

Beitrag von STARGÅTE »

Ich habe nix gegen Icons, oder Bilder die eine Sache deutlich machen.
Aber dieser Satz hier:
>Dass man kleine Symbole hat, am besten bewegte Animationen, die einen Befehl darstellen.

Klang für mich so, als ob der Code dann so aussieht:
Bild

Und davor habe ich Angst.

PS: Vllt kann ja einer Übersetzen ^^
Zuletzt geändert von STARGÅTE am 10.07.2010 23:25, insgesamt 1-mal geändert.
PB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Code: Alles auswählen

Du meinst sicherlich:

InitSound()
InitSprites()

OpenScreen()
Repeat

  ClearScreen()
Until 1=1
Aber so schlimm finde ich dein Bepiel gar nicht :mrgreen:
Piktogramme werden ja auch bei ProgrammAblaufsPlänen (PAP)
benutzt.

Oder bei Nassi-Schneidermann
http://de.wikipedia.org/wiki/Nassi-Shneiderman-Diagramm

PAP
http://de.wikipedia.org/wiki/Programmablaufplan

Bild

Es könnte eine Kombination aus den vorhanden Methoden geben
Kinder an die Macht http://scratch.mit.edu/
Andreas_S
Beiträge: 787
Registriert: 14.04.2007 16:48
Wohnort: Wien Umgebung
Kontaktdaten:

Beitrag von Andreas_S »

Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

STARGÅTE hat geschrieben:
ZeHa hat geschrieben:So wie ich das verstanden habe geht es nicht drum, für jeden xbeliebigen Befehl ein Icon zu finden, sondern Xaby will ja ein paar Dinge auch zusammenfassen. Ein Fenster z.B. könnte sowieso direkt durch ein Design-Tool gemacht werden, wozu soll man das auch "programmieren".
Aber genau das ist doch ein größer Fehler.

Leute die dnan anfangen mit Programmieren freuen sich erst, "Ui, ich kann ein Fenster machen, blabla blub...", stellen (Monate) später aber fest das sich beim "verfeinern" und individualisieren ihrend Werken keine Ahnung haben was sie im Code seber machen müssen.
Denn alles kann man einfach nicht mit Grafik ausdrücken, nicht um sonst würde damals die Schrift erfunden, sodass wir heute nicht mehr mit Bildchen uns verständigen.
Natürlich, aber Xaby hat ja nicht vor, die Programmierwelt zu revolutionieren und C++ und Java vom Thron zu stoßen, sodaß in 5 Jahren in jeder Firma nur noch mit Xaby's Picture Programming Langue (XPPL ;) ) gearbeitet wird.

Lernen mußt Du mit jeder Sprache, und mit jeder Sprache fängst Du erstmal mit einem simplen "Hallo wie heißt Du?" - Input - "Ah, hallo [name]" usw. an. Und wenn Du dann mal "richtigen" Code anschaust, bist Du auch erstmal verwirrt weil da so viel steht.

Ob man nun mit Bildern programmiert und hinterher erfahren muß, daß beim "normalen" Programmieren alles ein bißchen komplizierter ist, oder ob man das direkt beim Erlernen des normalen Programmieren feststellt, dürfte so gesehen keinen wirklich großen Unterschied machen. Im Gegenteil, ich vermute mal daß es bei einer Bildersprache von vorneherein klar sein dürfte, daß das eine vereinfachte Form des Programmierens ist.

Außerdem soll's ja auch für die etwas jüngeren Leute gedacht sein, und die können vielleicht noch nichtmal richtig lesen. Ähnlich könntest Du übrigens argumentieren, daß man einem Kleinkind mit 3-5 Jahren sofort Lego Technic kaufen sollte. Denn wenn es mit Lego Duplo anfängt und später auf normales Lego und dann auf Lego Technic umsteigt, dann stellt es ja plötzlich fest, daß man viel komplizierter denken muß. Ich glaube mir selbst ging es damals als Kind eher andersrum, ich hab mich bei Lego Technic sofort gefreut, daß ich endlich mal viel mehr Möglichkeiten habe als mit dem bisherigen normalen Lego ;)



Zu guter Letzt sollte man mal auch andere, ähnliche Programme nicht außer Acht lassen: Man kann z.B. Webseiten mit 'nem Texteditor schreiben, aber Programme wie Dreamweaver & Co. erfreuen sich trotzdem großer Beliebtheit. Und man kann seine Dokumente auch mit LaTeX schreiben, aber ich würde mal vermuten daß der Großteil der Menschheit seine Dokumente mit Word etc. anfertigt. Ist zwar nicht 100%ig vergleichbar, aber es geht in eine ähnliche Richtung :)
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Meine Idee war einfach, die Programmierung mit PureBasic auch für Leute ohne jegliche Programmierkenntnisse interessant zu gestalten.

Wie oft haben wir im Forum gelesen, dass Anfänger nicht wissen, was Schleifen oder Variablen sind.

Die meisten von uns haben doch ihre Erfahrungen schon mit anderen Sprachen vor PureBasic gemacht. Deshalb ist es sicherlich nicht ganz so einfach zu verstehen, dass PureBasic trotz seiner genialen Einfachheit für einige einfach zu unverständlich ist.

Ich selbst begreife auch nicht, wieso ich jedes Mal bei einem Fenster den ganzen gleichen Quatsch schreiben soll, wenn es doch eigentlich immer das gleiche ist.

Die IDE bietet das Werkzeug:

- CodeBausteine


Nutzt das jemand? Meine Überlegung ging in die Richtung, dass wir gemeinsam ein paar wichtige Codebausteine zusammentragen und für diese könnte man dann verständliche Symbole nutzen.

Meine nächste Überlegung war, dass ein Anfänger schnell Resultate sehen möchte und möglichst wenig Vorkenntnisse dazu benötigen sollte.

Was wollen Anfänger machen? Sie wollen Spiele programmieren, wer schon den Wunsch hat, eine Anwendung zu schreiben, kennt sich ja schon etwas besser aus und weiß, dass es außer Spielen auch noch etwas anderes gibt.

Niemand (der Anfänger) würde auf die Idee kommen, ...
Oh es gibt Word, ich schreibe ein Programm, mit dem ich Text schreiben kann.

Es ist doch eher so: Oh, ich habe eine Idee, was in meinem Spiel alles cool sein soll, aber wie setzte ich das um?

>>>>>>>>>>>

Was haltet ihr eigentlich von meinem Ansatz der Syntax?

Code: Alles auswählen

XIncludeFile "FLDGS.pbi" ; Unit für JAVA, JAVAScript, C# individuell

StartMyProgram_FL2D()

Procedure AddObjects_FL2D()

EndProcedure

Procedure Events_FL2D()

EndProcedure
Das ist ein fertiges Programm, was ein Fenster öffnet und alle Funktionen bereit stellt. Wie Tastatur, Maus, Joystick, Musik, Bildchen
[ESC] schließt Programm, oder Mausklick auf [X]
(die Sache mit [ESC] müsste man noch mal genauer in Augenschein nehmen, wenn die Umgebung stabil, schnell und einfach läuft. So dass man eventuell bei StartMyProgramm() angibt, dass [ESC] das Programm nicht automatisch schließt. Denn bei Menüs innerhalb des eigen Programms kann es ja sein, dass man da die ESC-Taste benutzen möchte.
(Obwohl man dazu auch [<--] oder so nehmen könnte)


Des Weiteren ist meine Überlegung, dass man diese Struktur mit einer anderen Unit, die aber gleiche Befehle enthält in andere Sprachen übersetzten könnte.

Also dann nur eine kleine Übersetzungsbibliothek benötigt, weil man ja den Befehlssatz reduziert hat.

RISC :mrgreen:
Kinder an die Macht http://scratch.mit.edu/
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Es können übrigens auch Objekte während der Laufzeit hinzugefügt werden, es ist damit nicht zwingend notwendig, die Objekte vorher in

Code: Alles auswählen

Procedure AddObjects_FL2D()

EndProcedure
hinzuzufügen. Allerdings ist es der Logik wegen empfohlen.
Bei Scratch zum Beispiel ist es nicht möglich automatisiert weitere Objekte anzulegen. Da muss der Nutzer vorher alle Elemente hinzugefügt haben.

Das ist auf der einen Seite sicherer, schränkt aber später bei mehr Kenntnissen erheblich ein.

Meine Umformung bzw. Interpretation von PureBasic ermöglicht es, einfache kleine Programme zu schreiben, Rätselaufgaben zu stellen, Spiele zu entwickeln, lässt aber genügend Freiraum, um mit PureBasic ganz normal weiter zu programmieren und meine "Engine" zu erweitern.

So könnte es möglich sein, dass die Sprache von 5 Jahren bis ins Hohe Alter durchweg nie an Reiz verliert.

Also eine Sprache, die mit wächst. Was bei LOGO so leider nicht der Fall ist.
Kinder an die Macht http://scratch.mit.edu/
PMTheQuick
Beiträge: 630
Registriert: 05.05.2005 19:06

Beitrag von PMTheQuick »

@Xaby: Was ich davon halte - Gar nichts. Es sollte gleich bleiben. Wer unbedingt mit Symbolen was machen will, soll sich halt was anderes besorgen. Die IDE ist gut so, der Compiler & die Grösse akzeptabel. Ein unnötiger, mit Sprites vollgestopfter Editor wäre echt nicht gut. Schon alleine aus Performance-Gründen. Und zu Anfänger: Viele meinen heute: Ah das kaufe ich! Ich mach kligg kligg und schon hab ich mein eigenes Second Life, CounterStrike, WoW oder was auch immer. Wer ein Spiel will, muss schon etwas Initiative mitbringen und halt auch etwas Zeit aufwenden. Ansonsten soll er halt GameMaker nehmen, ganz im Baukastenprinzip. Irgendetwas findet er dann schon. Die ganze Idee ist meiner Meinung nach: ABSOLUTER SCHWACHSINN

Gruss
PMTheQuick ;)
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Sorry aber Dein Beitrag ist leider auch "ABSOLUTER SCHWACHSINN".

Auf der einen Seite sagst Du, daß Xabys Idee unnötig ist, auf der anderen sagst Du aber daß diejenigen, die es gebrauchen können, sich halt nach was anderem umsehen sollen. Und dieses "andere" (GameMaker) ist aber okay oder wie?

Xaby hat ja nicht vor, die offizielle IDE von PureBasic durch seine Icon-IDE zu ersetzen. Sondern das ist einfach nur ein Zusatzprodukt, also eines dieser "anderen" Dinge.
Wer ein Spiel will, muss schon etwas Initiative mitbringen und halt auch etwas Zeit aufwenden.
Bedenke: "Ein Spiel machen" muß nicht automatisch "Ein Spiel programmieren" bedeuten. Wer einen GameMaker benutzt, muß immer noch genügend Initiative aufbringen, und ob man sein Spiel komplett selbst programmiert oder einfach eine fertige Engine benutzt, hat mit Initiative nicht viel zu tun, es hängt von der persönlichen Entscheidung ab (die auf Faktoren wie Zeit, Wissen, Kosten basiert).
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Benutzeravatar
Xaby
Beiträge: 2144
Registriert: 12.11.2005 11:29
Wohnort: Berlin + Zehdenick
Kontaktdaten:

Beitrag von Xaby »

Manchmal möchte ich ein Kind von dir ZeHa, scheinst oft der einzige zu sein, der mich versteht.

Vielleicht nuschel ich beim Schreiben, so dass ich missverstanden werde.

@Wuscheltier
Stell es dir als eine Art: VisualDesigner vor

Da kannste auch deine Gadgets zusammenklicken und hast Code, den du individuell anpassen kannst. Aber einige Dinge funktionieren halt schon, so dass man für die wirklich wichtigen Dinge mehr Zeit hat.

Vielleicht stellst du es dir so vor wie einen "innovativen" GameMaker, den man per Klick und Klack nutzen kann, der aber PureBasic-Code erzeugt, den man ganz normal mit PureBasic erweitern kann.

:roll:
Kinder an die Macht http://scratch.mit.edu/
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Kinder gibt's keine :mrgreen: es sei denn, Du schickst eins Deiner Fotomodels vorbei :lol:

Also vielleicht wäre es für Dich das beste, wenn Du das einfach nur umsetzt und hier am besten gar nicht mehr groß davon redest... wenn Du dann in ein paar Wochen einen guten Prototyp entwickelt hast, dann kannst Du ihn vorstellen, vielleicht findet es dann mehr Anklang. Zwar wird die Zielgruppe hier auch nicht die richtige sein, aber möglicherweise sind dann manche in der Lage, den Sinn und Zweck etwas besser zu erkennen ;)
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Antworten