"Crime" Game

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: 1 2 3 volgende »

Gijs Verhoeven

Gijs Verhoeven

16/08/2010 05:15:49
Quote Anchor link
Beste mensen,

Ik heb een vraag aan jullie, waar ik graag een serieuze reactie op zou willen. Ik weet dat het internet hier over volstaat maar heb helaas na 4 uurtjes Googelen niets nuttigs kunnen vinden, wellicht dat jullie mij kunnen helpen.

Ik zou graag een beetje hulp willen bij het maken van een zogenaamde "crime" game, een online tekstbased spelletje dus... Ik heb verschillende ideeën opgedaan om zélf iets orgnineels te maken. Ik heb kennis van HTML en een matige kennis van PHP (Ik weet dat veel mensen me nu afraden hieraan te beginnen...) Maar ben snel leers, volg zelf namelijk ICT opleiding omdat het met erg intresseert, dus sta open om snel nieuwe dingen te leren.

Alleen is mijn vraag, hoe begin ik met zoeits te maken? ik heb zogezegd even een duwtje in de goede richting nodig. Ik weet namelijk niet (goed) hoe je bijvoorbeeld PHP laat communiceren met een MySQL database.

Als voorbeeld heb ik het volgende. Persoon X kan "missie's" doen waarbij er een aantal % kans is dat deze slaagt, of niet slaagt. Als het lukt om deze missie uit te voeren wordt speler X beloont met een geldbedrag ofzo. Diegene die weten wat een "Crime" game is weten wel wat ik bedoel...

Kortom; hoe kun je hier een begin mee maken? Hopelijk krijg ik serieuze antwoorden terug. Ik hof géén scripts te kopen van mensen e.d. Heb zelf een aantal scripts via het net gevonden zodat ik daar ook enigsinds uit kan leren hoe het e.e.a. werkt.

Graag hoor ik meer van jullie.
 
PHP hulp

PHP hulp

18/12/2024 17:41:59
 
Obelix Idefix

Obelix Idefix

16/08/2010 08:19:03
Quote Anchor link
Gijs Verhoeven op 16/08/2010 05:15:49:
Ik heb kennis van HTML en een matige kennis van PHP

Ik weet namelijk niet (goed) hoe je bijvoorbeeld PHP laat communiceren met een MySQL database.

Heb zelf een aantal scripts via het net gevonden zodat ik daar ook enigsinds uit kan leren hoe het e.e.a. werkt.

Begin aub dan met het leren van de basis. Het communiceren van php met database is toch wel een 1e startpunt. Misschien niet moeilijk, maar als je zo weinig kennis hebt, wordt de rest toch al snel wat lastiger.
Als je zoiets wilt maken, zorg ook dat de foutafhandeling goed is en de beveiliging werkt. Twee dingen die in de meeste online (gratis) scripts te wensen over laat en als je zelf geen kennis hebt ook niet ziet.
Laat je echter niet weerhouden om je idee uit te voeren, maar begin wel bij het begin: leer php.
 
Johan Dam

Johan Dam

16/08/2010 09:43:29
Quote Anchor link
Top idee, ik heb zelf ook een text-based spel gemaakt (of poging tot) terwijl mijn kennis van PHP daar simpelweg niet goed genoeg voor was. Het spel is er ook nooit van gekomen maar ik heb er ongelofelijk veel van geleerd.

Goed, wel 1 dingetje, doe het voor de lol, omdat je het wilt doen. Doe het niet omdat je hoopt dat het een succes gaat worden en/of omdat je denkt er geld mee te verdienen. Dit is zo te horen je eerste grote project, dus de kans dat het meteen lukt is gewoon klein.

Hoe te beginnen, altijd lastig stuk bij dit soort dingen.

Wat ik toen deed was de gebruiker 'volgen', wat is het eerste dat een gebruiker doet? Registreren. En daarna? Inloggen. En daarna? Character aanmaken, daarna eerste 'skill-points' investeren, enz, enz.

Het is onzin om eerst goed PHP te moeten kunnen hiervoor, als je je best doet leer je dat vanzelf, tuurlijk moet je leren hoe je mysql-injection tegen gaat, tuurlijk moet je nadenken over een zo veilig mogelijke loggin, tuurlijk moet je straks dingen gaan kennen waar je nu waarschijnlijk nog geen flauw benul van hebt, who cares?! Zolang je bereid bent om veel tijd te investeren om het te gaan leren terwijl je eraan werkt, kom je er wel.

Geef niet op en blijf leren!
 

16/08/2010 10:54:43
Quote Anchor link
Als je de talen en kennis beheerst weet je waar je moet beginnen.
Het is net als autorijden. Je moet de theorie kennen, en je moet wel iets meer weten dan waar de versnellingspook zit en waar de pedalen zitten.
 
Johan Dam

Johan Dam

16/08/2010 12:37:50
Quote Anchor link
en zodra je je rijbewijs hebt, duurt het nog jaren voordat je echt kan autorijen, maar in tegenstelling tot echt autorijen, is het bij programmeren helemaal zo erg niet om meteen in een pro-circuit te gaan racen voordat je echt kan rijen.
 
John D

John D

16/08/2010 13:14:02
Quote Anchor link
Johan Dam op 16/08/2010 12:37:50:
en zodra je je rijbewijs hebt, duurt het nog jaren voordat je echt kan autorijen, maar in tegenstelling tot echt autorijen, is het bij programmeren helemaal zo erg niet om meteen in een pro-circuit te gaan racen voordat je echt kan rijen.

Hmmm, niet al te lichtzinnig denken! Denk vooral aan security want op een dag kan je niet in je website en blijkt er een porno website op te staan en je bent dan echt niet de eerste die dat overkomt. Leer ook gestructureerd te programmeren zodat je code kan hergebruiken (oop) of aanroepen (functies). Maak geen programma's (scripts) door middel van het kopieren van een andere programma dat je dan ietsie wijzigt, en nog eentje en nog eentje.... Allemaal valkuilen als je net begint.
 

16/08/2010 13:18:42
Quote Anchor link
Johan Dam op 16/08/2010 12:37:50:
en zodra je je rijbewijs hebt, duurt het nog jaren voordat je echt kan autorijen, maar in tegenstelling tot echt autorijen, is het bij programmeren helemaal zo erg niet om meteen in een pro-circuit te gaan racen voordat je echt kan rijen.


Als je je rijbewijs hebt, dan heb je een vereiste gehaald. Dan heb je een minimaal niveau.
Zelfde geldt hier. Je moet wel een beetje niveau hebt, zoals John D hierboven uitlegt.
 
Niels K

Niels K

16/08/2010 13:20:58
Quote Anchor link
Wat ik zou doen is: Je computer uitzetten.. Daarna pak je een pen en papier en ga je de applicatie functionaliteiten uitschrijven, uittekenen of wat ever.. Je moet weten wat je precies wil doen, want

"Als voorbeeld heb ik het volgende. Persoon X kan "missie's" doen waarbij er een aantal % kans is dat deze slaagt, of niet slaagt. Als het lukt om deze missie uit te voeren wordt speler X beloont met een geldbedrag ofzo"

Vind ik te summier..
Bedenk alles uit, schrijf alles op paier. Bijvoorbeeld als een gebruiker zich registreert, voor een wat doorgewinterde PHPer denkt gelijk aan een aantal dingen.. Maar omdat jij die ervaring mist moet je opschrijven wat je precies wilt laten aanmaken, hoe je het laat aanmaken, welke gegevens je over de persoon wilt weten, beveiliging, enzovoort, enzovoort..

Verder ben ik het wel met alle mensen eens dat het een moeilijke opgave blijft, zeker als je een goed spel wilt maken.. Denk eens aan de acties uitvoeren als mensen niet online zijn, en noem maar op. Trouwens heb ik daar nog leuk artikel set voor gevonden: http://development.blog.markkazemier.nl/category/browser-based-games. Je zult er waarschijnlijk niet zo heel veel van snappen, maar dat geeft niet. Je moet je realiseren dat je voor een grote opdracht staat. Niet dat ik je het wil afraden, nee in tegendeel.. Je gaat hier behoorlijk wat van leren. Je gaat problemen tegen komen waar over je moet nadenken,.. En zo werkt dat allemaal tegen goede voor het maken van een volgende applicatie.

Over database:
Ga op onderzoek uit, MySQL is niet de enigste database die er bestaat.. Er zijn andere databases die misschien veel beter in jouw straatje passen. Het is nu denk ik het moment op jezelf te ontwikkelen in kennis. Praktijk moet je pas gaan doen als je al de theorie hebt gehad. Als je jezelf hebt georiënteerd in bepaalde zaken.

Verder omdat je nog een beetje nieuw ben in PHP raad ik je deze tutorial aan:
http://phptuts.nl/view/39/
En deze voor de database connectie:
http://phptuts.nl/view/41/

Als je al die stof gelezen hebt, moet het mogelijk zijn om een inlogscript te maken met een database. Let dan ook op de volgende dingen

- Beveiliging
- SQL injection
- XSS injection
- Foutenafhandeling
- Geen kerkhof methodes ( OR DIE )
- Overzichtelijk programmeren

En ga zo maar door.. Google gewoon eens op die termen. Ben je al wat meer wijs geworden in PHP dan kun je deze tutorial volgen over object georiënteerd programmeren, http://phptuts.nl/view/45/

Daarna kun je eens deze blog reeks volgen: http://development.blog.markkazemier.nl/category/oop-gastenboek/
Daarin wordt dus de hele zaak toegepast.

Ik wens je veel succes!
Gewijzigd op 16/08/2010 13:44:57 door Niels K
 
Pim -

Pim -

16/08/2010 13:59:30
Quote Anchor link
Zozo, nette post
 
Niels K

Niels K

16/08/2010 14:02:47
Quote Anchor link
Haha dankje.. Ik was even op dreef.
Gewijzigd op 16/08/2010 14:03:33 door Niels K
 
Johan Dam

Johan Dam

16/08/2010 14:13:42
Quote Anchor link
Ik zou het zeker niet eerst allemaal gaan uittekenen / uitdenken / uitschrijven,

Waarom niet? Omdat je zeker als beginner nooit overal rekening mee kan houden, je kan wel beter meteen beginnen met bouwen, dan loop je er vanzelf tegenaan en kan je er op dat moment mee leren omgaan.
Wat toch zou moeten omdat bij de eventuele documentatie dit ene probleem niet voorkwam, tenslotte is een spel uitdenken / uitschrijven een ander vak dan dat van de programmeur.

Kan je al aardig programmeren, dan kan je beter wel eerst wat documenteren, want dan hoef je niet te leren van de problemen waar je tegen aan zou lopen als je niet documenteerd. In dit geval is het belangrijk dat hij er wél van leert.

Beveiliging is een groot risico, zeker als beginner. Ook hiervoor kan je het maar beter ervaren dan het overnemen, mysql_real_escape_strings() zegt zo weinig totdat iemand je laat zien hoe makkelijk mysql-injection is als je het niet gebruikt.

Je kan er beter tegenaan lopen en er dan van leren dan vooraf van alles en nog wat te leren en als je er eenmaal mee bezig bent erachter komen dat je andere dingen had moeten leren.

Bouwen + tutorial + opzoeken + vragen == Ervaring

Ervaring == beste leermeester.
 
Niels K

Niels K

16/08/2010 14:20:46
Quote Anchor link
@Johan..

Daar ben ik het niet mee eens..
Als jij een website van te voren uitdenkt loop je minder tegen problemen aan. Het tegen problemen aan lopen kan het stoppen van de applicatie veroorzaken. Dan bedoel ik tegen veel problemen aanlopen, zoals jij aangeeft..

Bijvoorbeeld:

Je wilt iemand registreren.. En je slaat in het begin alle zijn naam op. Dan denk je later van.. Ow shit, zijn wachtwoord moet er nog bij, zijn IP adres, zijn sysinfo, enzovoort.. En denk ook eens aan je website gehackt zijn: Dat is deprimerend voor de programmeur hoor.. En als je daarna nog heel je website moet gaan controleren of SQL injection fouten.. Oei, geheid dat je er een paar vergeet.. En dan wordt hij weer gehackt, en ga zo maar door.. Nee via mijn ogen denk jij nu echt verkeerd..

Het uitdenken van een applicatie is zooo belangrijk.

Mijn vraag aan jouw is: Heb je wel eens een grote applicatie gebouwd?
Lees ook die blog van het gastenboek realiseren van mark kazemier ( Link staat in mijn lange post ) daar brengt hij ook naar voren, dat het uitdenken van een applicatie zo belangrijk is.

Zoals ik ook geleerd heb bij ITIL princiepes, nu moet je me vergeven want ik weet niet meer precies welke.. Maar fouten voorkomen is zoveel beter dan er tegen aan lopen.

Of zoals het spreekwoord zegt: Voorkomen is beter dan genezen..

En trouwens, beveiliging is meer dan alleen mysql_real_escape_string.. Het veel verder dan alleen query's.. Het gaat allereerst over het configureren van je webserver en je PHP.ini

Ik weet niet of hij zelf een webserver thuis heeft staan of host bij bijvoorbeeld versio. ( Hint )

Een mooi artikel als het gaat om apache te configureren is deze:
http://wiki.phpfreakz.nl/Apache_Veilig_Maken

Verder, ach ja hier staan nog veel meer interessante en vooral waarde volle artikelen als het gaat over beveiliging:

http://wiki.phpfreakz.nl/Categorie:Beveiliging

Phoe ik blijf maar op die edit knop drukken:)

Google anders eens op software engineering

Wat je ook kan doen is het maken van een functioneel ontwerp. Ik kreeg pas geleden van iemand deze link: http://dutch.joelonsoftware.com/PainlessSpecs/1.html Ik zou zeggen, lees alle drie de delen eens..

Ik zal in mijn volgende post even wat standaard informatie geven, om je een summier beeld te geven wat beveiliging inhoud. Want elke keer met links strooien wordt ook zo onoverzichtelijk voor je.. Je hebt toch al zoveel te lezen:)
Gewijzigd op 16/08/2010 14:47:26 door Niels K
 
Frank Pons

Frank Pons

16/08/2010 14:53:30
Quote Anchor link
Ik zou als ik jouw was beginnen met de basis en die iteratief uitbouwen.

tip : bedenk/beschrijf de applicatie eerst vooraf maar ga hier niet te ver in.
Maak ook een schermen overzicht (gebruik bijvoorbeeld paperprototyping) zodat je weet wanneer welk scherm moet komen.

De basis kan bijvoorbeeld zijn

1 gebruiker (geen login nodig dan)
1 char
10 crimes (al weet ik verder niet hoe de het spel eruit kom te zien)

Door het zo compact te houden kom je al wat aardige challenges tegen die je met matige php kennis kan tackelen.

Als je de basis hebt neergezet ga dan kijken of je de game dan kan uitbouwen naar multiple users (via login).
maar beperk de users tot 1 char. (eigenlijk een relatief simpele aanpassing maar geeft wel weer wat challenges)

daarna kan je kijken of je de crimes kan randomizen.

etc etc..

Maar belangrijk is dat je de basis van de applicatie/game goed neerzet. Eventuele uitbereidingen kunnen dan worden geimplementeerd zodat je meer functionaliteiten krijgt.
 
Gijs Verhoeven

Gijs Verhoeven

16/08/2010 14:58:37
Quote Anchor link
Beste leden bedankt in ieder geval voor de vele normale reacties.

Momenteel huur ik webruimte omdat ik ook anderen websites heb draaien. (ter info:))

Ook heb ik een aantal spelletjes vroeger en nu gespeeld waar ik ideeën uit heb opgemaakt (Ik wil het niet kopieeëren) maar met anderen opties e.d. Tevens denk ik dat het princiepe hetzelfde blijft als je kijkt hoe bijv. een ander script in elkaar zit, toch!? Natuurlijk heb ik ook gelezen dat in veel scripts die rondzwerven het stikt van de bugs en die slordig gescript zijn. Maar ik denk inderdaad zoals jullie aangeven dat ik er veel van kan leren!

Het hoeft niet meteen te werken op meteen op en top beveiligd te zijn, het is meer iets dat ik voor de "fun" wil doen zodat ik ook goed leer werken met PHP e.d. Maar als ik eenmaal IETS heb ik ook kan zien van, hé dat werkt en dat werkt niet, tevens heb ik wel een "verhaallijn"in me hoofd zitten natuurlijk, zodat je wel weet waarmee je begint in het spel zegmaar. En tijdens het maken ervan zal ik nog veel tegenkomen waarvan ik zal denken dát moet er ook bij... Ik ga in ieder geval de links even doorlezen die jullie hebben gepost.

Dan heb ik wel nog een (gekke?) vraag... is er niet zoiets dat je bijvoorbeeld een begin script hebt? dus zegmaar dat er zoiets is als het inlog systeem en de conncectie met de MySQL maar dat je het van daaruit verder kan ombouwen/customizen?

In ieder geval bedankt voor de serieuze reacties! Daar kan ik wat mee :D

Toevoeging op 16/08/2010 15:02:09:

En dan heb ik nog een vraagje, is er iemand op dit forum die denkt van; hé aan zoiets zou ik ook wel willen werken. Ik denk dat diegene die me daarin zou willen helpen mij veel kan leren en het een stukje makkelijker gaat.

Mocht je dit ook leuk vinden om voor de fun eens zoiets te maken, laat het even weten dan :) Zou leuk zijn ;)

P.S. Niet geschoten altijd mis..
Gewijzigd op 16/08/2010 15:03:06 door Gijs Verhoeven
 
Frank Pons

Frank Pons

16/08/2010 15:03:12
Quote Anchor link
antwoord op een gekke vraag:

Een php script wordt altijd op 1 plek geinitieerd bijvoorbeeld index.php. hierin wordt gecontroleerd of je bent ingelogt, if not mooie hippe code die een authenticatie bij de db doet wordt aangeroepen.

Daarna wordt je applicatie aangeroepen met de benodigheden.

dus het antwoord is jahoor je kan eerst een login maken en daarna de rest uit/om/inbouwen
 
Pim -

Pim -

16/08/2010 15:15:59
Quote Anchor link
Let wel altijd op dat je rekening houd met de uitbreidbaarheid. Wanneer je zomaar ergens begint met schrijven kom je altijd op het punt dat je iets in de basis anders had willen hebben. De enige manier om dat nog goede wijziging te kunnen doorvoeren, is vanaf het begin af aan goed OOP gebruiken, en dat is lastig. Beter kan je dus, zoals Niels al zei, vooraf je plan schrijven en dit uitwerken.

Onderdelen van dat plan die er iig in moeten zitten:
- DB verbinding (keuze PDO, mysql_*() of een eigen klasse)
- Applicatie structuur (MVC (al dan niet met een single entry point), spaghetti code enz.)
- Authenticatie (schrijf gewoon een klein klassetje die je later uit kan breiden)
- Omgang met fouten (error_hander of exceptions)
- Templating (template engine)

Ik zou hier even over na denken en het dan gewoon uit gaan schrijven.

Suggesties: Gebruik Smarty, PDO, Exceptions, MVC en authenticatie met iets als:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
class Auth
{
    public function login(User $user);
    public function isLoggedIn();
    public function getUser();
}

?>
 
Johan Dam

Johan Dam

16/08/2010 15:22:46
Quote Anchor link
Ik heb zelf meerdere grote projecten gemaakt, 1tje terwijl ik daar nog helemaal niet aan toe was (mijn programmeer kennis was simpel weg niet groot genoeg)

Daar heb ik veel meer van geleerd dan van de tig tutorials die ik voorhand gelezen had, ook dacht ik alles uitgeschreven te hebben en kwam er later achter dat ik zo ontzettend veel vergeten was.

Ik ben tig keer gehackt, heb alles tig keer moeten verbeteren. Ik gebruikte geen OOP dus dat was ontzettend veel werk.
Deprimerend? Niet echt, maar dat kan aan mij liggen, ik wist dat mijn kennis onvoldoende was en ik was ook niet helemaal verbaasd dat ik gehackt werd, de lekken werden gedicht en het hacken stopte daarmee.

Wat later besloot ik het spel op te geven omdat het simpelweg niet leuk was en ik niet de tijd erin wou steken om nieuwe features in te bouwen.

Een text-based spel maken terwijl je daar qua programmeer kennis niet aan toe bent is de beste manier om te leren hoe het 'in the wild' eraan toe gaat. Ik hoorde dingen over OOP maar het klonk mij in de oren als overbodig en onnodig extra werk, ik zag het meer als een verzameling functies. (Jaja, weet inmiddels beter)

Dankzij alle fouten die ik in dat text-based spel heb gemaakt, was het 2e grote project dat ik maakte een fluitje van een cent. Ik wist waar ik op moest letten en waar ik tegenaan zou lopen.

Geen enkele tutorial kan je practische ervaring leren, die moet je opdoen door gewoon te gaan bouwen.

"voorkomen is beter dan genezen" natuurlijk, maar het belangrijk te snappen waarom dingen fout zijn, waarom sommige gewoontes het waard zijn te volgen. Zoals ik hierboven melde over OOP, het is best lastig te snappen wat er handig aan is als je nooit problemen hebt ondervonden zonder. Je krijgt dan het idee 'why change a winning team?' Terwijl het antwoord ligt in dat het alleen maar een 'winning team' is omdat je echte tegenstanders er niet mee aangaat.

Je kan wel mooi zeggen dat iets beter is, maar het is veel belangrijker te SNAPPEN waarom iets beter is. De beste manier om daar achter te komen, is praktijk ervaring!

Wil je een perfecte game bouwen, dan moet je alles eerst weten, wil je je eerste game maken om de fun ervan, dan moet je gewoon beginnen.

En nee, er is geen 'basis' script voor spellen, er zijn genoeg login scripts te vinden maar je zal er toch zelf mee aan de gang moeten gaan, want ja, de 'standaard' login scripts houden geen rekening met de informatie die jij van je gebriukers nodig hebt.

Als je jezelf meteen in het diepe gooit dan leer je heel erg snel zwemmen, al is het misschien niet meteen de mooiste rugslag die je zal zien.

P.S. Inmiddels werk ik fulltime als PHP Programmeur en vragen sommige collega's me wel eens hoe ik bepaalde dingen weet, omdat ze dat soort dingen nergens gelezen / geleerd hebben of omdat ze het wel gehoord hadden maar nooit begrepen waarom het nou zo is.

De kennis die je van een text-based spel opdoet blijft altijd nuttig, ook voor andere sites.
 
Niels K

Niels K

16/08/2010 16:09:46
Quote Anchor link
@Frank

Daar ben ik het helemaal mee eens..

@Gijs

Leuk dat je onze reacties positief opvangt. Wij houden van mensen die er echt voor gaan en naar onze reacties luisteren..

"Het hoeft niet meteen te werken op meteen op en top beveiligd te zijn"

Nee, je eerste applicatie kan je niet op en top beveiligen.. Daar gaat jaren overheen voordat je alles door hebt.. Ik heb je een aantal links gestuurd die ik gevonden had op phpfreakz, maar zelf heb ik ze net ook gelezen, simpelweg omdat ik er zelf ook niet zo veel vanaf weet. Het is gewoon veel lezen, denken, en doen..
Terwijl ik deze post schrijf, tja dan leer ik ook steeds meer bij.. Ik lees eerst alle artikelen voor dat ik ze post hierzo.. Nu vallen voor mij ook steeds meer puzzelstukjes op zijn plaatst.. Ik had die links ooit wel eens gezien, maar nu blijkt dat ik ze nodig heb om dingen aan je uit te leggen.. Dankjewel voor het starten van deze discussie.

Ik zit ondertussen met een bak koffie na te denken wat ik zal typen om je verder te helpen.. Net even een tabblad met dit topic te open om te kijken of er nieuwe berichten zijn en jawel.. 5 alweer.. Zit ondertussen met frank te praten over bepaalde dingen zodat het reageren op dit topic wat langzamer gaat..

Even op gijs zijn toevoeging:

"En dan heb ik nog een vraagje, is er iemand op dit forum die denkt van; hé aan zoiets zou ik ook wel willen werken. Ik denk dat diegene die me daarin zou willen helpen mij veel kan leren en het een stukje makkelijker gaat"

Ja lijkt me op zich leuk. Maar ik denk dat onze kennis daarin nog verschilt. Trouwens, ik heb de komende drie weken even een project, ( Hoor ik ook sinds net ) in die tijd kan jij jezelf misschien ontwikkelen in OOP? Waar als ik begin aan die applicatie wil ik het wel graag in OOP doen.. Misschien nog met een framework. Verder sprak ik mark kazemier zaterdag en die vertelde dat er een blog reeks komt voor het bouwen van een blog systeem. Deze blog reeks wordt nog een stuk ingewikkelder dan het bouwen van het gastenboek. Er wordt gewerkt met patterns en bepaalde nieuwe technieken. Ik weet niet precies wanneer die blog reeks af zou zijn, maar dat zal ik dan wel laten weten.. Hij schrijft enorm goede artikelen die ik altijd met plezier lees en aan iedereen aanraad.

"Let wel altijd op dat je rekening houd met de uitbreidbaarheid"

Inderdaad dat is een heel goed punt wat jij daar aanhaalt pim.
Nog even over het uitschrijven van je website.. Ik verwees je in één van mijn reacties naar software engineering. Hier heb ik nog tweede interessante links:

http://en.wikipedia.org/wiki/Software_development
http://en.wikipedia.org/wiki/Software_development_process

Kijk ook vooral aan de rechterkant en de "See Also" secties

Het is zo belangrijk dat je alles goed van te voren uitdenkt.. Alle functionaliteiten.

Vergeet niet, reden nummer één om af te haken bij dit soort projecten is het niet goed voorbereid zijn en halverwege (of eerder) door de bomen het bos niet meer zien...

Dus even samengevat, qua voorbereiden zijn deze twee woorden het belangrijkst:

- Software Architecture
- Software Engineering

"Dankzij alle fouten die ik in dat text-based spel heb gemaakt, was het 2e grote project dat ik maakte een fluitje van een cent. Ik wist waar ik op moest letten en waar ik tegenaan zou lopen."

Daar heb je wel weer helemaal gelijk in.. Als je fouten maakt, doe je ze de volgede keer niet meer.. Maar je moet dat wel veel focus hebben, want je zult regelmatig een stap terug moeten doen en dan de gemaakte fouten te gaan herstellen. Het beste wat je kunt doen is dus een platform kiezen die op jouw fouten wijst, en zorg dat de fouten zo snel mogelijk zichtbaar worden. Test driven developement ( TDD ) is hier natuurlijk ideaal voor, dat is speciaal gemaakt om fouten direct aan het licht te brengen.. Alleen vrees ik dat het wel te hoog gegrepen is.. Vandaar dat ik een andere wijze aan raad en toelicht..

"Geen enkele tutorial kan je practische ervaring leren, die moet je opdoen door gewoon te gaan bouwen."

Dat klopt, maar daar ging het mij ook niet om.. Hij verteld dat hij niet veel kennis heeft van PHP. En daarvoor zijn juist de tutorials. Om zo je kennis op te krikken en ze te gebruiken als naslag werk. Wat je ook kan doen is een boek kopen, maar daar ben ik zelf geen voorstander van, want alles staat toch gewoon op het internet.

"natuurlijk, maar het belangrijk te snappen waarom dingen fout zijn, waarom sommige gewoontes het waard zijn te volgen"

Zeker, maar daarvoor heb je toch het forum? Ik bedoel, als er fouten optreden die je niet begrijpt mag je die ten alle tijden stellen op het forum. Wel zeg ik dat je wel eerst moeite moet doen om de foutmelding te begrijpen en op te lossen.. Gebruik hier ook andere topics voor.. De fouten die jij tegen komt hebben andere mensen ook al gehad.. Dat hoeft niet perse op phphulp zo te zijn, maar vul de foutmelding gewoon maar eens in op google. Dat geeft meestal al genoeg stof om zo de foutmelding zelf op te kunnen lossen..

"Zoals ik hierboven melde over OOP, het is best lastig te snappen wat er handig aan is als je nooit problemen hebt ondervonden zonder."

Heb je helemaal gelijk.. Daarom gaf ik hem ook de beginners handleiding ( http://phptuts.nl/view/39/ ) van Joren van de Wit om zo even kennis te maken met PHP. Toch vind ik het heel belangrijk dat je direct goed begint. Zeker voor zo'n grote applicatie is het handig dat je een goede opzet hebt, en niet begint met rommel.. Natuurlijk moet je mijn opmerking niet verkeerd opvatten en denken dat ik het normale PHP afschrijf.. Nee integendeel ik schrijf elke dag nog normale PHP, maar naar 5 mislukte forums en 2 mislukte CMS systemen besef je toch wel dat het niet anders kan.. Dat ben je toch wel met me eens? Ik deed in het begin, en dat is echt nog niet zo heel lang geleden alles zonder, misschien 2,5 maand geleden.. Simpelweg omdat ik OOP wel snapte maar het niet kon toepassen.. Door veel te oefen en door veel voorbeelden te zien ben ik gewoon gaan proberen. Ik had de tip gehad over TDD en ben ook gaan proberen.. Zoals je zegt je faalt de eerste aantal keren maar daarna heb je het door.. Je zult denken, huh? Hij veranderd ook gauw van mening.. Nee ik doe dat alleen in het opzicht van kleine projecten. Dit is zo'n groot project dat een beetje voorkennis echt nodig is. En dat je zonder uitdenken van de website echt gaat vast lopen.. Zeker als je beginner bent. Ik ben zelf ook beginner en doe het iets langer als een jaar, en ik kan een website niet maken zonder dat ik het uitgetekend heb.. Misschien dat ik daarom deze mening heb.

"Wil je een perfecte game bouwen, dan moet je alles eerst weten, wil je je eerste game maken om de fun ervan, dan moet je gewoon beginnen"

Klopt, maar volgens mij wil hij dit doen om meer te leren?

"En nee, er is geen 'basis' script voor spellen"

Al zouden die bestaan zou ik die afraden. Alle scripts die je op internet vind zijn zo slecht geprogrammeerd, alle crimes dan.. Ik ben nog nooit een crime tegen gekomen die goed geprogrammeerd is.. Maar ja dan kan je de vraag ook weer stellen wat is nu precies goed?

"Inmiddels werk ik fulltime als PHP Programmeur"

Ok leuk, naar je zin? Is het wat je verwacht van een baan als PHP programmeur? Ik hoop volgende maand te gaan werken bij www.xsarus.nl als PHP programmeur. Wat ik mis is de ervaring van het dagelijks leven en dat is wat ik daar ga leren. Teminste dat hoop ik dan maar.

"De kennis die je van een text-based spel opdoet blijft altijd nuttig, ook voor andere sites."

Die mening deel ik van harte, al heb ik nooit een crime game gebouwd.

Oeioeioei, we vergeten met zun allen een heel belangrijk ding: Documentatie.
Het is zo belangrijk dat je de code die je maakt documenteert. Het beste wat je hiervoor kan gebruiken is PHPdoc. Hier kan een andere programmeur zonder dat hij de code ziet, toch weten wat een klasse precies doet, en welke methodes een klasse heeft.

Zo nu ga ik even stoppen met mijn geblaat.. Ik wilde eigenlijk wat duidelijkheid geven over beveiliging en een paar voorbeelden geven zodat hij alvast een paar kleine dingen wist wat ik ook aangaf dat ik dat zou doen:

"Ik zal in mijn volgende post even wat standaard informatie geven, om je een summier beeld te geven wat beveiliging inhoud. Want elke keer met links strooien wordt ook zo onoverzichtelijk voor je.. Je hebt toch al zoveel te lezen:)"

Maar daar is niks van gekomen.. Niettemin zal er nog een post komen over dat, maar ik ga nu even een korte pauze houden..

Verder heb ik een shoutbox systeem gemaakt. Het AJAX gedeelte ontbreekt nog maar volgens mij is het OOP goed doorgevoerd. Je kan dan alvast een beeld krijgen van hoe een applicatie is opgebouwd.

Link: http://www.kvt-webdevelopment.nl/shoutbox_new/shoutbox.zip

Gegroet!

EDIT: Had niet verwacht dat mijn post zoooo groot zou zijn.. Gauw weer even spraakwater aanzetten.. ( Senseo )
Gewijzigd op 16/08/2010 16:58:02 door Niels K
 
Gijs Verhoeven

Gijs Verhoeven

16/08/2010 16:31:02
Quote Anchor link
Inderdaad een erg grote post, fijn dat er op het net nog mensen bestaan (zoals jullie) die wel serieus reageren als je het woord "crime" gebruikt. Haha.

Ik ga eens kijken en lezen over OOP en ben er benieuwd naar, inderdaad genoeg leesvoer. Ik heb het blog dat je zei eens doorgelezen. Staat inderdaad goede informatie in :)

@Niels
Je zegt dat je ook zelf nog een project hebt, maar dat je wel zou willen helpen?!

Toevoeging op 16/08/2010 16:31:28:

@Niels
Ohja, en succes met je Senseo :)
 
Niels K

Niels K

16/08/2010 16:49:49
Quote Anchor link
"Inderdaad een erg grote post, fijn dat er op het net nog mensen bestaan (zoals jullie) die wel serieus reageren als je het woord "crime" gebruikt. Haha. "

Fijn dat er mensen zijn die crimes bouwen om wat van te leren, en niet om iets te verdienen..

"Je zegt dat je ook zelf nog een project hebt, maar dat je wel zou willen helpen?! "

Ja, de eerst komende drie weken heb ik even geen tijd om je te helpen omdat ik zelf een project heb.. Ondertussen kan jij jezelf dus even inwerken in alle informatie die wij gegeven hebben..

"Ohja, en succes met je Senseo :)"

Die is al op hoor:D Mokka was het deze keer..

Ik kan weer verder gaan met de informatie. Weer iets wat met de voorbereiding te maken heeft: UML

Ik zal het deze keer wat kort houden, haha.. Kijk eens naar de termen

- Use-Cases,
- ORM's,
- Sequence Diagrams,
- State Diagrams,
- Class Diagrams

En zijn er nog veeel meer, maar dit is even wat ik uit me hoofd wist..

Succes!
 
Kevin Rovers

Kevin Rovers

16/08/2010 19:36:36
Quote Anchor link
Ha Gijs,

Heel toevallig ben ik ook een Crime site aan het maken.
Ik heb wat mensen ontmoet via een Crime site en nu had één van hen het idee zelf zo'n site te gaan maken (om daar inderdaad geld mee te willen verdienen).

Daar ik wel wat kennis heb van HTML, PHP en MYSQL heb ik aangeboden hem te helpen, maar wel aangegeven dat ik het leuk vind om te doen, dat ik me er niet voor ga haasten en dat hij er voorlopig nog geen geld mee zal verdienen.

Ik moet bekennen dat het werken aan deze site (en naast deze nog een andere site waar veel PHP en MYSQL in voor komt) ik heel veel heb geleerd.

De Crime site die ik aan het bouwen ben is qua uitstraling helemaal af, maar ben afgelopen tijd druk bezig geweest alle functies erin te bouwen.
Echter zit ik nu zelf ook met een probleem waar ik via Google en andere Forums niet uit kom. (ga er nu niet op in, omdat ik niet dit topic wil stelen)

Ik lees hier voor mij ook nog veel nieuwe termen die ik nog eens door zal nemen, wellicht kan het mij helpen met de site.
Aangezien ik (waarschijnlijk net als jij) ook nog niet héél ver ben met PHP, weet ik ook niet alles, maar zou je best wel willen helpen met je crime site.
Wie weet hebben we wel iets aan elkaar.

In ieder geval succes met je site ;)
 

Pagina: 1 2 3 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.