Wat is het verschil tussen een raamwerk, een platform en een technologie?


Beste antwoord

Een platform is een uitgebreide en soort alles-in-één oplossing voor een zeer breed scala aan problemen. Zoals .NET-platform of Windows-platform of verschillende cloudgebaseerde Platform-as-a-service-oplossingen (zoals Heruko). Een platform wordt geleverd met een behoorlijk aantal tools en waarschijnlijk verschillende componenten, die een breed bereik bestrijken (persistentie, beveiliging, gelijktijdigheid enz.). Een platform geeft je bijna alles wat je nodig hebt om je systeem op te bouwen. Een platform wordt geleverd met een voorgeselecteerde reeks technologieën (en paradigmas) keuzes die u geacht wordt te gebruiken. Soms vervangbaar (je kunt bijvoorbeeld een andere database kiezen, helemaal buiten de platformkeuzes voor gegevensopslag) en soms niet (je kunt Linux niet vertellen hoe het bestandssysteem moet worden beheerd). Sommige delen van het platform zijn erg laag en het is onwaarschijnlijk dat je ooit rechtstreeks met ze moet communiceren (zoals planning in Linux Kernel), maar sommige onderdelen zijn van hoog niveau en je communiceert regelmatig met ze (MySQL in de LAMP-platforms). Soms is een platform niets meer dan een bundel niet-gerelateerde maar werk – goed samengestelde technologieën uit verschillende bronnen. Zoals LAMP (Linux, Apache, MySQL en PHP), maar soms produceert een platform zijn eigen versie van technologieën, specifiek ontworpen om goed te presteren met de andere delen van hetzelfde platform, maar niet helemaal goed met andere platforms (.NET). Een platform is een onderliggend ding, een serviceprovider. Dingen draaien bovenop hun platforms.

Een framework gebruikt (gebruikt de functies die worden geboden door) de onderliggende platform (en) om te accommoderen doe het werk. Een raamwerk is een hulpmiddel voor de ontwikkelaars om de verschillende onderdelen van de logica aan elkaar te lijmen. Bijna altijd biedt een framework abstracties over verschillende delen van het onderliggende platform.

Je kunt veel frameworks op een platform draaien of je kunt hetzelfde framework op verschillende platforms draaien. Een PHP-framework (zeg Laravel of Symphony) kan bijvoorbeeld zowel op Windows als Linux (platforms) worden uitgevoerd. Of Spring (Java-framework) vereist een Java-platform dat je op zowel Windows als Linux kunt draaien (hier zijn twee niveaus van platforms bij betrokken).

Soms is het niet duidelijk wat iets tot een platform maakt. In het bovenstaande voorbeeld zouden sommige mensen beweren dat de PHP-omgeving zelf een platform is, dus Symphony (een framework) vereist eigenlijk twee onderliggende platforms: PHP + Windows / Linux. Anderen zouden zeggen dat PHP op zichzelf niet groot genoeg is om een ​​platform te maken, het is slechts een run-time omgeving (zoals Java), maar dezelfde mensen zouden Java een compleet platform noemen.

Ik denk dat ik het nog erger heb gemaakt!

Antwoord

Elke keer dat iemand besluit een website te ontwikkelen, is de eerste technische vraag die moet worden beantwoord welk platform moet worden gebruikt. Framework zal platformspecifiek zijn en er bovenop zitten. Technologie is de combinatie van platform, framework en de serverarchitectuur.

PLATFORM

PHP, JAVA, .NET zijn voorbeelden van platforms of ontwikkelingsplatforms. Dit wordt de kern van webapplicatie. Ontwikkelaars werken op het platform.

FRAMEWORK

Framework is een set van vooraf gedefinieerde functies en klassen die de ontwikkelaar gebruikt voor snellere ontwikkeling. MVC is een soort raamwerk. Populaire voorbeelden in PHP zijn CodeIgniter, CakePHP en Zend Framework. Framework biedt u een reeks tools waarmee u de code sneller en beter kunt schrijven.

TECHNOLOGIE

Technologie is combinatie van Platform, Framework en serverstack als geheel. Dus als iemand vraagt ​​welke technologie is gebruikt voor de website, kan het antwoord zijn Platform is PHP, framework is Zend, frontend is HTML5 en CSS3, gebruikte webserver is Apache, Database is MySQL enzovoort.

Je werkt op een platform. Je gebruikt een raamwerk. Dit is het conceptuele verschil. Er zijn veel antwoorden, ik heb geprobeerd het simpel en webdomeinspecifiek te houden. Ik hoop dat dit helpt!

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *