Προς το περιεχόμενο

Τι πιστεύετε για τα πολλά έτοιμα πράγματα (APIs);


Vector2D

Προτεινόμενες αναρτήσεις

Στα MVC υπάρχει ένας κανόνας που ακολουθείτε από όλους τους προγραμματιστές σε όλα τα frameworks... στον χύμα κώδικα μακαρονάδα δεν υπάρχει κανένας κανόνας, εκτός από αυτόν που έχει στο μυαλό του ο εκάστοτε προγραμματιστής.

 

Σε καμιά περίπτωση δεν ίδιος ο χρόνος για κάποιον στο να διαβάσει και να προσθέσει κώδικα σε MVC με το να διαβάσει και να προσθέσει κώδικα σε μια άναρχη εφαρμογή. 

 

Και το κυριότερο οι IDE που χρησιμοποιούν οι προγραμματιστές και που κάνουν ευκολότερη τη συγγραφή κώδικα σε καμιά περίπτωση δεν θα μπορέσουν να αποδώσουν ούτε το 10% με custom άναρχο κώδικα.

  • Like 2
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • Απαντ. 34
  • Δημ.
  • Τελ. απάντηση

Συχνή συμμετοχή στο θέμα

Συχνή συμμετοχή στο θέμα

Με μεθοδολογία οργάνωσης των αρχείων, των μεταβλητών και της βάσης δεδομένων δε χρειάζεται MVC για να γράφεις γρήγορα και ευανάγνωστα.

 

Το δύσκολο είναι η δημιουργία του filesystem και η διαχείριση των μεταβλητών.

 

Από αυτό το thread πείρα την ιδέα να δημοσιεύσω την μεθοδολογία μου στη δημιουργία PHP app . Από χτες φτιάχνω ένα app που θα μπορεί ο καθένας να γράφει δομημένο πρόγραμμα μόνο και μόνο με τη δημιουργία του filesystem και την εύκολη διαχείριση των μεταβλητών και της db. Θα το ανακοινώσω.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Για να καταλάβω, εφόσον δεν χρησιμοποιείς MVC, τα queries, τα logic και το view τα έχεις σε ένα αρχείο; ή χρησιμοποιείς άλλου είδους διάταξη ανάλογη του MVC;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Τα MVC νομίζω είναι επακόλουθο της ευκολίας της PHP. Προσπαθώ να χρησιμοποιήσω τα καλά τους χωρίς να επηρεάζω τον κώδικα του προγραμματιστή.

 

Παρακάτω είναι η δομή που χρησιμοποιώ μέχρι σήμερα στις app που κάνω.

 

Αυτά τα χρησιμοποιώ ήδη.

1) Με τη χρήση του apache δεν έχω στατικό filesystem, αλλά δυναμικό.

2) Έχω το logic φάκελο και το view φάκελο. 1 αρχείο στο καθένα για τη κάθε σελίδα.

3) Έχω το core.php -functions για τη διαχείριση της db-

4) Υπάρχει ένας φάκελος functions (δε χρησιμοποιώ classes)

5) Τα variables συνδέονται με τα includes με τέτοιο τρόπο έτσι ώστε ποτέ να μη χρησιμοποιώ define ή sessions για να τα διαχειριστώ. Και τα ξεχωρίζω με $config['db_username'] για όλο το site και $page['title'] για τη σελίδα .

 

Αυτό θέλω να το κάνω για να το δημοσιεύσω.

Κάθε σελίδα θα έχει entry στη db με το path από το url, το path από τα view και logic (data το λέω) και τα css - js includes της header και ότι άλλο στατικό χρειαστεί να φορτώνει η σελίδα. Έτσι από το htaccess στο parser.php φορτώνει τα ανάλογα αρχεία από το filesystem.

 

Έτσι και η δομή δεν είναι άναρχη αλλά και ο προγραμματιστής ξέρει τι κάνει με σκέτο κώδικα php

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Οπότε δεν τίθεται θέμα χρόνου εξοικείωσης, αλλά θέμα συνήθειας, καθώς όποιος αναλάβει να διαβάσει και να συνεχίσει τον κώδικα σου θα πρέπει να μάθει τη δομή του κώδικα και τον τρόπο σκέψης σου και μπορεί να του πάρει πολύ περισσότερο χρόνο από το να συνεχίσει τον κώδικα που είναι γραμμένος σε κάποιο γνωστό framework

 

Σε προσωπικό/ερασιτεχνικό επίπεδο είναι κάτι θεμιτό και βοηθάει στην ανάπτυξη των γνώσεων, σε επαγγελματικό επίπεδο είναι εντελώς ανούσιο, καθώς καμιά εταιρεία δεν θα επενδύσει σε home made κώδικα τη στιγμή που υπάρχουν αρκετά σύγχρονα και δημοφιλή frameworks.

 

Έχω βρεθεί σε κάποιες "εταιρείες" που χρειάστηκε να συνεχίσω κώδικα προηγούμενου προγραμματιστή και βλαστήμησα την ώρα που πήγα. Κανένας κανόνας και καμιά λογική στον κώδικα... ούτε αυτός που τον έγραψε δεν θα μπορούσε να τον συνεχίσει μετά από μήνες. Το ίδιο παθαίνω κι όταν διαβάζω δικό μου κώδικα που έγραψα πριν από 10 και 15 χρόνια με την λογική του δικού μου "MVC"

  • Like 2
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Είναι και αυτό που λέτε... ότι ο 'Μήτσος', σήμερα είναι, αύριο δεν είναι! Οπότε γιατί να δουλεύει με Custom CMS μια εταιρεία?

 

(Όπως είπα) τα CMS προσφέρουν αρκετά πράγματα που σε βγάζουν από τον κόπο (clean urls/seo optimization/drupal_views πολύ δυνατά)...

 

Εντάξ, εμένα το σιτε μου είναι ένα απλό σιτε που παρουσιάζω κάποια 'PTC Sites' και αλλάζει μια στο τόσο. Αν ήταν ένα Blog δεν θα είχα την όρεξη να σπαταλίσω τόσο χρόνο ώστε να φτιάξω κάτι καλό και φιλικό για τις μηχανές αναζήτησης. (Κακά τα ψέματα! μόνο η google μας ενδιαφέρει)

 

Εντάξ... εγώ παιδιά δεν είμαι του Web. Έχω ασχοληθεί πολύ λίγο για να είμαι μέσα στα πράγματα.

Κακά τα ψέματα! στην Ελλάδα μόνο για Web υπάρχουν δουλειές.

 

Δεν σκοπεύω να ακολουθήσω το Web... αλλά αν δεν βρώ δουλειά πάνω σε C/C++/.NET/Game Developing... τι να κάνω; θα 'ρίξω' το επίπεδό μου.

 

Με απλά λόγια: Δεν είμαι των άκρων. Και χωρίς καμία βοήθεια (API/Framework) είναι χαζό ΑΛΛΑ και προγραμματισμός μόνο με API's/Frameworks δεν είναι προγραμματισμός... βαρεμάρα-πλήξη είναι.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

E λοιπόν πρώτη φορά βλέπω ανθρωπο που έχει τη δυνατότητα να πάει θεσσαλονίκη από εγνατία οδό(ευθεία) αλλά αυτός προτυμεί να πάει από καστανιά(πιο πολλές στροφές πεθαίνεις αλλά τουλάχιστον κάνεις στάση για σουβλάκι)... :P

  • Like 3
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

E λοιπόν πρώτη φορά βλέπω ανθρωπο που έχει τη δυνατότητα να πάει θεσσαλονίκη από εγνατία οδό(ευθεία) αλλά αυτός προτυμεί να πάει από καστανιά(πιο πολλές στροφές πεθαίνεις αλλά τουλάχιστον κάνεις στάση για σουβλάκι)... :P

 

Α μπράβο! το ταξίδι μετράει!

 

-- 1 σουβλάκι κοτόπουλο απ'όλα χωρίς κρεμύδι + 1 λουκάνικο χοιρινό σε πίτα και αυτό απ'όλα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ε ξεκίνα για κάπου λοιπόν και μην παραπονιέσαι για τους δρόμους που δεν σου αρέσουν, ακόμα ούτε στα πρώτα διόδια δεν έχεις φτάσει.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

OP το θέμα που άνοιξες είναι και πολλών άλλων προγραμματιστών και εγώ την είχα περάσει αυτήν την φάση.

 

Έχεις δίκιο ότι το να προγραμματίζεις πάνω σε API (τυπου cakePHP) ή σε GUI (τύπου wordpress) δεν είναι προγραμματισμός. Για την ακρίβεια δεν είναι software engineering αλλά application programming.

 

Έαν θέλεις να γίνεις καλύτερος επαγγελματίας προγραμματιστής πρέπει να δεις την συνολική εικόνα (και να ξέρεις ότι καλύτερος programmer από κάποιο σημείο και μετά γίνεσαι χωρίς κώδικα). Είσαι μέλος μιας ομάδας (που αλλάζει ανά καιρούς) και για να συντονιστεί πρέπει να ακολουθεί κάποιους κανόνες (ένα από τα οποία είναι και το framework). Έαν ήσουν προγραμματιστής με πολύχρονη εμπειρία σε τέτοια συστήματα και είχες τέτοια ομάδα θα έπρεπε είτε φτιάξεις είτε να διαλέξεις εσύ ένα framework. Όμως επειδή οι συσσωρευμένη γνώση και εμπειρία που έχουν αυτά τα framework είναι τρομερά υψηλή λογικά θα διάλεγες ένα ετοιμο σύμφωνα με τα requirements. Επομένως είναι no-brainer η χρήση τους σε ένα τέτοιο περιβάλλον ειδικά εαν σκεφτείς και το πόσο παραγωγικός γίνεσαι όταν το μάθεις.

 

Από εκεί και πέρα αυτό που μπορείς να κάνεις για να μην βαριέσαι (= να εξελίσεσαι ως προγραμματιστής) είναι:

  • Να αλλάξεις δουλεία (πχ πήγαινε να δουλέψεις σε εταιρίες που φτιάχνουν framework ή έχουν εξειδικευμένα req.)
  • Να μην αλλάξεις δουλεία και να συνειδητοποιείσεις ότι το να οργανώνεις ένα project και να το τρέχεις σωστά είναι τρομερά challenging πχ project management, quality, customer communication κτλ κτλ (μη τεχνικές ικάνοτητες)
  • Να μην αλλάξεις δουλεία και να ξεκινήσεις να διαβάζεις τον κώδικα του framework που χρησιμοποιείς  (εξειδικευση)
  • Να μην αλλάξεις δουλεία και αρχίζεις να αναλαμβάνεις πιο σύνθετα project που θέλουν πιο σύνθετα ή διαφορετικά framework (ποικιλία)
  • Να μην αλλάξεις δουλεία και να ζητήσεις ελεύθερο χρόνο για να κάνεις commits σε framework που χρησιμοποιείτε στην δουλεία (εξαιρετική εξειδικευση)
  • Να μην αλλάξεις δουλεία και να αρχίσεις την ανάπτηξη εργαλείων που θα σε βοηθάνει στην δουλεία (π.χ. downtime logger για όλα τα site που έχετε αναπτύξει, puppet scripts για dev και production environment κτλ κτλ)
  • Να μην αλλάξεις δουλεία και οργανώσετε peer learning σεμινάρια για νέες τεχνολογίες που χρησιμοποιείτε ή που θα θέλατε να χρησιμοποιήσετε.
  • Να μην αλλάξεις δουλεία και στον ελεύθερο σου χρόνο να ασχολείσαι με πιο ενδιαφέροντα programming projects (hobby)
  • Έναν συνδιασμό των παραπάνω

σίγουρα θα υπάρχουν κι άλλες ιδέες, απλά εκμετελεύσουν την όρεξή σου και πάρε πρωτοβουλίες.

Επεξ/σία από Alch3M1St
  • Like 1
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Είναι και αυτό που λέτε... ότι ο 'Μήτσος', σήμερα είναι, αύριο δεν είναι! Οπότε γιατί να δουλεύει με Custom CMS μια εταιρεία?

 

(Όπως είπα) τα CMS προσφέρουν αρκετά πράγματα που σε βγάζουν από τον κόπο (clean urls/seo optimization/drupal_views πολύ δυνατά)...

 

Εντάξ, εμένα το σιτε μου είναι ένα απλό σιτε που παρουσιάζω κάποια 'PTC Sites' και αλλάζει μια στο τόσο. Αν ήταν ένα Blog δεν θα είχα την όρεξη να σπαταλίσω τόσο χρόνο ώστε να φτιάξω κάτι καλό και φιλικό για τις μηχανές αναζήτησης. (Κακά τα ψέματα! μόνο η google μας ενδιαφέρει)

 

Εντάξ... εγώ παιδιά δεν είμαι του Web. Έχω ασχοληθεί πολύ λίγο για να είμαι μέσα στα πράγματα.

Κακά τα ψέματα! στην Ελλάδα μόνο για Web υπάρχουν δουλειές.

 

Δεν σκοπεύω να ακολουθήσω το Web... αλλά αν δεν βρώ δουλειά πάνω σε C/C++/.NET/Game Developing... τι να κάνω; θα 'ρίξω' το επίπεδό μου.

 

Με απλά λόγια: Δεν είμαι των άκρων. Και χωρίς καμία βοήθεια (API/Framework) είναι χαζό ΑΛΛΑ και προγραμματισμός μόνο με API's/Frameworks δεν είναι προγραμματισμός... βαρεμάρα-πλήξη είναι.

 

Δεν καταλαβαίνω γιατί ένας προγραμματιστής πρέπει να περιοριστεί στην Ελλάδα. Υπάρχουν άπειρες remote δουλειές εκεί έξω οι οποίες αφορούν και σοβαρό Web Development.και βέβαια πληρώνουν και πολύ πολύ καλύτερα.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

 Καλημέρα. Σχετικά με το θέμα νομίζω πως η χρήση api διευκολύνει, τυποποιεί, ομαδοποιεί εντολές, αλλά και ανάλογα το μέγεθος του, τον σχεδιασμό του, την δυσκολία ή ευκολία κατανόησης του, την πολυπλοκότητα του.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

  • 4 εβδομάδες αργότερα...

Για εκπαιδευτικούς σκοπούς είναι μία χαρά ο custom κώδικας, με την custom λογική οργάνωση, χωρίς design patterns, χωρίς versioning strategy, χωρίς dependency και package system και χωρίς security checking από community.

 

 

Όταν όμως κάποιος θέλει να έχει φτιάξει κάτι που να στέκεται στον χρόνο, να μπορεί να το αναβαθμίσει εύκολα, να έχει σύγχρονο (με ό,τι συνεπάγεται) κώδικα (π.χ. "δεν χρησιμοποιώ κλάσεις", εν έτη 2015, vs IoC pattern κτλ), να μπορεί να διαχειριστεί τα πακέτα που χρησιμοποιεί και να κάνει εύκολο deploy τότε είτε μισθώνει ένα group από φτασμένους s/w engineers, τους χρηματοδοτεί για 2 - 3 χρόνια και του φτιάχνουν ένα framework είτε επιλέγει κάτι από τις στιβαρές λύσεις (π.χ. Symfony, Laravel κτλ). 

 

 

Το εάν είναι "έτοιμο" ή όχι, είναι ανούσιο κατ' εμέ. Τι σημαίνει έτοιμο; Και η PHP έτοιμη είναι. Γιατί δεν κάνει κάποιος την δική του γλώσσα αντί να πάρει κάτι έτοιμο; 

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πολύ ενδιαφέρουσα ερώτηση!

Δηλαδή παιδιά, εάν κάποιος χρησιμοποιεί έτοιμα Plugins για autocomplete, form verification θεωρείται ότι το παρακάνει; Εφόσον υπάρχουν έτοιμα, γιατί να καθίσεις και να τα ξαναγράψεις, εφόσον δεν θες να του προσθέσεις κάτι επιπλέον?

 

Για να πω την αλήθεια, πάντα ένιωθα αμήχανα όταν αναζητούσα για έτοιμη δουλεια :fear:

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πολύ ενδιαφέρουσα ερώτηση!

Δηλαδή παιδιά, εάν κάποιος χρησιμοποιεί έτοιμα Plugins για autocomplete, form verification θεωρείται ότι το παρακάνει; Εφόσον υπάρχουν έτοιμα, γιατί να καθίσεις και να τα ξαναγράψεις, εφόσον δεν θες να του προσθέσεις κάτι επιπλέον?

 

Για να πω την αλήθεια, πάντα ένιωθα αμήχανα όταν αναζητούσα για έτοιμη δουλεια :fear:

 

Μην πέρνεις στα σοβαρά μερικούς από πάνω που γκρινιάζουν για τα framework. Χρησιμοποίησε ό,τι διευκολύνει εσένα να γίνεσαι πιο παραγωγικός. Ο άλλος είναι μαζοχιστής και θέλει να γράφει σε javascript τον κώδικα για dropdown μενού.

 

Δεν σημαίνει ότι είναι λογικό. Αντί να χρησιμοποιήσεις 2 κλήσεις κλάσσεων σε Boostrap.

Το ίδιο και για την χρήση διάφορων frameworks. Από .NET μέχρι AngularJs, KnockoutJS ή ακόμα και τελείως έτοιμα πράγματα του Kendo. (τα οποία είναι τρομερά και το λέω μιας και έχω αγοράσει άδεια χρήσης)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα

  • Δημιουργία νέου...