Eigen brouwsel meer standaard maken

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • raymondw
  • Registratie: November 2000
  • Laatst online: 22:44
Sinds 2006 ben ik om de zoveel maanden bezig met 1 projectje wat door een 5 a 10 tal mensen word gebruikt voor een gezamenlijke hobby.
Alle code is geschreven in Kate/Notepad++ in PHP5.x met MYSQL5.x en draait redundant in CentOS/Ubuntu VM's.
94% van de data komt uit de database en is een simpel en goed sorteren en samenvoegen van tabellen, 5% is input vanuit XML en dit komt vanuit de client/OS kant en de overige 1% zijn externe Bing maps.

Sinds afgelopen week heb ik naar mijn idee de belangrijkste componenten echt "af" (voor zover af, af is ;) )

Mijn grootste wens is nu om alles wat meer bom-proof te maken. Aangezien ik met 0.0 kennis van PHP begonnen ben zitten er hier en daar nog wel wat gekke dingen in en is het nog niet erg bestand tegen SQL injections, random deletes, etc.
Dat betekent dat ik alle 322KB aan code opnieuw ga doorlopen met mijn in de afgelopen jaren verworven kennis.

Daar komt dan ook meteen de vraag uit, is het verstandig om de code via een framework achtig iets te gaan standaardiseren?
Of is het dan "beter" om de gewoon je eigen code te fine-tunen, er rekening mee houdend dat er ook nog wat look-n-feel bij komt via CSS/AJAX?

Alvast bedankt voor jullie hersenspinsels ;)

to linux or not ,that's my quest... | 5800X | 32GB 3800C15 | X570-Pro | 980 1TB | 7900XTX | PVoutput | Fiets


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Hangt helemaal af van de tijd en moeite die je erin wil gaan steken, maar die gaat zich wel terugverdienen. Zo niet in een betere applicatie dan wel in opgedane ervaring. Van het vanaf de grond opnieuw schrijven wordt software zelden beter.

Aan de andere kant is het wel een leuke exercitie. Ga in kaart brengen wat de software allemaal doet, en schrijf het geheel opnieuw met bijvoorbeeld Zend Framework. Gaat wel een hoop tijd kosten en in eerste instantie waarschijnlijk meer bugs opleveren dan je nu hebt, maar je leert er wel weer wat bij. :)

[ Voor 8% gewijzigd door CodeCaster op 28-06-2011 10:20 ]

https://oneerlijkewoz.nl
Het ergste moet nog komen / Het leven is een straf / Een uitgestrekte kwelling van de wieg tot aan het graf


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Laatst online: 01:23

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

In ieder geval het lezen waard: Things You Should Never Do, Part I. Een bestaand framework "er in bouwen" kan altijd; of het het waard is is up to you. Misschien is een complete rewrite wél de oplossing (staar je niet blind op Spolsky) maar ook dat is up to you; hou dan alleen Spolsky in je achterhoofd als je die afweging maakt.

Ik schop dit topic even richting SEA en strip even [PHP] eraf; dan kunnen we 't wat minder specifiek maar wel interessanter maken ;)

[ Voor 68% gewijzigd door RobIII op 28-06-2011 10:18 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Boss
  • Registratie: September 1999
  • Laatst online: 20:36

Boss

+1 Overgewaardeerd

Een framework is handig als je herbruikbare componenten op een gestandaardiseerde manier met elkaar wilt laten samenwerken en integreren. Dus als je verwacht dat je de gemaakte componenten ook voor andere projecten gaat gebruiken dan is dat de moeite waard.

Besef je wel dat je versie 1.0 van je nieuwe framework direct weer weg kan gooien omdat je tijdens het ontwikkelen zoveel dingen bent tegengekomen dat je bedenkt dat het allemaal nog beter en mooier kan :-)

The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it is an aesthetic experience much like composing poetry or music.


Acties:
  • 0 Henk 'm!

  • raymondw
  • Registratie: November 2000
  • Laatst online: 22:44
Alvast bedankt voor de feedback ;)
Dat het tijd gaat kosten vind ik niet erg, de huidige omgeving is ook al 5-jaar in ontwikkeling.
Vandaar ook de twee VM's, 1 voor "productie" op Centos en de "test" op basis van Ubuntu.
Zodra ik mijn stukje dev goed genoeg vind gaat het actief via wat scripts die ook backups maken.

Mijn eerste stukken code waren echt ellende, uiteindelijk een goeie username/passwd combinatie kunnen maken met wat gevonden info en wat afkijkwerk uit bv Joomla voor de salted passwords.
Al dat houtje touwtje werk is wel goed om je hoofd te breken over bepaalde oplossingen die uiteindelijk heel simpel blijken te zijn.
Maar het helpt je niet verder met het maken van nette code.

Wat ik nu iig al heb is de dat functies in verschillende losse pagina's zijn opgebroken.
Naar mijn idee zou het dan vrij simpel mogelijk zijn om met een framework aan de gang te gaan en kijken hoe ik uit kom met de eerste functies.
Het doel is niet het herschrijven van de hele zooi, maar meer een vertaling naar een framework om alles meer in een standaard aan te vliegen.

Daarbij hoop ik ook dat het/een framework standaard hooks zou kunnen hebben naar bv AJAX dropdown menu's.
Of een beter doorgave van bepaalde waardes tussen verschillende pagina's.
Of richtlijnen tegen SQL injections

@Boss, je onderschrift geeft wel een btje mijn gevoel weer :*)

to linux or not ,that's my quest... | 5800X | 32GB 3800C15 | X570-Pro | 980 1TB | 7900XTX | PVoutput | Fiets


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Het is leuk om eens gedaan te hebben ja, dat loginverhaal bijvoorbeeld. Dan snap je ook beter wat er op de achtergrond allemaal gebeurt als je de volgende keer gewoon Zend_Auth gebruikt. ;) Triviale code schrijven is niet leuk, in valkuilen stappen waar duizenden anderen je al in zijn voorgegaan is ook niet leuk.

Daarom is het hameren op het gebruiken van frameworks wel nuttig. Dan kun je je tijd besteden aan het schrijven van leuke code, namelijk het stuk wat jouw applicatie uniek maakt. En als je je code een béétje netjes op orde hebt, is het migreren van dat gedeelte naar een framework niet eens zo moeilijk.

https://oneerlijkewoz.nl
Het ergste moet nog komen / Het leven is een straf / Een uitgestrekte kwelling van de wieg tot aan het graf


Acties:
  • 0 Henk 'm!

  • fleppuhstein
  • Registratie: Januari 2002
  • Laatst online: 16-04 21:31
Als je je code gelijk aan elkaar wilt maken, moet je misschien even kijken naar de PEAR extensie/plugin/tool phpcs. Hiermee kan je je code testen op diverse standaarden (Zend,PEAR of Squiz). Met phpDocumentor kan je kijken of je ook een beetje nette documentatie hebt geschreven. Zo zijn er redelijk wat "build" stappen waarmee wij de code "testen" voordat er iets in source control verdwijnt.

Wellicht kan je daarvan wat vinden op google, termen: build, continous integration, jenkins, hudson.

Acties:
  • 0 Henk 'm!

  • lauwsa
  • Registratie: Juli 2010
  • Laatst online: 17-04 17:01
Je hebt trouwens ook software die je php code kan scannen op lekken. Dit zal niet alles vinden maar het kan je er wel bij helpen. Ik bedoel bijvoorbeeld Pixy, maar ik weet niet als deze up to date is.

Acties:
  • 0 Henk 'm!

  • djc
  • Registratie: December 2001
  • Laatst online: 28-07-2022

djc

Gebruik je al een versiebeheer-tool als Subversion, Mercurial of Git? Daar zou ik in ieder geval mee beginnen.

Als ik jou was zou ik in beginsel niet beginnen met een rewrite, maar in plaats daarvan proberen te refactoren. Dat wil zeggen, vind de steeds terugkerende patronen in je codebase en probeer daar goede abstracties voor te vinden. Die abstracties zullen deels dingen zijn die specifiek zijn voor jouw applicatie/code, en deels generiek. De generieke onderdelen kun je vervolgens makkelijk vervangen door externe libraries (dus pas na het refactoren). Op deze manier kun je in veel kleine stappen je codebase helemaal verbeteren zonder dat je op enig moment met een half-af, niet-werkend prototype blijft zitten.

Rustacean


Acties:
  • 0 Henk 'm!

  • raymondw
  • Registratie: November 2000
  • Laatst online: 22:44
Na wat lezen en rondkieken op de verschillende sites heb ik mijn Ubuntu vmmachine van een kloon voorzien en heb er Zend op geïnstalleerd.
De eerste stapjes met de tut op de website gedaan en het ziet er redelijk overzichtelijk uit.

@djc: Het terugvinden van patronen is echt vrij lastig, mijn eerste stapjes waren echt eerste stapjes.
Veel van de gebruikte code is zelfs met mijn beperkte inzicht al gebrekkig.
Het valt mij überhaupt mee dat bepaalde code het doet...
Na 5 jaar de code doorspitten op dat soort dingen is bijna net zoveel werk vermoed ik.

Daarbij komt dat het privé project is waarbij het buiten het gemak voor de kleine groep mensen om ook een leerproces voor mij is :*)

Nu eerst maar eens inlezen en kijken of ik wat van mijn code er in kan krijgen.
Mensen die nog een advies hebben over een goed boek voor Zend?

to linux or not ,that's my quest... | 5800X | 32GB 3800C15 | X570-Pro | 980 1TB | 7900XTX | PVoutput | Fiets


Acties:
  • 0 Henk 'm!

  • iH8
  • Registratie: December 2001
  • Laatst online: 17-06-2024

iH8

raymondw schreef op donderdag 30 juni 2011 @ 12:45:
Mensen die nog een advies hebben over een goed boek voor Zend?
Zend Framework in Action en nog veel meer maar je kunt ook eerst even gratis Survive the deep end lezen.

Aunt bunny is coming to get me!


Acties:
  • 0 Henk 'm!

Anoniem: 42791

CodeCaster schreef op dinsdag 28 juni 2011 @ 12:52:
Het is leuk om eens gedaan te hebben ja, dat loginverhaal bijvoorbeeld. Dan snap je ook beter wat er op de achtergrond allemaal gebeurt als je de volgende keer gewoon Zend_Auth gebruikt. ;) Triviale code schrijven is niet leuk, in valkuilen stappen waar duizenden anderen je al in zijn voorgegaan is ook niet leuk.

Daarom is het hameren op het gebruiken van frameworks wel nuttig. Dan kun je je tijd besteden aan het schrijven van leuke code, namelijk het stuk wat jouw applicatie uniek maakt. En als je je code een béétje netjes op orde hebt, is het migreren van dat gedeelte naar een framework niet eens zo moeilijk.
Maar wel weer erg leerzaam, want dan begrijp je des te beter waarom frameworks vaak een bepaalde manier van werken afdwingen. En je ziet het nut van bepaalde patterns als je het eerst op de foute manier deed.

Ik weet niet hoe de applicatie van de TS er nu uitziet, maar als je vanuit 0 kennis begonnen bent denk ik dat er ruimte voor verbetering is en dat een framework uitproberen een uitstekende manier is om in aanraking te komen met bewezen programmeermethoden. Ik zeg doen.
Pagina: 1