Beginnende OOP scripter

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Java developer Zorgsysteem

Dit ga je doen Werken aan het eigen gebouwde zorgsysteem; Verbeteringen maken en toepassen binnen de applicatie; Jij gaat werken aan de Back-end van de applicatie en sporadisch werk je mee aan de Front-end; Samenwerken met andere teams voor een optimaal resultaat; Jij kan 'clean' werken en high quality code schrijven; Jij werkt resultaatgericht. Hier ga je werken De organisatie houdt zich bezig met diverse applicaties met betrekking tot zorgregistratie. Dankzij hun systeem komt alle informatie, omtrent de zorg van een patiënt, op een overzichtelijke en toegankelijke manier samen in één systeem te staan. Op deze manier is deze informatie

Bekijk vacature »

Technisch Applicatie ontwikkelaar

Functie omschrijving Ben jij op zoek naar een nieuwe uitdaging en zoek jij een informele werkgever waar je zelfstandig kunt werken binnen een leuk IT team, lees dan snel verder want wie weet zijn wij op zoek naar jou! In deze functie werk jij voornamelijk aan: Het onderhouden en ontwikkelen van de IT systemen; Het opzetten van Azure Cloud systemen, denk aan interfaces, hardware op de Cloud, webportalen of BI functies; Werk je aan scripts binnen verschillende software applicaties, denk aan ERP en CAD; Ontwikkel en implementeren je MS PowerApps en Power BI. Bedrijfsprofiel Je komt terecht bij een familiair

Bekijk vacature »

Medior Java developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

PHP ontwikkelaar

Functie Jij komt te werken in een development team van 9 man. Het grootste deel doet back end development en daarnaast is er 1 teamlead en 1 tester in het team. Dit Agile team is van groots belang voor de organisatie omdat zij voornamelijk alle eigen systemen in-house ontwikkelen. Naast het door ontwikkelen van het bestaande platform en de software die daarbij komt kijken, zul jij je ook bezighouden met het realiseren en opzetten van nieuwe projecten binnen het bedrijf. Je staat nauw met de klant in contact om zo hun wensen zo goed mogelijk te kunnen realiseren. Daarnaast ontwikkel

Bekijk vacature »

Software Programmeur PHP

Functie Ben jij op zoek naar een nieuwe uitdaging als PHP developer en zoek je een leuke platte organisatie? Lees dan snel verder! Voor een opdrachtgever in omgeving Capelle aan den IJssel dat zich gespecialiseerd heeft in het realiseren van veilige netwerkverbindingen zijn wij op zoek naar een leuke software developer ter versterking van het huidige team. Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen PHP, JAVA en Node.js. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn

Bekijk vacature »

Teamlead PHP Developer

Functieomschrijving Voor een gewaardeerde werkgever in de buurt van Middelburg zijn wij op zoek naar een gemotiveerde teamlead PHP developer met affiniteit met Symfony/Laravel. Een enthousiast persoon die het ontwikkelteam komt versterken met het aanpakken van uitdagende projecten. Ben jij op zoek naar een uitdaging waar je de tijd en ruimte krijgt jezelf te ontwikkelen en je eigen IT-team aan te sturen? Lees dan snel verder! Die ga je doen: Bijdragen aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de PHP based applicaties; Ontwikkeling en beheer van de serviceportal in Symfony en de webshops in de tweede versie van

Bekijk vacature »

Laravel / PHP developer

Functie omschrijving Wij zijn op zoek naar een Medior PHP / Laravel Developer voor een IT-consultancy in de omgeving van Hoofddorp! Ben jij op zoek naar een leuke nieuwe uitdaging binnen een veelzijdige werkomgeving? Lees dan snel verder! Binnen dit bedrijf werk je in een ontwikkelteam, waarin je zeer betrokken bent en meedenkt over softwareoplossingen. Binnen dit Team hou je je bezig met het aanpassen, verbeteren en vernieuwen van de logistieke oplossingen. Je zult je bezig houden met de volgende werkzaamheden: Je gaat aan de hand van de wensen van klanten software ontwikkelen; Je bent bij het gehele proces betrokken;

Bekijk vacature »

Software developer (Python)

Functie Je komt te werken in het IT-team bestaande uit de Lead developer en 4 (medior/senior) developers. Gezamenlijk werken jullie aan de verbetering en uitbreiding van de software. Binnen het development team is er veel vrijheid en zelfstandigheid, zonder dat ze hiermee afdoen aan de kwaliteit. Zo hebben ze elke ochtend een korte stand-up (10:00 uur) en houden ze zo nu en dan pair-programming sessies. Ook is er een hele professionele ontwikkelcyclus waarbij code altijd eerst door een collega wordt getest voordat het naar deployement gaat. Je hebt in je werk oog voor kwaliteit, risico’s en het klantbelang. Communicatie met

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Java developer (remote)

Functie Wat ga je doen als Java Developer? Jij als Java ontwikkelaar komt te werken in 1 van onze SCRUM teams. Momenteel werken er zo’n 30 ontwikkelaars binnen onze organisatie waarbij jij de brug slaat tussen het bouwen van verschillende functionaliteiten binnen onze applicaties en deze vervolgens te integreren in onze centrale hub. Je start je dag om 9 uur met een stand up en dan pak je jouw taken op voor de dag. Hieronder een aantal taken die jij zal uitvoeren: – Het bedenken en uitbouwen van features binnen de verschillende applicaties – Onderhouden van CI/CD pipelines – Bezighouden

Bekijk vacature »

Starter/junior Magento developer gezocht!

Functie Je komt te werken in een zelfsturend team waarin vertrouwen voorop staat en inbreng en ideeën worden gewaardeerd. Ook staat innovatie centraal. Ze bieden jou de mogelijkheid om jezelf door te ontwikkelen. Denk hierbij aan cursussen en een persoonlijk ontwikkelplan. Je komt terecht in het team van momenteel 4 (ervaren) collega’s en zal meewerken aan de doorontwikkeling en nieuwbouw van de Magento platformen van meerdere opdrachtgevers volgens Agile/Scrum. Denk hierbij aan nieuwe functionaliteiten, UX en koppelingen met verschillende back-end systemen. Als starter/junior developer zul je direct begeleid worden door een senior uit het team. Het is van belang dat

Bekijk vacature »

C# developer

Functie Als C# ontwikkelaar ben jij de spin in het web bij deze organisatie. Jij begeleidt en traint de field engineers die bij de klanten machines leveren en installeren. Daarnaast ondersteun jij de field engineers als zij bij de klant vastlopen bij het installeren van de machine m.b.t. software matige vragen. Jouw doel is dan ook om de technische kennis van de field engineers door middel van training zoveel mogelijk uit te breiden. Dit om ervoor te zorgen dat zij zelfstandiger software matige problemen kunnen oplossen. Ook ben jij verantwoordelijk voor het bedenken van software oplossingen voor klanten en dit

Bekijk vacature »

PHP Developer

Functie omschrijving Als PHP / Laravel developer zal je in een klein team terecht komen. Wij zijn op zoek naar een echte specialist, iemand die de balans weet te vinden tussen techniek en perfectie. In de aankomende jaren wilt dit bedrijf flink groeien en daarom zijn ze op zoek naar jou! Wat ga je doen? Je draagt bij aan het ontwikkelen en onderhouden van bestaande webapplicaties die boordevol functionaliteit zitten. Deze applicaties worden gebruikt door de organisatie zelf en ook door de klanten. Inmiddels wordt er gewerkt met Laravel 8 en zijn er diverse koppelingen naar externe leveranciers. Verder zal

Bekijk vacature »

Ambitieuze medior developer

Wat je gaat doen: Heb jij al een paar jaar ervaring als developer maar wil jij naar the next level? In ons NextLevelDev Programma helpen wij jou om de volgende stap te zetten: een mooi programma aan trainingen op het gebied van Java, hippe frameworks, Agile/Scrum, OCP-certificering en optioneel: andere JVM-talen als Kotlin en Scala; Cloud (AWS, Azure, GCP) Soc Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun

Bekijk vacature »
Glenn roelofs

Glenn roelofs

13/07/2010 17:27:11
Quote Anchor link
Goeie avond mensen,

Ik ben pas bezig met oop scripten.
en ik zou graag reacties willen hebben van wat ik goed doe en wat ik fout doe in mijn scripts
Het zijn werkende scriptjes.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?PHP
class Profiel {
    function
getnaam($id) {
        //Input Controleren.
        if(!is_array($id) || count($id) {
            return false;
        }

        
        //Data ophalen
        $query = "select 'naam' from 'gebruikers' where 'id' = '$id'";
        $result = mysql_query($query);
        
        //Controleren als qeury werkt
        if(!$result) die("Qeury Werkt niet. " . mysql_error());
        
        //Info ophalen uit db als gevonden is
        $naam = mysql_result($result, 0);
        
        //Naam weergeven
        echo 'Gebruikersnaam:' . $naam . '<br />';
    }
}

?>

en
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?PHP
class Combat{
        function
att($att) {
            $aanval = round($att/5);
            echo 'U deed '.$aanval.' Damage.<br />';
        }
        function
wapenatt($wapenatt) {
            $wapenaanval = round($wapenatt/13);
            echo 'U deed '.$wapenaanval.' Damage Met u wapen.<br />';
        }
        function
skil1($skil1) {
            $skilaanval1 = round($skil1*1.5);
            echo 'U deed '.$skilaanval1.' Damage Met u Skil1.<br />';
        }
        function
skil2($skil2) {
            $skilaanval2 = round($skil2*2.3);
            echo 'U deed '.$skilaanval2.' Damage Met u Skil2.<br />';
        }
        function
total($att, $wapenatt, $skil1, $skil2) {
            $aanval = round($att/5);
            $wapenaanval = round($wapenatt/13);
            $skilaanval1 = round($skil1*1.5);
            $skilaanval2 = round($skil2*2.3);
            $total = ($aanval+$wapenaanval+$skilaanval1+$skilaanval2);
            echo 'U deed '.$total.' Damage in totaal.<br />';
        }
}

?>
 
PHP hulp

PHP hulp

27/05/2026 08:11:29
 
Wesley Overdijk

wesley Overdijk

13/07/2010 17:59:48
Quote Anchor link
elke functie, prepend je met private, public, of protected. Ik zie meerdere dingen die je kan oplossen met het object, dus $this. Verder is het niet zo net om een echo in een class te doen, als je de html en php gescheiden houd.
 
Glenn roelofs

Glenn roelofs

13/07/2010 18:04:03
Quote Anchor link
bedankt voor de informatie wesley.
maar wat is dan de beste manier om de informatie te weergeven?
 
Chris -

Chris -

13/07/2010 18:38:30
Quote Anchor link
De functie return je, en echo je wanneer je hem oproept ;-)

Dus je geeft bij wijze van alleen een cijfer terug (attack -> damage), en het verhaal eromheen doe je dus niet in je class terug laten komen.
 
Glenn roelofs

Glenn roelofs

13/07/2010 18:43:16
Quote Anchor link
als ik het goed begrijp dus zo:
return 1243;

en in de oproep gedeelte dit:
$combat = new Combat();
U deed
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?= $combat->att($att); ?>
Damage
 
Chris -

Chris -

13/07/2010 19:22:28
Quote Anchor link
Ja, alleen dan geen shorttags gebruiken maar gewoon normale tags!

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $combat -> att($att)?>


En volledige namen gebruiken is ook handig ;-) $combat -> attack(); bijvoorbeeld
 
Niels K

Niels K

13/07/2010 19:30:36
Quote Anchor link
Is dit niet wat? Wel een beetje aanpassen naar jouw wens, en de database klassen maken, goede oefening misschien?

Verder moet je de naamgeving aanpassen en wat overzichtelijker programmeren. PHPDoc misschien een goed idee?

Verder kan je dit natuurlijk helemaal aanpassen, met foutenafhandeling ( exceptions ) en dergelijke. Succes!
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
/**
 * Profile class
 */

class Profile
{
    /**
     * @var String
     */

    private $name;
    
    /**
     * Constructor.
     *
     * @param String $unique_id
     */

    public function __construct( $unique_id )
    {

        // Control input
        if( isValid( $unique_id ) )
        {

            // Make new database
            $database = new MySQL( );
            // Connect
            $database->connect( 'localhost', 'username', 'password', 'database' );
            // Make query
            $query =
            "
                SELECT
                    name
                FROM
                    users
                WHERE
                    id = '"
.$database->addslashes( $unique_id ). "'
            "
;
            // Run the query
            $database->query( $query );
            
        }
    }

    
    /**
     * Controls the input.
     *
     * @param String $unique_id
     * @return Bool
     */

    protected function isValid( $unique_id )
    {

        return ( ctype_digit( $unique_id ) );
    }
    
    
}

?>
Gewijzigd op 13/07/2010 19:39:17 door Niels K
 
Glenn roelofs

Glenn roelofs

13/07/2010 19:56:44
Quote Anchor link
Welke voor en nadelen zijn voor het gebruiken van short tags?
want hoor het vaker gebruik geen short tags
 
- Mark -

- Mark -

13/07/2010 19:59:13
Quote Anchor link
Short tags kunnen zijn uitgezet door je webhost. Dan zie je al je php code gewoon in beeld.
 
Glenn roelofs

Glenn roelofs

13/07/2010 20:07:01
Quote Anchor link
o oke dankje wel dat wist ik niet:)
maar tot nu toe werkt alles wel gewoon dus en ik maak geen projecten voor andere mensen aleen voor eigen doeleine
 
Niels K

Niels K

13/07/2010 20:08:36
Quote Anchor link
Het maakt niet uit voor wie het is.. Als je het nu doet doe je het de volgende keer op een server waar hij uit staat ook:) Je moet proberen jezelf niks verkeerd aan te leren. Want aanleren is makkelijker dan afleren..
 
Glenn roelofs

Glenn roelofs

13/07/2010 20:10:05
Quote Anchor link
dat is wel zo niels:)
ik zal er gaan opletten bij me scripts die nu maak of ga verbeteren
Nog meer tip's & trucs voor OOP?
ik hoor het graag of een Nederlandse tut om oop beter onder de knie te krijgen is erg gewenst
 
Niels K

Niels K

13/07/2010 20:11:00
Quote Anchor link
@Glenn..

Lees mijn vorige reactie eens..

"ik hoor het graag of een Nederlandse tut om oop beter onder de knie te krijgen is erg gewenst"

Laat pas geleden een lid van phphulp deze eens gemaakt hebben

http://phptuts.nl/view/45/

Verder een aantal tips:

- Veel blijven oefenen
- Gewoon hier op het forum vragen of je denkwijze, script goed is. Daarvoor dient dit forum.
- Veel blijven lezen
- Download een aantal frameworks om te kijken hoe hun het gedaan hebben. Een mooi framework in PHP5 om mee te beginnen is Zend Framework. Oftewel kijk af van andere mensen
Gewijzigd op 13/07/2010 20:16:19 door Niels K
 
Glenn roelofs

Glenn roelofs

13/07/2010 20:27:01
Quote Anchor link
@niels

ik zie nergens u reactie staan
maar bedankt voor de link ik ga hem ff goed lezen en uitwerken na mijn wens
 
Niels K

Niels K

13/07/2010 20:44:38
Quote Anchor link
Niels Kieviet op 13/07/2010 19:30:36:
Is dit niet wat? Wel een beetje aanpassen naar jouw wens, en de database klassen maken, goede oefening misschien?

Verder moet je de naamgeving aanpassen en wat overzichtelijker programmeren. PHPDoc misschien een goed idee?

Verder kan je dit natuurlijk helemaal aanpassen, met foutenafhandeling ( exceptions ) en dergelijke. Succes!
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
/**
 * Profile class
 */

class Profile
{
    /**
     * @var String
     */

    private $name;
    
    /**
     * Constructor.
     *
     * @param String $unique_id
     */

    public function __construct( $unique_id )
    {

        // Control input
        if( isValid( $unique_id ) )
        {

            // Make new database
            $database = new MySQL( );
            // Connect
            $database->connect( 'localhost', 'username', 'password', 'database' );
            // Make query
            $query =
            "
                SELECT
                    name
                FROM
                    users
                WHERE
                    id = '"
.$database->addslashes( $unique_id ). "'
            "
;
            // Run the query
            $database->query( $query );
            
        }
    }

    
    /**
     * Controls the input.
     *
     * @param String $unique_id
     * @return Bool
     */

    protected function isValid( $unique_id )
    {

        return ( ctype_digit( $unique_id ) );
    }
    
    
}

?>


Nu wel?
 
Martijn B

Martijn B

13/07/2010 21:14:59
Quote Anchor link
De functie ctype_digit() wil graag een variabele van het type string anders zou het fout kunnen gaan dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
return ( ctype_digit( (string)$unique_id  ) );
?>

----

Is de methode isValid() alle nodig binnen je klasse? Zo ja maak deze dan private en niet protected. Alle methodes die private zijn beginnen bij mij met een _ dus dan zou het _isValid worden, vind ik duidelijker.

----

Een getal in je query hoef je niet te escapen.
Alleen de casten naar bijvoorbeeld in integer.

Dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$query
=
            "
                SELECT
                    name
                FROM
                    users
                WHERE
                    id = '"
. (int)$unique_id . "'
            "
;

?>


Dit als extra beveiliging, als je vergeet $unique_id op inhoud te controleren.
 
Martijn B

Martijn B

13/07/2010 21:16:47
Quote Anchor link
arghhh, dubbel...
Gewijzigd op 13/07/2010 21:17:16 door Martijn B
 
Jurgen Meijer

Jurgen Meijer

14/07/2010 11:08:26
Quote Anchor link
Ik zie meerdere dingen die verder uitgewerkt kunnen worden. Bij OOP gaat het vooral om uitsplitsen van je code. Zo heb je bijv een object Player, Character (die je weer kan extenden naar verschillende typen, warrior, mage of wat voor setting je ook zit).

voorbeeld:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
class Character{
    
    public $characterid = 0;
    
    public $hp = 0;

    public $strength = 0;
    
    public $skill = 0;
    
    public $status = 0;
    
    private $database;
    
    public function __construct($id = NULL){
        
        if(!is_null($id)){
            $this->db = database::getInstance('mysql');
            
            /// haal speler op en assign vars
        }
    }

    
    public function save(){
        // object opslaan    
    }
}


class Mage extends Character{
    //doe hier stuff voor mage
}

class Combat{
    
    public function doDamage($characterid, $damage){
        
    }

    
    // nog meer combat functies
}

?>
 
Niels K

Niels K

14/07/2010 11:44:17
Quote Anchor link
Klopt, jullie hebben gelijk. Ik had er niet zo goed over nagedacht, en later komen steeds ideeën in mijn hoofd. Maar voor de TS moet het ook een uitdaging zijn vind ik.
 
Glenn roelofs

Glenn roelofs

14/07/2010 11:59:27
Quote Anchor link
Bedankt jurgen,

zoals jij een voorbeed geeft is voor mij het idee om een game te bouwen met damage en verschillende classes .
ik doe dit samen met een vriend van mij
en we wouden het eerst in normaal php schrijven(is wel makkelijker voor mij)
maar we dachten van nee we gaan het netter maken qua scripting en we gaan OOP gebruiken.
en die vriend van mij maakt ook AS3 scripts ervoor zoals een worldmap enz
 
Jurgen Meijer

Jurgen Meijer

14/07/2010 12:36:13
Quote Anchor link
Je kunt AS3 ook gewoon met PHP laten praten door een HTTP request te doen naar een pagina waar je waardes van ophaalt.
 



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.