ΓΠ - Ειδικά Θέματα στον Προγραμματισμό Υπολογιστών (4Ε)
Γ' ΤΑΞΗ - ΕΙΔΙΚΟΤΗΤΑ ΕΦΑΡΜΟΓΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ
MOODLE
2019-2021
-
ΒΙΒΛΙΟ-ΣΗΜΕΙΩΣΕΙΣ & Οδηγίες διδασκαλίας
-
Διδακτέα ύλη: ΕΝΟΤΗΤΑ 1: Κεφάλαια 1 έως 8 ΚΑΙ:
ΕΝΟΤΗΤΑ 2Α: Κεφάλαια 1 έως 3 και 5 έως 12 ή εναλλακτικά ΕΝΟΤΗΤΑ 2Β: Κεφάλαια 13 έως 20,
από τις σημειώσεις «ΕΙΔΙΚΑ ΘΕΜΑΤΑ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΥΠΟΛΟΓΙΣΤΩΝ» των: Ε. Βραχνού, Ι. Κουρέτα, Π. Μακρυγιάννη και Α. Παραδείση. -
ΨΗΦΙΑΚΗ ΑΚΑΔΗΜΙΑ ΠΟΛΙΤΩΝ: Μαθήματα σχεδίασης και ανάπτυξης λογισμικού
Εισαγωγή
Εισαγωγή στον Αντικειμενοστραφή Προγραμματισμό
Εισαγωγή στον O.O.P. από το βιβλίο Γ-ΓΕΛ "ΠΛΗΡΟΦΟΡΙΚΗ" Ενότητα "4. Σύγχρονα Προγραμματιστικά Περιβάλλοντα", από σ. 55 και τις αντίστοιχες Ασκήσεις
Περιήγηση στο Κεφ. 11 "Αντικειμενοστρεφής Προγραμματισμός" βιβλίο μαθητή" Προγραμματισμός Υπολογιστών" ΓΠ, από σελ. 192 - 217, ενότητες: 11.1 έως και 11.3
Συμπληρωματικό Υλικό: https://python-tutorial-greek.readthedocs.io/en/latest/oop_general.html
Κεφ. 1-3 με Greenfoot
Κεφ. 1-3 με Greenfoot
1. Greenfoot Documentation
2. Υλικό Σεμιναρίου Greenfoot:
Useful tips for Eclipse
Useful tips for Eclipse
1) Γενικά
-
Εάν κλείσεις την Console, επανεμφάνιση με: Window > Show View > Console
-
Install eclipse plugin: Help > Eclipse Marketplace
-
Uninstall eclipse plugin: Window > Preferences > Install / Update > δεξί παράθυρο, link...
2) Εισαγωγή έτοιμου Java Project στο Eclipse
File > Import >
> General: Existing Projects into Workspace >
> Select Root Directory : κουμπί Browse : επιλέγεις το φάκελο με το όνομα του Java Project (συνήθως βρίσκεται μέσα στο EclipseWorkspace) >
> κουμπί Finish
3) Εισαγωγή της βιβλιοθήκης JTF της ACM:
Κατέβασε το acm.jar και αποθήκευσέ το μέσα στο EclipseWorkspace (ή σε κάποιο path της επιλογής σου)
Άνοιξε το Eclipse
> Επέλεξε το Java Project που απαιτεί την ACM >
> Δεξί κλικ: Build Path >
> Configure Build Path >
> καρτέλα Libraries και στη δεξιά στήλη το κουμπί Add External JARs :
: το path μέσα στο οποίο έχεις αποθηκεύσει το acm.jar και το επιλέγεις > Ok
4) Δικτυακός Προγραμματισμός (κεφ. 7)
4.1) Δημιούργησε τα προγράμματα Java για Client και Server στο ίδιο Java Project & Package
4.2) Εκτέλεσε πρώτα το πρόγραμμα Server.java και μετά το Client.java
4.3) Παράλληλη εκτέλεση Java files στο CMD.exe
Εκτός Eclipse, εάν δημιουργήσεις τα .java σε Notepad++ θα χρειαστείς compiling πρν την εκτέλεση.
Μέσα στο path της JDK (π.χ. C:\Program Files\Java\jdk1.8.0_231\bin) υπάρχει η εντολή javac.
Εάν το path που έχεις αποθηκεύσει τα .java αρχεία σου είναι το C:\MyJavaFiles, εκτελείς την εντολή:
C:\Program Files\Java\jdk1.8.0_231\bin> javac C:\MyJavaFiles\*.java
Στη συνέχεια, τρέχεις κάθε αρχείο .java με την εντολή:
C:\Program Files\Java\jdk1.8.0_231\bin> java C:\MyJavaFiles\<Όνομα κλάσης Java> (χωρίς την επέκταση .java)
Κεφ. 4 Αντικειμενοστρεφής προγραμματισμός
Κεφ. 4 Αντικειμενοστρεφής προγραμματισμός
4.0 Η βιβλιοθήκη JTF της ACM σ. 80
-
ACM Java Task Force, Version 2.0, Download acm.jar
-
Java Tutorial 17: Hello ACM Graphics (EASY)! (από το 3:16)
ΔΡΑΣΤΗΡΙΟΤΗΤΑ 4.1:
Κατεβάστε και τρέξτε στο Eclipse τον κώδικα https://github.com/sdjidjev/When-You-See-It--You-Will-Hit-Bricks/blob/master/BrickKnockout.java
Σημειώστε τα σφάλματα που παρουσιάστηκαν και τον τρόπο που τα διορθώσατε.
Καταχωρήστε τις απαντήσεις σας στο moodle του μαθήματος:
Home / Courses / ΕΠΑ.Λ. / ΠΛΗΡΟΦΟΡΙΚΗ ΕΠΑΛ / ΓΠ-ΕΘΠΥ
Κεφ. 5 Event-driven programming
Κεφ. 5. Προγραμματισμός οδηγούμενος από γεγονότα (Event-driven programming)
ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ
Ολοκληρώστε τις Δραστηριότητες του Κεφαλαίου 5 που περιέχονται στις ΟΔΗΓΙΕΣ των παρακάτω Google Forms και συμπληρώστε τις απαντήσεις σας ΑΤΟΜΙΚΑ.
> Ζητήστε τον κωδικό εισόδου στις φόρμες από την εκπαιδευτικό σας ή δείτε τον στο moodle του μαθήματος:
Home / Courses / ΕΠΑ.Λ. / ΠΛΗΡΟΦΟΡΙΚΗ ΕΠΑΛ / ΓΠ-ΕΘΠΥ
-
Δ5.1_ΓΠ-ΕΘΠΥ–Java (Eclipse)
-
Δ5.2_ΓΠ-ΕΘΠΥ–Java (Eclipse)
-
Δ5.3_ΓΠ-ΕΘΠΥ–Java (Eclipse)
-
Δ5.4_ΓΠ-ΕΘΠΥ–Java (Eclipse)
Κεφ. 6 Βάσεις Δεδομένων
Κεφ. 6 Βάσεις Δεδομένων
Google Form Δραστηριοτήτων 6ου Κεφαλαίου - Α' Μέρος
Google Form Δραστηριοτήτων 6ου Κεφαλαίου - Β' Μέρος
-
How to connect java(eclipse) to database using xampp
Κατεβάστε τα αρχεία του Video Tutorial από: https://mega.nz/#F!kqBUlZDJ!dAqhp2UYyXyCna-RX5svKg
και τον mysql connector από: https://dev.mysql.com/downloads/connector/j/
-
XAMPP Installers and Downloads for Apache Friends.
ΣΗΜΕΙΩΣΗ: Για Windows 7 64bit προτείνεται η έκδοση: xampp-windows-x64-5.6.40-1-VC11-installer -
Connector/J 8.0.18 (Platform Independent): Platform Independent (Architecture Independent), mysql-connector-java-8.0.18.zip
MySQL Installer 8.0.18 for Windows > mysql-installer-web-community-8.0.18.0.msi & mysql-installer-community-8.0.18.0.msi
-
Java Server-side Programming: A Java Servlet E-Shop Case Study
-
Tutorial: Accessing a MySql database in Java (Eclipse)
Κεφ. 7 Δικτυακός Προγραμματισμός
Κεφ. 7 Δικτυακός Προγραμματισμός
Tips
4.1) Δημιούργησε τα προγράμματα Java για Client και Server στο ίδιο Java Project & Package
4.2) Εκτέλεσε πρώτα το πρόγραμμα Server.java και μετά το Client.java
4.3) Παράλληλη εκτέλεση Java files στο CMD.exe
Εκτός Eclipse, εάν δημιουργήσεις τα .java σε Notepad++ θα χρειαστείς compiling πρν την εκτέλεση.
Μέσα στο path της JDK (π.χ. C:\Program Files\Java\jdk1.8.0_231\bin) υπάρχει η εντολή javac.
Εάν το path που έχεις αποθηκεύσει τα .java αρχεία σου είναι το C:\MyJavaFiles, εκτελείς την εντολή:
C:\Program Files\Java\jdk1.8.0_231\bin> javac C:\MyJavaFiles\*.java
Στη συνέχεια, τρέχεις κάθε αρχείο .java με την εντολή:
C:\Program Files\Java\jdk1.8.0_231\bin> java C:\MyJavaFiles\<Όνομα κλάσης Java> (χωρίς την επέκταση .java)
Tutorials
-
Java socket programming - Simple client server program:
-
Java Socket Programming: https://www.javatpoint.com/socket-programming
-
Video Tutorial: [Java Workshop Series] Java Network Programming : Introduction
-
Video Tutorial: Socket Programming in Java | Client Server Architecture | Java (edureka! Play List)
ΔΡΑΣΤΗΡΙΟΤΗΤΕΣ σε GoogleForms
Δ7.1: Java socket programming - Simple client server program:
Δ7.1.1.A Socket Connection (με Notepad++ & JDK)
Δ7.1.1.B Socket Connection (με Eclipse & JDK)
Δ7.1.2.Α One way communication: Sending Data from Client to Server (με Notepad++ & JDK)
Δ7.1.2.Β One way communication: Sending Data from Client to Server (με Eclipse & JDK)
Δ7.1.3 Two way communication: Client to Server & Server to Client (με Eclipse & JDK)
Δ7.2: Chat-Java (GUI and noGUI) from GitHub
Δ7.2.1 Chat-Java (noGUI) from GitHub (με Eclipse & JDK)
Δ7.2.2 Chat-Java (GUI) from GitHub (με Eclipse)
Κεφ. 8 Ανάπτυξη Ολοκληρωμένης Εφαρμογής
Κεφ. 8 Ανάπτυξη Ολοκληρωμένης Εφαρμογής
> ΕΠΑΝΑΛΗΨΗ η Εφαρμογή [PERSON, STUDENT, TEACHER] Κεφ. 4.4 (σελ. 86-90)
8.1 Ανάλυση Απαιτήσεων σελ. 122
8.2 Αντικειμενοστρεφής σχεδίαση σελ. 122
8.3 Διάγραμμα κλάσεων (UML Class Diagram) σελ. 123
> Youtube What is a UML Class Diagram? Learn About Class Diagrams and Their Notations (2018)
> Youtube UML Class Diagram Tutorial (2017):
Δ1_8.3 Ακολουθήστε τις οδηγίες του Video και εγκαταστήστε στο Eclipse το UML για ένα Java Project που έχετε δημιουργήσει σε προηγούμενα κεφάλαια.
@ Note: "UML Designer plugin" is NOT compatible with ECLIPSE 2019-12.
ΚΑΘΕ ΕΚΔΟΣΗ ECLIPSE ΕΧΕΙ ΤΑ ΔΙΚΑ ΤΗΣ UML Plugins που εμφανίζονται στο Eclipse Marketplace
Προτεινόμενα PLUGINS για UML (Help > Eclipse Marketplace)
1) UMLet (for UML Diagrams)
2) Jar2UML
3) UML to Java Generator
4) UML Lab Modelling IDE 1.18.0
SOS > SAMPLE UML diagrams created with UMLet > http://www.itmeyer.at/umlet/
TUTORIAL: http://www.ejb3.org/jar_file_reverse/jar_file_reverse.html EclipseUML 2008 reverse engineering of Legacy Jar file
ΣΗΜΕΙΩΣΗ 1η:
Εάν ΔΕΝ μπορεί να εγκατασταθεί το UMLet Eclipse plugin (π.χ. λόγω τεχνικών θεμάτων ασυμβατότητας των Eclipse versions), τότε τρέχουν το online: http://www.umletino.com/ (http://www.umletino.com/umletino.html) ή κατεβάζουν versions for PC στο https://www.umlet.com/changes.htm
> New in UMLet 14.3 stand-alone [π.χ. umlet-standalone-14.2.zip] and UMLet 14.3 Eclipse plugin (p2 repository)
YOUTUBE: 1Α) Using the UMLet Eclipse plugin https://www.youtube.com/watch?v=sOXmGKhNXMc
File > New > Other > [SDelect a wizard] Other > UMLet Diagram >
>> Container > Button BROWSE (επιλέγω ένα υπάρχον Java Project) π.χ. /Chat-Java-master
>> Diagram Name: πχ. tina_diagram.uxf
> κουμπί Finish
1Β) Use the umlet plugin for Eclipse to make UML class diagrams https://www.youtube.com/watch?v=7LDiw9K_KKo
2) Java Tutorial - 9 - UML to Code conversion https://www.youtube.com/watch?v=6wyk5BrgOFo
ΣΗΜΕΙΩΣΗ 2η:
ΕΝΑΛΛΑΚΤΙΚΑ, αντί για το Eclipse, μπορείτε να χρησιμοποιήσετε το NetBeans με το plugin easyUML
8.4 Το μοντέλο σχεδιασμού Model View Controller σελ. 123
> Youtube What Is MVC? Simple Explanation (2017)
> Youtube Preparing the MVC Database Example Eclipse Project (2014)
8.5 Ορισμός των διεπαφών των κλάσεων σελ. 124
8.6 Δημιουργία της βάσης δεδομένων ΚΑΙ 8.7 Υλοποίηση των μεθόδων διασύνδεσης με τη βάση σελ. 124
Δ2_8.6-8.7 Επανάληψη της Θεωρίας και των Δραστηριοτήτων του 6ου Κεφαλαίου
8.8 Υλοποίηση της γραφικής διεπαφής σελ. 124
8.9 Ολοκλήρωση της εφαρμογής σελ. 124
ANT > Youtube ANT Tutorial [02] - Compile and Run JAVA using ANT (2012)
ANT > Youtube How to build java project with Eclipse & Apache ANT (2019)
Δ3_8.9 Ακολουθήστε τις οδηγίες των Video και χρησιμοποιήστε στο Eclipse το ΑΝΤ για ένα Java Project που έχετε δημιουργήσει σε προηγούμενα κεφάλαια.
Σημείωση: ΕΝΑΛΛΑΚΤΙΚΑ, αντί για το Eclipse, μπορείτε να χρησιμοποιήσετε το NetBeans με το plugin ANTLR 4
MAVEN & TestNG > Youtube Maven Tutorial for Beginners | Introduction to Maven | DevOps Training | Edureka (2019)
MAVEN & JUNIT> Youtube Maven Tutorial - How To Create a Maven Project using Eclipse IDE (2016)
Δ4_8.9 Ακολουθήστε τις οδηγίες των Video και δημιουργήστε ένα Maven Project στο Eclipse.
Δ5_8.9 Γράψτε 7 διαφορές μεταξύ των ANT και MAVEN
Tip: https://www.javatpoint.com/difference-between-ant-and-maven
8.10 Έλεγχος της εφαρμογής [με JUnit και TestNG] σελ. 126
JUnit > Run a single JUnit test method in Eclipse
TestNG > TestNG Tutorial (With Eclipse)
Δ6a_8.9 Δημιουργήστε σε Eclipse ένα Java Project που αναφέρεται στις σελίδες 87-89 του σχολικού βιβλίου: Eνότητα 4.4. Κληρονομικότητα, Παράδειγμα: "Person-Teacher-Student", και Ενότητα: 4.10 Δραστηριότητες > Δραστηριότητα 1 .
Δ6b_8.9 Εκτελέστε τα JUnit και TestNG και γράψτε περιληπτικά τις παρατηρήσεις σας
Δ7_8.9 Γράψτε 7 διαφορές μεταξύ των JUnit και TestNG
Tip 1: https://www.guru99.com/junit-vs-testng.html
Tip 2: [Youtube] JUnit Vs TestNG Comparison | Which one is Best for Automation (2019) and Testing Framework Junit vs TestNG with Selenium
8.11 Τεκμηρίωση της εφαρμογής σελ. 128
[Youtube] How TO : Generate javadocs eclipse
Δ8_8.11 Σχετικά με το εργαλείο javadoc, γράψτε: α) για ποιους είναι χρήσιμες οι πληροφορίες που παρέχει και β) πώς ενεργοποιείται στο περιβάλλον eclipse.