Blog /Technologie

Construire des sites Web et des applications Web multifonctionnels n'est guère une tâche facile. Nous nous appuyons dans ce processus sur divers langages de programmation et outils.

Nous sommes la plus grande et la mieux connue des entreprises qui se consacre à la création et au soutien de sites web basés sur Drupal en Pologne. Nos domaines d'expertise incluent également Symfony, PHP, ReactJS et le développement front-end. Dans nos efforts, nous utilisons également une variété d'autres solutions logicielles, telles que PHPStorm, Jenkins et Docker.

Nous sommes heureux de partager nos expériences, décrivant le processus de travail sur la construction et le développement de sites web et d'applications chez Droptica. Grâce à SCRUM et aux bons outils tels que Slack et Jira, nous assurons une communication fluide entre l'équipe et le client. Nous améliorons ou changeons systématiquement les logiciels que nous utilisons afin d'automatiser les actions répétitives et d'accélérer le travail de développement.

Vous pouvez en savoir plus sur les tenants et aboutissants de notre travail grâce à nos articles de blog approfondis, ou vous pouvez découvrir quels avantages nous pouvons vous offrir grâce à nos Études de cas.

Il est évidemment nécessaire de rechercher et de tirer parti des outils qui peuvent être utilisés lors de la prestation de services de développement Drupal. Il est temps pour une autre dose d'informations sur notre travail chez Droptica. Aujourd'hui, nous aborderons la gestion des versions de fichiers et les tests d'applications. Subversion Les premiers projets mis en œuvre avec Drupal (encore sous le nom OPENBIT) utilisaient le système Subversion (également connu sous le nom de SVN, site du projet) pour la gestion des versions de fichiers.

Toute personne ayant déjà travaillé dans l'informatique a sûrement rencontré des problèmes de communication entre les programmeurs et les testeurs, ou dans d'autres cas. En parlant avec des programmeurs, vous pouvez entendre de nombreuses anecdotes concernant les rapports de bugs et les retours qu'ils ont reçus. Travaillant comme testeur dans une agence spécialisée en Drupal, je vois ce problème de l'autre côté, mais je comprends l'équipe de développement. Quand je renvoie une tâche après les tests, je me retrouve souvent à vouloir simplement écrire : « Ça ne fonctionne pas ! »

Au cours des dernières années, les sites web ont subi une transformation significative. De nombreux nouveaux services et sites de médias sociaux ont été créés. Les applications mobiles jouent désormais un rôle très important sur Internet, et divers services en ligne échangeant des données ne sont plus une exception.

Le temps s'est déjà écoulé depuis la première de Drupal 8. De nouveaux projets et modules sont constamment publiés, et il y a un nombre croissant de projets compatibles avec la version 8.x sur drupal.org. Malheureusement, ces versions sont souvent encore instables et remplies de divers bugs. À ce jour, le nombre de modules supplémentaires disponibles pour Drupal 8 est d'environ 2 250, contre 12 400 modules pour Drupal 7.

Drupal est un peu célèbre pour le nombre de requêtes de base de données effectuées contre une base de données. Lorsqu'il y a des milliers d'utilisateurs simultanés à servir, la base de données peut rapidement devenir un goulot d'étranglement majeur. C'était le cas avec http://kwestiasmaku.com - un site web très populaire avec des recettes. Le site est visité par des millions d'enthousiastes de la cuisine. Lorsque nous avons commencé notre coopération avec KwestiaSmaku, nous nous sommes d'abord concentrés sur l'ajout de nouvelles fonctionnalités au site web.

Dans le premier article sur les outils que nous utilisons, nous avons décrit nos outils de gestion de projet et de communication. Aujourd'hui, nous allons vous montrer comment nous gérons les environnements de développement. Copie locale Chez Droptica, chaque programmeur travaille sur une copie locale du site web. Chaque tâche est terminée et ajoutée à une branche Git distincte, puis poussée vers un dépôt distant. Notre système de bureau standard est Ubuntu, c'est pourquoi pendant longtemps nous nous sommes contentés d'installer Apache, Mysql et PHP localement.

L'API Entity dans Drupal 8 est désormais intégrée dans le noyau et est maintenant si bien organisée qu'il n'y a presque plus d'excuse pour créer des tables de base de données qui ne sont pas en même temps des entités. Si vous êtes sérieux au sujet du développement Drupal, consultez cet article ci-dessous. Les entités dans Drupal sont vraiment géniales ! Si vous créez une entité, vous obtenez une intégration gratuite avec Views, vous pouvez permettre à l'entité d'être "fieldable" et cela vous permettra d'ajouter divers champs dès le départ.

Lorsque vous utilisez le développement piloté par le code sur des sites basés sur Drupal, il arrive parfois que vous deviez créer un menu ou un élément de menu par programmation dans hook_update_N. Nous utilisons souvent cette approche de développement lorsque, dans le cadre de nos services de support pour Drupal, nous préparons un grand lot de modifications à déployer en une seule fois.

Travailler dans une agence Drupal, c'est faire beaucoup de développement Drupal et se heurter à divers problèmes. Récemment, lors d'une migration vers Drupal, j'ai rencontré un nouveau problème avec la couche d'abstraction de base de données de Drupal.

MG 1202 Blur

Need a team of Drupal and PHP web development experts?