skiabox Δημοσ. 26 Οκτωβρίου 2016 Δημοσ. 26 Οκτωβρίου 2016 Μιας και η typescript ανεβαίνει συνέχεια σε popularity ανοίγω αυτό το thread. Το webpack v2.0 θα είναι όλο σε Typescript! Δείτε το link : https://medium.com/webpack/sustaining-webpack-for-the-future-part-1-32bea7f9e8a2#.4z5t0tlio https://medium.com/webpack/sustaining-webpack-for-the-future-part-2-7055282d7864#.qivfq2x28 Και ένα γράφημα με τα downloads του webpack : 3
paparovic Δημοσ. 27 Οκτωβρίου 2016 Δημοσ. 27 Οκτωβρίου 2016 Έχεις λόγο να χρησιμοποιείς static types για web apps? Η ερώτηση δεν είναι αν είναι χρήσιμα τα static types γενικώς, εσύ αν έχεις χρήση που να δικαιολογεί το "κόστος" του static typing.
Επισκέπτης Δημοσ. 27 Οκτωβρίου 2016 Δημοσ. 27 Οκτωβρίου 2016 Αν έχεις ένα code base πάνω από 10.000 γραμμές δεν βλέπω γιατί να μην χρησιμοποιήσεις static typing. Ειδικά αν δουλεύουν πάνω στο ίδιο project περισσότεροι από ένας. Σε καθαρά υποκειμενικό επίπεδο προσωπικά την προτιμώ γιατί μου φαίνεται πιο ευανάγνωστος ο κώδικας.
skiabox Δημοσ. 27 Οκτωβρίου 2016 Μέλος Δημοσ. 27 Οκτωβρίου 2016 Σαν προγραμματιστής μισώ το dynamic typing. Πραγματικά δε βλέπω το λόγο της ύπαρξης του dynamic typing. Κάτι σαν ιστορικό λάθος. Ευτυχώς λοιπόν τα πράγματα πάνε προς την πλευρά μου και φαίνεται ότι έχουμε μαζική στροφή προς την typescript. Τον δε linter που χρησιμοποιώ τον έχω ρυθμίσει έτσι ώστε να δηλώνεις τα πάντα.
paparovic Δημοσ. 28 Οκτωβρίου 2016 Δημοσ. 28 Οκτωβρίου 2016 Αν έχεις ένα code base πάνω από 10.000 γραμμές δεν βλέπω γιατί να μην χρησιμοποιήσεις static typing. Ειδικά αν δουλεύουν πάνω στο ίδιο project περισσότεροι από ένας Γιατί δεν σου προσφέρει τίποτα στο πλαίσιο ανάπτυξης web εφαρμογών. Το πλήθος γραμμών και ο αριθμός των προγραμματιστών δεν έχει να κάνει τπτ με αυτό. Δεν θέλω να προκαταβάλλω το ΓΙΑΤΙ νομίζεις ότι το static typing κάνει κάτι που αξίζει τα μειονεκτήματά του - πάντα στο πλαίσιο των web εφαρμογών - οπότε θα σου απαντήσω επί συγκεκριμένων όταν θελήσεις να αναφερθείς. Σαν προγραμματιστής μισώ το dynamic typing. Πραγματικά δε βλέπω το λόγο της ύπαρξης του dynamic typing. Το ότι έχεις προτίμηση δεν είναι κακό. Το ότι δεν βλέπεις, πρέπει να το ... κοιτάξεις.
παπι Δημοσ. 28 Οκτωβρίου 2016 Δημοσ. 28 Οκτωβρίου 2016 Έχεις λόγο να χρησιμοποιείς static types για web apps? Η ερώτηση δεν είναι αν είναι χρήσιμα τα static types γενικώς, εσύ αν έχεις χρήση που να δικαιολογεί το "κόστος" του static typing. Βασικα εκατσα και ειδα αυτο. https://channel9.msdn.com/Events/Build/2016/B881 Απο τον αγαπημενο μας c# maker. Πριν το δω να πω την αληθεια, και γω ειχα την αποψη σου. Ειμαι του vanilla.js βλεπεις. Βεβαια τωρα ειμαι καραυπερ του, εφοσον μιλαμε για μια γλωσσα που γινεται compile σε javascript. Απο την μια εχεις τα καλα του static type για debug και απο την αλλη εχεις ενα ωραιοτατο script σε vanilla.js. 1
paparovic Δημοσ. 28 Οκτωβρίου 2016 Δημοσ. 28 Οκτωβρίου 2016 εφοσον μιλαμε για μια γλωσσα που γινεται compile σε javascript. Απο την μια εχεις τα καλα του static type για debug και απο την αλλη εχεις ενα ωραιοτατο script σε vanilla.js. Ένα πραγματικό πλεονέκτημα του static typing σε μια γλώσσα είναι τα optimizations που μπορεί να κάνει ο compiler (είτε μιλάμε για JIT είτε για ΑΟΤ). Αυτό είναι αδιαμφισβήτητο (παρόλο που οι διαφορές μικραίνουν αισθητά μιας και το type inferring γίνεται όλο και πιο sophisticated). Όπως καταλαβαίνεις, μιας και η Typescript γίνεται (αναγκαστικά) compiled σε JavaScript ... το πλεονέκτημα αυτό απλώς δεν γίνεται να υπάρξει εδώ. Όσο για το debug, νομίζω ότι μπορούμε να συμφωνήσουμε ότι δεν έχει καμία σχέση το life-cycle ανάπτυξης web εφαρμογών με αυτό π.χ. της C++, οπότε το πλεονέκτημα (που όντως είναι, σε τέτοιο setup) εδώ είναι πρακτικά ανύπαρκτο.
παπι Δημοσ. 28 Οκτωβρίου 2016 Δημοσ. 28 Οκτωβρίου 2016 Το debuging ειναι. Απλο παραδειγμα Foo(1) ; Και σκαει undefined bar... Σε strong type θα ειχες compile error επειδη πολυ απλα η φου δεν παιρνει int.
Επισκέπτης Δημοσ. 28 Οκτωβρίου 2016 Δημοσ. 28 Οκτωβρίου 2016 Όσο για το debug, νομίζω ότι μπορούμε να συμφωνήσουμε ότι δεν έχει καμία σχέση το life-cycle ανάπτυξης web εφαρμογών με αυτό π.χ. της C++, οπότε το πλεονέκτημα (που όντως είναι, σε τέτοιο setup) εδώ είναι πρακτικά ανύπαρκτο. Δηλαδή όποιος δεν γράφει λογισμικό για μαγνητικούς τομογράφους ή για τον διαστημικό σταθμό δεν έχει δικαίωμα στο debugging; Και πέντε λεπτά να γλυτώσεις από ένα τυπογραφικό λάθος κέρδος είναι. Αλλά τέλος πάντων, αφού δεν σ' αρέσει η Typescript γιατί δεν μας λες το γιατί;
skiabox Δημοσ. 28 Οκτωβρίου 2016 Μέλος Δημοσ. 28 Οκτωβρίου 2016 Ναι και ένα upcoming tutorial με front-end/back-end όλα σε typescript :
paparovic Δημοσ. 29 Οκτωβρίου 2016 Δημοσ. 29 Οκτωβρίου 2016 Δηλαδή όποιος δεν γράφει λογισμικό για μαγνητικούς τομογράφους ή για τον διαστημικό σταθμό δεν έχει δικαίωμα στο debugging; Και πέντε λεπτά να γλυτώσεις από ένα τυπογραφικό λάθος κέρδος είναι. Αλλά τέλος πάντων, αφού δεν σ' αρέσει η Typescript γιατί δεν μας λες το γιατί; α) 1. Δεν είναι τζάμπα το να χρησιμοποιείς static typing, οπότε στο "κέρδος" βάλε και το "κόστος". 2. Αν υποθέσουμε ότι κάνεις σύγχρονη ανάπτυξη web apps, έχεις μια μεθοδολογία μέχρι να φτάσει ο κώδικας στο production η οποία είναι υπεραρκετή. β) Το έχω πει, ξαναδιάβασε. Το debuging ειναι. Απλο παραδειγμα Foo(1) ; Και σκαει undefined bar... Σε strong type θα ειχες compile error επειδη πολυ απλα η φου δεν παιρνει int. Και πώς ακριβώς πέρασε το test suite σου; Γράφεις tests φαντάζομαι, γιατί κανείς μα κανείς δεν ισχυρίζεται ότι "χρησιμοποιώ static typing και άρα ποιος χέζει το testing", οπότε υποθέτω ούτε εσύ.
Επισκέπτης Δημοσ. 30 Οκτωβρίου 2016 Δημοσ. 30 Οκτωβρίου 2016 @paparovic Ποια είναι η κύρια γλώσσα προγραμματισμού που χρησιμοποιείς;
defacer Δημοσ. 30 Οκτωβρίου 2016 Δημοσ. 30 Οκτωβρίου 2016 Προσωπική άποψη, typescript δεν επειδή είναι superset της Javascript άρα επιρρεπής στις ίδιες βλακείες. Ναι ΟΚ μπορείς να βάλεις linters (δεν ξέρω αν υπάρχουν αλλά θεωρητικά γίνεται) να σου κόβουν όλα αυτά που δε θες, αλλά τότε what is even the reason να κρατήσεις το back compat και τα μπαγκάζια που έρχονται μαζί του; Χίλιες φορές κάτι που ξεκινάει από καινούρια θεμέλια και μπορεί να κάνει τα πράγματα σωστά, όπως coffee. Παρόλο που δεν έχω χρησιμοποιήσει coffee ποτέ εκτός μιας φοράς που αναγκάστηκα να φτιάξω ένα bug. Πραγματικά δε βλέπω το λόγο της ύπαρξης του dynamic typing. Κάτι σαν ιστορικό λάθος. Όπως είπε ο paparovic, να το κοιτάξεις. Γενικά μιλώντας, αν δεν έχεις δημιουργήσει ο ίδιος 2-3 γλώσσες προγραμματισμού και "δεν βλέπεις" τέτοια πράγματα, είναι επειδή δε μπορείς να δεις αρκετά μακριά. Ένα πραγματικό πλεονέκτημα του static typing σε μια γλώσσα είναι τα optimizations που μπορεί να κάνει ο compiler (είτε μιλάμε για JIT είτε για ΑΟΤ). Αυτό είναι αδιαμφισβήτητο (παρόλο που οι διαφορές μικραίνουν αισθητά μιας και το type inferring γίνεται όλο και πιο sophisticated). Όπως καταλαβαίνεις, μιας και η Typescript γίνεται (αναγκαστικά) compiled σε JavaScript ... το πλεονέκτημα αυτό απλώς δεν γίνεται να υπάρξει εδώ. Όπως αναφέρεις όμως, εδώ και πολύ καιρό οι compilers με type inference και "ρεαλιστικό" κώδικα παράγουν μια χαρά optimized κώδικα ακόμα και σε dynamically typed κώδικα. 1. Δεν είναι τζάμπα το να χρησιμοποιείς static typing, οπότε στο "κέρδος" βάλε και το "κόστος". Γενικά υπάρχει κέρδος, αλλά αυτό +100. 1
skiabox Δημοσ. 31 Οκτωβρίου 2016 Μέλος Δημοσ. 31 Οκτωβρίου 2016 defacer : Μιας και δεν είμαι ραγιάς να δεχθώ φραστικές επιθέσεις, μπαίνεις στη γνωστή λίστα αγνόησης , μιας και από ότι έχω παρατηρήσει σου αρέσουν οι φραστικές προσωπικές επιθέσεις (δεν ξέρω τι έχει συμβεί στη ζωή σου και σε έχει κάνει τόσο σκοτεινή ψυχή). Δεν έχω ούτε δευτερόλεπτο χρόνο να ασχοληθώ με άρρωστες περιπτώσεις.
Προτεινόμενες αναρτήσεις
Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε
Πρέπει να είστε μέλος για να αφήσετε σχόλιο
Δημιουργία λογαριασμού
Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!
Δημιουργία νέου λογαριασμούΣύνδεση
Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.
Συνδεθείτε τώρα