OOP gedachtengang

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Java software developer

AddSecure is one of the leading companies in Europe within secured, critical communication in several vertical segments. Our rapid growth is organic, as well as acquisitive, and today we have business in 13 countries. Now we are looking for senior JAVA developer to our vertical segment Smart Transport in Gorinchem (NL). Within Smart Transport, we offer flexible and scalable solutions for the entire order-to-cash process (O2C). Our customers can automatically collect, aggregate and enrich transport and logistics data. In addition we help them maximize their precision, predictability, transparency and delivery planning, while minimizing their costs and emission levels. About the

Bekijk vacature »

Lead Developer Product Creation

Discipline Information Technology Location Venlo (NL) Hours a week 40 As our Lead Developer Product Creation You will be responsible to create an architectural blueprint for the Product Creation domain in collaboration with product, owner and development team. You align domain architecture with enterprise architecture and you create, influence and apply domain-specific architecture views & viewpoints. You have overview and you can balance long term and near-term priorities What you will do Design solution architecture to ensure a scalable, performant, highly available secure software product Drive adoption of technology standards within a domain Hands-on development of processes and applications in

Bekijk vacature »

Senior .Net Developer Duurzaamheid Maatwerkapplica

Bedrijfsomschrijving Werken bij dit bedrijf betekent dat je onderdeel wordt van een grote internationale organisatie, met lokale focus. In Nederland werken er circa 1500 medewerkers bij deze organisatie. Duurzaamheid staat bij hen hoog in het vaandel en de projecten die zij uitvoeren hebben dit ook altijd als speerpunt. Iedere regio is verantwoordelijk voor zijn eigen IT beleid, maar NL is sturend voor alle vestigingen in Europa. De drie IT afdelingen bestaan uit IT services, demand management en IT innovatie. Momenteel zijn ze opzoek naar een Senior .NET Developer om het team te kunnen versterken. De organisatie is altijd in beweging

Bekijk vacature »

Senior Application Developer

The world wants simple apps that can manage the movements of millions of packages daily. But behind every application is a complex string of gripping challenges, and a focused developer tackling them. As someone who’s highly familiar with C# development practices in the Netherlands, you’ll join us as a senior member of the team and manage apps for Brokerage – big business freight in global markets that cover over 76% of all international trade. Digital innovation plays a crucial role in choreographing the infinite movements of goods, funds and information. The logic that goes into it, and skills adopted because

Bekijk vacature »

Xamarin C# Developer

Als Xamarin C# Developer zorg je ervoor dat onze cross-platform mobiele apps onze medewerkers de best mogelijke manier geven om Coolblue te beheren. Hoe word ik een Xamarin C# Developer bij Coolblue? Je specialiteit is ofwel C# OF mobiele app code, en je geniet van het werken met Xamarin. Je vindt het leuk om samen met je collega's te programmeren, om zo een hogere kwaliteit in de codebase te garanderen. Daarnaast denk je na over technische beslissingen zoals architectuur, tools en processen. Ook houd je de performance van je app in de gaten en analyseer je samen met je team

Bekijk vacature »

C# .NET Ontwikkelaar

Bedrijfsomschrijving Begin jaren 60' is de organisatie begonnen als gespecialiseerde werkmaatschappij om invulling te geven aan de toenemende vraag naar industriële automatiseringsoplossingen. De organisatie heeft daardoor al ruim 45 jaar ervaring met optimalisatie van processen binnen de industriële sector. De laatste jaren hebben zij zich met name gespecialiseerd in de verticale integratie van de werkvloer met de hoger gelegen management informatie systemen. De organisatie kenmerkt zich als innoverend, meedenkend en informeel. Binnen het team heerst er een positieve teamspirit met een gezonde dosis ondernemerschap en humor. Werk moet immers ook leuk zijn, toch? Functieomschrijving Ben jij een C# Developer die

Bekijk vacature »

Software Engineer C++ / Software Developer C++

Software Engineer C++ / Software Developer C++ (Bsc, MSc, Computer Science, Information Technology, Mathematics, C, C++, Linux, Algorithms) General Do you find great joy in software development, which is then used worldwide, and are you familiar with C++ and with algorithms… read on! Organization For our business client, a fast dynamic technical company which gathers and processes huge amounts of data, we are looking for several Software Engineers. You will be part of a team consisting of about 25 software developers working on a suit of advanced software tools. These software tools are then used further on in the company

Bekijk vacature »

Full-stack .NET developer gezocht, Goeree-Overflak

Ben je een .NET software developer en op zoek naar een professionele werkomgeving binnen een wat groter innovatief en ambitieus bedrijf? Waar sprake is van een uitgebreid applicatielandschap met elke dag nieuwe uitdagingen, waar alles mogelijk is, binnen een goede collegiale sfeer? Lees dan verder! Voor een bedrijf in Goeree-Overflakke zijn we momenteel op zoek naar een ervaren software developer. De IT afdeling bestaat uit circa 60 mensen waarvan zo'n 15 developers. Voor de recente architectuur wordt gebruikt gemaakt van de nieuwste technieken waaronder .NET Core, Docker en Angular. Echter bestaat het applicatielandschap uit een groot aantal verschillende applicaties waarbij

Bekijk vacature »

APK Integratie ontwikkelaar

Functieomschrijving Als je bij Randstad Groep Nederland IT werkt, houd je jezelf en Nederland in beweging. Stilstand is achteruitgang, daarom zijn we continu bezig onze business en processen te optimaliseren, zodat we onze klanten en kandidaten meer gemak, snelheid en transparantie kunnen bieden. Impactvolle tech, daar doen we het voor. Als Integratie Ontwikkelaar ga je bij Randstad Groep IT aan de slag binnen het team Applicatie Koppelingen (APK). Het team bestaat uit business analisten, developers, beheerders en een product owner en scrum master. Met in totaal 8 collega’s zorgen jullie voor een fundamenteel deel van onze applicaties, waar onze andere

Bekijk vacature »

Software Engineer

Because of the expansion of our team we are looking for a junior/medior Java Software Engineer in our small but diverse team in Eindhoven. Your role: a chance to make a difference As a Software Engineer, you develop, write, implement, test, improve and maintain our software based on the needs of the end user. You are responsible for the entire process, from inventory of customer requirements to the development and maintenance of concrete software solutions. We work in three teams: back-end, front-end and applications. Depending on your background and affinity, you will be a part of one of these teams.

Bekijk vacature »

.NET Developer C# Web-development

Bedrijfsomschrijving Onze klant levert kwaliteitsdienst binnen zijn sector, het niveau van de Nederlandse sector is internationaal bekend! De organisatie richt zich op het waarborgen van deze kwaliteit en voorziet een groot aantal klanten in het MKB van jaarlijkse keuringen. Je komt te werken binnen een team van ongeveer 10 medewerkers waarbij de focus ligt op de doorontwikkeling en het implementeren van oplossingen in het applicatielandschap. Binnen deze organisatie werken ze met diverse Scrum/Agile teams, het is dan ook belangrijk dat je ervaring hebt met deze werkwijze en het leuk vindt om op deze manier te werk te gaan. Het betreft

Bekijk vacature »

Software Developer eMagiz

Ben jij een zelfstandige (liefst Full Stack) Developer die zich op een volwassen manier verantwoordelijk voelt voor zijn eigen doelstellingen en daarnaast blij wordt van de teamdynamiek in je scrumteam en daar een actieve en kritische rol heeft? En word jij enthousiast van een zeer complexe ontwikkelomgeving waar je wordt uitgedaagd abstract te denken? Word dan lid van ons R&D team zodat jij een bijdrage levert aan onze zeer geavanceerde softwaremodellen en zo onze Enterprise integration Platform as a Service verder verbetert. Jouw uitdaging als Software Developer eMagiz eMagiz is een modelgedreven platform en wordt door klanten en partners gebruikt

Bekijk vacature »

Digital Workplace Engineer

Ben jij een ambitieuze Digital Workplace Engineer die de ontwikkelingen en innovaties op het gebied van Digital Workplace & Cloud op de voet volgt? Wij zoeken ter versterking van ons team zowel multi-skilled als specialistische engineers met passie voor hun vak! Bij ons krijg je de ruimte en vrijheid om in de praktijk jezelf verder te ontwikkelen op diverse projecten en aan je theoretische kennis te werken door het volgen van trainingen en behalen van certificaten. Wat ga je doen? Als Digital Workplace Engineer werk je binnen een team van enthousiaste specialisten om de hoog beschikbare Digital Workplace infrastructuren (zowel

Bekijk vacature »

Front End Developer with excellent Angular skills

Front End Developer with excellent Angular skills to help migrate software application into the Cloud (Front End Developer Angular 65K Rotterdam IND Registered) For an international organisation, specialised in data management for the process industry, we are looking for a Front End Developer with strong work experience in Angular technologies. This organisation has developt a software solution that takes on the important role of connecting people, data and assets, and translates this data into 3D models. Until recently it was a desktop solution, that is currently being migrated to the (AWS) Cloud. Are you up for the task? Who are

Bekijk vacature »

Medior iOS Developer

As an iOS Developer, you make sure our mobile app gives our users the best possible way to buy, browse and interact with Coolblue. How do I become an iOS Developer at Coolblue? You feel comfortable writing Swift code and working together with your colleagues to guarantee high quality. Besides that you think about technical decisions like architecture, tools and processes. You also keep an eye on the performance of the app and you analyse with your team how to improve it. Following scrum is second nature to you. In short, you get a lot of energy from building an

Bekijk vacature »

Pagina: « vorige 1 2 3 4 5

Wouter J

Wouter J

26/06/2012 20:13:02
Quote Anchor link
Nee, ik denk dat je Namespaces niet erg onder de knie hebt. Lees eens wat in over namespaces, zoals bijv. hier.
 
PHP hulp

PHP hulp

25/11/2020 18:28:56
 
Roel -

Roel -

26/06/2012 20:32:24
Quote Anchor link
Ik snap het inderdaad niet nee, en de website ook niet echt goed.
Ik heb nu dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
- Source Files
  - classes
     - User.php
     - UserMapper.php
  index.php

User.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
namespace User\User;

class User
{
    // code
}
?>

UserMapper.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
namespace User\UserMapper;

class UserMapper
{
    // code
}
?>

index.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
use User\User;
use User\UserMapper;

// code
?>
[/code
Ik snap er geen bal meer van nu.
Gewijzigd op 26/06/2012 20:35:59 door Roel -
 
Wouter J

Wouter J

26/06/2012 20:53:37
Quote Anchor link
Kijk als je een gewoon script maakt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
function myFunc() {
    return 'Lorem ipsum';
}

class Foo
{
    public function bar()
    {

        return 'Foo....bar!!!';
    }
}

?>

Dan staat dit allemaal in 1 scope, de global scope. Dat is de \ namespace.

Meteen namespace deel je een stukje script op in een bepaalde categorie. Het is ong. te vergelijken als je heel veel berichten hebt:
- beginnen-met-HTML
- Objectief-leren-denken
- psychologie-voor-gevorderden
- Ruby-en-SQL
- CSS-icm-HTML
- ...

Als je deze berichten nu in verschillende categorieën opdeelt wordt het een stuk overzichtelijker:
HTML
- beginnen-met-HTML
- CSS-icm-HTML
Scripting
- Objectief-leren-denken
- Ruby-en-SQL
Overig
- psychologie-voor-gevorderden
- ...

Zo werken namespaces ook. Je deelt de klassen, functies en variabele op in verschillende categoriën. Alles van de User gaat in de User namespace en alles dat te maken heeft met berichte in de Post namespace.

Een namespace definieer je door 'namespace naam-v-d-namespace' te doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
namespace Post;

class BlogPost
{
    // ...
}
?>


Als je nu in een bestandje deze klasse wilt gaan gebruiken zul je 2 dingen moeten doen: of je gaat in dezelfde namespace zitten als de klasse of je moet de namespace definiëren waarin de klasse zit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
require_once 'Post/BlogPost.php';

$blogPost = new Post\BlogPost('Foobar title');
?>

Hierin wordt de klasse BlogPost in de namespace Post gepakt.

De standaards wijzen voor dat het beter is om je namespace zo op te delen: ProjectName\Categorie\Categorie1\... Het wordt dan dus:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
namespace WjCMS\Post;

class BlogPost
{
    // ...
}
?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
require_once 'Post/BlogPost.php';

$blogPost = new WjCMS\Post\BlogPost();
?>

Nu wordt dit natuurlijk heel veel typwerk. Daarom hebben ze in PHP 'use' bedacht, daarmee kan je een alias maken voor een namespace:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
require_once 'Post/BlogPost.php';

use WjCms\Post as WjPost; // alias WjPost voor de namespace WjCms\Post

$blogPost = new WjPost\BlogPost();
?>


Begrijp je het nog?
Want nu heeft PHP het nog makkelijker voor je gemaakt! Je kan namelijk ook achter het use keyword de namespace + klassenaam plaatsen. Dan zal telkens die klassenaam worden gezocht in die namespace:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
require_once 'Post/BlogPost.php';

use WjCms\Post\BlogPost;

$blogPost = new BlogPost();
?>

Dit maakt het dus allemaal veel makkelijker voor je, maar is in feite niks anders dan die lange new WjCms\Post\BlogPost(); van een paar scriptjes geleden.

Nu hebben een paar genies bedacht dat je die namespaces natuurlijk ook mooi kan omzetten om te gaan autoloaden, dit heeft dus niet iets met elkaar te maken. Een autoload functie (of klasse) wordt aangeroepen als je een klasse instantiërt (met new ...()) en die klasse bestaat nog niet.
Dan zet een PSR-0 autoloader de namespace + klassenaam om in een filepath. Een PSR-0 autoloader zal WjCms\Post\BlogPost omzetten naar WjCms/Post/BlogPost.php.
Hierdoor zal je het bestand dus in de map WjCms/Post/BlogPost.php moeten verplaatsen.
 
Jasper DS

Jasper DS

02/07/2012 15:17:11
Quote Anchor link
Niels, ik snap het Row Data Gateway Pattern nog niet erg goed... :S

Mijn functie fetchAll ziet er zo uit in mijn mapper:
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
<?php
public function fetchAll()
    {

        $resultSet = $this->getDbTable()->fetchAll();
        $entries   = array();
        foreach ($resultSet as $row)
        {

            $entry = new Application_Model_Client();
            $entry->setId($row->klantid)
                  ->
setName($row->klantnaam);
            $entries[] = $entry;
        }

        return $entries;
    }

?>


Hoe zou deze eruit moeten zien met dat pattern als ik de rowClass toevoeg aan het dbTable object?
 

Pagina: « vorige 1 2 3 4 5



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.