Súgó - Keresés - Tagok - Naptár
Teljes változat: Programozás kezdőknek
PC WORLD Segélyvonal > SZOFTVER > Programozás
Oldalak: 1, 2, 3, 4, 5, 6
Mezofi
Sziasztok, már régóta foglalkozok a gondolattal, hogy programot írjak.
Van pár kérdésem, melyeket esetleg feltennék.
Már belekostoltam a Java nyelvbe, tanultam Access-t , SQL-t, Visual Basic-et, PHP-t.

De még mindig köd van azon a területen, hogyan kellen nekifogni egy olyan programnak ami adatbázisra építkezik, de úgy, hogy ha meg van írva akkor bárkinek a gépén futtatni lehessen, még azon is akién nincs Access.

Szerintem valimiféle mobil adtabázist kell létrehozni.

Gondoltam először, egy angol teszt kérdésekből álló kis programot csinálnék, a kérdések adatbázisban lennének.

Ha van valami indító ötlet az jó lenne.
google
Delphi.
Jester
Én a Turbo Pascalt ismerem, abban tudok segíteni.
Adani
C/C++-t de csak minimális szinten (éppen azt tanulom), ebben megpróbálhatok segíteni.

Pascalt már régen tanultam ,de ahhoz is értek. Más nyelvek pedig távol állnak tőlem.
_Menyus_
Google hozzászólását csak helyeselni tudom: Delphi. Nagyon jók az adatbáziskezelési képességei, és szerintem ha szeretnél ezzel a témával foglalkozni, érdemes belevágni. Természetesen mind Visual Basic-ben, mind Java-ban működik a dolog, de segíteni én is csak Delphiben tudok.
Nem kell telepíteni az Access-t a célgépeken. A te programod nem az Accessnek szól, hogy adjon vissza értékeket, vegyen fel új rekordokat stb, hanem egy adatbázismotornak. Neked ezt a motort kell feltelepítened, és azzal fogsz kommunikálni (ahogy az Access is teszi). Az Access adatbázisokat a Microsoft Jet "kezeli". Ahhoz viszont hogy kommunikálni tudj ezzel az adatbázismotorral, több lehetőséged is van. Használhatod az ADO-t, mely egy viszonylag új dolog, de használhatod (a Delphi esetében) a BDE-t is, ami már elavultnak számít, nem ajánlom. Az ADO az MDAC (Microsoft Data Access Components) csomagban található, de nem kell parázni, a Windows XP-ben alapból benne van. Ezért ha készítesz egy Access-es adatbázist (*.mdb) és egy programot hozzá ami kezeli, Xp-s gépeken semmit nem kell tenned. (Az alatt meg csak fel kell telepíteni az MDAC-ot, ingyenes)
Az ADO-t Visual Basicben is használhatod természetesen.
Ha kérdésed van, tedd fel, szívesen segítünk/segítek.
George
Most a Delphit tanuljuk az egyetemen,szóval ha Valami kérdésed van akkor szívesen segítek.Turbo Pascalt is ismerem. B)
Athos
Egy Accesses alkalmazásból lehet olyat csinálni, hogy telepíthető legyen és ne tudjanak beletúrni a programokba. Tudom, hogy lehet, olvastam róla, de nekem még nem sikerült. sad.gif Pedig jó lenne már megtanulni hogyan, mert ilyen feladatokra alkalmas lenne.
Mezofi
Akkor el kell kezdenem Delphi-t tanulni, ok.
Valami használható könyv?
Amiben azért érthető példák vannak?
Ha van valami címe a könyvnek, jó lenne, mert már megjártam amit csak úgy vaktában vettem a címe alapján.
George
Egy kis Delphis segédlet,hátha hasznát veszed.
http://aries.ektf.hu/~serial/delphi_/
Mezofi
Jó!
De ez inkább azoknak akik már találkoztak a Delphi nyelvvel.
A jávának is van valamilyen fejlesztői felülete, a Visual Basic-nek is, stb.
A Delphinek is van?
Nekem a -1 ről kell indulnom ebben a nyelvben.
google
Bizony van! Borland Delphi! sad.gif :angry:
De a -1 -et a sima Freepascalban is behozhatod, amikor még nem kell belemenni a fejlesztőkörnyezet dolgaiba, mi hol van, stb.
És ha már jól megy a pascal, élvezet lesz Delphivel dolgozni.
Mezofi
"Freepascalban"
????

Ehez sincs lövésem, hol, kezdjem.
Mint az elején írtam: Tanultam Javát, SQL-t, Php-t, Visual Basic-et.
google
Akkor Pascalt nem.
A Delphinek ugyanis az a nyelve.

A Freepascal egy karakteres fejlesztőkörnyezet, modern, vizuális programok megírására nem alkalmas, de remekül meg lehet tanulni benne a pascal nyelvet, mert sallangmentes (olyan, mint a Turbo Pascal).
Ezután Delphiben már csak a Borland programját kell kiismerni, mi hol van (nem mindig olyan könnyű), de a nyelv alapjait már ismered. B)
A fenti nyelvek után szerintem nagyon könnyű lesz. ani_wink.gif
Mezofi
A Freepascal letölthető valahonnan vagy csak megvásárolható?
google
Freepascal, tehát ingyenes pascal smile.gif
(de mondom, konzolos, ne várj tőle túl sokat, de tanulásra jó)

www.freepascal.org
kfx
Én már valamennyire tudok programozni Pascalban, Delphiben és Javaban, de ezek közül egyiknél sem lehet igazán mélyre ásni. Ezt arra értem, hogy nem tudok olyan programot írni, mint pl. egy letöltésvezárlő. Ez mondjuk egy kicsit elrugaszkodott példa(szép lenne, ha már ilyet tudnék),
Miben kéne próbálkozni? C++?
arpsoft
A Delphi pl tökéletes lehet.
A C++-ban és társaiban sokkal nehezebb programot írni, mint az általad említett nyelveken.
A delphi-hez van egy csomó kontrol, amit gyönyörűen fel lehet használni.
kfx
Delphiben nyilvánvalóan valamivel egyszerúbb, mint C++-ban, de szerinted melyikben lehet hasznosabb, jobb programot írni?
arpsoft
Igen. Ez az alapvető hiba a programozó palántáknál.
Majdnem mindent meg lehet írni, majdnem minden nyelven.
Nem ezen múlik.
Attól függ, milyen programot akarsz írni, úgy kell nyelvet választani.
Aratni ollóval is lehet, de lássuk be, kaszával, vagy esetleg kombájnnal egy kicsit egyszerűbb.

Tűzzed ki a feladatot, és megmondom miben érdemes elkezdeni.

A nyelvek közül meg tanuljál meg minél többet használni.
Nem kell kívülről tudni mindent, de legyél tisztában a nyelv logikájával, felépítésével, alapvető szintaktikával. A többi jöhet a könyvekből és a helpből.
Kovács Dávid ( Davs )
Én pl. a Python tanulgatnám, de hát még mindig nem tudom, hogy hogyan lehetne python progit win alatt futtatni, és a Linuxxal a winnek mindeg baja van...És nálam addig a win a no.1, amíg Linuxon nincs netem...Tehát várok az ADSL-ig ani_wink.gif ...
kfx
Először még csak különböző apróbb, egyszerűbb logikai feladatokat megoldó programokat szeretnék, aztán ezt bonyolítanám. Ha már minden nagyon jól megy, majd hasznos programokat is szeretnék írni. Például van egy nagy indíttatásom: Két számítógép között infrakapcsolatot létrehozni. Persze kókányolt infrával. Na ehhez már minden meg is lenne, csak a szoftver hiányzik, ami értelmezi a portra érkező jeleket.
Athos
Jól mondja Arpsoft. A programozás a feladatspecifikációtól kezdődik, majd a tervezésen át jöhet a kódolás. ani_wink.gif Aztán persze tesztelés, hibajavítás, dokumentálás. cool.gif Azt, hogy a kódolás milyen nyelven történik az meg más kérdés.
kfx
De elég fontos, nem?
google
Nem a legfontosabb. Az, hogy most egy Windows-os alkalmazást Delphiben, C-ben vagy Visual Basic-ben írsz meg, inkább azon múlik, melyik nyelvet preferálod / ismered a legjobban.
Nekem legalábbis ennyi jött le fél év alatt. smile.gif
arpsoft
A nyelv megválasztása a fontos.
Nem fogok egy webes alkalmazást VB-ben megírni, pedig lehetne abban is (lásd ASP, de kinek lenne türelme megnézni, meg hova raknád fel ?) , amikor van ugye a Java meg a PHP.
De pl egy apró Win-es programot nem fogok C#-ban programozni, amikor erre a VB tökéletesen megfelel.
Viszont semmi esetre sem csinálnék rendszerszintű programokat Delphi-ben, hanem inkább C++-ban, míg egy adatbázisokat is kezelő progit nem biztos hogy megírnék bármelyik előbb említett nyelven, hanem inkább előveszem a Visual FoxPro-t.
Ha meg hardver programozásra készülnék, akkor erősen elgondolkoznék az assembly-n.

De ez az utolsó lépés a fejlesztésben! A kódolásig minden program ugyan úgy néz ki.

@Athos: a dokumentálásnak nem a végén, hanem folyamatosan kell mennie! ani_wink.gif
Athos
Bocsi! Rosszul fogalmaztam. Felhasználói kézikönyv (help) írása. ani_wink.gif Persze lehet közben folyamatosan. Attól függ hányan dolgoznak a projekten. Munkahelyemen pl. a helyzetérzékeny helpjét már a programozás közben elkezdtük csinálni, de még mindig nincs kész, pedig a rendszert bevezettük. Rengeteg meló megcsinálni.
kfx
Hát akkor tanácsaitokat megfogadva tovább mélyítem ismereteimet a Delphiben. Nem tudnátok Valami netes segédletet adni?
Mezofi
Sziasztok!
Beszereztem a Marco Cantú könyvét és a Borland Delphi7-et.
Na de fogalmam sincs, hogy tudnák valamit produkálni.
A kis ablakban megjelentek előre gyártott sorok, ezután beírtam a könyvből vett prg-sorokat, és sikeresen kijelölte pirossal az elő sort mindjárt.
KÓD


unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

type
 TForm1 = class(TForm)
   procedure FormCreate(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}
procedure TForm1.FormMouseDown (Sender: TObject;
 Button: TMouseButton; Shift: TshiftState; X, Y: Integer);
var
 Btn: TButton;
begin
 Btn: =TButton.Create (Self);
 Btn.Parent :=Self;
 Btn.Left : X;
 Btn.Top :Y;
 Btn.Width :=Btn.Width + 50;
 Btn.Caption :=Format ('Button at %d, %d',  [X, Y]);
 end;

end.


Hogyan tudnák valami erdményt produkálni?
Ez a felület hasonlit a Borland Java Builderére, az is elég kemény játék.

Ha tudtok valamit segíteni, írjatok.
Köszi.
arpsoft
Én nem nagyon vágom a Delphi-t, de ha jól emlékszem Pascal-os koromra, akkor a következőket olvasom ki a kódból:
1. ez egy Unit, ami önmagában nem fog csinálni semmit, legalábbis láthatót nem
2. létrhoz egy tform1 nevű objektum típust, ami a TForm-ból származik, ami egy form lenne, azonban semmi nem jeleníti meg, mivel csak típusdefiníciót csinál, majd létrehozza a form1 objektumot a tform1 típusból.
3. a tform1 egérkattintá műveletét felülírja, hogy ott, ahol kattintottunk, a formon megjelenjen egy gomb, aminek a felirata a kattintás koordinátáit tartalmazza.

És itt vége.
Ez nem program, csak definíció, amit egy programban fel lehet használni.
Szerintem azért kaptál pirosat az első sorra, mert programként szeretted volna fordítani és nem unit-ként.

Remélem nem beszéltem hülyeséget.
google
Engem fél évet nyúztak a Delphivel, szóval belenézve én is kb. ezt állapítottam meg.
Unit, már csak azért is, mert ő maga unitot nem használ. Tehát őt lehet felhasználni.
arpsoft
Khmm... exclamat.gif

IDÉZET
KÓD
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;


Ezek mind használt unitok... ani_wink.gif
google
Igen, világos, de alapértelmezés szerint van egy unit1 is, amit használ...
és elvileg továbbiakat ő írhat...
Ezek mind "gyárilag" előre megírt unitok.
arpsoft
A Unit1 magának a most gyártott unit-nak a hivatkozási neve. Azt nem használja.
Ha program lenne, akkor állhatna ott olyasmi, (Pascalban volt ilyen, lehet, hogy itt nincs) program program1;
google
Álljon meg a menet! exclamat.gif
Ez maga a program. Csak unit1 a neve (alapértelmezés szerint), és ha újabb unit-ot írnál hozzá, az lenne a unit2, amit ott kellene beleírni, ahol az előre megírt unitok (Windows, Graphic, Controls stb.) vannak.
A programban pedig egy szem eljárás van.
Nekem is kihúzza rögtön az első sort (mármint az implementation részben természetesen), és rengeteg szintaktikai hibát fedez fel.
Valami ebből nagyon hiányzik.

Látszik, mennyit ért a fél év blush.gif , de nekem nem a Delphi a fő területem, nyom nélkül azért mégsem múlt el. biggrin.gif
Mezofi
Ez egy mintaprogram a könyv szerint, a program a procedure parancsszó után kezdödik.
Ami elötte van azt a Borland Delphi7 rögtön a Delphi indulásakor írja ki, én csak az end elé beillesztettem a programot.
A proi elvileg azt csinálja amit leirtatok:
Létrejön egy gomb a kattintás helyén felirata pedig a gomb helyét mutatja.

Elvileg, de nekem semmit sem csinál, persze még sosem csináltam semmit delphiben, tehát ezért kértem valami általam is értelmezhető segítséget!
blink.gif

Ui:
Tudtok ajánlani valami könyv címet, amiből a kezdők is megtanulhatnak Delphi nyelven programozni.
Olyant ami leírja hogyan jelenitsünk meg valamit a képernyőn, az elejétől, és nem feltételezi azt, hogy úgy születtünk mint aki már évek óta Delphi nyelven programoz, és a programozási felületet is ö készítette!
Mert így ahogy a Cantú leírja, ez nem érthető nekem.
roll.gif
Gereby
Most írom első hasznos progimat lassan kész lesz.
A tesztelési fázis fog következni. Tud valaki valamilyen programot amivel nézhetem hogy mennyi memóriát eszik stb.?
arpsoft
Persze. Windows Task Manager.
Gereby
Mondassz valamit smile.gif
Gereby
Most egy adatbázis kezelőt írok delphi 5-ben.
Az adatbázist ugye létrehoztam a c:\program files\Common files\borlandshared\data könyvtárba.
Csatlakoztam is rá...

Az adatbázisnak 4 mezője van.
Feltöltöttem 10 rekordot tesztadatokkal mind a 4 mezőt.
megnéztem az adatbázis méretét előtte és utána.
Ebből következtettem arra hogy ha 10 000 000 rekord lenne benne akkor több mint 800MB-os lenne.

Ez okozhat problémát? Egyszerre tölti be az egészet?

Pleez segítsetek!!
arpsoft
Hát igen. Itt szoktak elvérezni a nem kliens-szerver alapú rendszerek.
Mikor lesz Neked 10000000 rekordod?

Nem tudnád átrakni MySQL-be azt az adatbázist?
Gereby
Nem tudom mert sql-t nem tudiok létrehozni mert hiányol egy dll-t.
Most egyébként dBASE-es adatbázist használ a prog.
A 10 000 000 rekordot csak úgy tesztelésre találtam ki (szélsőségek).

Egyébként ezek az adatbázisok mennyire biztonságosak adatvesztésileg?
arpsoft
Amennyire gyakran mented őket.
Gereby
De megbízható lesz a cucc? Mert ez egy cégnek lesz aki bele fog diktálni egy pár hüvelyk ujj vastagságú árjegyzéket.
arpsoft
Persze.
Maczikasz
Kedves Programozók

lenne egy kérdésem ha lehet ne nézzetek miatta hülyének mert baromira kezdő vagyok weep.gif

Nah tehát hogy tudok string típusú változóból, mely csak egy karaktert tartalmaz char típusút csinálni ?

a dogot azért nem lehet a deklarációs részben megoldani mert a "copy"-hoz 2 db string kell (tehát stringbe másol) az "ord" viszont nem hajlandó stringgel dolgozni roll.gif

Az egész TP-ben van de erre gondolom rájöttetek

Ui.: Örülnék ha valaki részletesen leírná a fájból olvasás és a fájlba mentés mentetét kódjait ill. ha tudtok olyan oldalt ahhol segédletek vannak annak is örülnék

question.gif
Spányik Balázs
Legjobb emlékezetem szerint

KÓD
c := s[1];

ahol c a karakter típusú változó és s a string. De ha addig nem mondja meg senki, akkor otthon ellenőrzöm.
ocsi
Én a Flash8 ról szeretnék egy magyar könyvet... biggrin.gif de lehet hogy várok vele még egy kicsit...

Viszont komolyra fordítva a szót:
C ben tanulok programozni, és az alapok már mennek.. ( php már jóideje használom) szóval ciklusokkal, elágazásokkal, tömbökkel, filekezeléssel meg ilyenekkel nincs gond... szerintetek hova lehetne tovább lépni? Esetleg C++ vagy C# ??? ( szivesen írnék olyan programokat amiknek könnyeb a vizuális megjelenítése, mert eddig csak a printf el tudtam kiiratni és ennyi...)
google
Igen, de úgy hallottam, nagyobb jövője a C#-nak van. (És talán egy picivel könnyebb is... blush.gif ani_wink.gif )
atzs
IDÉZET(Mezofi @ 2005. június 25., 23:16 - szombat)
A kis ablakban megjelentek előre gyártott sorok, ezután beírtam a könyvből vett prg-sorokat, és sikeresen kijelölte pirossal az elő sort mindjárt.

Például azért is rossz ez a kód, mert ha definiálod a TForm1.FormMouseDown eljárást, akkor annak benne kellene lennie a típusdefinícióban is, valahogy így:

KÓD
type
TForm1 = class(TForm)
  procedure FormCreate(Sender: TObject);
  procedure TForm1.FormMouseDown (Sender: TObject;  Button: TMouseButton; Shift: TshiftState; X, Y: Integer);
private
  { Private declarations }
public
  { Public declarations }
end;


Ez így nem OK, így csak kudarc lesz, nem tanulás.
Mezofi
@atzs
Köszi, elkezdtem az egészet az elejéről tanulni egy másik könyvből.
Mert az elöző könyv nem az én színvonalamhoz iródott.
blush.gif
Ez a tartalom egy lebutítottváltozata. A teljes változat képekkel kiegészült megtekintéséhez kérünk, kattints ide.