Initiation à la programmation. L'essentiel de la programmation en shell, perl, php et C++

Documents pareils
INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Initiation à la programmation en Python

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

ACTIVITÉ DE PROGRAMMATION

Programmation Web. Madalina Croitoru IUT Montpellier

Évaluation et implémentation des langages

L informatique en BCPST

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Introduction à MATLAB R


Introduction au langage C

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

TP 1. Prise en main du langage Python

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Représentation d un entier en base b

Chapitre I Notions de base et outils de travail

Cours d Algorithmique et de Langage C v 3.0

Annexe : La Programmation Informatique

Architectures web/bases de données

Éléments d'architecture des ordinateurs

1 Introduction C+ + Algorithm e. languag. Algorigramm. machine binaire. 1-1 Chaîne de développement. Séance n 4

Éléments de programmation et introduction à Java

Chapitre 2 Devine mon nombre!

La mémoire. Un ordinateur. L'octet. Le bit

Perl Orienté Objet BioPerl There is more than one way to do it

Introduction à NetCDF

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Conception de circuits numériques et architecture des ordinateurs

Mise en oeuvre d'une base de données mono-utilisateur avec SQLite

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)

Notions fondamentales du langage C# Version 1.0

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions

ASR1 TD7 : Un microprocesseur RISC 16 bits

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Programme awk------introduction rapide

DataStudio. Solution d intégration des données et de diffusion de l information

Python - introduction à la programmation et calcul scientifique

Traduction des Langages : Le Compilateur Micro Java

Hébergement de site web Damien Nouvel

Bernard HAMM, Évelyne LAVOISIER


Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS

Optimisation de logiciels de modélisation sur centre de calcul

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

1. Structure d'un programme FORTRAN 95

1 Description générale de VISFIELD

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Environnements informatiques

Machines Virtuelles. et bazard autour. Rémi Forax

Cours Informatique Master STEP

Le langage C++ est un langage de programmation puissant, polyvalent, on serait presque tenté de dire universel, massivement utilisé dans l'industrie

Cours Programmation Système

MOTEUR DE WORKFLOW Mise en oeuvre d'openwfe Version septembre 2006

Initiation à l algorithmique

INITIATION AU LANGAGE JAVA

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Cours 1 : Qu est-ce que la programmation?

Déroulement. Evaluation. Préambule. Définition. Définition. Algorithmes et structures de données 28/09/2009

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts

Chapitre 1 I:\ Soyez courageux!

1/ Présentation de SQL Server :

Notes du cours 4M056 Programmation en C et C++ Vincent Lemaire et Damien Simon

La dernière base de données de Teradata franchit le cap du big data grâce à sa technologie avancée

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

BACHELOR DEVELOPPEUR WEB

UE C avancé cours 1: introduction et révisions

Formulaire pour envoyer un mail

1 Recherche en table par balayage

Cours 1 : La compilation

Lier Erlang avec d autres langages de programmation

Utilisation d objets : String et ArrayList

Présentation du langage et premières fonctions

Programmes des classes préparatoires aux Grandes Ecoles

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

STAGE IREM 0- Premiers pas en Python

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre Enrica.Duchi@liafa.jussieu.fr

C O M P E T E N C E S

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Stages ISOFT : UNE SOCIETE INNOVANTE. Contact : Mme Lapedra, stage@isoft.fr

Programmation C. Apprendre à développer des programmes simples dans le langage C

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Intégration de Données et Systèmes Décisionnels. Au cœur de la performance

Exonet : sauvegarde automatisée d une base de données

programmation S initier à la la Avec des exemples en C, C++, C#, Java et PHP Avec des exemples en C, C++, C#, Java et PHP Claude Delannoy

Java Licence Professionnelle CISII,

Logiciel Libre Cours 2 Fondements: Programmation

laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007

Manuel d'installation

SUPPORT DE COURS. Langage C

Seance 2: En respectant la méthode de programmation par contrat, implémentez les autres fonctions de jeu.

PostgreSQL. Formations. Catalogue Calendrier... 8

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Le Langage De Description De Données(LDD)

Transcription:

Initiation à la programmation L'essentiel de la programmation en shell, perl, php et C++

Communiquer avec sa machine Les langages de programmation sont d'abord destinés aux humains et non aux machines. Ils permettent d'automatiser des suites d'opérations plus ou moins complexes. Pour être compris par la machine il faut des exécutables qui traduisent le code du programme en une suite d'instructions machine.

Langages de bas niveau Un langage est dit de bas niveau s'il reste proche des instructions directes aux processeurs tel que l'assembleur. Dans ce cas on ne peut exprimer que des instructions simples : Inversion, décalage, recopie de codes binaires. Opérations arithmétiques de base. Opérations sur les chaînes de caractères.

Langages de haut niveau Les opérations les plus complexes telles que la multiplication matricielle où les tests statistiques ne se programment pas directement dans un langage de bas niveau. On préfère programmer des compilateurs ou des interpréteurs de langages plus évolués. Dans un langage de haut niveau, une simple fonction peut impliquer la mise en œuvre de milliers d'instructions de bas niveau.

Et l'on créa le C Le langage C est un compromis entre langages de bas et haut niveau. Il fut imaginé par des ingénieurs pour programmer les premiers systèmes UNIX et été totalement standardisé. Le langage est apparu avec de multiples compilateurs permettant de traduire un programme C en instructions système pour presque tout type de machines.

Compilateurs (bis-repetita) C est un langage compilé, on n'exécute pas directement ces programmes, on applique au préalable un autre programme appelé compilateur qui génère le binaire exécutable. La syntaxe du C est indépendante de la machine utilisée, c'est le compilateur qui est spécifique à la machine et donc le code binaire qu'il génère.

Les langages interprétés On a programmé en C de multiples langages destinés à être interprétés à la volée : shell, awk, perl, php, python, ruby etc. Chaque langage dispose d'une syntaxe normalisée unique et de multiples interpréteurs (un par type de machine) qui portent généralement le nom du langage.

Langages compilés vs interprétés Un langage compilé est généralement plus efficace qu'un langage interprété. La traduction en instructions machine ne se fait qu'une seule fois. Les compilateurs mettent en œuvre des stratégies d'optimisation selon le type de machine.

Langages interprétés vs compilés Beaucoup plus interactifs, on développe très rapidement des prototypes. Souvent de très haut niveau, les programmes sont généralement courts et concis. Le temps d'interprétation est très court comparé au temps d'exécution.

La C familly Shell, tch, bash etc. pour la programmation système. awk et perl pour les flux de données. php pour la programmation Web. python et ruby généralistes conçus pour leur lisibilité. Java (propriété d'oracle) : langage généraliste semi interprété.

Perl Interpréteur programmé en C Syntaxe qui étend celle du shell Conçu pour le «reporting» Très efficace sur tout flux de données : fichiers txt, csv, XML etc. Bases de données Réseau biotechnologie

Perl : les scalaires Un scalaire peut être toute chaîne de caractères sans limite théorique de longueur. Selon le contexte cette chaîne peut être interprété comme un entier ou comme un réel. On parle alors de typage implicite. Par défaut Perl considère que la valeur numérique d'une chaîne de caractères est égale à 0.

Perl syntaxe : les scalaires $ est le déclarateur de scalaiores en Perl comme dans les langages shell. '' est le délimiteur de chaîne de caractères avec caractères spéciaux. Un caractère spécial est introduit avec \ Par exemple \n est le retour à la ligne, \t la tabulation, \\ le caractère échappatoire \. Attention le $ est aussi interprété. ' est le délimiteur de chaînes non interprétées sauf pour la séquence \'.

Perl syntaxe : instructions de base = opérateur d'affectation d'une valeur à une variable <> lecture d'une ligne sur l'entrée par défaut, ligne = chaîne de caractères se terminant par «\n». ; séparateur d'instructions Opérations arithmétiques : +,-,* Concaténation :. print renvoie d'un scalaire sur la sortie par défaut.

Perl : tests et boucles ( ) : délimiteurs du test { } : délimiteurs de blocs d'instructions Prédicats : ==,!=, <,<=,>,>=, eq, ne Connecteurs : &&,,! Instructions : if, elsif, while

Perl : les listes (ou tableaux) (... ) : délimiteurs de liste @ : déclarateur de liste [ ] : opérateurs d'accès à un élément (la numérotation commence à 0) for : parcours d'une liste split : découpe un scalaire en une liste join : concatène une liste en un scalaire Attention : pas d'imbrication de listes

Perl : les tableaux associatifs Il s'agit de listes d'associations => : définition d'une association % : déclarateur de tableau { } : opérateurs d'accès à un élément keys : récupération des clefs d'un tableau