Python

Les fondamentaux du langage

Découvrez un langage de programmation unique par sa philosophie, ses capacités et sa multitude de bibliothèques, le tout en faisant un langage de référence.

Python est un langage de programmation de haut niveau, à typage dynamique, utilisant aussi bien les paradigmes impératif, objet ou fonctionnel. Il est à la fois puissant, simple et lisible. Il est très complémentaire d'un langage comme le langage C ou C++ qui sont les deux langages de références à typage statique. Polyvalent, il est utilisé pour créer des applications de bureau, des scripts système ou réseau, des applications Web ou encore dans l'embarqué.

Formation standard

5 jours, les fondamentaux

Module complémentaires

1 journée par module complémentaire

Jour 1

  • Introduction
    • Typologie des langages
    • Présentation de Python
    • Installation de Python, de modules externes
    • Installation d'un environnement de travail
  • Initiation
    • Délimiteurs
    • Instructions
    • Conditions
    • Itérations
    • Exceptions

Jour 2

  • Algorithmique basique
    • Notion de variable dynamique
    • Variables mutables et non mutables
    • Principaux types de données
      • Chaînes de caractères
      • Nombres (entiers, flottants, complexes)
      • Collections (liste, n-uplet, dictionnaire, ensemble, ...)
      • Booléens, données temporelles, ...
  • Fonctions
    • Les fonctions en Python
    • Introduction aux Callback
    • Utilisation de fonctions via les callback
    • Introduction à la programmation fonctionnelle
    • Compréhensions (de liste, dictionnaire, ...)
    • Générateurs
    • Décorateurs

Jour 3

  • Programmation objet
    • Présentation du paradigme objet selon Python
    • Paradigme objet déclaratif
    • Paradigme objet par prototype
    • Notion d'héritage et héritage multiple
  • Notions avancées
    • Propriétés
    • Emplacements
    • Interfaces et classes abstraites
    • Métaclasses
    • Patrons de conception principaux
      • Création
      • Structure
      • Comportement
      • Présentation de la ZCA

Jour 4

  • Algorithmique avancée
    • Cas complexe d'itération
    • Choisir les bons types de données
    • Problèmes usuels d'algorithmique complexe
    • Utilisation avancée de la combinatoire
    • Nouveaux types de données
    • Exceptions
    • Travaux pratiques avancés

Jour 5

  • Manipulation de données
    • Lecture / écriture d'un fichier CSV
    • Accès à une base de données relationnelle
      • MySQL
      • PostgreSQL
      • SQLite
    • XML
      • validation (DTD, XSL, RNG, SCH)
      • parcours (SAX & DOM, ElementTree)
    • Utilisation d'un annuaire LDAP
    • Génération d'un document PDF
    • Génération d'un document OpenDocument

Informations générales

  • Machines virtuelles fournies
  • 50% présentation, 50% exercices
  • Tarifs, nous consulter.

Écrire une application console

  • Utiliser un parseur d'arguments
  • Entrée standard, sortie standard et sortie d'erreur
  • Écrire des fichiers de log
  • Utilisation de Curse

Programmation système

  • Lecture, écriture de fichiers
  • Gestion des fichiers et dossiers
  • Gestion des utilisateurs, groupes et droits
  • Appels système
  • Alternatives aux commandes bash usuelles
  • Accès au hardware

Programmation réseau

  • Introduction au réseau
  • Écriture d'un serveur et d'un client TCP, bas niveau
  • Écriture d'un serveur et d'un client UDP, bas niveau
  • Écriture d'un serveur et d'un client TCP, haut niveau
  • Écriture d'un serveur et d'un client UDP, haut niveau

Utilisation d'un ORM

  • Introduction à SQL (SQLite, MySQL, PostgreSQL)
  • Lecture de données
  • Session et écriture de données
  • Modélisation de données
  • Types de données usuels
  • Relations un à un
  • Relations un à plusieurs
  • Relations plusieurs à plusieurs
  • Synonymes
  • Requêtes simples, avec jointures
  • Stratégies de chargement

Programmation Web Pyramid

  • Mise en place d'un environnement isolé
  • Création du projet
    • présentation des outils disponibles
    • détails du fichier de configuration
    • gestion des dépendances
  • Bases
    • création d'un modèle
    • création d'une vue
    • création d'un contrôleur
  • Mise en place des éléments nécessaire:
    • session
    • politique de sécurité
    • utilisateurs, groupes, permissions
    • authentification, déconnexion
  • Plus loin aves les modèles
    • Rendre modulaire
  • Plus loin avec les contrôleurs
    • méthodes, sécurité
    • webservices
  • Plus loin avec les vues
    • Utilisation d'un template général
  • Autres outils
    • Datatable
    • Envoi de courriels

Écrire une application graphique

  • Introduction à Gtk et Glade, tutoriels
  • Présentation des composants principaux
    • Présentation, labels, ...
    • Champs texte, numériques, ...
    • Zone de texte, tableau, arbres, ...
  • Création de composants graphiques personnalisés
    • Fabrique, Proxies, Singletons, ...
  • Écriture d'un greffon pour Gedit

Programmation parallèle

  • Présentation des tâches et processus
  • Utilisation de tâches
  • Utilisation de processus
  • Sémaphores, ressources partagées, ...
  • Interface de haut niveau
  • Algorithmique et programmation parallèle

OpenERP

Le meilleur ERP libre

OpenERP est un  progiciel de gestion intégré ( PGI ou  ERPlibre et  gratuit. Il permet d'assurer la gestion de la comptabilité client et fournisseur, de gérer les stocks, les devis, bons de commandes et factures, mais il permet également la gestion de projet, le suivi de pistes et opportunités (CRM), des clients,...

Il s'agit donc d'un outil particulièrement complet. Sur le plan technique, la formation se déroule sur la  version 7 du logiciel, qui propose une  interface web. Le logiciel est donc facile à déployer, puisqu'il suffit de disposer d'un simple navigateur Web pour en apprécier toutes ses qualités.

La  formation fonctionnelle vous permettra d'apprendre à configurer et paramétrer l'outil pour l'adapter à vos processus d'entreprise, à générer les accés pour le personnel et à leur donner les droits adaptés à leur rôle dans l'entreprise. Vous apprendrez également à personnaliser les formulaires de saisie ou les processus métier en utilisant les outils disponibles dans l'interface Web.

La  formation technique vous permettra d'avoir les bases pour écrire un nouveau module en l'intégant aux modules de base (client, facture, ...). Vous apprendrez aussi à personnaliser les divers documents, comme les factures, par exemple.

Formation fonctionnelle

5 jours, maîtriser l'utilisation de l'outil

Formation technique

5 jours, développer un module

Installation

  • A partir des dépôts
  • A partir d'une archive
  • Depuis les sources
  • A l'aide d'un automate

Paramétrage

  • Créer une nouvelle base de données
  • Installer les modules souhaités
  • Initialisation
    • Créer la société
    • Déclarer les employés
    • Déclarer les utilisateurs
    • Gérer les droits
  • Personnaliser les documents générés
    • Factures
    • Devis
  • Importation de données
    • Clients
    • Pistes
    • Produits (+ catégories et variantes)

Découverte des modules

  • Gestion des produits et services
    • Catégories et variantes
    • Coûts de processus de fabrications
    • Gestion du stock, inventaires et des approvisionnements
  • Gestion de la facturation client et fournisseur
    • Créer un client et/ou un fournisseur
    • Personnes morales / Personnes physiques
    • Workflow devis, commande, facture
    • Gestion des conditions de paiement
  • Gestion du portefeuille client
    • Déclaration d'une piste
    • Suivi des opportunités
    • Gestion des appels, courriels, contacts
  • Gestion de projet
    • Déclaration des projets
    • Mur de tâches
    • Diagramme Gantt
  • Gestion du support client
    • Gestion des tickets

Personnalisation de l'application

  • Modification d'interfaces
    • A l'aide de l'interface graphique
    • sans toucher au code coté serveur
  • Modification de workflows
    • Dessinez le nouveau workflow !

Installation

  • A partir des dépôts
  • A partir d'une archive
  • Depuis les sources
  • A l'aide d'un automate

Cursus basique

  • Mise en place d'un exemple simple
    • Présentation des modèles
    • Présentation de contrôleurs
    • Présentation des vues
  • Présentation complète du modèle
    • Présentation des types de données standard
    • Présentation des types associatifs
    • Présentation des types fonctions/related
    • Présentation des 3 types d'héritage
    • Personnalisation d'un type de données
  • ​Présentation complète des contrôleurs
    • Lier un contrôleur à une action
    • Lier un contrôleur à un événement
    • Revue des méthodes de l'ORM
    • Problématiques de performance
    • Utilisation de procédures SQL
  • Présentation complète des vues
    • Utilisation / déclaration de champs
    • Afficher / masquer des champs
    • Contenu statique; boutons, conditions
    • Les deux types principaux de vues
    • Les formulaire de recherche
  • Gestion de la sécurité

Cursus avancé

  • Workflow
    • Statiques
    • Dynamiques
  • Vues Kanban
    • Statiques
    • Dynamiques
  • Autres vues
    • Calendrier
    • Graphiques
    • Gantt
    • Tableau de bord
  • Chatter

QWeb

  • Présentation du langage QWeb
  • Exemple concret d'utilisation du langage

OpenERP est un outil utilisé par des entreprises de taille moyenne à grande, partout dans le monde. Il permet de couvrir l'ensemble des besoins usuels d'une entreprise et est au coeur du métier de nombreux intégrateurs, dont nous faisons partie.

Sa principale force réside dans le choix des technologies utilisés, dans la force du réseau d'intégrateurs, et plus largement dans la communauté qui aujourd'hui, permet d'assurer un haut niveau de service et de disposer d'outils toujours plus performants.

OpenERP v8 - CMS + e-Commerce + POS

A venir : OpenERP V8, les nouveaux outils

OpenERP est aujourd'hui en train de subir une évolution fonctionnelle majeure. La version 7 est aujourd'hui un outil de back-office particulièrement adapté et plébiscité. La V8 apporte un front-office totalement couplé avec le back-office existant via deux ajouts majeurs : un CMS et une boutique en ligne.

L'utilisation d'une bibliothèque qui fonctionne coté client permet la création très rapide de pages web et permet de créer très rapidement un site de présentation, voire un blog (outil qui aujourd'hui s'avère un complément indispensable pour faire vivre un site et améliorer son référencement).
La boutique en ligne offre le grand avantage d'être totalement connectée au back-office, à la gestion de la facturation et des stocks. Elle peut ainsi venir se greffer au système d'information gérant un magasin, par exemple.
La V8 apporte aussi le POS, qui permet de gérer la caisse d'un magasin. Elle apporte également de nouveaux modules ou des améliorations notables de module existants, comme pour la logistique par exemple.

Tenez-vous au courant de la sortie de la formation

En utilisant notre formulaire de contact