OOP voorbeeld

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Digital Agency is looking for PHP developers!

Functie The team currently has 20 colleagues, consisting of developers (front and backend) and the operations team, which also includes management and two scrum masters. They are looking for a PHP developer who is able to work independently. You will work in one of the three scrum teams and start working on a project for the customer. The interesting thing about this is that you do have variety in terms of work, but at the same time continuously work for existing customers. This also gives you the opportunity to really go into depth and develop innovative technical solutions. In terms

Bekijk vacature »

PHP Developer

Functieomschrijving Vanuit het hoofdkantoor in de regio van Bergen op Zoom ben je als PHP Developer niet alleen gefocust op het ontwikkelen van Software. Daarnaast ben je ook voortdurend bezig met het zoeken naar nieuwe mogelijkheden en innovaties die essentieel kunnen zijn voor de efficiëntie van software ontwikkeling. Je deelt veel kennis en informatie met het team en ontvangt deze dan ook graag terug. Techstack: PHP, Symfony & mySQL. Bedrijfsprofiel Deze uitdagende opdrachtgever is ruim 20 jaar actief in de regio Bergen op Zoom. Het vooruitstrevende team staat de hele dag voor je klaar om je te helpen en ondersteunen.

Bekijk vacature »

Junior Software Developer

Functie omschrijving Wij zijn op zoek naar een Junior Software Developer .NET, C# voor een gaaf bedrijf in de omgeving van Utrecht! Sta jij aan het begin van je carrière en heb je net je HBO of WO-diploma in de richting van ICT of Techniek mogen ontvangen? En heb jij grote affiniteit met software development? Lees dan snel verder! Voor een opdrachtgever in de omgeving van Utrecht, zijn wij op zoek naar een Junior Software Developer. Werk jij graag aan verschillende projecten en ga je graag klanten op bezoek? Dan is dit de ideale functie voor jou! Binnen deze functie

Bekijk vacature »

Software Ontwikkelaar .NET te Zaandam

Bedrijfsomschrijving Je komt hier terecht bij een door-en-door softwarebedrijf, waarbinnen meerdere SaaS pakketten worden ontwikkelt voor diverse sectoren. Hierbij kun je denken aan bijvoorbeeld de logistieke en medische branche. Deze organisatie kenmerkt zich door de hoge mate van complexiteit in de applicaties, wat betekent dat jij je hier niet zal gaan vervelen. Integendeel: Jij gaat hier elke dag ontzettend veel leren en je in razend tempo ontwikkelen als C# .Net Developer met focus op back-end. Het team bestaat uit ongeveer 20 personen personen, waarvan het grootste deel zich richt op software development. De sfeer is informeel en professioneel. De producten

Bekijk vacature »

C# Developer Research and Development - Delft

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Delft Vacature ID: 6307 Introductie C# Developer Research and Development - Delft - Onze klant is één van de meest innovatieve bedrijven in de region van Delft. Op dit moment zijn ze voor het innovatie centrum. In het innovatie centrum wordt gewerkt aan de nieuwste technieken voor navigatie software. R&D / C# / Pattern Recognition / Algorithms / 3d Data / DotNET Functieomschrijving Als C# Developer kom je te werken in een innovatief scrumteam. We ontwikkelen en door ontwikkelen de nieuwste technieken op het gebied van navigatie software. Deze software wordt onder andere

Bekijk vacature »

Junior Software Developer C# Verhuursector Verhuur

Samengevat: Wij ontwikkelen en leveren softwaresystemen voor de logistieke sector en de verhuursector. Ben jij geschikt als Junior Software Developer? Heb je ervaring met Delphi? Vaste baan: C# Software Developer Logistiek HBO €2.500 - €3.900 Deze werkgever is een software ontwikkelaar, gericht op software voor de logistieke sector. Deze werkgever heeft eigen producten ontwikkelen en leveren ook maatwerk. Ons bedrijf kent een boeiende en inspirerende werkomgeving met een open cultuur en mogelijkheden voor je verdere ontwikkeling. Bij bij hun werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

Bekijk vacature »

Network Engineer (f/m/d) in Heidelberg

Network Engineer (f/m/d) The IT Services team operates and supports the IT infrastructure and services at EMBL headquarters in Heidelberg and at the laboratory’s sites in Barcelona and Rome. As part of IT Services, the Network team is responsible for managing and developing the network infrastructure in our data centres, on campus, and to our external network providers. As a leading scientific institution with highly data-intensive research, extensive data flows at and between the laboratory’s six sites and to the Internet, EMBL is connected to national and international scientific networks using state-of-the-art technologies from vendors including Cisco, Extreme Networks and

Bekijk vacature »

Java/Kotlin Developer

Java/Kotlin Developer Ben jij een ervaren Java/Kotlin developer met een passie voor het automatiseren van bedrijfsprocessen? Wil je graag deelnemen aan uitdagende projecten bij aansprekende klanten? En ben je op zoek naar een professioneel, ambitieus en dynamisch bedrijf om je carrière verder te ontwikkelen? Kom dan ons team bij Ritense in Amsterdam versterken! Zo ziet de functie eruit: Als Java/Kotlin developer bij Ritense ben je verantwoordelijk voor de ontwikkeling en implementatie van applicaties die bedrijfsprocessen automatiseren, zodat onze klanten slimmer, efficiënter en klantgerichter kunnen werken. Als developer ben je in de lead en zorg je voor de correcte oplevering van

Bekijk vacature »

.NET Developer gezocht!

Functie omschrijving Wij zijn op zoek naar een .NET Developer! Wil jij werken voor een internationaal bedrijf waar je legio mogelijkheden krijgt als Software Ontwikkelaar? Grijp nu je kans en kijk snel of jouw vaardigheden aansluiten bij onderstaand profiel! Je kunt een uitdagende rol gaan vervullen als .NET Developer binnen een internationaal bedrijf dat gevestigd is in omgeving Bergen. Dit bedrijf is zeer vooruitstrevend en verricht betekenisvol werk. Binnen dit bedrijf wordt gewerkt aan de productie en ontwikkeling van medische middelen. Als .NET Developer ga jij je bezig houden met het volgende: Je wordt betrokken bij alle fasen van software

Bekijk vacature »

.NET developer

Functie Als .NET developer werk jij samen in een multidisciplinair ontwikkel team met 1-2 Senior .NET developers, twee front-end developers, Data Scientists en één UX designer. Als team werken jullie aan het ontwikkelen van een Cloud based applicatie en aan het stabieler maken van deze applicatie. Ook unit testing gaat erg belangrijk worden in jouw nieuwe functie. Samen met de Senior .NET ontwikkelaar wordt jij verantwoordelijk voor het ontwikkelen van de API. Jullie werken met veel data en incidenteel komen er ook data vraagstukken en zullen er wat queries gedraaid moeten worden. Dit betekend dat jij veel gaat werken met

Bekijk vacature »

Freelance JAVA / C# Developer

Functieomschrijving Ben je een ervaren freelancer of werk je in loondienst en ben je toe aan een nieuwe uitdaging? Lees dan snel verder want wie weet is dit een leuke vacature voor jou! Voor een opdrachtgever in omgeving Delft zijn wij op zoek naar ervaren JAVA of C# Developers die graag op projectbasis willen werken. Je komt terecht bij een informele developers club die mooie projecten uitvoeren voor grote klanten. Het fijne van deze werkgever is dat je zelf mag beslissen hoe je te werk wilt gaan. Wil je als freelancer werken dan is dat OK. Wil je de zekerheid

Bekijk vacature »

.NET Developer Senior

Dit ga je doen Het ontwikkelen van backend applicaties in C#; Het maken van vele koppelingen met andere ERP-applicaties zoals JD Edwards en SAP; Je bent (mede) verantwoordelijk voor het opstellen van technisch ontwerpen voor de te ontwikkelen software oplossingen; Je bent gemiddeld 90% van je tijd inhouse oplossingen aan het ontwikkelen en testen. De overige 10% van je tijd ben je bij klanten op locatie om oplossingen te implementeren, klanten te begeleiden en de software verder te innoveren; Naast het zelfstandig ontwikkelen van software oplossingen ben je ook bezig met het waarborgen van je contacten bij de klant, het

Bekijk vacature »

Junior PHP Developer

Functieomschrijving Junior PHP Developer gezocht! Voor een opdrachtgever in de regio Gelderland zijn wij op zoek naar een Junior PHP Developer die onderdeel gaat worden van het ontwikkelingsteam van deze organisatie. In deze functie ga jij aan de slag met het schrijven van software voor de aansturing van en het managen van windparken en bijbehorende onderdelen. Hiernaast ga jij je bezighouden met het ontwikkelen, testen en onderhouden van diverse webapplicaties. Het team waarin je komt te werken bestaat uit 3 developers, hierdoor krijg je veel verantwoordelijkheid en de kans om jezelf verder te ontwikkelen. Er wordt echter wel van je

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »
Fth lalala

Fth lalala

10/04/2015 23:16:09
Quote Anchor link
Beste Leden,

Goedenavond allemaal, sinds kort met ik bezig met OOP (PHP).
Op het internet zie ik veel voorbeelden langskomen en ze zijn allemaal anders.
Hierdoor raak ik helaas wel in de war.

Stel ik heb een database en ik wil een afbeelding url en een titel willen ophalen. Hoe zou dit er dan ongeveer uitzien in OOP?

Ik hoop dat iemand hier een simpele voorbeeld kan plaatsen zodat ik een idee krijg.

Bedankt allemaal!


Met vriendelijke groet,

Fth
 
PHP hulp

PHP hulp

27/07/2024 03:44:21
 
Thomas van den Heuvel

Thomas van den Heuvel

11/04/2015 11:57:09
Quote Anchor link
OOP is een middel, niet een doel.

Je zou OOP kunnen gebruiken voor het declareren en gebruiken van database-klasses, of nog een stapje verder kunnen gaan en hier ook nog een abstractielaag bovenop zetten zodat je "praat" met objecten in plaats van database-tabellen.

En de code waarin je een afbeelding en een URL wilt ophalen, wat voor ding is dat? Of wat doe je ermee? Genereer je een HTML-pagina, maak je een RSS-feed, stuur je deze mee in een e-mail? Afhankelijk van die "context" zou je de code die gebruik maakt van je database-klasses ook zelf weer kunnen vatten in klasses.

Ook is het niet helemaal duidelijk wat je bedoelt - gaat het om de algehele (structurele) aanpak met betrekking tot OOP, of ben je gewoon op zoek naar een set van klasses waarmee je gemakkelijk kunt communiceren met je database?
 
Fth lalala

Fth lalala

11/04/2015 12:00:51
Quote Anchor link
Hey Thomas,

Goedemorgen. Stel ik heb een tabel met 2 velden:

Url:
Url1.html
Url2.html

Titel:
Titel 1
Titel 2

Hoe kan ik dit in OOP ophalen en in een HTML tabel tonen?

Ik wil het alleen maar als voorbeeld zodat ik kan zien hoe OOP in elkaar zit.
Zou jij een simpel voorbeeld kunnen plaatsen?

Bedankt!!

Mvg,

Fth
Gewijzigd op 11/04/2015 12:01:52 door Fth lalala
 
Thomas van den Heuvel

Thomas van den Heuvel

11/04/2015 12:28:12
Quote Anchor link
* shameless self plug *
Je zou de laatste 4 klasses in dit bericht kunnen kopiëren. Ik zeg niet dat deze klasses nou echt super zijn, kijk vooral ook verder ff rond :).

Dan een voorbeeld van gebruik. Hierbij ga ik uit van de aanname dat je tabellen de UTF-8 (utf8 in MySQL) character encoding hebben. Zoniet, dan moet er het eea veranderd worden in je script. De organisatie van de 4 bovengenoemde klasses in directories en bestanden volgt de naamgeving (in het script hieronder staat waar je deze neer zou moet zetten).

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
56
57
58
59
60
61
62
63
64
65
66
<?php
// include de scripts - het zou natuurlijk handiger zijn als je een autoloader had...
require './classes/database.php';
require './classes/database/mysqli.php';
require './classes/database/result.php';
require './classes/database/result/mysqli.php';

// maak een database object aan
// als je database afwijkende instelling heeft (port, host, charset) dan kun je deze in de
// laatste parameter invullen, anders kun je deze leeg laten

$db = new Database_MySQLi('username', 'password', 'database_name', array());

// hulpfunctie voor het escapen van output - mogelijk bevat je data user input, deze mag je dan niet vertrouwen
function escape($in) {
    return htmlspecialchars($in, ENT_QUOTES, 'UTF-8');
}


// maak een volledig en kloppend HTML document; geef aan dat het hele document UTF-8 is
header('Content-Type: text/html; charset=UTF-8');
?>

<!DOCTYPE html>
<html>
<head>
<title>database test</title>
</head>

<body><?php
// zet de rest van je code in een try-catch blok; je kunt er ook voor kiezen om dit hele PHP-document in een try-catch blok te zetten, maar dan zou je de die()-statements in de klasses om moeten programmeren
try {
    // voer de query uit
    $res = $db->query(
        'SELECT Url, Titel
        FROM tabel
        ORDER BY Titel'

    );
    if ($res->numRows() > 0) {
        // bouw tabelletje ofzo...
        ?>
<table>
        <thead>
        <tr><th>Url</th><th>Titel</th></tr>
        </thead>
        <tbody><?php
        // resultaten - doorloop deze
        while ($row = $res->fetchRow()) {
            // escape ook deze waarden bij het afdrukken
            ?>
<tr>
                <td><a href="<?php echo escape($row['Url']) ?>" title="">link</a></td>
                <td><?php echo escape($row['Titel']) ?></td>
            </tr><?php
        }
        ?>
</tbody>
        </table><?php
    } else {
        // geen resultaten
        ?>
<p>Geen resultaten gevonden bij het uitlezen van Tabel.</p><?php
    }
    // geef het resultaat vrij
    $res->freeResult();
}
catch(Exception $e) {
    // print foutboodschap
    // ook de foutboodschap kan user input bevatten, deze moet dus ook onschadelijk worden gemaakt

    ?>
<h2>error</h2>
    <p><?php echo escape($e->getMessage()) ?></p><?php
}
?>
</body>
</html>

Het bovenstaande script is verder niet getest, dus hier zitten ongetwijfeld nog wat fouten in, maar dit is ongeveer de opzet.
Gewijzigd op 11/04/2015 12:31:31 door Thomas van den Heuvel
 
Fth lalala

Fth lalala

11/04/2015 12:35:46
Quote Anchor link
Bedankt Thomas!
OOP is wel even wennen moet ik toegeven.

Gebruik jij overal OOP voor of?
 
Thomas van den Heuvel

Thomas van den Heuvel

11/04/2015 13:42:01
Quote Anchor link
Nu ja, het bovenstaande is nog een beetje hybride (bevat zowel OOP elementen als procedurele code).

Ik gebruik OOP wanneer ik het nodig heb (en een zekere toegevoegde waarde heeft) of wanneer ik niet anders kan :s. OOP is een middel, geen doel.
 
Fth lalala

Fth lalala

11/04/2015 13:46:11
Quote Anchor link
Hey Thomas,

Ik heb inderdaad gelezen dat OOP een middel is en geen doel. Het is geen verplichting o.i.d.!

Zeer bedankt voor al je hulp!
 



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.