Etudes for ClojureScript

Β· "O'Reilly Media, Inc."
αžŸαŸ€αžœαž—αŸ…β€‹αž’αŸαž‘αž·αž…αžαŸ’αžšαžΌαž“αž·αž…
129
αž‘αŸ†αž–αŸαžš
αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·
αž€αžΆαžšαžœαžΆαž™αžαž˜αŸ’αž›αŸƒ αž“αž·αž„αž˜αžαž·αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αž‘αŸ αžŸαŸ’αžœαŸ‚αž„αž™αž›αŸ‹αž”αž“αŸ’αžαŸ‚αž˜

αž’αŸ†αž–αžΈαžŸαŸ€αžœαž—αŸ…β€‹αž’αŸαž‘αž·αž…αžαŸ’αžšαžΌαž“αž·αž€αž“αŸαŸ‡

A short composition that provides practice material for a particular musical skill is called an Γ©tude. In this hands-on book, you’ll find more than 30 Γ©tudes to help you practice ClojureScript skills for specific programming areas, ranging from functions and variables to asynchronous processing. Each of these small projects includes a description of a program that you will compose (write) in ClojureScript.

Though not as difficult as their musical counterparts, these programming Γ©tudes will help you stretch beyond the material and examples that you find in most ClojureScript books or online references. One chapter features Γ©tudes for an open-ended project that will help you put together what you’ve learned. Solutions to each Γ©tude are revealed in the appendix.

Programming areas include:

  • Working with functions and variables with def and let
  • Interacting with JavaScript and web pages, using several libraries
  • Lists, vectors, and higher-order map, filter, and reduce functions
  • Data mapping with ClojureScript
  • Using different ClojureScript libraries to program with React
  • Adding, subtracting, multiplying, and dividing rational and complex numbers with defprotocol and defrecord
  • Asynchronous processing with core.async

αž’αŸ†αž–αžΈβ€‹αž’αŸ’αž“αž€αž“αž·αž–αž“αŸ’αž’

J. David Eisenberg is a programmer and instructor living in San Jose, California. David has a talent for teaching and explaining. He has developed courses for CSS, JavaScript, CGI, and beginning XML. He teaches at Evergreen Valley College in San Jose. David has written articles for xml.com and alistapart.com on topics such as Javascript and the Document Object Model, XML validation, XSL Transformations and Formatting Objects, and SVG. His on-line courses provide introductory tutorials for Korean, Modern Greek, and Russian. David has also been developing education software since 1975, when he worked with the Modern Foreign Language project at the University of Illinois to develop computer-assisted instruction on the PLATO system. He co-authored several of the in-box tutorials shipped with the venerable Apple IIe computer. When not programming, David enjoys digital photography, riding his bicycle, and taking care of his cats.

αžœαžΆαž™αžαž˜αŸ’αž›αŸƒαžŸαŸ€αžœαž—αŸ…β€‹αž’αŸαž‘αž·αž…αžαŸ’αžšαžΌαž“αž·αž€αž“αŸαŸ‡

αž”αŸ’αžšαžΆαž”αŸ‹αž™αžΎαž„αž’αŸ†αž–αžΈαž€αžΆαžšαž™αž›αŸ‹αžƒαžΎαž‰αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”

αž’αžΆαž“β€‹αž–αŸαžαŸŒαž˜αžΆαž“

αž‘αžΌαžšαžŸαž–αŸ’αž‘αž†αŸ’αž›αžΆαžαžœαŸƒ αž“αž·αž„β€‹αžαŸαž”αŸ’αž›αŸαž
αžŠαŸ†αž‘αžΎαž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ Google Play Books αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Android αž“αž·αž„ iPad/iPhone αŸ” αžœαžΆβ€‹αž’αŸ’αžœαžΎαžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜β€‹αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž‡αžΆαž˜αž½αž™β€‹αž‚αžŽαž“αžΈβ€‹αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€β€‹ αž“αž·αž„β€‹αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™β€‹αž’αŸ’αž“αž€αž’αžΆαž“αž–αŸαž›β€‹αž˜αžΆαž“αž’αŸŠαžΈαž“αž’αžΊαžŽαž·αž αž¬αž‚αŸ’αž˜αžΆαž“β€‹αž’αŸŠαžΈαž“αž’αžΊαžŽαž·αžβ€‹αž“αŸ…αž‚αŸ’αžšαž”αŸ‹αž‘αžΈαž€αž“αŸ’αž›αŸ‚αž„αŸ”
αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšβ€‹αž™αž½αžšαžŠαŸƒ αž“αž·αž„αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžš
αž’αŸ’αž“αž€αž’αžΆαž…αžŸαŸ’αžŠαžΆαž”αŸ‹αžŸαŸ€αžœαž—αŸ…αž‡αžΆαžŸαŸ†αž‘αŸαž„αžŠαŸ‚αž›αž”αžΆαž“αž‘αž·αž‰αž“αŸ…αž€αŸ’αž“αž»αž„ Google Play αžŠαŸ„αž™αž”αŸ’αžšαžΎαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžšαž»αž€αžšαž€αžαžΆαž˜αž’αŸŠαžΈαž“αž’αžΊαžŽαž·αžαž€αŸ’αž“αž»αž„αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”
eReaders αž“αž·αž„β€‹αž§αž”αž€αžšαžŽαŸβ€‹αž•αŸ’αžŸαŸαž„β€‹αž‘αŸ€αž
αžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αž“αŸ…αž›αžΎβ€‹αž§αž”αž€αžšαžŽαŸ e-ink αžŠαžΌαž…αž‡αžΆβ€‹αž§αž”αž€αžšαžŽαŸαž’αžΆαž“β€‹αžŸαŸ€αžœαž—αŸ…αž’αŸαž‘αž·αž…αžαŸ’αžšαžΌαž“αž·αž€ Kobo αž’αŸ’αž“αž€αž“αžΉαž„αžαŸ’αžšαžΌαžœβ€‹αž‘αžΆαž‰αž™αž€β€‹αž―αž€αžŸαžΆαžš αž αžΎαž™β€‹αž•αŸ’αž‘αŸαžšαžœαžΆαž‘αŸ…β€‹αž§αž”αž€αžšαžŽαŸβ€‹αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ” αžŸαžΌαž˜αž’αž“αž»αžœαžαŸ’αžαžαžΆαž˜β€‹αž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αž›αž˜αŸ’αž’αž·αžαžšαž”αžŸαŸ‹αž˜αž‡αŸ’αžˆαž˜αžŽαŸ’αžŒαž›αž‡αŸ†αž“αž½αž™ αžŠαžΎαž˜αŸ’αž”αžΈαž•αŸ’αž‘αŸαžšαž―αž€αžŸαžΆαžšβ€‹αž‘αŸ…αž§αž”αž€αžšαžŽαŸαž’αžΆαž“αžŸαŸ€αžœαž—αŸ…β€‹αž’αŸαž‘αž·αž…αžαŸ’αžšαžΌαž“αž·αž€αžŠαŸ‚αž›αžŸαŸ’αž‚αžΆαž›αŸ‹αŸ”