Dans mon travail, je suis constamment confronté à la nécessité de créer ou de mettre à niveau des sites. Dans le même temps, les clients se posent souvent des questions sur les raisons pour lesquelles vous recommandez ce CMS particulier, pourquoi des frameworks sont nécessaires, comment déterminez-vous ce qui est nécessaire dans notre cas. Une fois, lorsque j'ai moi-même étudié cette direction de la programmation, j'ai moi-même posé des questions similaires.
Mais, quel que soit leur professionnalisme personnel, presque tous les développeurs Web sont probablement confrontés aux questions que j'ai posées ci-dessus. Pour aider les utilisateurs et collègues qui doivent aussi constamment répondre aux mêmes questions, j'ai décidé d'écrire cet article.
Qu'est-ce qu'un site
Pour comprendre les outils et les solutions logicielles permettant de créer des sites Web, vous devez clairement comprendre ce qu'est un site Web. Wikipedia donne cette définition:
Un site, ou un site Web (à partir du site Web en anglais: web - "web, network" et site - "place", littéralement "place, segment, part of the network"), - une ou plusieurs pages Web liées logiquement; également l'emplacement du contenu du serveur. En règle générale, un site Internet est un tableau de données associées qui ont une adresse unique et sont perçues par l'utilisateur dans son ensemble. Les sites Web sont ainsi nommés parce qu'ils sont accessibles via HTTP.
De mon point de vue, cette option est compétente, mais difficile à percevoir pour les non-programmeurs. J'offre généralement ma propre version de la définition:
Un site est une technologie qui vous permet d'interagir avec des informations via un navigateur Web.
, , , . , .
, - -. , . , , . , , - . , , . , , -, .
, . . ? , , .
- -.
- Frameworks ().
- CMS.
, – . - . , , . , , , , . , , . .
, , , .
-
- – , . , «» – , , . .. , «» – , . , «».
- ( , ):
- PHP;
- Javascript;
- Java;
- Python;
- Ruby;
- C#;
- Go;
- Erlang;
- Elixir;
- C++;
- Rust ..
, . , CMS. , CMS . .
- – .
- – .
, . – , , , .. . , .
, , , . . – « », . - – Frameworks CMS.
Frameworks
, . , . :
- «» , .
- . - . , , .
. -, « », . .
Frameworks – , , , .. .
.. . , , . , , . . – , .
- – .
- – . , , , Frameworks. , , , ..
, :
- , , .
- Framework, .
- .
.. , , PHP, .
. .
(, ) :
- Ruby on Rails
- D01go
- Angular(previously Angular JS)
- ASP.NET
- METEOR
- Laravel
- Express
- Spring
- PLAY
- CodeIgniter
. , , , .
, , «» «». – «Framework», - «». , . – , «», .. , .
, , , – . . , . , .
CMS
-. , , ? CMS.
CMS (Content Management System) – , , .. .
, CMS, . CMS – , .
, – , . , . , , , , .. , ..
, , API, . , (), , .
CMS – , . . , , . , , . . CMS , , .
, CMS . -, , .. , . , , , .
- CMS – .
- CMS – . , . , , CMS, , . .
, CMS : , , , CMS. , , , CMS, - Framework CMS. , , . .. .
, , CMS – , . . CMS , , , .
, CMS , . ( CMS Drupal Symfony), Wordpress , CMS .
CMS( ):
- Drupal
- Wordpress
- Joomla ..
CMS , , . , CMS, , .
.
– – . . . , , .. . , , . , – . .
, , , . , , . , . , , .
CMS , , . , CMS , , . , , , , CMS .
, , , . , , . .. , .
CMS , « » , . , , , .
, , . – -, , CMS . .
Dans le cas de projets complexes, par exemple, avec certaines options non standard pour un compte personnel, avec une utilisation active de l'API, avec l'échange constant d'une grande quantité de données, confiez la solution à des spécialistes. Les programmeurs pourront déterminer quel outil convient à votre cas. Chaque tâche nécessite son propre ensemble d'outils et leurs combinaisons.
Plus le niveau de la solution choisie est bas, plus vous aurez besoin de connaissances. Même si vous coopérez avec des programmeurs, un certain niveau de compréhension des particularités de travailler avec l'outil choisi est nécessaire pour parler le même langage avec eux. Par conséquent, vous ne devez pas utiliser de code propre pour les solutions typiques, c'est difficile, long et coûteux. Mais si votre tâche est non triviale et difficile, vous devrez vous préparer à de telles décisions.