Page 1 of 2

Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 16, 2012 5:06 pm
by ja_the_invincible
Την Δευτέρα που έρχεται δηλαδή στις 22/10 (7-9 a24) θα πραγματοποιηθεί η δεύτερη διάλεξη η οποία θα έχει ως αντικείμενο την οργάνωση του κωδικα με λογικές συνθήκες και επαναλήψεις ( if-else , for , while , case κλπ ).

Το thread είναι ανοιχτό και για απορίες που μπορεί να μην καλύψατε από την 1η εισαγωγική διάλεξη.

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 16, 2012 5:57 pm
by stoupeace
Τι έγινε στην 1η? Εχουμε slides/βίντεο?

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 16, 2012 6:31 pm
by ja_the_invincible
Η πρωτη ήταν καθαρά εισαγωγική ,για αυτό δεν έχει ετοιμαστεί κάποια διαφάνεια , ειπωθηκαν κάποια πράγματα πάνω σε βασικές μεταβλητές και Strings και επιλύθηκαν ορισμένες απορίες σχετικά με το jdk , την μεταβλητή path κλπ.

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 16, 2012 7:00 pm
by nachos
Επίσης, μπορούμε να "παίξουμε" και λίγο περισσότερο με πράξεις (αριθμητικές, λογικές κλπ) όπως επίσης και με castings. Και φυσικά πρωτίστως περιμένουμε τις απορίες σας!

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 16, 2012 9:12 pm
by photisd
Έτσι, πάμε γερά και πολλά μπράβο στα παιδιά ;)

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Wed Oct 17, 2012 7:32 pm
by Zifnab
Μπράβο παιδιά καλή αρχή στην προσπάθεια σας - φροντίστε και το κομμάτι των διαφανειών ώστε ο κόσμος να έχει μια αναφορά μετά από τα σεμινάρια ;)

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Wed Oct 17, 2012 8:12 pm
by ja_the_invincible
Από την επόμενη διάλεξη θα το φροντίσουμε και αυτό no worries ;)

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Wed Oct 17, 2012 8:36 pm
by Zifnab
Κάποιες προτάσεις/ιδεες για το μέλλον- αν κάνετε java:
1) τί γίνεται στην μνήμη γενικά heap/stack όχι σε βάθος
2) επίσης τί συμβαίνει όταν γίνεται μια νέα μεταβλητή και πως αποθηκεύεται
3) γιατί για παράδειγμα String a = "test"; και String b = new String("test") είναι διαφορετικά οπότε a!=b
όμως αν το a ήταν String a = new String("test") τότε είναι ίδια διότι το Object.hashcode() γίνεται override από την String.hashcode() - και λόγω αυτής της επικινδυνότητας χρησιμοποιούμε την String.equals()
-------------
4)Άλλη ιδέα είναι να κάνετε κάποια στιγμή όταν θα προχωρήσει το πράγμα κάποια παραδείγματα στην Java.Reflect και πώς κάνεις invoke κάποια arbitrary method με ένα string και κάποιες παραμέτρους
5)Java Generics
6)Κάντε το Strategy pattern ακριβώς με τα βήματα παρμένα από το βιβλίο Head FIrst Design Patterns - αμέσως ο κόσμος θα καταλάβει ότι το subclassing δεν είναι πανάκεια - και πώς μπορούμε να χρησιμοποιήσουμε interfaces με έναν διαφορετικό τρόπο (http://books.google.com/books?id=GGpXN9 ... &q&f=false) - μόνο το 1ο κεφάλαιο δλδ το Strategy Pattern σου ανοίγει τα μάτια - και μπορεί να γίνει αναφορά σε σχέση με τα πακέτα της java για το Decorator Pattern (που χρησιμοποιείται στα classes των αρχείων), Singleton Pattern πχ για τις συνδέσεις με κάποια βάση, Factory Pattern όπως πχ στο Box.createVertical() και τον γνωστό μας Iterator.

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Wed Oct 17, 2012 9:24 pm
by ja_the_invincible
ΑΠΟ ΤΟ 0 ΛΕΕΙ Ο ΤΙΤΛΟΣ ΤΟΥ THREAD.Άμα πω κάτι από τα παραπάνω θα σηκωθούν να φύγουν όλοι και θα έχουν και δίκιο.Για πιο προχωρημένα concepts θα υπάρξουν άλλες διαλέξεις αυτός ο κύκλος διαλέξεων έχει ως στόχο την κατανόηση κάποιων βασικων πραγμάτων.

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Wed Oct 17, 2012 9:33 pm
by stoupeace
ja_the_invincible wrote:ΑΠΟ ΤΟ 0 ΛΕΕΙ Ο ΤΙΤΛΟΣ ΤΟΥ THREAD.Άμα πω κάτι από τα παραπάνω θα σηκωθούν να φύγουν όλοι και θα έχουν και δίκιο.Για πιο προχωρημένα concepts θα υπάρξουν άλλες διαλέξεις αυτός ο κύκλος διαλέξεων έχει ως στόχο την κατανόηση κάποιων βασικων πραγμάτων.
++++

Απλά χρειάζεται προσοχή σε κάποια λεπτά σημεία, αυτό κρατάω από το post του Zifnab.
Ορισμένα από αυτά τα τονίζει και ο Γιακουμάκης ήδη από τη Java1 πάντως (casting και χρήση της new), οπότε θα μπορούσες να πεις ότι είναι στο field των διαλέξεων αυτών.

Πλάκα πλάκα το χρειάζομαι κι εγώ ένα ξεσκόνισμα. ΝΑ ΕΡΘΩΩΩΩ?

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Wed Oct 17, 2012 9:45 pm
by ja_the_invincible
Πρέπει να γίνει κατανοητό ότι η θέση μας είναι ιδιαίτερα λεπτή στο πως θα πούμε αρκετά πράγματα ειδικά από την στιγμή που η πλειονότητα των παιδιων δεν έχει κάποιο προγραμματιστικό υπόβαθρο.Κάποια πράγματα παραλείπονται επίτηδες , γιατί το να εξηγήσουμε τι ακριβως κάνει μια κλήση τύπου System.out ή να πούμε πράγματα σχετικά με την Object την στιγμή που ακόμα δεν έχουμε δει πιο βασικά πράγματα θα μπερδέψει και θα απογοητεύσει τον κόσμο.Οπότε δουλεύουμε βήμα-βήμα και προσεχτικά πάντα , θα εκτιμούσα κάποιες προτάσεις που γίνονται να στέλνονται σε pm σε μένα ή σε κάποιο μέλος της ομάδας ( Nachos , necrofear , bstrds , moody , mosquitto ) για να μην μπερδεύεται ο κόσμος.Thanks και sorry αν ξέφυγα στο ύφος μου.

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Wed Oct 17, 2012 10:25 pm
by Zifnab
ja_the_invincible wrote:ΑΠΟ ΤΟ 0 ΛΕΕΙ Ο ΤΙΤΛΟΣ ΤΟΥ THREAD.Άμα πω κάτι από τα παραπάνω θα σηκωθούν να φύγουν όλοι και θα έχουν και δίκιο.Για πιο προχωρημένα concepts θα υπάρξουν άλλες διαλέξεις αυτός ο κύκλος διαλέξεων έχει ως στόχο την κατανόηση κάποιων βασικων πραγμάτων.
Ναι το διάβασα αυτό αλλά νομίζω ότι μετά από 10-15 διαλέξεις όταν θα έχεις πει πλέον interfaces κτλ καλό θα είναι να πεις και δυο τρία πράγματα που δεν μάθαμε ποτέ σε μάθημα στην Java - και το σημαντικό είναι πως μπορείς να παρουσιάσεις κάτι advanced με πολύ απλοϊκό τρόπο ;) Πχ εγώ δεν έμαθα ποτέ Java Generics και τα είδα απλά σε εφαρμογή στις δομές δεδομένων... Java Reflect το είδα μόνο σε κώδικα για κάποιο Sigmod paper του κ.Βασσάλου. Έννοιες σημαντικές παρ' όλα αυτά που έπρεπε να τις μαθαίνει κανείς τουλάχιστον στην Java II .. Γιατί από Gui και άγιος ο θεός..

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Thu Oct 18, 2012 12:38 am
by moody
Και assembly σε quad ...Αν φτάσουμε τις 15+ διαλέξεις,ναι θα δείξουμε αρκετά,και προφανώς τα περισσότερα θα καθοριστούν από τους πρωτοετείς,παρά από εμάς,τσπ,ξεκινάω καινούριο thread,στο οποίο καλό θα ήταν όλοι οι v>=2 να βοηθούσαν στην επίλυση αποριών των πρωτοετών.(και θα προτιμούσα αν δεν ρωτούσαν κάτι τρελό,να περίμενε ο καθένας μας 1-2 ώρες προκειμένου να απαντηθεί από πρωτοετή,και αν δεν,τότε να απαντηθεί από κάποιον μεγαλύτερο)

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 23, 2012 12:35 am
by Spartakos
Οι διαφάνειες από τη δεύτερη διάλεξη πότε και που θα ανέβουν ;

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 23, 2012 12:55 am
by nachos
Λογικά θα τις ανεβάσει ο ja από αύριο

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 23, 2012 1:05 am
by Spartakos
nachos wrote:Λογικά θα τις ανεβάσει ο ja από αύριο

Ok ευχαριστώ !! :)

Μια ερώτηση μόνο . Έγραψα αυτό :
public class mine1
{
public static void main(String [] args)
{
int x,y,z;
x = System.in.readInt("dwse akereo 1 ");
y = System.in.readInt("dwse akereo 2 ");
z = System.in.readInt("dwse akereo 3 ");
double mo;
mo = ((x+z+y)/3.0);
System.out.println("o mesos oros einai : "+mo);
}
}

και το cmd δεν μου το κάνει compile . Τι έχω κάνει λάθος ;
( Με τις σημειώσεις που μου βγάζει ως error το cmd δεν βγάζω άκρη )

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 23, 2012 1:27 am
by rexes
Διαβάζεις με λάθος τρόπο από το System.in! Καλυτερα θα ήταν να φτιάξεις ένα Scanner αντικείμενο -> "Scanner sc = new Scanner(System.in);" και μετά να διαβάσεις από αυτό ως εξής: int x = Integer.parseInt(sc.readLine());

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 23, 2012 1:35 am
by Spartakos
Ααα ωραία ευχαριστώ αλλά το κυρίως πρόβλημά μου είναι να καταλάβω για πιο λόγο είναι λάθος το System.in ;

Για να είμαι ειλικρινείς δεν το έχουμε μάθει ακόμα αλλά το κοίταξα λίγο στο Internet και το είδα σαν εντολή το " ... System.in.readInt();

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 23, 2012 1:41 am
by ja_the_invincible
Θα ανεβάσω αύριο τα παραδείγματα και θα δεις την υλοποίηση της readInt().Γενικά δεν είναι τόσο απλό να διαβάσεις από την κονσόλα χρειάζεται και κάποια γνωση πάνω σε try-catch ( θα τα δούμε πιο μετά αυτά ) οπότε για αρχή πάρε την συνάρτηση έτοιμη και πιο μετά θα την εξηγήσουμε βήμα-βήμα ;)

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 23, 2012 1:42 am
by rexes
Spartakos wrote:Ααα ωραία ευχαριστώ αλλά το κυρίως πρόβλημά μου είναι να καταλάβω για πιο λόγο είναι λάθος το System.in ;

Για να είμαι ειλικρινείς δεν το έχουμε μάθει ακόμα αλλά το κοίταξα λίγο στο Internet και το είδα σαν εντολή το " ... System.in.readInt();
Ως System.in.readInt() δεν νομίζω να το είδες. Μάλλον θα το είδες ως System.in.read(); και εκχωρούσε την τιμή του σε ένα int!

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 23, 2012 1:46 am
by Spartakos
Ναι μάλλον ... Όπως και να χει θα περιμένω μέχρι αύριο να δω και τις διαλέξεις και θα βρω κάποια άκρη!!

Ευχαριστώ πολύ και καλό βράδυ :)

Re: Προγραμματισμός από το 0 - Διάλεξη 2η

Posted: Tue Oct 23, 2012 2:03 am
by mosquito110
Επειδή το scanner που ανέφερε ο rexes πιο πάνω είναι σε ανώτερο επίπεδο-σε σχέση με το που είμαστε τώρα-και άμα αρχίσεις να ψάχνεις τώρα τέτοια πράγματα θα φρικάρεις, χρησιμοποιήσε το readInt που μαθαίνετε στο μάθημα.
Δηλαδή μην βιαστείς να φύγεις απο το acm.jar που χρησιμοποιείτε στο μάθημα(+ όλα τα παρεμφερή που περιλαμβάνει) για να μην μπερδευτείς...
Για αρχή καλό είναι να μην ξεφεύγεις από αυτά που κάνετε με το κ.Δημάκη.
Αργότερα θα δούμε κ τα πιο προχωρημένα!