Questo prodotto usufruisce delle SPEDIZIONI GRATIS
selezionando l'opzione Corriere Veloce in fase di ordine.
Pagabile anche con Carta della cultura giovani e del merito, 18App Bonus Cultura e Carta del Docente
This introductory textbook on Java programming is different from others by its emphasis on test-driven development. Writing tests before designing the implementation is incredibly important for debugging purposes and understanding the desired outcome. While testing is often an afterthought in other Java textbooks (being placed at the very end or not at all, which is in some ways cruel to withhold such capabilities from the student), this text takes a different, perhaps "functional“ approach to learning Java: it introduces testing and methods from the start, followed by conditionals, recursion, and loops (on purpose in this very order). It then dives deep into data structures and the Java Collections API, including streams and generics. After this, it pivots to object-oriented programming, exceptions and I/O, searching and sorting, algorithm analysis, and eventually advanced Java/programming topics.
This ordering of topics is well adjusted to prepare students to subsequent upper-level courses in data structure or algorithm design and implementation. The approach is illuminated by numerous code snippets and the students’ understanding is consolidated by about 250 exercises covering all topics covered in the book. With this book, readers will not only learn how to program Java, but also acquire a necessary precondition for successfully writing and testing commercial software.
Part I: Java Programming and Data Structures.- 1. Testing and Java Basics.- 2. Conditionals, Recursion, and Loops.- 3. Arrays, Collections, and Generics.- Part II: Objects, Classes, Exceptions, and I/O.- 4. Object-Oriented Programming.- 5. Exceptions & Data I/O.- Part III: Searching, Sorting, and Algorithms.- 6. Searching & Sorting.- 7. Algorithm Analysis.- 8. Modern Java and Advanced Topics.
Joshua Crotts is a computer science Ph.D. student at Indiana University with a strong interest in computer science pedagogy, as well as programming languages and compilers. He has published papers at conferences like SIGCSE, CMNA, ICEEL about formal logic education, automatic detection of rhetorical devices (e.g., antithesis), and inductive logic programming as a means of argument mining in science-policy articles. His current research work aims to improve the transition of first-semester students to the later advanced topics and courses.
Il sito utilizza cookie ed altri strumenti di tracciamento che raccolgono informazioni dal dispositivo dell’utente. Oltre ai cookie tecnici ed analitici aggregati, strettamente necessari per il funzionamento di questo sito web, previo consenso dell’utente possono essere installati cookie di profilazione e marketing e cookie dei social media. Cliccando su “Accetto tutti i cookie” saranno attivate tutte le categorie di cookie. Per accettare solo deterninate categorie di cookie, cliccare invece su “Impostazioni cookie”. Chiudendo il banner o continuando a navigare saranno installati solo cookie tecnici. Per maggiori dettagli, consultare la Cookie Policy.