Introduction à AWT. Programmation Orientée Objet. Conteneurs. Composants

Dimension: px
Commencer à balayer dès la page:

Download "Introduction à AWT. Programmation Orientée Objet. Conteneurs. Composants"

Transcription

1 Introduction à AWT Programmation Orientée Objet Bertrand Estellon Abstract Window Toolkit (AWT) = bibliothèque graphique Java ; AWT a été introduite dès les premières versions de Java ; AWT sert de fondement à Swing Swing = bibliothèque de gestion de fenêtre de JAVA. Département Informatique et Interactions Aix-Marseille Université 24 novembre 2014 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Composants Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Conteneurs Une interface graphique est construite à partir de composants ; Un Composant est un élément visible ; Un Composant étend la classe abstraite Component. Les composants de AWT : Button TextComponent TextArea Canvas TextField Checkbox List Choice Label Scrollbar Container Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Un conteneur est un composant ; Un conteneur peut contenir plusieurs composants ; Un conteneur étend la classe Container. Les principaux conteneurs de AWT : Panel Applet Window Dialog FileDialog JDialog (Swing) Frame JFrame (Swing) JWindow (Swing) JComponent (Swing) Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

2 Exemple Exemple frame.setpreferredsize(new Dimension(200,200)); Panel panel = new Panel(); panel.add(new Button("Un bouton")); panel.add(new Checkbox("Truc", false)); Choice choice = new Choice(); choice.add("choix 1"); choice.add("choix 2"); panel.add(choice); panel.add(new Label("label")); List list = new List(); list.add("choix 1"); list.add("choix 2"); panel.add(list); panel.add(new TextField("Truc")); TextArea textarea = new TextArea("Truc\nTruc"); textarea.setcolumns(10); textarea.setrows(3); panel.add(textarea); frame.add(panel); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Gestionnaires de présentation Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Gestionnaires de présentation Un gestionnaire de présentation implémente LayoutManager ; Chaque conteneur a un gestionnaire de présentation ; Gère la position et la taille des composants présents dans le conteneur. Les principaux gestionnaires de présentation de AWT : BorderLayout BoxLayout CardLayout FlowLayout GridBagLayout GridLayout... Chaque conteneur a un gestionnaire de présentation par défaut : Panel FlowLayout Window BorderLayout Il est possible de changer le gestionnaire de présentation d un conteneur en utilisant la méthode setlayout de la classe Container. Panel panel = new Panel(); panel.setlayout(new GridLayout(2,2)); panel.add(new Button("b1")); panel.add(new Button("b2")); panel.add(new Button("b3")); panel.add(new Button("b4")); frame.add(panel); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

3 Gestionnaires de présentation (BorderLayout) Panel panel = new Panel(); panel.setlayout(new BorderLayout()); panel.add(new Button("N"), BorderLayout.NORTH); panel.add(new Button("S"), BorderLayout.SOUTH); panel.add(new Button("C"), BorderLayout.CENTER); panel.add(new Button("W"), BorderLayout.WEST); panel.add(new Button("E"), BorderLayout.EAST); frame.add(panel); Gestionnaires de présentation (FlowLayout) Panel panel = new Panel(); //panel.setlayout(new FlowLayout()); panel.add(new Button("b1")); panel.add(new Button("b2")); panel.add(new Button("b3")); panel.add(new Button("b4")); frame.add(panel); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Gestionnaires de présentation (Composition) Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Sans gestionnaire de présentation Panel panel = new Panel(); panel.setlayout(new BorderLayout()); panel.add(new Label("North"), BorderLayout.NORTH); panel.add(new Label("South"), BorderLayout.SOUTH); Panel panelcenter = new Panel(); panelcenter.setlayout(new GridLayout(2,2)); for (int i = 0 ; i < 4 ; i++) panelcenter.add(new Button("B"+i)); panel.add(panelcenter, BorderLayout.CENTER); frame.add(panel); Panel pane = new Panel(); pane.setlayout(null); Button button1 = new Button("B1"); Button button2 = new Button("B2"); Button button3 = new Button("B3"); pane.add(button1); pane.add(button2); pane.add(button3); button1.setbounds(5, 5, 50, 50); button2.setbounds(60, 30, 50, 50); button3.setbounds(115, 60, 50, 50); frame.setpreferredsize(new Dimension(185,150)); frame.add(pane); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

4 Évènements Évènements Exemple : Un évènement a lieu quand l utilisateur agit sur l interface graphique (clic de souris, bouton pressé, sélection dans une liste,...) ; Un évènement est une instance d une classe qui étend AWTEvent ; Les évènements sont émis par les composants ; Les composants transmettent les évènements à des observateurs ; Un observateur implémente une extension de EventListener ; Les méthodes de l interface permettent de recevoir les évènements ; Les méthodes add*listener d un composant permettent d abonner un observateur aux évènements émis par ce composant. public class MyActionListener implements ActionListener { public void actionperformed(actionevent e) { System.out.println("Clic!!"); Button button = new Button("B"); button.addactionlistener(new MyActionListener()); panel.add(button); Remarque : ActionListener est une extension de l interface EventListener ActionEvent est une extension de l interface AWTEvent Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Évènements Source public class MyActionListener implements ActionListener { public void actionperformed(actionevent event) { System.out.println(event.getSource() /* Soit b1, soit b2 */); ActionListener listener = new new MyActionListener(); Button b1 = new Button("B1"); b1.addactionlistener(listener); panel.add(b1); Button b2 = new Button("B2"); b2.addactionlistener(listener); Exemple de sortie : java.awt.button[button0,39,5,29x23,label=b2] java.awt.button[button1,5,5,29x23,label=b1] java.awt.button[button0,39,5,29x23,label=b2] java.awt.button[button1,5,5,29x23,label=b1] Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Évènements Souris public interface MouseListener extends EventListener { public void mouseclicked(mouseevent e); public void mousepressed(mouseevent e); public void mousereleased(mouseevent e); public void mouseentered(mouseevent e); public void mouseexited(mouseevent e); public interface MouseMotionListener extends EventListener { public void mousedragged(mouseevent e); public void mousemoved(mouseevent e); public interface MouseWheelListener extends EventListener { public void mousewheelmoved(mousewheelevent e); Les évènements souris sont observables sur tous les composants. Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

5 Évènements Souris Implémentation de l interface MouseListener : public class SimpleMouseListener implements MouseListener { public void mouseclicked(mouseevent event) { System.out.println(event.getX()+" "+event.gety()); public void mousepressed(mouseevent e) { public void mousereleased(mouseevent e) { public void mouseentered(mouseevent e) { public void mouseexited(mouseevent e) { Évènements Clavier public interface KeyListener extends EventListener { public void keytyped(keyevent e); public void keypressed(keyevent e); public void keyreleased(keyevent e); Exemple d implémentation : public class SimpleKeyListener implements KeyListener { public void keytyped(keyevent e) { Abonnement de l observateur au composant : frame.addmouselistener(new SimpleMouseListener()); public void keypressed(keyevent e) { System.out.println(e.getKeyChar()); public void keyreleased(keyevent e) { Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Évènements Fenêtre public interface WindowListener extends EventListener { public void windowopened(windowevent e); public void windowclosing(windowevent e); public void windowclosed(windowevent e); public void windowiconified(windowevent e); public void windowdeiconified(windowevent e); public void windowactivated(windowevent e); public void windowdeactivated(windowevent e); public interface WindowStateListener extends EventListener { public void windowstatechanged(windowevent e); public interface WindowFocusListener extends EventListener { public void windowgainedfocus(windowevent e); public void windowlostfocus(windowevent e); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Évènements Adapteurs Un adapteur est une classe qui implémente un observateur en associant un corps vide à chacune des méthodes. public class SimpleWindowListener implements WindowListener { public void windowopened(windowevent e) { public void windowclosing(windowevent e) { System.exit(0); public void windowclosed(windowevent e) { public void windowiconified(windowevent e) { public void windowdeiconified(windowevent e) { public void windowactivated(windowevent e) { public void windowdeactivated(windowevent e) { est équivalent à public class SimpleWindowListener extends WindowAdapter { public void windowclosing(windowevent e) { System.exit(0); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

6 Évènements Adapteurs et classes anonymes Exemple Calculette public class Calculator extends Frame { Extension d un adapteur en classe anonyme : frame.addwindowlistener(new WindowAdapter() { public void windowclosing(windowevent e) { System.exit(0); ); private TextField text1, text2 ; private Label result ; public Calculator() { setpreferredsize(new Dimension(200, 80)); Panel panel = new Panel(); text1 = new TextField(5); text2 = new TextField(5); result = new Label("0"); Button buttonadd = new Button("Add"); buttonadd.addactionlistener(new BoutonListener()); panel.add(text1); panel.add(text2); panel.add(result); panel.add(buttonadd); add(panel); pack(); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Exemple Calculette Suite de la classe Calculette : public class calculator extends Frame { private TextField text1, text2 ; private Label result ;... private class BoutonListener implements ActionListener { public void actionperformed(actionevent e) { int value1 = Integer.parseInt(text1.getText()); int value2 = Integer.parseInt(text2.getText()); result.settext(""+(value1+value2)); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Exemple Calculette La méthode main : public static void main(string[] args) { Calculator calculator = new Calculator(); calculator.setvisible(true); calculator.addwindowlistener(new WindowAdapter() { public void windowclosing(windowevent e) { System.exit(0); ); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

7 Exemple Calculette en Java 8 public class Calculator extends Frame { private TextField text1, text2 ; private Label result ; public Calculator() { /*... */ buttonadd.addactionlistener(this ::computesum); /*... */ private void computesum(actionevent e) { int value1 = Integer.parseInt(text1.getText()); int value2 = Integer.parseInt(text2.getText()); result.settext(""+(value1+value2)); Création de son composant Il suffit d étendre la classe Component : public class MyComponent extends Component { public MyComponent() { setpreferredsize(new Dimension(200,200)); public void paint(graphics g) { Dimension size = getsize(); g.setcolor(color.white); g.filloval(0, 0, size.width, size.height); g.setcolor(color.blue); g.drawline(0, size.height/2, size.width, size.height/2); g.drawline(size.width/2, 0, size.width/2, size.height); g.setcolor(color.red); g.drawoval(0, 0, size.width, size.height); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Création de son composant frame.add(new MyComponent()); frame.addwindowlistener(new WindowAdapter() { public void windowclosing(windowevent e) { System.exit(0); ); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Création de son composant Changement de la couleur du disque quand on clique sur le composant : public class MyComponent extends Component { private Color color = Color.white ; public MyComponent() { setpreferredsize(new Dimension(200,200)); addmouselistener(new MyMouseAdapter()); public void paint(graphics g) { g.setcolor(color); g.filloval(0, 0, size.width, size.height); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

8 Création de son composant Changement de la couleur du disque quand on clique sur le composant : public class MyComponent extends Component { private Color color = Color.white ;... private class MyMouseAdapter extends MouseAdapter { public void mouseclicked(mouseevent e) { if (color == Color.white) color = Color.gray ; else color = Color.white ; repaint(); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Relations entre Swing et AWT Swing Swing est plus riche en composants que AWT Swing propose des composants plus jolis (look and feel) Swing respecte l architecture Modèle-Vue-Contrôleur (MVC). Exemple d utilisation de Swing : public class HelloWorld { public static void main(string[] args) { JFrame frame = new JFrame("Hello World!"); frame.setdefaultcloseoperation(jframe.dispose_on_close); JLabel label = new JLabel("Hello, World!"); frame.getcontentpane().add(label); frame.setlocationrelativeto(null); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Les composants de Swing Éléments de base : JButton, JCheckBox, JComboBox, JMenu, JList, JRadioButton, JSlider, JSpinner, JTextField, JPasswordField, JColorChooser, JEditorPane, JTextPane, JFileChooser, JTable, JTextArea, JTree, JLabel, JProgressBar, JSeparator, JToolTip... Conteneurs de haut niveau : JApplet, JDialog, JFrame... Conteneurs : JPanel, JScrollPane, JSplitPane, JToolBar, JTabbedPane, JInternalFrame, JLayeredPane... Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

9 Look and feel Look and feel Au début du programme : GTKLookAndFeel try { UIManager.setLookAndFeel( "com.sun.java.swing.plaf.gtk.gtklookandfeel"); catch (Exception e) { System.out.println("Error setting LookAndFeel: " + e); MotifLookAndFeel WindowsLookAndFeel Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Création de son composant Swing Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Remarques sur Swing public class MySwingComponent extends JPanel { public MyComponentSwing() { setpreferredsize(new Dimension(200,200)); public void paintcomponent(graphics g) { super.paintcomponent(g); Dimension size = getsize(); g.setcolor(color.white); g.filloval(0, 0, size.width, size.height); g.setcolor(color.blue); g.drawline(0, size.height/2, size.width, size.height/2); g.drawline(size.width/2, 0, size.width/2, size.height); g.setcolor(color.red); g.drawoval(0, 0, size.width, size.height); paint appelle paintcomponent, paintborder, paintchildren Redéfinir paintcomponent pour changer l affichage d un composant Pour redessiner le composant, appeler repaint (pas paint) Dans paintcomponent, commencer par super.paintcomponent(g) Ne pas mélanger des composants de Swing et de AWT Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

10 JavaFX Depuis 2014, Oracle a abandonné le developpement de Swing : public class HelloWorld extends Application public void start(stage primarystage) { Button button = new Button(); button.settext("say 'Hello World'"); button.setonaction(event->system.out.println("hello World!")); StackPane root = new StackPane(); root.getchildren().add(button); Scene scene = new Scene(root, 300, 250); primarystage.settitle("hello World!"); primarystage.setscene(scene); primarystage.show(); public static void main(string[] args) { launch(args); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 JavaFX JavaFX Depuis 2014, Oracle a abandonné le developpement de Swing au profit de JavaFX : public class HelloWorld extends Application public void start(stage primarystage) { Button button = new Button(); button.settext("say 'Hello World'"); button.setonaction(event->system.out.println("hello World!")); StackPane root = new StackPane(); root.getchildren().add(button); Scene scene = new Scene(root, 300, 250); primarystage.settitle("hello World!"); primarystage.setscene(scene); primarystage.show(); public static void main(string[] args) { launch(args); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 JavaFX JavaFX permet de séparer la présentation du comportement : public class HelloWorld extends Application public void start(stage primarystage) throws Exception { Parent root = FXMLLoader.load( getclass().getresource("helloworld.fxml")); Scene scene = new Scene(root, 300, 275); primarystage.settitle("fxml Welcome"); primarystage.setscene(scene); primarystage.show(); public static void main(string[] args) { launch(args); JavaFX permet de séparer la présentation du comportement : <?xml version="1.0" encoding="utf-8"?> <?import java.lang.*?> <?import java.util.*?> <?import javafx.scene.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> <StackPane xmlns:fx=" fx:controller="helloworld.helloworldcontroller" > <Button text="say 'Hello World'" onaction="#handlehelloworldaction"/> </StackPane> Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

11 JavaFX JavaFX Calculette JavaFX permet de séparer la présentation du comportement : public class HelloWorldController protected void handlehelloworldaction(actionevent event) { System.out.println("Hello World!"); <VBox xmlns:fx=" fx:controller="calculator.calculatorcontroller" > <HBox> <TextField fx:id="numberfield1" /> <TextField fx:id="numberfield2" /> </HBox> <HBox> <Button text="+" onaction="#dosum"/> <Button text="*" onaction="#doproduct"/> </HBox> <HBox> <Label text="résultat : "/> <Label fx:id="resultlabel" /> </HBox> </VBox> Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 JavaFX Calculette public class CalculatorController TextField numberfield1 TextField numberfield2 Label resultlabel ; private int getvalue1() { return Integer.valueOf(numberField1.getText()); private int getvalue2() { return Integer.valueOf(numberField2.getText()); private void setresult(int result) { resultlabel.settext(string.valueof(result)); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 JavaFX Calculette public class CalculatorController { /*... protected void dosum(actionevent event) { protected void doproduct(actionevent event) { setresult(getvalue1()*getvalue2()); /*... */ Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

12 Possibilité d ajouter des items : Possibilité de cocher des items et de nettoyer la liste : Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 public class Item { public boolean checked ; public String text ; public Item(String text) { this.checked = false ; this.text = text ; <VBox xmlns:fx=" fx:controller="list2.todolistcontroller" > <ListView fx:id="todolist" VBox.vgrow="always" /> <HBox VBox.vgrow="always"> <TextField fx:id="textfield" HBox.hgrow="always" /> <Button onaction="#additem" text="ajouter" HBox.hgrow="always" /> <Button onaction="#clearitems" text="nettoyer" HBox.hgrow="always" /> </HBox> </VBox> Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

13 public class TodoListController implements Initializable public ListView<Item> todolist public TextField textfield ; private List<Item> list public void initialize(url location, ResourceBundle resources) { list = todolist.getitems(); todolist.setcellfactory(l -> new ListCell()); /*... */ <HBox xmlns:fx=" fx:controller="list2.listcellcontroller" > <CheckBox fx:id="checkbox" onaction="#oncheck" /> <Label fx:id="label" HBox.hgrow="always" /> </HBox> Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 public class ListCell extends javafx.scene.control.listcell<item> { private Node node ; private ListCellController controller ; public ListCell() { try { FXMLLoader loader = new FXMLLoader(getClass().getResource("ListCell.fxml")); node = loader.load(); controller = loader.getcontroller(); catch (IOException e) { throw new RuntimeException(e); /*... */ public class ListCell extends javafx.scene.control.listcell<item> { private Node node ; private ListCellController controller ; /*... public void updateitem(item item, boolean empty) { super.updateitem(item, empty); if (isempty()) { setgraphic(null); return ; setgraphic(node); controller.setitem(item); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53 Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

14 public class ListCellController public Label label public CheckBox checkbox ; private Item item protected void oncheck(actionevent event) { item.checked = checkbox.isselected(); public void setitem(item item) { this.item = item ; label.settext(item.text); checkbox.setselected(item.checked); Bertrand Estellon (DII AMU) Programmation Orientée Objet 24 novembre / 53

Programmation Orientée Objet

Programmation Orientée Objet Programmation Orientée Objet Bertrand Estellon Département d Informatique de Luminy Aix-Marseille Université 29 mai 2012 Bertrand Estellon (DIL Aix-Marseille) Programmation Orientée Objet 29 mai 2012 1

Plus en détail

Interfaces graphiques avec l API Swing

Interfaces graphiques avec l API Swing Interfaces graphiques avec l API Swing Les Swing Les classes graphiques Swing dérivent de la classe JComponent, qui hérite ellemême de la classe AWT (Abstract Window Toolkit). Tous les composants Swing

Plus en détail

Le langage JAVA G. Baulieu Institut de Physique Nucléaire de Lyon Septembre 2009

Le langage JAVA G. Baulieu Institut de Physique Nucléaire de Lyon Septembre 2009 Le langage JAVA G. Baulieu Institut de Physique Nucléaire de Lyon Septembre 2009 Quelques acronymes JDK : Java Development Kit SDK : Software Development Kit J2SE : Java 2 Standard Edition JRE : Java Runtime

Plus en détail

Développement Logiciel

Développement Logiciel Développement Logiciel Éxamen session 1-2012-2013 (Vendedi 25 mai, 9h-11h) Seuls les documents liés directement au cours sont autorisés (comme dit sur le site) : sujets de TD, notes de cours, notes personnelles

Plus en détail

Cours 2 : programmation des interfaces graphiques

Cours 2 : programmation des interfaces graphiques Cours 2 : programmation des interfaces graphiques Anastasia.Bezerianos@lri.fr (partie de la présentation basée sur des transparents de Michel Beaudouin-Lafon) système interactif vs. système algorithmique

Plus en détail

Programmation en Java Interface graphique. NGUYEN Thi Minh Tuyen

Programmation en Java Interface graphique. NGUYEN Thi Minh Tuyen Programmation en Java Interface graphique Toolkits graphiques Java AWT Obsolète Swing Supporté par Sun/Oracle Repose sur AWT mais Swing AWT, JBu@onBu@on SWT libre, iniaé par IBM/Eclipse 2 Swing Your

Plus en détail

Introduction au langage Java

Introduction au langage Java Introduction au langage Java 1 Introduction : Langage développé par Sun et purement orienté objet. N a pas de rapport direct avec Javascript développé par Netscape. Les applications java peuvent être des

Plus en détail

TP3. Mail. Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose.

TP3. Mail. Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose. Université Paris 7 M2 II Protocole Internet TP3 Mail Attention aux fausses manoeuvres lors de ce TP vous pouvez endommager votre mail sur ouindose. 1 Protocole SMTP 1. Le protocole SMTP est définit dans

Plus en détail

Desktop Intégration. Rémi Forax

Desktop Intégration. Rémi Forax Desktop Intégration Rémi Forax 1 Intégration au bureau L intégration de l application au bureau de l utilisateur se fait en combinant plusieurs techniques L écran d annonce de l application (SplashScreen)

Plus en détail

Programmation Réseau. Sécurité Java. Jean-Baptiste.Yunes@univ-paris-diderot.fr. UFR Informatique 2012-2013. jeudi 4 avril 13

Programmation Réseau. Sécurité Java. Jean-Baptiste.Yunes@univ-paris-diderot.fr. UFR Informatique 2012-2013. jeudi 4 avril 13 Programmation Réseau Sécurité Java Jean-Baptiste.Yunes@univ-paris-diderot.fr UFR Informatique 2012-2013 Java Sécurité? différentes sécurités disponibles et contrôlables intégrité contrôle d accès signature/authentification/cryptographie

Plus en détail

Outils, langage et approche Android Une introduction. Nicolas Stouls nicolas.stouls@insa lyon.fr

Outils, langage et approche Android Une introduction. Nicolas Stouls nicolas.stouls@insa lyon.fr Outils, langage et approche Android Une introduction Nicolas Stouls nicolas.stouls@insa lyon.fr Webographie La bible contenant «tout» : http://developer.android.com/index.html Les supports cette intervention

Plus en détail

Java 7 Les fondamentaux du langage Java

Java 7 Les fondamentaux du langage Java 184 Java 7 Les fondamentaux du langage Java 1.1 Les bibliothèques graphiques Le langage Java propose deux bibliothèques dédiées à la conception d'interfaces graphiques. La bibliothèque AWT et la bibliothèque

Plus en détail

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Corrigé des exercices sur les références

Corrigé des exercices sur les références Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile

Plus en détail

Auto-évaluation Programmation en Java

Auto-évaluation Programmation en Java Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN

Plus en détail

Encapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets.

Encapsulation. L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets. Encapsulation L'encapsulation consiste à rendre les membres d'un objet plus ou moins visibles pour les autres objets. La visibilité dépend des membres : certains membres peuvent être visibles et d'autres

Plus en détail

Remote Method Invocation Les classes implémentant Serializable

Remote Method Invocation Les classes implémentant Serializable Parallélisme Architecture Eric Goubault Commissariat à l Energie Atomique Saclay Classe qui implémente la méthode distante (serveur): - dont les méthodes renvoient un objet serializable - ou plus généralement

Plus en détail

JAVA 8. JAVA 8 - Les fondamentaux du langage. Les fondamentaux du langage Java. Avec exercices pratiques et corrigés JAVA 8 29,90.

JAVA 8. JAVA 8 - Les fondamentaux du langage. Les fondamentaux du langage Java. Avec exercices pratiques et corrigés JAVA 8 29,90. Analyste et développeur pendant plus de 10 ans, Thierry GROUSSARD s est ensuite orienté vers la formation et plus particulièrement dans le domaine du développement. Sa connaissance approfondie des besoins

Plus en détail

Programmation Par Objets

Programmation Par Objets Programmation Par Objets Structures de données package java.util B. Carré Polytech Lille 1 Tableaux et structures de données Tableaux «Objets» taille fixe type des éléments : primitif (homogène) ou objets

Plus en détail

Construire des plug-ins pour SAS Management Console SAS 9.1

Construire des plug-ins pour SAS Management Console SAS 9.1 Construire des plug-ins pour SAS Management Console SAS 9.1 Janvier 2005 Sommaire 1 INTRODUCTION... 3 1.1 OBJECTIFS... 3 1.2 PERIMETRE... 3 2 LES COMPOSANTS DE SAS MANAGEMENT CONSOLE... 4 3 LA CONSTRUCTION

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184 Frédéric BERTIN fbertin@neotilus.com Présentaion : Mobile 3D Graphics API JSR 184 M3G :présentation Package optionnel de l api J2ME. Prend

Plus en détail

Fichiers d'archives java - *.jar

Fichiers d'archives java - *.jar Fichiers d'archives java - *.jar Originaux Chapitres traités Les fichiers d'archive Java (fichiers JAR) sont les valises Java. ils constituent le moyen standard et portable d'empaqueter toutes les parties

Plus en détail

Applet pour visualiser les variables «automate» notifiées

Applet pour visualiser les variables «automate» notifiées Applet pour visualiser les variables «automate» notifiées Sommaire 1. Introduction...2 2. Lecture de variables «automate» notifiées...2 2.1. IHM servant au test :...2 2.2. Codage de l'applet :...2 3. Codage

Plus en détail

Table des matières Introduction... 1 1. Démarrage... 8 2. Les composants graphiques... 26

Table des matières Introduction... 1 1. Démarrage... 8 2. Les composants graphiques... 26 Table des matières À propos de l'auteur... x Préface... xi Avant-propos... xiv 1. Public visé et prérequis... xiv 2. Sources des exemples... xv 3. Accès aux vidéos... xv 4. URL raccourcies... xv 5. Remerciements...

Plus en détail

Langage Java. Classe de première SI

Langage Java. Classe de première SI Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Structure d un programme et Compilation Notions de classe et d objet Syntaxe Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types

Plus en détail

Calcul Parallèle. Cours 5 - JAVA RMI

Calcul Parallèle. Cours 5 - JAVA RMI Calcul Parallèle Cours 5 - JAVA RMI Eric Goubault Commissariat à l Energie Atomique & Chaire Ecole Polytechnique/Thalès Saclay Le 28 février 2012 Eric Goubault 1 28 février 2012 Remote Method Invocation

Plus en détail

Création d un service web avec NetBeans 5.5 et SJAS 9

Création d un service web avec NetBeans 5.5 et SJAS 9 Sommaire Création d un service web avec NetBeans 5.5 et SJAS 9 1. Présentation... 2 2. Création d un service web avec NetBeans... 2 2.1. Création d une application Web... 2 2.2. Création du service web...

Plus en détail

Threads. Threads. USTL http://www.lifl.fr/ routier 1

Threads. Threads. USTL http://www.lifl.fr/ routier 1 Threads USTL http://www.lifl.fr/ routier 1 Rappels - Définitions un Process est un programme qui tourne et dispose de ses propres ressources mémoire. OS multi-tâche plusieurs process en concurrence un

Plus en détail

Design patterns. Design patterns - définition. Design patterns - avantages

Design patterns. Design patterns - définition. Design patterns - avantages Design patterns Conception UML Implantation Java Anne Lapujade 1 Design patterns - définition 2 v Objectif : proposer des solutions standardisées à des problèmes de conception classiques v Design pattern

Plus en détail

Logiciel VOIP Annexe

Logiciel VOIP Annexe Logiciel VOIP Annexe Présenté par : Tuteur : FERRAN Olivier LANUSSE Florian TEBIB Leïla M. Rachid Elazouzi 1 ère de Master RTM Université d Avignon et des Pays de Vaucluse IUP GMI 7676767611 Année 2006-2007

Plus en détail

Aide mémoire UML & Java 1ère partie : Introduction. marc.lemaire@u-cergy.fr

Aide mémoire UML & Java 1ère partie : Introduction. marc.lemaire@u-cergy.fr Aide mémoire UML & Java 1ère partie : Introduction marc.lemaire@u-cergy.fr 9 septembre 2014 1 2014 v1.11 Table des matières 1 Généralités 6 1.1 Notations utilisées.....................................

Plus en détail

Java Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites

Java Licence Professionnelle 2009-2010. Cours 7 : Classes et méthodes abstraites Java Licence Professionnelle 2009-2010 Cours 7 : Classes et méthodes abstraites 1 Java Classes et méthodes abstraites - Le mécanisme des classes abstraites permet de définir des comportements (méthodes)

Plus en détail

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;

Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ; CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe

Plus en détail

TD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting

TD Objets distribués n 3 : Windows XP et Visual Studio.NET. Introduction à.net Remoting IUT Bordeaux 1 2005-2006 Département Informatique Licence Professionnelle ~ SI TD Objets distribués n 3 : Windows XP et Visual Studio.NET Introduction à.net Remoting Partie 1 : l'analyseur de performances

Plus en détail

PROGRAMMATION PAR OBJETS

PROGRAMMATION PAR OBJETS PROGRAMMATION PAR OBJETS Java Environnement et constructions spécifiques Walter Rudametkin Maître de Conférences Bureau F011 Walter.Rudametkin@polytech-lille.fr B. Carré Polytech Lille 2 Java (Sun 1995)

Plus en détail

Chapitre 10. Les interfaces Comparable et Comparator 1

Chapitre 10. Les interfaces Comparable et Comparator 1 Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],

Plus en détail

Programmation Orientée Objet Java

Programmation Orientée Objet Java Programmation Orientée Objet Java Bertrand Estellon Département Informatique et Interactions Aix-Marseille Université 12 novembre 2014 Bertrand Estellon (DII AMU) Programmation Orientée Objet Java 12 novembre

Plus en détail

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture API04 Contribution Apache Hadoop: Présentation et application dans le domaine des Data Warehouses Introduction Cette publication a pour but de présenter le framework Java libre Apache Hadoop, permettant

Plus en détail

Programmation Orientée Objet

Programmation Orientée Objet Programmation Orientée Objet Bertrand Estellon Département Informatique et Interactions Aix-Marseille Université 21 octobre 2014 Bertrand Estellon (DII AMU) Programmation Orientée Objet 21 octobre 2014

Plus en détail

Page 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T>

Page 1 sur 5 TP3. Thèmes du TP : l la classe Object. l Vector<T> l tutorial Interfaces. l Stack<T> Page 1 sur 5 TP3 Lectures préalables : l Java_II l tutorial Interfaces Thèmes du TP : l la classe Object l Vector l Stack Une pile d'objects Les éléments de la classe Pile sont maintenant des instances

Plus en détail

L Histoire de Java. «Portable» veut dire qu il peut tourner sur plusieurs systèmes d exploitations différents ; Windows, Linux

L Histoire de Java. «Portable» veut dire qu il peut tourner sur plusieurs systèmes d exploitations différents ; Windows, Linux L Histoire de Java. Java est deux choses : o un langage de programmation informatique orienté objet o un environnement d'exécution informatique portable «Portable» veut dire qu il peut tourner sur plusieurs

Plus en détail

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour

LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections

Plus en détail

Génie Logiciel ESIEA 2013-2014

Génie Logiciel ESIEA 2013-2014 Génie Logiciel ESIEA 2013-2014 Mise-à-jour : 21/03/2014 Thierry Leriche-Dessirier thierryler@gmail.com @thierryleriche ESIEA 2001 Planning ( INF3038 ) Cours UFA+3A (matin) : 17 mars 24 mars 31 mars 7 avril

Plus en détail

Prendre le marteau, le tableau, le mètre, le crayon, la ficelle, le clou, la pointe ;

Prendre le marteau, le tableau, le mètre, le crayon, la ficelle, le clou, la pointe ; s Introduction Naissance d'un programme Exercice I-1 : Apprendre à décomposer une tâche en sous-tâches distinctes a. Objets nécessaires : 1 tableau, 1 clou, 2 pointes, 1 ficelle, 1 marteau, 1 crayon, 1

Plus en détail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

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

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr . Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le

Plus en détail

as Architecture des Systèmes d Information

as Architecture des Systèmes d Information Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes

Plus en détail

Création d une application JEE

Création d une application JEE Création d une application JEE Rédacteurs : Alexandre Baillif, Philippe Lacomme, Raksmey Phan et Michaël PLAN Date : juillet 2010 Mise à jour : Michaël PLAN Date : octobre 2014 Avertissement : - ce document

Plus en détail

RN2-Programmation Orientée Objet - JAVA CH 1 Introduction à la POO et Java

RN2-Programmation Orientée Objet - JAVA CH 1 Introduction à la POO et Java RN2-Programmation Orientée Objet - JAVA CH 1 à la POO et Java Licence Professionnelle 2006 Agnès Guerraz INRIA Rhône-Alpes agnes.guerraz@inria.fr LP UPMF, Grenoble Septembre 2006 Ce cours reprend en grande

Plus en détail

RMI le langage Java XII-1 JMF

RMI le langage Java XII-1 JMF Remote Method Invocation (RMI) XII-1 Introduction RMI est un ensemble de classes permettant de manipuler des objets sur des machines distantes (objets distants) de manière similaire aux objets sur la machine

Plus en détail

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :

Cette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris : Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens

Plus en détail

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez

Plus en détail

INITIATION AU LANGAGE JAVA

INITIATION AU LANGAGE JAVA INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal

Plus en détail

Synchro et Threads Java TM

Synchro et Threads Java TM Synchro et Threads Java TM NICOD JEAN-MARC Master 2 Informatique Université de Franche-Comté UFR des Sciences et Techniques septembre 2008 NICOD JEAN-MARC Synchro et Threads avec Java TM 1 / 32 Sommaire

Plus en détail

La base de données XML exist. A. Belaïd

La base de données XML exist. A. Belaïd La base de données XML exist Introduction Qu est-ce-que exist? C est une base de donnée native, entièrement écrite en Java XML n est pas une base de données en soi Bien qu il possède quelques caractéristiques

Plus en détail

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp Serveur d'application Client HTML/JS Apache Thrift Bootcamp Pré-requis La liste ci-dessous de logiciels doit être installée et opérationnelle sur la machine des participants : Compilateur thrift http://thrift.apache.org/

Plus en détail

Unity. Moteur de jeu 3D et 2D. Cross platform: Windows, Mac, Linux, ios, Android, Blackberry, Xbox, Playstation, Wii

Unity. Moteur de jeu 3D et 2D. Cross platform: Windows, Mac, Linux, ios, Android, Blackberry, Xbox, Playstation, Wii Unity Moteur de jeu 3D et 2D Cross platform: Windows, Mac, Linux, ios, Android, Blackberry, Xbox, Playstation, Wii C# / Javascript (UnityScript) / Boo Possibilité de créer ses propres outils Programmation

Plus en détail

L'essentiel de Java et de l'objet

L'essentiel de Java et de l'objet L'essentiel de Java et de l'objet Version 2.0 Copyright NTSys 2007 1 Sommaire Technologies objets Présentation de Java Le langage Java Les Applets Interfaces IHM Gestion des Exceptions Entrées Sorties

Plus en détail

LOG4430 : Architecture logicielle et conception avancée

LOG4430 : Architecture logicielle et conception avancée LOG4430 : Architecture logicielle et conception avancée Yann-Gaël Guéhéneuc Cours 3 Bibliothèques et chargement Dynamique de composants Département de génie informatique et de génie logiciel École Polytechnique

Plus en détail

Package Java.util Classe générique

Package Java.util Classe générique Package Java.util Classe générique 1 Classe Vector La taille est dynamique: dès qu un tableau vectoriel est plein, sa taille est doublée, triplée, etc. automatiquement Les cases sont de type Object add(object

Plus en détail

Programmation Java TM pour les enfants, les parents et les grands-parents

Programmation Java TM pour les enfants, les parents et les grands-parents Programmation Java pour les enfants, les parents et les grands-parents ii Programmation Java TM pour les enfants, les parents et les grands-parents Yakov Fain Traduit de l anglais (américain) par Vincent

Plus en détail

Objets et Programmation. origine des langages orientés-objet

Objets et Programmation. origine des langages orientés-objet Objets et Programmation origine des langages orientés-objet modularité, encapsulation objets, classes, messages exemples en Java héritage, liaison dynamique G. Falquet, Th. Estier CUI Université de Genève

Plus en détail

Un ordonnanceur stupide

Un ordonnanceur stupide Un ordonnanceur simple Université Paris Sud L objet des exercices qui suivent est de créer un ordonanceur implantant l algorithme du tourniquet ( round-robin scheduler ). La technique utilisée pour élire

Plus en détail

TP Composants Java ME - Java EE. Le serveur GereCompteBancaireServlet

TP Composants Java ME - Java EE. Le serveur GereCompteBancaireServlet TP Composants Java ME - Java EE Vous allez, dans ce TP, construire une architecture client serveur, plus précisément MIDlet cliente, servlet serveur. Pour cela, on va d'abord installer la partie serveur

Plus en détail

ACTIVITÉ DE PROGRAMMATION

ACTIVITÉ DE PROGRAMMATION ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,

Plus en détail

Introduction aux composants logiciels : JavaBeans http://java.sun.com/products/javabeans/ Master des Technologies de l'internet

Introduction aux composants logiciels : JavaBeans http://java.sun.com/products/javabeans/ Master des Technologies de l'internet Introduction aux composants logiciels : JavaBeans http://java.sun.com/products/javabeans/ Franck.Barbier@FranckBarbier.com Pauware Research Group Master des Technologies de l'internet Université de Pau

Plus en détail

TP1. Outils Java Eléments de correction

TP1. Outils Java Eléments de correction c sep. 2008, v2.1 Java TP1. Outils Java Eléments de correction Sébastien Jean Le but de ce TP, sur une séance, est de se familiariser avec les outils de développement et de documentation Java fournis par

Plus en détail

Tutoriel d installation de Hibernate avec Eclipse

Tutoriel d installation de Hibernate avec Eclipse Tutoriel d installation de Hibernate avec Eclipse Table des matières 1. Création de la base de données... 4 2. Installation de Hibernate Synchronizer... 5 3. Utilisation de Hibernate... 6 3.1 Création

Plus en détail

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7 Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin

Plus en détail

Java ME : une présentation. Jean-Marc Farinone

Java ME : une présentation. Jean-Marc Farinone Java ME : une présentation Jean-Marc Farinone 1 But de l exposé Comprendre, définir, situer les termes : Java ME, J2ME, CDC, CLDC, Configuration, Profiles, MIDP (1.0, 2.0), MIDlet, jad, etc. Donner des

Plus en détail

Sécurité Java 2. Première approche. Installation des exemples. Exemple d'une applet

Sécurité Java 2. Première approche. Installation des exemples. Exemple d'une applet Sécurité Java 2 Première approche L 'internet permet une multiplication des moyens de diffusion des applications. Le courrier électronique, le Web, le FTP sont autant de moyens de distribuer des composants

Plus en détail

Serveur d'archivage 2007 Installation et utilisation de la BD exist

Serveur d'archivage 2007 Installation et utilisation de la BD exist Type du document Procédure d'installation Auteur(s) Eric Bouladier Date de création 26/02/20007 Domaine de diffusion tous Validé par Equipe Versions Date Auteur(s) Modifications V1.00 26/02/2007 Eric Bouladier

Plus en détail

Tp 1 correction. Structures de données (IF2)

Tp 1 correction. Structures de données (IF2) Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que

Plus en détail

7 Développement d une application de MapReduce

7 Développement d une application de MapReduce 7 Développement d une application de MapReduce Ecrire un programme d Hadoop demande un processus : écrire une fonction map, une fonction reduce et tester localement. Ecrire ensuite un programme pour lancer

Plus en détail

Corrigés des premiers exercices sur les classes

Corrigés des premiers exercices sur les classes Corrigés des premiers exercices sur les classes Exercice 2.1.1 utilisation d une classe Voici le texte d une classe représentant de façon sommaire un compte bancaire et les opérations bancaires courantes.

Plus en détail

Programmation par les Objets en Java

Programmation par les Objets en Java Programmation par les Objets en Java Najib TOUNSI Les classes en Java (TD 3) I. Notion de classe I.1 Classe, champs, méthodes, instanciation, this, private vs. public. Créer une classe Point (coordonnée

Plus en détail

Premiers Pas en Programmation Objet : les Classes et les Objets

Premiers Pas en Programmation Objet : les Classes et les Objets Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.

Plus en détail

Valeur C - RSM Conception d Applications Multimedia. Objectifs du cours: 1. Java en général

Valeur C - RSM Conception d Applications Multimedia. Objectifs du cours: 1. Java en général CNAM Aix en Provence Valeur C - RSM Conception d Applications Multimedia Programmation Multimedia Session 2 Objectifs du cours: (Rappel sur) la conception orientée objet (avec Java) Programmation en Java

Plus en détail

Une introduction à Java

Une introduction à Java Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)

Plus en détail

TD/TP PAC - Programmation n 3

TD/TP PAC - Programmation n 3 Université Paris Sud Licence d informatique/iup-miage2 Année 2004-2005 Auteur : Frédéric Vernier Semaine : 11-16 octobre 2004 Conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html

Plus en détail

Programmation avec des objets : Cours 7. Menu du jour

Programmation avec des objets : Cours 7. Menu du jour 1 Programmation avec des objets : Cours 7 Menu du jour 1. Retour sur la classe Liste 2. Précisions sur l interface 3. Difficultés dans le cas d erreurs 4. Soulever des exceptions 5. Utilisation des Listes

Plus en détail

Bases Java - Eclipse / Netbeans

Bases Java - Eclipse / Netbeans Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement

Plus en détail

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004 Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)

Plus en détail

Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée

Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée forax at univ-mlv dot fr - ParisJUG Java.next() - Mars 2012 What Else? Lambda == Inner class? Java a des lambdas depuis la version 1.1 Exemple utilisant

Plus en détail

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) CLASSE RACINE Object ancêtre de toutes les classes RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) définit donc des méthodes héritées par toutes

Plus en détail

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

Plus en détail

Java Licence Professionnelle CISII, 2009-10

Java Licence Professionnelle CISII, 2009-10 Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation

Plus en détail

TP SIN Programmation sur androïde Support : eclipse

TP SIN Programmation sur androïde Support : eclipse TP SIN Programmation sur androïde Support : eclipse Support : Smartphone sur androïde Pré requis (l élève doit savoir): Savoir utiliser un ordinateur Savoir utiliser un Smartphone Programme Objectif terminale

Plus en détail

Projet de programmation (IK3) : TP n 1 Correction

Projet de programmation (IK3) : TP n 1 Correction Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public

Plus en détail

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40 Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr

Plus en détail

JAVA TD0. Prise en main du langage Environnement de base JAVA 1

JAVA TD0. Prise en main du langage Environnement de base JAVA 1 JAVA TD0 Prise en main du langage Environnement de base JAVA 1 Mon premier programme public class HelloWorld { public static void main(string [] arg){ System.out.println("Hello, World!"); main(string []

Plus en détail

TD/TP PAC - Programmation n 3

TD/TP PAC - Programmation n 3 Université Paris Sud Licence d informatique/iup-miage2 - Année 2004-2005 auteur : Frédéric Vernier semaine : 11-16 octobre 2004 conditions : sur machine avec les outils standards java web: http://vernier.frederic.free.fr/indexpac.html

Plus en détail

Classe Interne, Anonyme & Enumération

Classe Interne, Anonyme & Enumération Java Avancé Classe Interne, Anonyme & Enumération Rémi Forax forax@univ-mlv.fr 1 Rappel Nous nous intéressons aujourd'hui à deux formes de type abstrait en Java Les interfaces Les classes abstraites Les

Plus en détail

FLEX 3. Applications Internet riches avec Flash ActionScript 3, MXML et Flex Builder. Aurélien Vannieuwenhuyze

FLEX 3. Applications Internet riches avec Flash ActionScript 3, MXML et Flex Builder. Aurélien Vannieuwenhuyze Programmation FLEX 3 Applications Internet riches avec Flash ActionScript 3, MXML et Flex Builder Aurélien Vannieuwenhuyze Avec la contribution de Romain Pouclet Groupe Eyrolles, 2009, ISBN : 978-2-212-12387-6

Plus en détail