Skip to the content.

Προχωρημένος προγραμματισμός με τη γλώσσα Java

© Γιάννης Κωστάρας


Πίνακας περιεχομένων

Κεφάλαιο 1 - λ-λογισμός, ροές και Ανταποκρίσιμος προγραμματισμός

  1. Εισαγωγή
  2. λ-εκφράσεις και αναφορές μεθόδων (method references)
  3. Ροές (streams)
  4. Filter-Map-Reduce
  5. Infinite και Parallel Streams
  6. Ανταποκρίσιμος (Reactive) προγραμματισμός

Κεφάλαιο 2 - Πολυνηματικός προγραμματισμός (Concurrency) και Απόδοση

  1. Παράλληλος προγραμματισμός, νήματα (threads)
  2. Κύκλος ζωής ενός νήματος
  3. Δημιουργία νημάτων μέσω των κλάσεων Thread, Runnable, Executor
  4. Συγχρονισμός νημάτων (Locks, synchronized, conditions)
  5. Atomic counters
  6. Concurrent collections
  7. Java Memory Model
  8. Συλλέκτες σκουπιδιών (Garbage Collectors)
  9. Εργαλεία μέτρησης της απόδοσης εφαρμογών Java

Κεφάλαιο 3 - Γραφικές εφαρμογές

  1. Abstract Window Toolkit (AWT) (μόνο συνοπτικά)
  2. Δημιουργία γραφικών διεπαφών χρήστη με το Swing
  3. Δομή μιας εφαρμογής Swing
  4. Δημιουργία πρωτότυπου με το NetBeans Mattisse
  5. Layout Managers και widgets
  6. Event Handling
  7. Δημιουργία μιας εφαρμογής σε Swing
  8. Δημιουργία γραφικών διεπαφών χρήστη με τη JavaFX
  9. Δομή μιας εφαρμογής JavaFX
  10. Δημιουργία πρωτότυπου με το JavaFX SceneBuilder
  11. Layout Managers και widgets
  12. Event Handling
  13. Δημιουργία μιας εφαρμογής σε JavaFX

Κεφάλαιο 4 - Βάσεις δεδομένων (JPA)

  1. Τρόποι επικοινωνίας με ΒΔ. JDBC
  2. Object Relational Mapping (ORM)
  3. JPA annotations
  4. Σχέσεις
  5. JPAStreamer
  6. Στρατηγικές ανάκτησης δεδομένων (fetching strategies)

Κεφάλαιο 5 - Δικτυακός Προγραμματισμός

  1. Εισαγωγή στο δικτυακό προγραμματισμό
  2. Sockets
  3. NIO.2 asynchronous channels
  4. Netty
  5. HTTP/2

Κεφάλαιο 6 - Πρότυπες εκφράσεις (Regular Expressions) και Reflection

  1. Reflection Overview
  2. Εισαγωγή στις Εκφράσεις Αναγνώρισης Προτύπων (Regular Expressions ή Regex)