Skip to content

blancberger/cf9-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

☕ CF9 Java Exercises

Ασκήσεις και παραδείγματα σε Java από το πρόγραμμα Coding Factory 9 του Οικονομικού Πανεπιστημίου Αθηνών (AUEB).

Java IDE License


📋 Περιγραφή

Αυτό το repository περιέχει 150+ ασκήσεις και παραδείγματα σε Java, οργανωμένα ανά κεφάλαιο, που καλύπτουν θέματα από τα βασικά της γλώσσας μέχρι προχωρημένα concepts του αντικειμενοστρεφούς προγραμματισμού. Τα αρχεία δημιουργήθηκαν κατά τη διάρκεια του προγράμματος Coding Factory 9 (CF9) του AUEB.


📁 Δομή Project

src/
├── Main.java                          # Entry point
└── gr/aueb/cf/cf9/
    ├── ch1/   – Εισαγωγή στη Java (Hello World, βασικές πράξεις)
    ├── ch2/   – Τύποι δεδομένων & μεταβλητές (Scanner, typecasting, μετατροπές)
    ├── ch3/   – Δομές ελέγχου — if/else, ternary, while loops
    ├── ch4/   – For loops, switch statements & expressions
    ├── ch5/   – Μέθοδοι (overloading, recursion, factorial, power)
    ├── ch6/   – Πίνακες (arrays, sorting, searching, stacks, queues)
    ├── ch7/   – Strings (manipulation, StringBuilder, anagrams, palindromes)
    ├── ch8/   – Exception Handling (try-catch-finally, custom exceptions)
    ├── ch9/   – File I/O (Java IO, NIO, binary files)
    ├── ch11/  – OOP — Κλάσεις & Αντικείμενα (classes, constructors, encapsulation)
    ├── ch12/  – Encapsulation & Access Modifiers (Account example)
    ├── ch13/  – Static members, Utility classes & Singleton Pattern
    ├── ch14/  – Κληρονομικότητα (Inheritance, Point2D/3D, Bank App με Exceptions)
    ├── ch15/  – Interfaces, Abstract Classes & Polymorphism (ISpeakable, Marker, SchoolApp)
    ├── ch16/  – Advanced OOP (Builder Pattern, Callbacks, Copy Constructor, Equals/HashCode, Threads)
    ├── ch17/  – Generics & Collections (Lists, Sets, Maps, Streams, Enums, Linked Lists, Sorting)
    ├── ch18/  – MVC Architecture — Bank Application
    ├── ch19/  – Regular Expressions (Regex, Pattern matching, Validation)
    ├── review/                        # Ασκήσεις επανάληψης
    │   ├── junior_level/
    │   ├── mid_level/
    │   ├── senior_level/
    │   └── challenges/
    ├── review_challenges/             # Αλγοριθμικές προκλήσεις (Fibonacci, primes, sorting κ.ά.)
    └── solutions/                     # Λύσεις ασκήσεων ανά κεφάλαιο

🧩 Θεματικές Ενότητες

Κεφάλαιο Θέμα Αρχεία
Ch 1 Εισαγωγή — Hello World, Βασικές πράξεις 2
Ch 2 Τύποι δεδομένων, Scanner, Μετατροπές 12
Ch 3 Δομές ελέγχου (if/else, while, ternary) 20
Ch 4 For loops, Switch statements 10
Ch 5 Μέθοδοι, Overloading, Recursion 16
Ch 6 Πίνακες, Sorting, Searching, Stack, Queue 22
Ch 7 Strings, StringBuilder, Palindrome, Anagram 21
Ch 8 Exception Handling 10
Ch 9 File I/O (Java IO & NIO) 4
Ch 11 OOP — Κλάσεις & Αντικείμενα 6
Ch 12 Encapsulation & Access Modifiers 2
Ch 13 Static, Utility Classes, Singleton 5
Ch 14 Κληρονομικότητα (Inheritance) 7
Ch 15 Interfaces, Abstract Classes, Polymorphism 16
Ch 16 Builder, Callbacks, Equals/HashCode, Threads 10+
Ch 17 Generics, Collections, Streams 15+
Ch 18 MVC Architecture — Bank App
Ch 19 Regular Expressions 7

🏆 Coding Challenges

Στον φάκελο review_challenges/ υπάρχουν 20 αλγοριθμικές προκλήσεις, μεταξύ άλλων:

  • 🔢 Fibonacci sequence
  • 🔍 Find prime numbers
  • 🔄 Palindrome & Anagram detection
  • 📊 Diagonal difference, Min/Max sum
  • 🔃 Array rotation & frequency analysis
  • 🏗️ Staircase pattern
  • 🔗 URL encoding
  • 📈 Compare triplets (HackerRank-style)

🚀 Πώς να τρέξετε τα αρχεία

Προαπαιτούμενα

  • Java JDK 17+ εγκατεστημένο
  • IntelliJ IDEA (συνιστάται) ή οποιοδήποτε Java IDE

Εκτέλεση

  1. Clone το repository:

    git clone https://github.com/blancberger/cf9-java.git
    cd cf9-java
  2. Ανοίξτε το project στο IntelliJ IDEA:

    • File → Open → Επιλέξτε τον φάκελο του project
  3. Εκτελέστε οποιοδήποτε αρχείο:

    • Δεξί κλικ σε ένα .java αρχείο → Run
    • Ή χρησιμοποιήστε το ▶️ icon δίπλα στη main μέθοδο

Εναλλακτικά μέσω terminal:

cd src
javac gr/aueb/cf/cf9/ch1/HelloWorld.java
java gr.aueb.cf.cf9.ch1.HelloWorld

📂 Package Structure

gr.aueb.cf.cf9
├── ch1 ... ch19    → Κεφάλαια μαθήματος
├── review          → Ασκήσεις επανάληψης (Junior / Mid / Senior)
├── review_challenges → Αλγοριθμικές προκλήσεις
└── solutions       → Λύσεις ασκήσεων

🛠️ Τεχνολογίες

  • Γλώσσα: Java 21+
  • IDE: IntelliJ IDEA
  • Build: Vanilla Java (χωρίς Maven/Gradle)
  • Concepts: OOP, Collections, Generics, Streams, File I/O, MVC, Design Patterns, Regex

👨‍💻 Συγγραφέας

📚 Coding Factory 9 — AUEB (Οικονομικό Πανεπιστήμιο Αθηνών) ,www.aueb.gr


📄 Άδεια Χρήσης

Αυτό το project διατίθεται υπό την άδεια MIT.
Μπορείτε ελεύθερα να το χρησιμοποιήσετε, τροποποιήσετε και διανείμετε.


⭐ Αν σας φάνηκε χρήσιμο, μη διστάσετε να κάνετε star στο repository!

About

Ασκήσεις και παραδείγματα σε Java από το πρόγραμμα Coding Factory 9 του Οικονομικού Πανεπιστημίου Αθηνών (AUEB).

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages