Mijn Framework

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Traineeship ICT regio Amsterdam/Utrecht

Wat ga je doen? Het traineeship begint met een fulltime maand cursussen en praktijkdagen, waarin je de basis van het IT-vak leert op de Shared Servicedesk (SSD). Daarnaast ga je meteen aan de slag voor je eerste certificering! (ITILv4). Je start in een groep met 4 tot 10 deelnemers, waarmee jij gedurende die maand optrekt en je kennis kunt delen. Na het voltooien van de eerste maand ga je direct voor een langere periode aan de slag bij één van onze klanten of blijf je intern bij ons op de Shared Servicedesk. Je bent het eerste aanspreekpunt van de eindgebruikers

Bekijk vacature »

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 »

SQL developer

Functieomschrijving Voor een erkende werkgever in de omgeving van Tilburg zijn wij op zoek naar een ervaren SQL ontwikkelaar. Hier wordt jij mede verantwoordelijk voor zowel de design en implementatie van SQL-databases als voor het verstaan van de processen van klanten naar het vertalen van deze processen naar IT-oplossingen. Jouw takenpakket komt er als volgt uit te zien: Het ontwerpen en implementeren van databaseschema's: Je bent in staat om een database te ontwerpen en de structuur van tabellen, relaties, indexen en andere objecten te definiëren; Het schrijven van complexe SQL-query's: Je kunt complexe query's schrijven om gegevens uit de database

Bekijk vacature »

Back end developer Digital agency

Functie Heb jij altijd al eens bij een bedrijf willen werken waar jij géén nummertje bent, die alleen maar uitvoerend werk doet? Dan zou je hier perfect passen! Tuurlijk, je werkt aan projecten voor grote of kleine bedrijven… Het enige verschil hier is, jouw mening telt hier écht. Jouw inbreng wordt gewaardeerd, serieus genomen en gebruikt. En vergeet niet, je werkt niet alleen aan deze projecten. Er werken in totaal ruim 20 developers en designers, onderverdeeld over 3 development teams. Voornamelijk bestaande uit Medior en Senior developers, die samen voor een inspirerende en ambitieuze omgeving zorgen. Hun visie is namelijk

Bekijk vacature »

Senior .NET developer

Klaar voor een nieuwe uitdaging? Welke technologieën gaan schuil achter de dagelijkse energievoorziening? Als senior .NET developer bij Kenter maak jij samen met je team het verschil, zowel voor de interne organisatie als voor eindklanten. Samen bouwen jullie aan innovatieve dienstverlening met behulp van de nieuwste technologieën en tools. Het is een functie met veel vrijheid, goede arbeidsvoorwaarden én je draagt jouw steentje bij aan de energietransitie. Klinkt dit als iets voor jou? Lees dan verder of solliciteer direct! Wat ga je doen als senior .NET developer? Als senior .NET developer bij Kenter (onderdeel van Alliander) ben je van onschatbare

Bekijk vacature »

.NET Developer

Functie omschrijving Ben jij een senior .NET developer en heb jij tevens ervaring als teamlead? Ben jij iemand met een helikopterview en denk jij graag mee met de klanten? Dan zijn wij op zoek naar jou! Voor een geweldig bedrijf zijn wij namelijk op zoek naar een ervaren .NET developer. Het bedrijf houdt zich bezig met het ontwerpen en bouwen van websites, portalen en applicaties voor met name zorg- en onderwijsinstellingen en overheidsinstanties. Jouw taken: Het fungeren als Lead Developer; Het meedenken met de business (dit vergt commercieel inzicht); Het begeleiden van diverse projecten (van klein tot groot); Het ontwerpen

Bekijk vacature »

Senior Javascript developer

Functie Het platform is gebouwd in een moderne JavaScript stack, die gebruikt maakt van:  React.js  Redux  TypeScript  Node.js  Google Cloud functions (node.js)  Semantic UI Alle code wordt getest en beoordeeld door collega developers. De continuous integration pipeline maakt het mogelijk om elke dag waarde te leveren aan hun klanten. Het ontwikkelproces is pragmatisch en gebaseerd op Scrum. Wat je zult doen: Ten eerste kun je nadrukkelijk jouw eigen stempel drukken op de technologie, het product en de cultuur van het bedrijf. Je bent bezig met het uitwerken van de architectuur van nieuwe functionaliteiten op

Bekijk vacature »

Database ontwikkelaar

Functieomschrijving Wil jij aan gave logistieke softwareprojecten werken en bij een uniek softwarebedrijf in de regio van Tilburg? Wacht niet langer en reageer snel op deze vacature. Als Database ontwikkelaar ga je aan de slag het schrijven van stored procedures en verder uitbouwen van de SQL database. Je werkt in een database team, met allemaal mensen die energie krijgen van software en techniek. Verder krijg je als taak: Optimaliseren en uitbouwen van de MS SQL databases die gebruikt worden; Optimaliseren van query's, waardoor er efficiënter gewerkt kan worden; Je werkt met de technieken T-SQL of PL/SQL; Bij interesse kan je

Bekijk vacature »

Developer Angular & Kotlin

Dit ga je doen Het (door)ontwikkelen van mobiele apps en webapplicaties; Het opstellen van technisch ontwerp en het bespreken van ontwerpen met de software architect; Het uitvoeren van werkzaamheden op het gebied van technisch testen; Het in de gaten houden van nieuwe ontwikkelingen op jouw vakgebied en het adviseren van de organisatie hierover. Hier ga je werken Het gaat om een bekend internationaal handelsbedrijf met ruim 800 medewerkers, verdeeld over verschillende deelbedrijven. Deze organisatie is van oorsprong een familiebedrijf, er wordt hard gewerkt, er heerst een no nonsense en doeners mentaliteit, een informele sfeer en er is een mix van

Bekijk vacature »

C#.NET Developer

Functieomschrijving We are looking for a dutch native speaker In deze uitdagende functie ga je werken als onderdeel van het development team, in de functie van C#.NET Developer, Je gaat maatwerk software bouwen voor diverse klanten. Ook optimaliseer je bestaande software en bouw je API koppelingen. Je bent vooral met back-end development bezig. Je krijgt veel vrijheid in deze functie en je krijgt de kans om mee te denken in bedrijfsprocessen. Deels thuiswerken is geen enkel probleem! Bedrijfsprofiel Deze organisatie is gevestigd in de regio van Boxtel. Het is van oorsprong een familiebedrijf, die gestart zijn met het bouwen van

Bekijk vacature »

Senior/Lead Python developer

Functie Samen met je team, bestaande uit een senior, 2 mediors en één junior ontwikkelaar ga je op een Agile-gebaseerde aanpak werken aan hun software. Je hebt oog voor kwaliteit, risico’s en klantbelang. Communicatie met je collega’s en waar nodig ook met klanten speelt een belangrijke rol in het bereiken van een succesvol resultaat. Als persoon ben je slim, krijg je dingen voor elkaar en ga je resultaatgericht te werk. Binnen het development team is er veel zelfstandigheid, los van de stand-up (10:00 uur) en zo nu en dan pair-programming sessies. Technieken die zij gebruiken zijn o.a. Python, Django, MySQL,

Bekijk vacature »

Traineeship Full Stack Java developer

Dit ga je doen Start jij op 7 augustus bij de Experis Academy dan kickstart jij jouw IT-carrière! We leiden je op tot een gewilde Full Stack Java Developer met alle kennis en vaardigheden die nodig zijn om de arbeidsmarkt te betreden. Wat kun je verwachten, hoe zit een dag in het leven van een Trainee eruit? Periode 1 Als Full Stack Java Developer Trainee volg je vanuit huis een op maat gemaakte onlinetraining die in het Engels wordt gegeven. De tijd die je kwijt bent aan het volgen van de training kun je vergelijken met een fulltime werkweek. In

Bekijk vacature »

Als Lead PHP developer bijdragen aan het onderwijs

Functie Als Lead PHP developer zet je samen met het team en de andere lead developers de technische lijnen uit als het gaat om het ontwikkelen van de applicaties en bepaal je samen met de PO waar elke sprint aan gewerkt zal worden. Je kunt op basis van een user story een goede aanpak formuleren en een planning opstellen, en andere hierin meenemen. Wanneer je team code schrijft verwacht je degelijke oplossingen, bij voorkeur gebruik makend van Domain Driven Design. Je ziet toegevoegde waarde in het beoordelen van het werk van collega’s om zo samen te streven naar hoge kwaliteit

Bekijk vacature »

.NET Developer te Naarden

Bedrijfsomschrijving Voor mijn klant ben ik op zoek naar een .NET Developer om het huidige team te komen versterken. Deze organisatie bevindt zich in de logistieke sector, en zij hebben een eigen ERP systeem ontwikkeld dat zij inzetten ter optimalisatie van de logistieke processen van haar eindklanten. Deze organisatie bestaat inmiddels al ruim 20 jaar, waarbij zij een duidelijke missie hebben, namelijk: het werk van de eindklant makkelijker maken door de systemen die zij leveren. Ze werken over heel de wereld, wat deze organisatie een echte internationale speler maakt. Binnen de organisatie kenmerken ze zich door een dynamische en professionele

Bekijk vacature »

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 »
PHP Scripter

PHP Scripter

16/08/2011 22:29:11
Quote Anchor link
Ik ben bezig met het ontwikkelen van een eigen Framework (inclusief CMS) om mijn kennis in het MVC systeem en de bijhorende zaken wat beter te begrijpen. Ik wil mij niet verdiepen in de andere Frameworks omdat ik nooit zal begrijpen hoe het precies in elkaar zit. Misschien ook een stukje eigenwijsheid. Haha!

Ik wil veel tijd besteden aan het systeem en het in de toekomst mijn oude CMS systeem te laten vervangen, omdat dit niet in OOP is geschreven.

Nu heb ik dit topic gestart om wat algemene vragen te stellen. Ik weet dat er meer mensen op dit forum bezig zijn met een Framework, maar ik wil graag verder met mijn eigen.

In de index.php laad ik de Core door middel van de volgende regels:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
require LIBRARY . DS . 'Core' . PHP_SUFFIX;
new
Core();
?>


Ik heb er bewust voor gekozen om zoveel mogelijk te defineren zodat ik duidelijk kan zien welke bestanden er worden opgehaald. Dit is denk ik heel erg persoonlijk.

Vervolgens heb ik in de Core het volgende probleem, overige code heb ik weggehaald:
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
67
68
69
<?php
class Core
{
    private static $CoreStart;
    private static $CoreLoaded;
    
    /**
    * The constructor in this class.
    */

    public function __construct()
    {

        /**
        * Start the session. This is very important!
        */

        session_start();
        
        /**
        * First check if the language class is loaded, else show an error.
        */

        self::LoadFile(LIBRARY . DS . 'Language' . PHP_SUFFIX);
        
        /**
        * Check if the class can be loaded.
        */

        if (!Language::Initalize())
        {

            die('<strong>EN:</strong> The language class can\'t be loaded, please contact the webmaster!<br /><br />
                 <strong>NL:</strong> De taal klasse kan niet geladen worden, neem contact op met de webmaster!'
);
        }

        else
        {
            return true;
        }


        /**
        * To make the autoloader it a little bit easier; load all the files that we have in the libary.
        * Make sure the files exists!
        */
        
        self::LoadFile(LIBRARY . DS . 'MessageHandler' . PHP_SUFFIX);
        self::LoadFile(LIBRARY . DS . 'Config' . PHP_SUFFIX);
        self::LoadFile(LIBRARY . DS . 'Database' . PHP_SUFFIX);

        /**
        * The variables does have the correct values.
        */

        if ($this->CoreLoaded !== false AND $_SESSION["CoreLoaded"] !== false AND !empty($this->CoreStart))
        {

            /**
            * The core is loaded, we can go forwards! We gonna load some classes from the libary.
            */

            Config::Initalize();
            
            //PDO Connectie gebeurd hier.

        /**
        * The variables doesn't have the correct values.
        */

        }
        else
        {
            /**
            * The core is'nt loaded, we can't go forwards and throw a new message and the site will die!
            */

            MessageHandler::NewMessage('1', 'Error', 'true', $Language["CORE_ERROR"]);
            return false;
        }
    }
}

?>


Het documenteren van de documenten moet ik nog eens goed aandacht aan besteden. Dit is even snel opgezet, kun je wel zien aan de Engelse teksten.

Ik ben een beetje het draad kwijt, hoe kan ik nu het beste de Language class inladen en ervoor zorgen dat ik hem in de Core al kan gebruiken zodat ik mooie meldingen kan maken via mijn custom MessageHandler (Exceptions).

Ook moet ik nog eens kijken naar regel 46. Op dit moment wordt er een sessie gezet met de waarde true/false als de functie self::LoadFile is mislukt. Zodra het is mislukt, wordt de waarde overgeschreven.
Gewijzigd op 16/08/2011 22:29:55 door PHP Scripter
 
PHP hulp

PHP hulp

16/02/2025 12:58:53
 
Fabian M

Fabian M

16/08/2011 23:27:13
Quote Anchor link
Ik zelf denk dat je niet de Language class niet door de Core zelf moet geladen worden, maar het is jouw keuze.
 
PHP Scripter

PHP Scripter

18/08/2011 16:27:44
Quote Anchor link
Fabian bedankt voor je reactie. Ik laad liever eigenlijk alles in de Core. Ik ga er toch nog eens even mee stoeien.
 
The Force

The Force

22/08/2011 02:20:29
Quote Anchor link
Denk aan scheiding van taken. Een klasse moet één goed gedefinieerde taak hebben. Meer OO zou zijn om dus een ClassLoader klasse (of hoe je hem ook wilt noemen) aan te maken die het autoloaden voor zijn rekening neemt. Probeer je constructor ook wat kleiner te maken. Je doet te veel in één functie.
 
Pim -

Pim -

22/08/2011 04:05:37
Quote Anchor link
Dit is sowieso meer een functie dan een OO klasse. Heb je al veel tutorials gelezen?
 
PHP Scripter

PHP Scripter

06/09/2011 20:04:18
Quote Anchor link
Inmiddels ben ik opnieuw begonnen met het schrijven van een Framework in PHP. Nu heb ik een vraag over het registreren van 'algemene' variabelen. Ik heb het nu als volgt gedaan:

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
<?php
class Registry
{
    /**
     * Variables in this class
     *
     * @private Instance (static)
     * @private DataArrayArray
     */
    
    private static $Instance = null;
    private $DataArrayArray = array();

    /**
     * @function GetInstance
     * Get the instance of the class
     *
     * @param Instance
     */

    static public function GetInstance( )
    {

        if(self::$Instance === null)
        {

            self::$Instance = new self();
        }


        return self::$Instance;
    }


    /**
     * @function SetValue
     * Set a variable with a value
     *
     * @param DataArray
     */

    public function SetValue($Key, $Value)
    {
        
        $this->DataArray[$Key] = $Value;
    }


    /**
     * @function SetValue
     * Get a variable with a value
     *
     * @param DataArray
     */

    public function GetValue($Key)
    {

        echo (isset($this->DataArray[$Key]) ? $this->DataArray[$Key] : null);
    }
}

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$Registry
= Registry::GetInstance();

$Registry->SetValue('test', 'phphulp');        
$Registry->GetValue('test');
?>


Is dit de juiste manier om één register te gebruiken? Ergens anders las ik weer dat een register net zo fout is als het gebruik van globals. En dus moet ik nu in elke methode een nieuw object van het register maken.
 
Ozzie PHP

Ozzie PHP

06/09/2011 20:05:54
Quote Anchor link
(ik zie toevallig een foutje op regel 11: $DataArrayArray moet zijn $DataArray)
 
PHP Scripter

PHP Scripter

06/09/2011 20:08:27
Quote Anchor link
Oops! Heb het aangepast, dank!
 
Pim -

Pim -

07/09/2011 10:25:31
Quote Anchor link
Het is mooier om van je register geen singleton te maken, maar om het als variabele door te geven.
 
PHP Scripter

PHP Scripter

07/09/2011 21:24:20
Quote Anchor link
Pim, zou je daar een klein voorbeeldje van kunnen geven?
 
Fabian M

Fabian M

08/09/2011 07:44:20
Quote Anchor link
Ik zou camelCase gebruiken voor je variablen en functies;

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
$camelCaseVariable = '';
function camelCaseFunction() {



}
 
PHP Scripter

PHP Scripter

08/09/2011 14:03:32
Quote Anchor link
Waarom? Dat is toch puur persoonlijk? Ik heb camelCase nog nooit gebruikt en ik snap ook niet waarom ik dat zou doen? Ik vindt het ook niet mooi staan.

Iemand nog een voorbeeldje voor de tip van Pim? :)
 
PHP Scripter

PHP Scripter

09/09/2011 16:38:26
Quote Anchor link
Schopje.
 
Pim -

Pim -

11/09/2011 21:50:37
Quote Anchor link
Een niet-singleton register:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
// Heel basaal
class Register extends ArrayObject {}

// bootstrap.php
$register['db'] = new Database;
$controller->setRegister($register);

// controller
$this->_register['db']->query();
 
PHP Scripter

PHP Scripter

15/09/2011 17:27:41
Quote Anchor link
Zojuist mijn 'kleine' MVC Framework draaien met Smarty als Template parser, wat werkt dat lekker!

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
<?php
class Controller
{
    public $smarty;
    
    public function __construct()
    {
        
        $this->smarty                   = new Smarty();
        $this->smarty->template_dir     = VIEW_PATH;
        $this->smarty->compile_dir      = VIEW_C_PATH;
        $this->smarty->cache_dir        = CACHE_PATH;
        $this->smarty->config_dir       = CONFIG_PATH;
        
        $this->smarty->cache_lifetime   = 3600;
        $this->smarty->caching          = 1;
    }
}

?>


Wat is eigenlijk een goede plek om Smarty te laden en te configureren binnen het MVC? Heb het nu tijdelijk even in de controller gezet.
Gewijzigd op 15/09/2011 17:28:37 door PHP Scripter
 



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.