web-dev-qa-db-fra.com

Qu'est-ce qu'un framework Web? Comment se compare-t-il avec LAMP?

J'ai commencé le développement web dans LAMP/WAMP et c'était logique pour moi. Il existe un programme de serveur Web appelé Apache qui fait la partie réseau de la configuration d'un service sur le port 80 (port commun). Si la demande est HTML standard, elle la sert en utilisant HTTP. Et si la demande est une ressource PHP, il y a un mod_php avec lequel Apache invoque l'interpréteur PHP pour traiter le fichier et il rend HTML qui est à nouveau transféré comme d'habitude HTML.

Maintenant, la question est qu'est-ce qu'un Framework Web? Je suis tombé sur Python et il y a Flask. Qu'est-ce qu'un flacon, comment se compare-t-il avec LAMP? De plus, Django/Ruby sont sur Rails différent du flacon?

De plus, LAMP est-il plus lent que ces frameworks communs - la plupart prétendent qu'il est facile de déployer des applications Web en utilisant leur framework?

Quelqu'un peut-il me répondre et aussi donner de bons endroits pour lire à ce sujet? Merci pour vos réponses à l'avance.

47
Nishant

Pour citer Wikipedia:

Un cadre d'application Web est un cadre logiciel conçu pour prendre en charge le développement de sites Web dynamiques, d'applications Web et de services Web. Le cadre vise à alléger les frais généraux associés aux activités courantes effectuées dans le développement Web.

Fondamentalement, un cadre Web vous permet de développer plus facilement votre application. La plupart des sites ont un ensemble commun de fonctionnalités (comme la gestion des sessions, la validation des données, etc.) et un cadre vous empêche de réécrire cela chaque fois que vous créez un site Web.

LAMP (Linux, Apache, MySQL, PHP/Perl/Python) est un package qui contient un serveur Web (Apache). Il s'agit d'un logiciel qui exécute réellement votre application Web. Les frameworks sont, en bref, des bibliothèques qui vous aident à vous développer plus rapidement.

Flask est un microframework, ce qui signifie essentiellement qu'il s'agit d'un framework avec une petite empreinte (et destiné aux petits sites, selon ses documents).

Django & Ruby on Rails sont également des frameworks. Django et Flask sont les deux) frameworks pour Python, mais Rails est un framework pour Ruby.

Je vous suggère de créer des applications sans l'aide de frameworks, puis de passer à l'utilisation de frameworks (qui vous obligent à comprendre des principes tels que Model-View-Controller, ORM, etc.).

46
RabidFire

qu'est-ce qu'un Framework Web?

Un tas de bibliothèques qui effectuent des tâches courantes dans le développement Web conçues pour fonctionner ensemble.

Qu'est-ce qu'un flacon

Un framework web.

comment se compare-t-il avec LAMP

À peu près de la même manière qu'une usine fabriquant des composants pour moteurs automobiles se compare à une route.

En outre, Django/Ruby on Rails différent de flask?

Oui. Rails est écrit dans une langue différente pour commencer.

25
Quentin

Vous semblez un peu confus. Je vous suggère de lire le lien ci-dessous:

Comment choisir la pile technologique parfaite pour votre développement Web?

pour obtenir les bonnes réponses. En attendant, permettez-moi de clarifier vos doutes étape par étape.

Un cadre Web est un cadre logiciel conçu pour prendre en charge le développement de sites Web dynamiques, d'applications Web et de services Web.

Flask est un Python.

LAMP est une pile de développement Web complète. Donc, en comparant flask (un cadre Web) à LAMP (une pile de développement Web) ) n'est tout simplement pas exact. Dans un exemple non technique, imaginez comparer une chaîne de canne à pêche à un kit complet d'équipement de pêche.

Si vous comparez Flash à LAMP, cela ne peut être fait que d'une seule manière. LAMP utilise PHP, et donc cette pile est compatible avec tous les frameworks de PHP. Vous devez donc comparer Flask à divers PHP comme Laravel, Codeigniter, CakePHP, etc.).

Pour plus d'informations sur les frameworks Web et les piles de développement Web, je vous suggère de lire ce blog sur

Les meilleures piles technologiques pour le développement Web

.

2
raju_eww