Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Schulprojekt (https://www.delphipraxis.net/62149-schulprojekt.html)

Abiturient 31. Jan 2006 14:28


Schulprojekt
 
Hallo. Ich bin in der 12 Klasse und zur Zeit müssen wir in Informatik ein Projekt mit Borland Delphi 7.0 entwerfen. Ich hatte mir überlegt ein Programm zu programmieren, bei dem man eine Datenbank mit allen aktuellen Modellen von BMW anlegt, welche auch alle Spetzifikationen wie PS, Gewicht, Länge usw. enthählt. Ich hatte mir also vorgestellt dass, wenn man das Programm öffnet ein Bildschirm erscheint wo man eingeben kann, was man für einen bmw haben will mit entsprchenden ps-zahl usw. und das Programm, je nach den entsprechenden Eingaben, die dafür zutreffenden Autos anzeigt (möglichst mit Bild).
Jedoch haben wir in der Schule nicht die entsprechenden kenntnisse für dieses Programm gelernt bekommen. Mein Problem ist, dass ich nicht weiß wie ich eine solche Datenbank weinzurichten habe und wie ich dann darauf zugreifen kann. Oder vielleicht gibt es ja auch noch einen leichteren Weg dieses Programm zu verwirklichen. Ich hoffe ihr könnt mir helfen.


MFG....ein Schüler mit zu wenig Delphi Kenntnissen

PierreB 31. Jan 2006 14:30

Re: Schulprojekt
 
http://dsdt.info/tutorials/?cat=6

malo 31. Jan 2006 14:54

Re: Schulprojekt
 
Delphi 7 Personal oder Delphi 7 Professional?
Das ist, gerade was Datenbanken angeht, ein riesen Unterschied. ;)

fluxury 31. Jan 2006 15:02

Re: Schulprojekt
 
Hallo Abiturient,

du kannst ja auch in eine Datei schreiben und diese dann auch lesen.

Ist eine alternative zur Datenbank wenn du sowas noch nicht kennst.


mfg

fluxury

Abiturient 31. Jan 2006 15:12

Re: Schulprojekt
 
Personal glaub ich.

Tut mir leid wenn sich die Frage blöd anhört. Aber wie meinst du das " in eine Datei schrieben"?

malo 31. Jan 2006 15:23

Re: Schulprojekt
 
Zitat:

Zitat von Abiturient
Tut mir leid wenn sich die Frage blöd anhört. Aber wie meinst du das " in eine Datei schrieben"?

Eine Datei erstellen, und dort etwas hineinschreiben :mrgreen:

Wenn du eine Personal-Version hast, dann solltest du die Sache mit den Datenbanken erstmal wieder vergessen. Der Aufwand, um mit einer Personal-Version mit Datenbanken zu arbeiten, ist einfach zu groß.
Schau dich mal hier um. Typirisierte Dateien dürften vielleicht was für dich sein ;)

fluxury 31. Jan 2006 15:26

Re: Schulprojekt
 
hi,

habt ihr schon einmal in dem Informatikkurs programmiert ?

So wie sich das an hört meine ich eher nein.


Ich würde dir raten ein paar Tutorials zu lesen und diese Beispiele zu programmieren.


mfg


fluxury

bigg 31. Jan 2006 15:26

Re: Schulprojekt
 
moin, (und willkommen in der DP)

er will lediglich wissen, ob du an eine Datenbank gebunden bist oder
ob du die Daten auch in einer Datei speichern darfst?

Hast du eine Aufgabenstellung bekommen?

Zitat:

Ich bin in der 12 Klasse und zur Zeit müssen wir in Informatik ein Projekt mit Borland Delphi 7.0 entwerfen
Soll das deine Aufgabenstellung sein, irgendein Programm schreiben?

Zitat:

MFG....ein Schüler mit zu wenig Delphi Kenntnissen
Welche wenigen Kenntnisse?

Abiturient 31. Jan 2006 17:12

Re: Schulprojekt
 
Ja wir haben schon programmiert erst in Pascal un jetz delphi. aber nur so kleine programme mit denen man Volumen von Körpern berechenen kann oder wo 2 spieler gegeneinander "würfeln" und der mit der höheren zahl gewinnt und so scherze.(das hat ja auch alles geklappt) Und jetzt sollen wir halt so ne Art großes Abschlussprojekt machen und ich hab mir die Aufgabe mit den Autos rausgesucht und weiß aber jetzt nicht wo und wie ich die autos mit ihren eigenschaften (leistung...) "abspeichern" soll. ich dachte das es da ne datenbank oder so was gibt (aber so was hatten wir im unterricht nicht)
ich kann das programm so gestallten wie ich das will aber ehrlichgesgt weiß ich nich wie ich an die Sache rangehen soll.

GLaforge 31. Jan 2006 17:22

Re: Schulprojekt
 
Hi,
zu ersteinmal finde ich Äußerungen wie
Zitat:

habt ihr schon einmal in dem Informatikkurs programmiert ?
So wie sich das an hört meine ich eher nein.
eher unpässlich. Sind wir doch mal ehrlich, an Schulen hat der "Informatikunterricht" doch eh nichts mit Informatik im wissenschaftlichen Sinne zu tun. So nun aber zurück zur eigentlichen Problemstellung. Bei mir war es ähnlich, uns wurde ein halbes Jahr Zeit gegeben um ein eigenes Programm zu entwerfen und realisieren. Ich möchte dir einen Rat geben. Da du ja nach eigener Aussage eher wenig Ahnung von Delphi hast empfehle ich dir nicht einen Datenbankimplementierung vorzunehmen. Es bringt auch herzlich wenig dir Tuts anzuschauen, es sei den du bist fähig die Analogien und Algorithmen dahinter zu verstehen. Es nutzt nichts wenn du das Prog nur irgendwie zusammen bastelst und alle halbe Stunde irgendso eine Fehlermeldung bei rum kommt. Nutze lieber Kenntnisse aus dem Unterricht. Man kann z.B nen Funktionsplotter o.ä. realisieren bei dem du wenig Programmierkenntnisse benötigst (nur Mathe muss man halt beherrschen ;-) ). Das ist meine Sicht zu dem ganzen.

cu

fwsp 31. Jan 2006 17:48

Re: Schulprojekt
 
Zitat:

Sind wir doch mal ehrlich, an Schulen hat der "Informatikunterricht" doch eh nichts mit Informatik im wissenschaftlichen Sinne zu tun.
das wage ich zu bezweifeln.

GLaforge 31. Jan 2006 17:52

Re: Schulprojekt
 
@fwsp:
Weißt du wie ein Info-Studium aussieht, dann weißt du auch wovon ich spreche

Hador 31. Jan 2006 17:54

Re: Schulprojekt
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich schließe mich fwsp an.
Es liegt immer am Lehrer.

Um es dir nicht unnötig schwer zu machen, kannst du das ganze auch mit INI Dateien lösen.
Da ich grad mal ein bisschen Ablenkung von meinen Hausaufgaben brauchte, hab ich dir mal ein Demoprojekt erstellt.
Du kannst es sir ja mal anschauen, durcharbeiten und ggf. dazu fragen stellen, wenn du dich für diese Art entscheidest.

fwsp 31. Jan 2006 17:56

Re: Schulprojekt
 
ich kann mir vorstellen, dass ein info-studium härter als info-unterricht in der schule ist. allerdings sind dabei der informatik-unterricht und der unterricht in informatischer grundbildung zu unterscheiden.

auch sind die anforderungen von bundesland zu bundesland unterschiedlich. mecklenburg-vorpommern gehört zu den wenigen bundesländern in denen es info-lks gibt.

Alexander 31. Jan 2006 18:18

Re: Schulprojekt
 
Das ganze kann man wunderbar auch mit INI-Dateien machen. Pro Sektion erstellst du dann halt ein BMW-Modell.
Sieht dann etwa so aus die Datei:
Code:
[750i]
ps=250
gewicht=2000
...
[730d]
ps=200
....
[330i]
...
Zur "Bedienung" der INIs einfach mal hier suchen :)

Mit der Personal ist es in der Tat recht mühsam, Datenbankanwendungen zu schreiben. Das würde ich auch nicht unbedingt machen wollen.

PS: Info-Unterricht kann durchaus einem Info-Studium recht nahe sein. Zumindest die ersten Semester (zumindest dann wenn man den "richtigen" Lehrer hat bzw. in einem Prüfungskurs mit Zentralabi sitzt.

pacman1986 31. Jan 2006 18:19

Re: Schulprojekt
 
Zitat:

mecklenburg-vorpommern gehört zu den wenigen bundesländern in denen es info-lks gibt.
Ich will nach mecklenburg :-D

Hador 31. Jan 2006 18:21

Re: Schulprojekt
 
Da hast du recht. Bei uns in NRW gibts das nur an einigen speziellen Gymnasien.
Jedoch ist beispielsweise unser jetziger Lehrer (übrigends ein studierter Informatiker) nicht schlecht.
Bei dem kann man wirklich noch was lernen.

Jedoch muss man auch sagen, dass es viele Lehrer gibt, die nicht wirklich gut sind.
Lustigerweise durfte ich z.B. nach einer einführung in die Sprache Pascal durch unseren Lehrer den Unterricht übernehmen, unseren Kurs in Delphi und OOP einführen, Projekte ersinnen und diese durchführen. :mrgreen: War auch lustig, aber naja. Obwohl es wohl immer noch besser gelaufen ist als in unserem damaligen Parallelkurs, die noch weniger gemacht haben und bei denen es wesentlich langweiliger war :???:
Nja alles in allem bin ich fro, dass wir unseren jetzigen Lehrer haben auch wenn ich nun für meine 1 auch ne ganze Menge tun muss.

@ Alexander:
Ich habe ja eben schon auf inis hingewiesen und ein Demoprojekt dazu oben angehängt.

EDIT: Rechtschreibfehler korregiert
EDIT: Evtl. sollten wir mit dieser Diskussion (zumindest an dieser Stelle) aufhören da wir sehr OT werden.
EDIT2: Rechtschreibfehler im ersten Edit korregiert :wall:

Nils_13 31. Jan 2006 18:33

Re: Schulprojekt
 
Zitat:

Zitat von fwsp
ich kann mir vorstellen, dass ein info-studium härter als info-unterricht in der schule ist. allerdings sind dabei der informatik-unterricht und der unterricht in informatischer grundbildung zu unterscheiden.

auch sind die anforderungen von bundesland zu bundesland unterschiedlich. mecklenburg-vorpommern gehört zu den wenigen bundesländern in denen es info-lks gibt.

Pass bloß auf, was du da sagtst ! Das ist mindestens doppelt so hart, der Kram in der Schule ist dagegen verdammt einfach und die Aufgaben, die du in der Uni machst sind unvergleichbar mit der 13 Klasse.

bigg 31. Jan 2006 18:36

Re: Schulprojekt
 
Zitat:

Zitat von Nils_13
Pass bloß auf, was du da sagtst ! Das ist mindestens doppelt so hart, der Kram in der Schule ist dagegen verdammt einfach und die Aufgaben, die du in der Uni machst sind unvergleichbar mit der 13 Klasse.

Spricht da jemand aus Erfahrung? :stupid:

GLaforge 31. Jan 2006 18:42

Re: Schulprojekt
 
Ich will ja nicht off-topic posten aber nils hat recht. Schon die Äußerungen, das ihr verschiedene Sachen programmiert (von mir aus auch schon Pointer, Guards etc.) zeigt mir, dass ich recht habe. Informatik <> Programmierkurs, es geht sehr oft um analytische Lösungen. Ein guter Informatiker brauch auch weniger eine Programmiersprache um Informationen zu verarbeiten (ein Kern der Informatik).
Zitat:

PS: Info-Unterricht kann durchaus einem Info-Studium recht nahe sein. Zumindest die ersten Semester (zumindest dann wenn man den "richtigen" Lehrer hat bzw. in einem Prüfungskurs mit Zentralabi sitzt.
Kann mir dann jemand von der Infoschülern sagen was eine Quotiententermalgebra ist und sein Programm durch Hoare-Kalkül verifizieren (Inhalt des 1.Semesters).

Hador 31. Jan 2006 21:28

Re: Schulprojekt
 
Zitat:

Zitat von GLaforge
Kann mir dann jemand von der Infoschülern sagen was eine Quotiententermalgebra ist und sein Programm durch Hoare-Kalkül verifizieren (Inhalt des 1.Semesters).

:shock: Ne nicht wirklich :mrgreen:
Gut du hast gewonnen.

Aber nur so aus reiner Neugier: Was ist das? Kannste mir ja notfalls auch per PN mitteilen.

Abiturient 6. Feb 2006 10:58

Re: Schulprojekt
 
so. erst mal vielen dank für eure hilfe. ich denke das ich das mit der ini datei hinbekommen werde.

Abiturient 26. Feb 2006 11:06

Re: Schulprojekt
 
Liste der Anhänge anzeigen (Anzahl: 1)
ich habe mein programm jetz so weit, das ich autos in eine ini datei speichern und sie auch wieder aus dieser datei laden kann. ich hab aber keine ahnung wie ich eine suchfunktion gestalten kann. D.h. ich möchte z.B. in einer checkbox eingeben wie viel ps das auto haben soll(z.B. 120-150) und dann sollen mir alle autos in einer liste angegeben werden, die so viel ps haben. ich hoffe ihr helft mir weiter.

JocalAreaNetwork 26. Feb 2006 11:35

Re: Schulprojekt
 
Wenn du alle deine Autos in einem Array eingelesen hast, dann musst du nur eine Schleife drüberlaufen lassen und dir merken, welche Autos deine Bedingungen erfüllen. Das ist nicht besonders schnell, aber es dürfte bei deinem Projekt vollkommen reichen.

Abiturient 26. Feb 2006 14:41

Re: Schulprojekt
 
Liste der Anhänge anzeigen (Anzahl: 1)
ich hab jetz die autos in einem array eingelesen. aber ich kann die nicht laden, indem ich die ps zahl eingebe. (siehe form2 im programm) könnt ihr mal bitte gucken ob ihr nen fehler entdeckt?

Der_Unwissende 26. Feb 2006 15:19

Re: Schulprojekt
 
Hi,
sorry aber ich denke keiner wird dir hier weit helfen können, deine Unit2 / Form2 fehlt einfach im Anhang.
Und ich muss leider noch jede Menge Kritik am Code üben. Jeder der dir helfen möchte, wird es sich sicherlich noch einmal überlegen, wenn er den Codestil sieht. Aber insbesondere solltest du auch für dich selbst an einem besseren Stil arbeiten. Versteh mich nicht falsch, weder kann noch will ich dir hier einen vorschreiben, aber je strukturierter der Code, desto leichter verständlich (für jeden!) und damit auch viel viel weniger Fehleranfällig.
Deshalb solltest du einfach mal mit hierachischem einrücken anfangen
Delphi-Quellcode:
begin
  if Irgendwas then
    begin
      Foo1;
    end
  else if IrgendwasAnderes then
    begin
      Foo2;
    end;
end
Ich denke hier siehst du schon recht einfach, wo der Vorteil von einer solchen Einrückung ist, noch mal als Kontrast
Delphi-Quellcode:
begin
if Irgendwas then
Foo1; else
if IrgendwasAnderes
Foo2;
end
Da muss man doch sehr viel deutlicher hinschauen um zu wissen, welches Foo zu welcher Bedingung gehört. Insbesondere solltest du pro Zeile auch immer nur eine Anweisung benutzen. Man überliest leicht dein else in Vorgängerzeilen und es gibt auch Möglichkeiten, die sich nicht ausschließen...
Ansonsten solltest du auch Destruktoren benutzen. Wenn du etwas mit .Create anlegst, dann wird speicher allokiert, der sollte aber auch irgendwann wieder frei gegeben werden. Insbesondere gilt hier, dass du nur eine Referenz (typisierter Zeiger auf eine Instanz) speicherst.
Delphi-Quellcode:
var iniFile : TIniFile;
begin
  iniFile := TIniFile.Create(DATEI); // erstes Mal speicher alloziert
  ...
  iniFile := TIniFile.Create(DATEI); // gleiche Datei, aber zweites Mal speicher alloziert
  ...
  iniFile.Free; // letzte Instanz frei gegeben, aber eben nur die letzte
end;
Wenn du das z.B. mal mit einer Bitmap als Klassenvariable machst (oder etwas anderem, was nur groß genug ist), dann hast du deinen Speicher ruck-zuck zugemüllt. Das führt unter Win9x gerne zu komplettem Stillstand und unter den NTs zu Performance einbrüche (da der virtuelle Speicher etwas stark in Anspruch genommen wird).

Als letzter Punkt, benenn lieber deine Komponenten gleich richtig. Am besten mit einem Präfix, der anzeigt um was es sich handelt (z.B. Btn für Buttons oder Frm für ein Form). Unter Button1 und Button2 kann man sich weniger vorstellen als unter BtnLaden oder BtnNeu, dann ist auch klarer was für Code folgen sollte.

So, ich hoffe du fässt das hier nicht falsch auf, ist nur ein Tipp und es klingt vielleicht nach einer Menge, aber wenn du dich immer an diese Regeln hälst, merkst du dass es gar nicht so viele sind und der Code ist einfach sauberer. Am meisten profitierst Du davon, denn du liest deinen Code häufiger als jeder andere. Spätestens wenn du mal im Job mit Programmierung zu tun haben solltest, kommst du um Codestruktur auch gar nicht mehr rum (und das hat seine Gründe). Ich kann dir nur sagen, je eher man es sich angewöhnt desto leichter fällt es einem und es hat einfach seine Vorteile (auch bei noch so kleinen Projekten).

Gruß Der Unwissende


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:25 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz