10 november 2010

frameworks

Ben bezig met een vergelijking van het Thesis theme met andere Themes. En dat allemaal in het kader van frame-work kaders. Eigenlijk ben ik vanmiddag  alleen maar aan het googlen en veel aan het lezen over child-thema's. Dat schijnt de toekomst (voor WordPress) te zijn.

Met wat ik nu weet heeft Thesis een aangepast php-bestand en een css-stylesheet waar je allerlei extra's/wijzigingen t.o.v. van de corebestanden in kunt zetten. DIY (Do It Yourself).Heel gemakkelijk, want alle wijzigingen die je aanbrengt worden in deze bestanden bijgehouden en met een update gaan we gewoon verder. Maar als ik het goed heb, en dat zal vast niet, kun je het aangepast custom php en css-bestand in Thesis eigenlijk al zien als childtheme. Daarnaast heb je ook nog een apart archief-childsjabloon en een childsjabloon-zonder sidebars.


Dat betekent eigenlijk dat ik maar 1 THESIS versie kan maken, dus geen onderscheid kan aanbrengen in de layout van normale pagina's .Ik gebruik dan wel voor www.top-designer.nl een  plugin waarin je per pagina de widgets kan in- en uitschakelen en daarmee ben ik dan wel wat flexibeler, maar  ....
Is dit wellicht het belangrijkste verschil, de sitestrcutuur?

Kan ik met Genesis bijvoorbeeld voor iedere pagina een aparte childtheme maken wat me niet lukt bij Thesis? Is dat soms het verschil in werken? We gaan nog even verder lezen, misschien zit deze a-techneut wel helemaal op de verkeerde weg, maar dan vermeld ik dat ook even hier op dit blog

Voor het aanpassen van Thesis moet je de code kennen (of de Open Hook plugin :-) Bij andere themes schijnt dat gemakkelijker te zijn. Benieuwd hoe het BuddyPress verhaal zich vertaalt naar Thesis.
Remkus (DeFries) raad me het thema Genesis (Proza) aan,


http://www.catswhocode.com/blog/wordpress-how-to-easily-create-a-thematic-child-theme



NLDelphi logo

Apada
StartForumNieuwsArtikelenLinksE mailStatistieken

Frameworks - Deel 1, Theorie

Geplaatst door Baldo op 28-09-03
Erik Stok (aka Baldo)
Enige tijd geleden ontstond er op het NLDelphi forum een discussie over frameworks. Het is er toen zelfs van gekomen dat een aantal enthousiastelingen bij elkaar kwam om eens te kijken naar een framework in de praktijk. Niet iedereen was natuurlijk in de gelegenheid om daar bij te zijn, dus vandaar deze reeks artikelen over frameworks.
Wat is een framework
Er komt een moment in de tijd dat je applicaties aan het programmeren bent dat je denkt: "Dit kan beter, efficiënter, mooier en op een standaard wijze worden geprogrammeerd." Toen voor mij en mijn collega dat moment aanbrak hebben we gezocht naar een richtlijn voor het op een standaard manier implementeren van applicaties. Al gauw struikelden we over de term "framework".
Maar wat is eigenlijk een framework? Helaas is er geen eenduidige definitie voor te vinden, zoals met zoveel zaken in de automatisering. De definitie waar mijn collega en ik ons het meest gelukkig mee voelen is de volgende:
"A framework is a skeleton of non-visual classes and a set of rules, upon which an application is build."
In het Nederlands staat er dus: "Een framework is een skelet van non-visuele classes en een set van regels, waarop een applicatie gebouwd wordt." Maar wat betekent dat eigenlijk?
Een skelet van non-visuele classes wil eigenlijk zeggen dat er een aantal classes een eenheid vormen (het skelet) waar iets mee gedaan kan worden. Het non-visuele zit hem in het feit dat het niet de bedoeling is dat deze classes ook maar iets van de uiteindelijk te bouwen user interface mogen bevatten. Die user interface hoort namelijk thuis in het laatste gedeelte van de definitie: de applicatie die op het framework gebouwd wordt.
Dan is er nog de set regels. Een set regels (of afspraken) is noodzakelijk om de werking van het skelet goed te laten verlopen. Het is namelijk onmogelijk (en niet wenselijk) om een programmeur die met een framework aan de slag gaat in een keurslijf te duwen waarmee de werking van het skelet van classes altijd goed gaat. Regels zijn een noodzaak om de interactie tussen de applicatie en het framework voorspelbaar en onderhoudbaar te maken, zonder dat daarvoor in code iets wordt afgedwongen.
Wat is een framework niet?
Omdat sommige mensen het begrip framework in het verleden uit zijn verband hebben geprobeerd te trekken, noem ik hier ook expliciet wat een framework dus niet is.
Een framework is geen set wizards. Dat er wizards worden gemaakt om programmeurs sneller op weg te helpen met een applicatie die op een framework wordt gebouwd is zonder meer handig, maar de wizards zelf maken geen onderdeel uit van het framework.
Een framework is ook geen set componenten. Het kan natuurlijk zo zijn dat het skelet van non-visuele classes bestaat uit allemaal componenten. Maar een componentenbibliotheek is niet per definitie een framework. Sommigen zeggen dan direct: "Maar de Delphi VCL is toch een framework?" Dat klopt wel, maar alleen omdat de Delphi VCL een skelet vormt en een set regels heeft waarmee gewerkt wordt om er applicaties mee te bouwen. Als er geen interactie tussen de verschillende onderdelen van de Delphi VCL was geweest, en er waren geen regels waarbinnen de componenten gebruikt kunnen worden, dan is de Delphi VCL geen framework te noemen.
Een framework is ook geen applicatiegenerator. Een tool die met een aantal stappen een hele applicatie in elkaar zet is geen framework. Een dynamisch te configureren set classes die afhankelijk van de configuratie een andere applicatie laat zien, is geen framework.
De voordelen van een framework
Met een dergelijke mooie definitie in de broekzak ben je nog steeds nergens als het werken met een framework geen voordelen biedt. Wat zijn de voordelen van het werken met een framework?
Het werken met een framework leidt tot een standaard manier van applicatieontwikkeling. Als er meerdere applicaties op een framework worden gebouwd, zullen die vanwege de interactie met het framework vele overeenkomsten vertonen.
Ook de onderhoudbaarheid van de applicaties verbetert, omdat zaken op een standaard manier zijn opgelost. Het framework helpt vanwege het skelet en de afspraken met het implementeren van zaken op standaard plaatsen in de code. Tevens worden bepaalde standaard zaken nu in het framework geïmplementeerd. Indien in die zaken een fout zit, dan heeft het oplossen ervan natuurlijk effect op alle applicaties die op het framework gebouwd zijn.
Hergebruik van code neemt ook toe door het bouwen van applicaties op een framework. Door in het framework standaardcode op te nemen zal door applicaties die op het framework gebouwd zijn deze code automatisch hergebruikt worden. Algemene problemen kunnen in het framework worden opgelost, waardoor niet het wiel op een aantal plaatsen hoeft te worden uitgevonden en geïmplementeerd.
Het laatste maar zeker niet het minste voordeel van het werken met een framework is dat het leidt tot betere software ontwikkeling in groepen. Door de regels is het beter te voorspellen waar een ander groepslid een bepaalde oplossing geïmplementeerd zal hebben. Tevens wordt de communicatie tussen verschillende onderdelen van de applicatie via het framework geregeld, wat er voor zorgt dat programmeurs impliciete afspraken hebben over hoe met elkaars onderdelen van de applicatie om te gaan.
De kwaliteiten van een goed framework
Allereerst dient een framework eenvoudig te zijn. Een framework met een hoge complexiteit leidt tot geen van de eerder genoemde voordelen. Iedere programmeur moet met het framework overweg kunnen en zaken moeten niet ingewikkelder worden geïmplementeerd dan noodzakelijk.
Een framework moet ook helder zijn. Er moet intuïtief kunnen worden aangevoeld waar welke code moet worden geïmplementeerd. Zaken als naamgeving en een duidelijke structuur van het skelet van non-visuele classes dragen daar aan bij.
Een framework moet ook duidelijke grenzen hebben. Een programmeur moet weten wat het framework nog voor hem doet en wat hij zelf zal moeten bouwen. Ook moet het toepassingsgebied van een framework duidelijk zijn: is het een framework voor webapplicaties, client-server applicaties, multi-tier applicaties of iets anders? Een onbegrensd framework is per definitie onduidelijk in toepasbaarheid, omdat teveel zaken op een algemene manier moeten worden opgelost wat weer zorgt voor minimale helderheid.
Uitbreidbaarheid is ook een belangrijke factor bij een goed framework. Als een framework tekort schiet in standaard functionaliteit, dan moet het voor een programmeur niet ingewikkeld zijn om voor een applicatie het framework uit te breiden met voor die applicatie specifieke classes, die mee kunnen functioneren in de globale werking van het framework. Het is anders slecht mogelijk om implementaties te doen van zaken die niet op basis van het framework kunnen worden opgelost.
Ook moet een framework voldoende mogelijkheden bieden om in te haken op zijn werking. Indien een programmeur niet in de gelegenheid wordt gesteld om op het gedrag van het framework te reageren, dan zal hij proberen om het framework te omzeilen. En dat laatste is niet wenselijk, want de hele reden dat er een framework wordt gewerkt is juist om er gebruik van te maken.
Een applicatie ombouwen naar een framework applicatie
Uitgaande van een bestaande applicatie, wat is dan de beste manier om van deze applicatie een framework applicatie te maken? Het eerste en meest belangrijke is dan natuurlijk het maken van het framework. Alles wat niet in het framework thuishoort is dan automatisch onderdeel van de applicatie die er op gebouwd is.
Richtlijnen om te bepalen welke zaken in het framework terecht dien te komen zijn de volgende:
De flow van een applicatie hoort thuis in een framework. Hiermee bedoel ik de interactie tussen de verschillende applicatie onderdelen. Hoe kom ik van het ene scherm in het andere? Hoe krijg ik bepaalde functionaliteit opgestart? Hoe geeft ik vanuit het de ene functionaliteit geselecteerde informatie door aan het andere? Dat soort zaken.
Management hoort thuis in een framework. Als een functionaliteit wordt opgestart moeten er zaken worden aangemaakt. Als een functionaliteit wordt afgesloten moeten deze zaken weer worden opgeruimd. Dit soort life-cycle management hoort thuis in een framework. Maar denk ook aan het vastleggen en over de applicatie distribueren van gebruikersrechten, globale instellingen enzovoorts.
Grofweg kun je stellen dat zaken die je in verschillende applicaties op dezelfde manier zou willen doen in aanmerking komen om onderdeel uit te maken van je framework.
Een eigen framework bouwen
Natuurlijk zal deze theorie in de praktijk gebracht moeten kunnen worden. Om de keuzes bij het maken van een framework en de voordelen van het werken met een framework duidelijk te maken zal ik daarom een klein framework gaan ontwikkelen: het NLDelphi framework. In de komende artikelen zal ik aan de hand van praktijkvoorbeelden proberen uit te leggen hoe de in dit artikel genoemde theorie op een Delphi framework van toepassing is.

----------------------------------------------------------------------------------------------

Kopen proefschrift? Lees dit voordat je dat doet!

door ISHAN · 68 REACTIES

Twee weken geleden hebben we ons ontwerp. Nu zijn we met behulp van Thesis kader.
Op die post, sommige lezers zei dat ze van plan waren om Thesis kopen. Toen we besloten om Thesis kopen, hebben we een aantal recensies lezen en wat denk je? Geen van hen was helemaal waar!
Vindt u vele artikelen die er zijn het bevorderen van Thesis. Wat denk je? Ze zeggen allemaal,scriptie is groot. Maar niet veel te vertellen de andere kant!

Korte Thesis Review

Proefschrift is een geweldige raamwerk, maar het heeft een aantal kleine foutjes! Periode.

Lange Thesis Review

Ik zal niet verbaasd zijn als je mij vertellen dat u honderden reviews van de Thesis zeggen dat Thesis is awesome gezien. Veel bloggers zijn er met behulp van dit thema, en bijna iedereen is te bevelen.
Dus, wat is groot in Thesis?
  1. Snelheid: Thesis is de snelste WordPress thema uit de doos. De code is schoon en goed geoptimaliseerd. Om de snelheid meer dingen, Thesis caches de miniatuurafbeeldingen.We hebben gemerkt een 33% toename in snelheid na de overstap op Thesis.
  2. SEO: Thesis heeft bijna alle functies SEO inbegrepen. Er is geen noodzaak om gebruik van een plugin apart voor SEO. Proefschrift gebruikt aangepaste velden voor SEO, en als je later over te schakelen naar een ander thema met geïntegreerde opties, kunt u gebruik maken van dezelfde meta data!
  3. Verminderd Plugin Clutter: Thesis heeft veel van de functionaliteit verpakt in, en veel van de functies nodig vermindering van de voor een aparte plugin. SEO, Notities en Google Analytics-code zijn allemaal opgevangen door Thesis.
  4. Aangepaste sjablonen: Out of the box, de Thesis heeft twee aangepaste pagina templates (pagina's zonder sidebars en archieven pagina). Geen zijbalk template is goed voor het maken van landingspagina's, waar u kunt gebruik maken van de boodschap volledige pagina voor je. Het Archief template geeft een maandelijkse post-archief samen met de categorieën lijst. Dit bespaart u van het installeren van een andere plugin.
  5. Back-end: Thesis back-end is een van de beste die ik heb gezien in een WordPress thema. Het is eenvoudig en elegant, en de opties zijn netjes gecategoriseerd. De nieuwste versie heeft ook een aangepaste file editor waarmee je bewerken aangepast custom.css, evenals andere bestanden die je normaal niet kunt bewerken in WordPress editor.
  6. Haken: Thesis maakt veel aanpassen via de haken. Als u weet dat PHP, dan zul je deze.Het zal u minder dan 5 minuten te leren hoe te gebruiken haken. Met behulp van haken, kunt u eenvoudig toevoegen aangepaste code aan ieder onderdeel van het thema.
  7. Ondersteuning: Met Thesis, krijgt u levenslange ondersteuning. Het forum jongens zijn snel, en de meeste problemen worden snel opgelost.
Nu, enkele nadelen die je niet gelezen in een andere review van de Thesis!
  1. Proefschrift is een raamwerk: Thesis is een thema kader. En dat betekent dat hij wordt geleverd met een kind thema gebruikt door 99% van de Thesis blogs. Echt, hoe kan iemand betalen $ 87 en nog veroorloven om anders hetzelfde uitzien als iedereen? Om het thema een andere look, moet je of vaardigheden gebruik maken van uw codering (die helaas, velen van ons niet over!) Of ontwerper in te huren een. (Als u deze weg te gaan, vergeet dan niet om 4 lees #.)
  2. Voor niet-coders, Thesis is een nachtmerrie: Als je niet goed bent met PHP, CSS en HTML, Thesis zal een worden nachtmerrie voor jou! Wilt u weten hoeveel u kunt aanpassen zonder het bewerken van code? Kunt u het aantal sidebars, hun standpunten, homepage lay-out, wijzigen 2 of 3 andere instellingen en dat is het! Zonder codering, kun je niet eens toe te voegen een header. (Zelfs de standaard WP thema kun je dit doen zonder te raken code!)
  3. Proefschrift Vereist een Backlink: Noem het marketing / SEO tactiek of wat dan ook, Thesis persoonlijke licentie vereist dat u een backlink met de "hetzelfde anker" als de licentie zegt. Dus ofwel verwachten meer uit te geven voor de ontwikkelaar optie of verwijzen leren leven met dat!
  4. U nodig hebt om Thesis Onderhoud: Bij elke nieuwe versie, veel opties te wijzigen. Dus, zelfs als u het ontwerp krijgt een aangepaste, verwachten waarschijnlijk contact op met uw ontwerper snel omdat de meeste, de dingen zullen sommige breuk in de volgende release!

Is Thesis voor u?

Laten we naar beneden komen om de meest belangrijke vraag: "Is Thesis voor u?"
Scriptie wordt aanbevolen, indien:
  • Je hebt diepe zakken en kan een ontwerper of een kind thema veroorloven. Kind thema's kan kosten iets van $ 0 tot $ 79!
  • Je bent een ontwerper / programmeur en hebben veel tijd te besteden.
  • Je hebt geen problemen met de de standaard "schone" look van de Thesis.

Geen opmerkingen:

LinkWithin

Related Posts Plugin for WordPress, Blogger...

rubrieken

404-pagina (3) adobe (1) afbeeldingen (3) akismet (2) app (1) apple (3) archief (2) archiefpagina (1) backgrounds (1) backup (4) banner (2) bic (1) bloggen (2) bouw website (5) breadcrumbs (1) browser (1) brushes (1) buitengewoon verlof (2) checklist (1) clickable afbeeldingen (1) codepress (1) communicatie (1) contactform (1) controle website (2) cookies (1) CreArtions (1) creative suite (1) css (2) cursus (7) custom file editor (1) DataCT (2) design (6) designerdigitals (1) digitaal briefpapier (3) DIV (1) domeinnaam (3) drukwerk (8) DVD (2) e-books (1) e-commerce (1) email (2) Email newsletter (1) envato (1) error-pages (1) feedburner (1) feeds (1) Filezilla (1) Flash (2) Flickr (2) fonts (14) footer (4) formulier (1) foto (5) foto's (2) foto's uitwisselen (1) fotocollages (1) frameworks (1) free downloads (1) functies (1) gadget (1) gadget. (1) gebruikers (1) gedachtenspinsels (5) gemeente Harderwijk (1) generators (1) Genesis (8) Gmail google (1) google (6) google analytics (2) google sitemap (1) haken (2) handige tips (19) handige websites (23) header (2) héél makkelijk (1) helpdesk (1) het begin (1) homework (1) hooks (2) hosting (5) htaccess (3) html-code (1) humor (25) i-cloud (1) i-work (1) iban (1) iBooks (1) iconen (1) id (1) ideal (2) iMac (1) inschrijven nieuwsbrief (3) Internet Explorer (2) ipad (1) iphone (2) iPod (1) ipp (1) iTunes (1) joost (1) kaart (1) keynote (1) kleuren (5) kruimelpad (1) landingspagina (1) leesvoer (4) let op (1) lettertypen (4) leuke websites (3) Lifehacking (6) LinkedIn (1) links (2) literatuur (2) logo (6) luchtig leesvoer (18) mac (12) Mad Mimi (1) MailChimp (2) MALVA (7) marketing (1) metatags (3) muziek (2) navigatie (1) nederlands (1) nederlandstalig (2) new release (1) nieuwsbrief (1) Office 2011 (1) ontwerp (8) ontwerp bord (1) ontwerp kadobon (1) ontwerp logo | visitekaartje (8) Op Vlie (9) opdrachten (1) open hook (1) opleveren website (4) origineel (1) os-commerce (1) overzicht (2) permalinks (1) photobewerki (1) photoshop (31) php (1) php code (1) picasa (2) plugin (50) plugin (2013) (1) Plugin WordPress Seo en WP Cache (1) portfolio (15) poster (3) posterino (2) presentaties (2) prezi (1) Pronamic (1) publisher (1) Punchcut (2) redirect (2) responsive design (1) rss (2) SEO (17) sidebars (1) sitemap (1) sitemaps (1) sjabloon (1) snelheid (1) social media (8) software (1) spam (1) spelling (3) spreuk van de dag (3) stockfoto's (1) taal (54) tekstverwerking (1) Theme THESIS (32) themes (8) thesis (3) tip (1) tips (7) tips en trics (36) TITAN (3) titeltag (1) top-design (2) top-designer.nl (6) tuts (2) Twenty Eleven (1) twitter (2) update (1) upgrade (1) video (1) visitekaartjes (3) webdesign (1) webshop (3) website bouwen (15) webteksten (5) webwinkel (3) widgetized (1) widgets (1) wist je dat (2) WOO (2) wooCommerce (1) WordCamp NL (1) wordpress (34) wordpress 3.0 (3) WordPress 3.2 (1) wordpress 3.3 (2) WordPress mediabeheer (1) WordPress mobiel (1) WordPress plugin (23) WordPress tv (1) WordPress Twitter (1) WordPress update (1) wordress 3.3 (1) wp 3.0 (1) WP Page Numbers (1) wp paginanrs. (1) WP plugin (1) wp print (1) you tube (1) zoekbalk (1)