πώς να προφέρει ethereal;
e-the-re-al
Χρησιμοποιούμε [MbUnit](http://www.mbunit.com/) και [Rihno χλευάζει](http://www.ayende.com/Blog/archive/2007/03/28/Rhino-Mocks-3.0-Released.aspx) και να αποδειχθεί ότι λειτουργεί πολύ καλά μαζί. Όταν κάνετε TDD θα πρέπει σχεδόν σίγουρα να κάνετε κάποια μορφή ένεσης εξάρτησης, ενώ αυτό μπορεί να γίνει με το χέρι, την αξία του κοιτάζοντας ένα δοχείο ΔΟΕ, όπως [το Κάστρο του Windsor](http://www.castleproject.org/projects/windsor/) .


Είναι καλά αξίζει κοιτάζοντας την οθόνη του Ιωάννη Παύλου Bodhood του ρίχνει για να ξεκινήσετε. [Blog JPB του](http://www.jpboodhoo.com/) για να ρωτήσει και να σταματήσει αν πατήσεις κάτι άλλο εκτός από `y’ ή ‘y’

read -p "are you sure? " -n 1 -r

echo # (optional) move to a new line

if [[ ! $reply =~ ^[yy]$ ]]

then

echo -ne "\ncancelled\n"

exit 1

fi

echo -ne "\n"

το μυστικό είναι η κανονική έκφραση (regular experssion) '^[y… [Κόκκινο-μαύρο](http://en.wikipedia.org/wiki/Red-black_tree) είναι καλύτερο από το AVL για την εισαγωγή-βαριές εφαρμογές. Αν έχετε προβλέψει σχετικά ομοιόμορφη εμφάνιση-up, στη συνέχεια, κόκκινο-μαύρο είναι ο τρόπος να πάει. Αν έχετε προβλέψει μια σχετικά ισορροπημένη ματιά-up, όπου θεωρείται πιο πρόσφατα στοιχεία είναι πιο πιθανό να είναι ορατό και πάλι, θέλετε να χρησιμοποιήσετε [τα δέντρα άτεχνος](http://en.wikipedia.org/wiki/Splay_tree) . Σε ένα καθαρό λειτουργικό στιλ, δεν πρόκειται ποτέ να αντικαταστήσετε κάθε μεταβλητή.


Μια αναλογία θα ήταν να χωροχρόνο στη φυσική. Αν θεωρείτε τον κόσμο ως 3δ, τότε τα αντικείμενα δεν έχουν σταθερές θέσεις - κινούνται πάροδο του χρόνου. Για να φέρει τα μαθηματικά για να φέρουν στο φυσικό κόσμο, ως εκ τούτου, να προσθέσετε μια διάσταση χρόνου και να εξετάσει τις τιμές των διαφόρων ιδιοτήτων σε συγκεκριμένες χρονικές στιγμές. Με τον τρόπο αυτό, έχουμε κάνει τα αντικείμενα της μελέτης μας σε σταθερές. Ομοίως, στον προγραμματισμό, υπάρχει μια εννοιολογική απλότητα που θα είχε από την εργασία με αμετάβλητες τιμές. Αντικείμενα με μια ταυτότητα στον πραγματικό κόσμο μπορεί να μοντελοποιηθεί ως μία ακολουθία αναλλοίωτες αξίες (τα κράτη του αντικειμένου στην αύξηση φορές) και όχι ως μια ενιαία τιμή που αλλάζει.


Φυσικά οι λεπτομέρειες για το πώς να συνδέσει την ακολουθία των τιμών σε μια «ταυτότητα αντικειμένου» μπορεί να είναι λίγο τριχωτό. Haskell έχει [Μονάδες](http://en.wikipedia.org/wiki/Monad_(functional_programming)) που θα αφήσει το μοντέλο κράτους. [Λειτουργική Αντιδραστική Προγραμματισμός](http://en.wikipedia.org/wiki/Functional_reactive_programming) είναι μια πιο κυριολεκτική προσπάθεια μοντελοποίηση αντικειμένων στον κόσμο με καθαρό λειτουργικό ενημερώσεις, που πιστεύω ότι είναι μια πολλά υποσχόμενη κατεύθυνση για τον προγραμματισμό.


Θα σημειωθεί ότι Clojure, σε αντίθεση με Haskell, δεν είναι καθαρό, και μπορείτε να ενημερώσετε τις μεταβλητές, όπως προτείνατε. Αν κάνετε ενημέρωση μόνο μερικές μεταβλητές σε υψηλό επίπεδο, θα εξακολουθούν πιθανώς να απολαύσουν πολλές από τις εννοιολογικές οφέλη απλότητα του λειτουργικού προγραμματισμού. SetForegroundWindow υποτίθεται ότι θα κλέψει την εστίαση και υπάρχουν ορισμένες περιπτώσεις όπου θα αποτύχει.



> 
> Η λειτουργία SetForegroundWindow βάζει το νήμα που δημιούργησε το καθορισμένο παράθυρο στο προσκήνιο και ενεργοποιεί το παράθυρο. εισαγωγής πληκτρολογίου κατευθύνεται προς το παράθυρο
> 
> 
> 


Δοκιμάστε τη λήψη της εστίασης με [SetCapture](http://msdn.microsoft.com/en-us/library/ms646262.aspx) πριν από την πραγματοποίηση της κλήσης. Επίσης εξετάσουμε διαφορετικούς τρόπους να φέρει το παράθυρο προς τα εμπρός: SetForeGroundWindow, SetActiveWindow, ακόμη και προσομοίωση ένα κλικ του ποντικιού μπορείτε να το κάνετε αυτό. Ήρθα προς την αντίθετη κατεύθυνση, από ένα φόντο EE πήρα στον προγραμματισμό και πήγε πίσω στο σχολείο για να πάρει ένα βαθμό CS. Θα ήθελα να συστήσω ξεκινάμε με κάτι που συνδυάζει και τα δύο, προκειμένου να καταστεί η μετάβαση λίγο πιο ομαλή. Υπάρχουν τόνοι των χομπίστα βιβλία όπως [γίνουν τα πράγματα Talk](http://rads.stackoverflow.com/amzn/click/0596510519) , και [Hardware Hacking έργα](http://rads.stackoverflow.com/amzn/click/0596003145) που κάνουν αυτό το πιο εύκολο. Θα ήθελα να συστήσω επίσης τη [Evil Genius](http://rads.stackoverflow.com/amzn/click/0071448810) σειρά από βιβλία σχετικά με την ηλεκτρονική και ρομποτική κυκλώματα.


Charles Petzold του [Κώδικα: Η κρυμμένη Γλώσσα Υλικό υπολογιστών και λογισμικού](http://www.charlespetzold.com/code/index.html) είναι ένα άλλο βιβλίο που κάνει σπουδαία δουλειά της σύνδεσης εννοιών του υλικού και του λογισμικού μαζί. Δεν μπορώ να το συστήσω ιδιαίτερα αρκετό, αν και μπορεί να λαμβάνει μια αντίθετη προσέγγιση από ό, τι είστε μετά. Ξεκινά με απλούς διακόπτες και τρανζίστορ και χτίζει μέχρι να δείξει πώς από όπου και αν συνδυάζονται για να κάνουν ένα προγραμματιζόμενο κύκλωμα. Νομίζω ότι το καλύτερο που μπορείτε να κάνετε σε αυτή την περίπτωση είναι να πάρετε τη συμβολή τους και στη συνέχεια να τους δείξουμε τι νομίζεις ότι σημαίνει. Εάν διαφωνούν, να τους δείξουμε τη μορφή που περιμένουμε και να τους πάρει για να εισέλθετε ξανά. Η προφορά στα μαθήματα είναι αμερικανική. Η αλήθεια είναι ότι για τις διάφορες γλώσσες του Duolingo όπου οι ηχογραφήσεις είναι τεχνητές, από λογισμικό και όχι από άνθρωπο, δεν είναι πάντα και οι καλύτερες. Παρ' όλα αυτά οι εκφωνήσεις της αγγλικής φωνής είναι ακριβείς και ως επί το πλείστον ακούγονται φυσιολογικές, όπως όταν μιλάς με κάποιον που έχει τα αγγλικά ως μητρική του γλώσσα. Αυτό μάλλον κάνει τα πράγματα δύσκολα, γιατί οι δάσκαλοι συνήθως ευκολοποιούν τα πράγματα για τους αρχάριους μαθητές.


Προσωπικά, για την προφορά ολόκληρων φράσεων, χρησιμοποιώ επίσης το παρακάτω site: [www.acapela-group.com](http://www.acapela-group.com) Έχει πραγματικές και τεχνητές φωνές, με διαφορετικές προφορές, και εκεί φαίνεται καλύτερα πώς ακούγονται οι λέξεις στην κανονική ομιλία, κάτι που ένα λεξικό δεν μπορεί να αποδώσει.


Επίσης, μία μικρή παρατήρηση: γενικά οι αναρτήσεις με κεφαλαία στο ίντερνετ θεωρούνται το αντίστοιχο του "βάζω τις φωνές", κατά συνέπεια μία μίξη πεζών και κεφαλαίων μπορεί να αποφύγει πιθανές παρεξηγήσεις. :) να βάλετε μεγαλύτερο καπέλο. τα μπουριά πρέπει να είναι τοποθετημένα ή κάθετα ή λοξά προς τα πάνω και ξεκινώντας όταν τα βάζουμε από την σόμπα ή τον λέβητα ο φαρδύς λαιμός του μπουριού να είναι προς τα επάνω και να δέχεται μέσα του το επόμενο μπουρί και έτσι να φτάσει μέχρι την ταράτσα. αν έχει οριζόντια ά ανάποδη κλήση θα στάζει από τον αρμό. τώρα στο σημείο που κάνει γωνιά προς τα πάνω βάζουμε ταφ με χωνί για να μαζεύουμε τις υγρασίες. τρουλλινός γιώργος , υδραυλικός , αθήνα , αττική , 6932860310. <p><strong> συνολικά: </strong></p><p>τόσο το put όσο και το post μπορούν να χρησιμοποιηθούν για τη δημιουργία.</p><p>πρέπει να ρωτήσετε "σε τι εκτελείτε τη δράση;" να διακρίνετε τι πρέπει να χρησιμοποιείτε. ας υποθέσουμε ότι σχεδιάζετε ένα api για να κάνετε ερωτήσεις. εάν θέλετε να χρησιμοποιήσετε το post τότε θα το κάνετε σε μια λίστα ερωτήσεων. εάν θέλετε να χρησιμοποιήσετε το put τότε θα το κάνετε αυτό σε μια συγκεκριμένη ερώτηση.</p><p><strong> μεγάλη και οι δύο μπορούν να χρησιμοποιηθούν, έτσι ποιο πρέπει να χρησιμοποιήσω στο restful σχεδιασμό μου: </strong></p><p>δεν χρειάζεται να υποστηρίζετε τόσο το put όσο και το post.</p><p>το οποίο χρησιμοποιείται παραμένει στο χέρι σας. αλλά θυμηθείτε να χρησιμοποιήσετε το σωστό, ανάλογα με το αντικείμενο που αναφέρετε στο αίτημα.</p><p>μερικές σκέψεις:</p><ul> <li>ονομάζετε ρητά τα αντικείμενα url που δημιουργείτε ή αφήστε το διακομιστή να αποφασίσει; εάν τους ονομάσετε τότε χρησιμοποιήστε put. εάν αφήσετε τον διακομιστή να αποφασίσει στη συνέχεια, χρησιμοποιήστε το post.</li> <li>put είναι idempotent, οπότε αν put ένα αντικείμενο δύο φορές, δεν έχει καμία επίδραση. αυτή είναι μια ιδιοκτησία της νίκαιας, οπότε θα μπορούσα να χρησιμοποιήσω το put όταν ήταν δυνατόν.</li> <li>μπορείτε να ενημερώσετε ή να δημιουργήσετε έναν πόρο με put με την ίδια διεύθυνση url αντικειμένου</li> <li>με το post μπορείτε να έχετε 2 αιτήματα που εισέρχονται ταυτόχρονα για τροποποιήσεις σε μια διεύθυνση url και μπορεί να ενημερώσουν διαφορετικά μέρη του αντικειμένου.</li> </ul><p><strong> ένα παράδειγμα: </strong></p><p> <a href="https://stackoverflow.com/questions/256349/what-are-the-best-common-restful-url-verbs-and-actions/256359#256359">έγραψα τα εξής ως μέρος μιας άλλης απάντησης σχετικά με το so</a> :</p><blockquote> <p><strong> post: </strong></p> <p>χρησιμοποιείται για την τροποποίηση και την ενημέρωση ενός πόρου</p> <pre><code>post /questions/&lt;existing\_question&gt; http/1.1 host: www.example.com/ </code></pre> <p>σημειώστε ότι το ακόλουθο είναι ένα σφάλμα:</p> <pre><code>post /questions/&lt;new\_question&gt; http/1.1 host: www.example.com/ </code></pre> <p>εάν η διεύθυνση url δεν έχει δημιουργηθεί ακόμη, δεν θα πρέπει να χρησιμοποιείτε το post για να το δημιουργήσετε ενώ καθορίζετε το όνομα. αυτό θα πρέπει να έχει ως αποτέλεσμα ένα σφάλμα 'πόρος δεν βρέθηκε' επειδή το <code>&lt;new\_question&gt;</code> δεν υπάρχει ακόμα. πρέπει πρώτα να τοποθετήσετε τον πόρο <code>&lt;new\_question&gt;</code> στον διακομιστή.</p> <p>θα μπορούσατε όμως να κάνετε κάτι τέτοιο για να δημιουργήσετε πόρους χρησιμοποιώντας post:</p> <pre><code>post /questions http/1.1 host: www.example.com/ </code></pre> <p>σημειώστε ότι σε αυτήν την περίπτωση το όνομα του πόρου δεν έχει καθοριστεί, η διαδρομή url των νέων αντικειμένων θα σας επιστραφεί.</p> <p><strong> σημειωση: </strong></p> <p>χρησιμοποιείται για τη δημιουργία ενός πόρου ή για την αντικατάστασή του. ενώ ορίσετε τους πόρους νέα διεύθυνση url.</p> <p>για έναν νέο πόρο:</p> <pre><code>put /questions/&lt;new\_question&gt; http/1.1 host: www.example.com/ </code></pre> <p>για να αντικαταστήσετε μια υπάρχουσα πηγή:</p> <pre><code>put /questions/&lt;existing\_question&gt; http/1.1 host: www.example.com/ </code></pre></blockquote>