Introduction au développement de Gnome

Le générateur de développement Gnome aide à résoudre les problèmes et à créer des interfaces graphiques en temps réel. Gnome Builder est un écosystème solide que vous voudrez peut-être essayer avant de passer à autre chose. Il donne aux développeurs plus de puissance et de flexibilité. Auparavant, le développement des applications gnome était limité par SUGAR en raison de l'indisponibilité des liaisons python et du manque de maintenance et de packaging.

Étudions beaucoup plus sur le développement de Gnome en détail:

Salut les gars. Donc, aujourd'hui, nous parlerions du tristement célèbre développement Gnome. Donc, si vous êtes nouveau sur python et Linux, ce n'est pas l'endroit idéal pour vous. Vous devez revenir en arrière et effacer quelques notions de base. Mais, si vous êtes un programmeur de base en python et si vous savez au moins comment travailler sur fedora ou ubuntu, ce tutoriel est exactement pour vous.

Les gens qui ont une expérience d'autres langages de programmation, ce blog peut les aider, mais avoir au moins les bonnes bases leur donnera une compréhension claire de la façon dont cela fonctionne. Alors, commençons-nous?

Développement de gnomes

La première chose dont nous aurions besoin est un environnement python stable. Celui que j'utilise et je suggère d'utiliser est Python 2.7. Bien que les gens utilisent de nos jours Python 3.3 ou 3.4, je suggère d'utiliser 2.7, car c'est toujours la version de python la plus utilisée au monde et extrêmement stable et compatible. Pensé que Python 3.4 est compatible, mais il y a certaines choses qui cassent encore python 3.4, ce que nous ne voulons évidemment pas.

La deuxième chose serait un GTK Python approprié. La dernière version stable en date est Python GTK +. Bien qu'avant de continuer, il faut lire le GNOME HIG, qui est les directives de l'interface humaine, sur la façon de concevoir une application Gnome efficace à l'aide de python. Mais encore une fois, si c'était si facile, vous ne seriez pas ici en premier lieu.

Gnome HIG n'est pas aussi facile à comprendre. Ainsi, dans ce blog, je vais essayer de donner la meilleure compréhension possible et de le rendre aussi simple que possible. Mais une fois, vous avez tout compris de ce blog, et quand je dis tout, je le pense. Donc, après avoir terminé ce blog, je vous suggérerais sûrement de lire les directives d'interface humaine GNOME.

Pour commencer, GTK + offre n nombre de possibilités ainsi que des modèles de conception courants pour créer une interface utilisateur efficace. Donc, en supposant que vous savez comment créer et sonner des fichiers python, je continuerai. Démarrer avec les applications gnome dans Windows est extrêmement facile. Donc, comme j'avais une bonne compréhension de la création d'applications GUI python en utilisant pyqt et Tkinter, je pensais qu'il serait facile de développer des applications GUI gnome, mais c'était exactement le contraire.

Le plus difficile a été de commencer. Tous les tutoriels que j'ai vus en apprenant n'étaient qu'une entrée directe dans la manière GUI, mais sans moyen facile pour les débutants. J'étais de plus en plus extrêmement irrité par la façon dont les codes désespérés que j'avais écrits quand j'ai commencé à comprendre l'interface graphique de Gnome. Par conséquent, après une longue recherche, je me suis finalement installé pour PyGTK / GTK + et Glade.

Les deux sont multi-plateformes, donc les travailler, les installer et les compiler n'est pas vraiment un gros problème. Mais, puisque c'est un blog pour les débutants, je n'entrerai pas dans les détails de Glade et d'autres choses. Je suggère d'aller avec un outil Visual Grep qui est très simple. Quand j'apprenais à développer des applications gnome, je ne connaissais pas V-Grep. Mais maintenant, j'ai simplifié cela pour vous. Vous pouvez également utiliser grep à partir d'une ligne de commande. Mais parfois, vous avez juste besoin de quelque chose de simple plutôt que d'être extrêmement génial et compliqué.

Cours recommandés

  • Formation de certification en ligne dans VB.NET
  • Formation de certification en science des données
  • Formation ISTQB
  • Cours professionnel Kali Linux

Je ne peux pas faire plus simple que d'utiliser la citation d'Albert Einstein:

"Si vous ne pouvez pas l'expliquer à un enfant de six ans, vous ne le comprenez pas vous-même."

De toute évidence, la citation est un concept large, mais nous ne sommes pas ici pour parler de la citation, n'est-ce pas?

La prochaine chose que vous devez comprendre est le concept IDE. Vous auriez évidemment besoin d'un IDE approprié. Donc, en tant que débutant, je suggère d'utiliser PyCharm Community Edition. Pycharm est un environnement de développement intégré extrêmement robuste avec une prise en charge complète de la complétion, du refactoring et du débogage des tabulations et du code.

Bien qu'il existe d'autres IDE comme Adjuta et Eclipse, ils peuvent également être utilisés pour la pile de développement GTK + Gnome, mais aucun d'eux n'est aussi fortement axé sur le développement que PyCharm.

GTK3 utilise des liaisons introspectives qui peuvent être problématiques pour certains IDE. Mais Pycharm le gère avec charme en générant un squelette également connu sous le nom de ses modules. Mais dans le cas où ce n'est pas notre choix, vous pouvez toujours utiliser un package appelé faker qui fait la même chose.

Mais si vous essayez d'exécuter une application dans PyCharm à l'aide de faker, elle échouera, la raison étant que les fichiers faker supplantent la véritable application GTK. Mais quand même, c'est un commerce équitable. Vous ne pouvez pas obtenir tout ce que vous voulez sans perdre quelque chose.

Une autre façon serait d'utiliser l'IDE du générateur de développement Gnome. C'est un IDE qui rend la construction de la base Gnome extrêmement simple.

Voici à quoi ressemble le générateur de développement Gnome: Une capture d'écran de mon PC:

Un coup d'œil au générateur de développement Gnome et vous saurez que cela fonctionne extrêmement étroitement avec GNOME3 HIG avec une interface minimale. Même si avec une interface minimaliste, il comprend de nombreuses fonctionnalités qui feront ressembler les applications gnome à Loki devant Hulk. Obtenir le point. Ouais! C'est exactement comme ça.

Et en parlant de PyGTK, qui est également génial, mais pas exactement un type débutant, il contient le projet PyGObject qui est extrêmement intéressant. PyGTk prend également en charge la possibilité de passer de Python à C, ce qui signifie que vous pouvez rapidement créer des prototypes en python, puis simplement le compiler en C pour améliorer les performances.

Les modules qui s'exécutent au-dessus du code principal de PyGObject n'ont pas à se soucier de la prise en charge des API C Python. Il leur suffit de comprendre les concepts de base de GObject Introspection tels que les API d'annotation et de modélisation pour qu'ils soient enveloppables. Cette compréhension de base permet en fait aux développeurs GObject d'écrire des API publiques plus claires en restreignant l'utilisation ou en confinant à des API privées, certains des modèles de code les plus ésotériques que C autorise.

Ceci est important pour comprendre la puissance qu'Introspection apporte aux développeurs d'applications et de modules. Maintenant, si vous voulez fournir un nouveau module Python, vous n'avez pas besoin de comprendre l'API C Python; vous pouvez simplement utiliser vos connaissances GObject pour créer une API accessible à partir de Python ou de tout autre langage avec prise en charge d'Introspection, comme JavaScript. Vala prend même en charge l'Introspection, vous pouvez donc écrire des objets dans Vala et y accéder via Python.

Nous n'avons pas un seul runtime, donc, malheureusement, vous ne pouvez pas mélanger les langages de script, mais la plupart des projets qui utilisent l'introspection seront écrits exclusivement dans un langage de script ou utiliser un langage compilé pour leur base et un langage de script pour rapide le prototypage, en tant que langage de collage ou pour les plugins. Le plus grand défi a été la coordination avec les différentes bibliothèques et applications qui prennent en charge ou sont prises en charge par PyGObject.

L'introspection est très nouvelle et cela s'accompagne de douleurs de croissance. Avant que les développeurs de liaisons puissent travailler dans une bulle, rattrapant tout ce que les développeurs d'API avaient ajouté ou modifié, ils avaient cependant le mieux vu. Cependant, maintenant tout est si hautement intégré que les développeurs de liaisons doivent travailler en étroite collaboration avec les développeurs d'API.

Cela peut causer beaucoup de frustration et un peu de travail supplémentaire pour toutes les personnes impliquées, mais à long terme, une collaboration plus étroite se révélera dans une meilleure expérience pour l'utilisateur final.

Si j'ai appris quelque chose dans GNOME au fil des ans, c'est l'utilisateur final qui compte et l'utilisation d'Introspection aide à progresser vers cet objectif.

En parlant de l'utilisateur final, nous avons mis fin à ce blog. Pour être précis, plus je dis, plus il peut être déroutant de penser à celui à utiliser exactement quand on commence à apprendre. Le générateur de développement Gnome est simple et possède de nombreuses fonctionnalités. Mais Python a un support extrême et je suggérerais d'y aller même si cela peut parfois être un peu compliqué.

Articles recommandés

Voici quelques articles qui vous aideront à obtenir plus de détails sur le développement de Gnome via la programmation Python, alors suivez simplement le lien.

  1. Carrières en Python
  2. Nouvel avenir de Python: vous devriez l'utiliser (le meilleur)
  3. Python ou Go
  4. Fonctionnalités étonnantes de Kali Linux vs Ubuntu
  5. 10 conseils simples mais utiles sur la programmation Python (astuces)