• - Alle Rubriken -
  • Bücher
  • Lernen / Pädagogik
  • E-Reader / Zubehör
  • Hörbücher
  • Software / Games / Hardware
  • Musik / Filme
  • Spiele
  • Kalender
  • Geschenke / Papeterie
  • Karten / Globen
  • Schweiz
  • Englisch und andere Fremdsprachen
  • Lieferbar
  • Neuheit
  • Archiv
  • - Alle Rubriken -
  • Bücher
  • Lernen / Pädagogik
  • E-Reader / Zubehör
  • Hörbücher
  • Software / Games / Hardware
  • Musik / Filme
  • Spiele
  • Kalender
  • Geschenke / Papeterie
  • Karten / Globen
  • Schweiz
  • Englisch und andere Fremdsprachen
  • - Alle -
  • Audio CD
  • Audio MP3
  • Blu-ray
  • CD ROM, DVD-ROM
  • DVD-Video
  • E-Book EPUB
  • E-Book PDF
  • Hardcover, gebunden
  • Taschenbuch, kartoniert
  • - Alle -
  • Aargauer Mundart
  • Abchasisch (apsua)
  • Aceh-sprache (atje-sprache)
  • Acholi-sprache
  • Adangme-sprache
  • Adygei-sprache
  • Aegyptisch
  • Afrihili
  • Afrikaans
  • Ainu
  • Akan-sprache
  • Akkadisch (assyrisch-babylonisch)
  • Albanisch
  • Alemannisch
  • Algonkin-sprachen
  • Altaethiopisch
  • Altaische Sprachen (andere)
  • Altenglisch (ca. 450-1100)
  • Altfranzoesisch (842-ca. 1400)
  • Althochdeutsch (ca. 750-1050)
  • Altirisch (bis 900)
  • Altnorwegisch
  • Altprovenzalisch (bis 1500)
  • Amharisch
  • Apachen-sprache
  • Appenzellerdeutsch
  • Arabisch
  • Aragonisches Spanisch
  • Aramaeisch
  • Arapaho-sprache
  • Arawak-sprachen
  • Armenisch
  • Aserbaidschanisch (azerbajdzanisch)
  • Assamesisch (asamiya)
  • Asturisch
  • Athapaskische Sprachen
  • Australische Sprachen
  • Austronesische Sprachen
  • Aymara-sprache
  • Bahasa Indonesia
  • Baltische Sprachen
  • Bambara-sprache
  • Bantusprachen
  • Basaa-sprache
  • Baschkirisch
  • Baseldeutsch
  • Baskisch
  • Bayrisch
  • Beach-la-mar
  • Bedauye
  • Bemba-sprache
  • Bengali
  • Berbersprachen
  • Berlinerisch
  • Berndeutsch
  • Bhojpuri (bajpuri)
  • Birmanisch
  • Bokmal
  • Bosnisch
  • Braj-bhakha
  • Brandenburger Mundart
  • Bretonisch
  • Bugi-sprache
  • Bulgarisch
  • Caddo-sprachen
  • Cebuano
  • Chamorro-sprache
  • Cherokee-sprache
  • Chinesisch
  • Chinook-jargon
  • Chipewyan
  • Choctaw-sprache
  • Cree-sprache
  • Daenisch
  • Dakota-sprache
  • Danakil-sprache
  • Delaware-sprache
  • Deutsch
  • Dinka-sprache
  • Dogrib-sprache
  • Drawidische Sprachen
  • Dzongkha
  • Efik
  • Elamisch
  • Elsaessisch
  • Englisch
  • Ersjanisch
  • Esperanto
  • Estnisch
  • Ewe-sprache
  • Faeroeisch
  • Fanti-sprache
  • Farsi
  • Fidschi-sprache
  • Filipino
  • Finnisch
  • Finnougrische Sprachen
  • Fon-sprache
  • Fraenkisch
  • Franzoesisch
  • Friulisch
  • Ful
  • Ga
  • Gaelisch-schottisch
  • Galicisch
  • Galla-sprache
  • Ganda-sprache
  • Georgisch
  • Germanische Sprachen
  • Gilbertesisch
  • Glarner Mundart
  • Gotisch
  • Griechisch (bis 1453)
  • Groenlaendisch
  • Guarani-sprache
  • Gujarati-sprache
  • Haida-sprache
  • Haitisches Creolisch
  • Hamitosemitische Sprachen
  • Haussa-sprache
  • Hawaiisch
  • Hebraeisch
  • Herero-sprache
  • Hessisch
  • Hiligaynon-sprache
  • Himachali
  • Hindi
  • Iban
  • Ibo-sprache
  • Ido
  • Ilokano-sprache
  • Indianersprachen (nordamerik.)
  • Indianersprachen (suedamerik.)
  • Indianersprachen / Zentralamerika
  • Indoarische Sprachen
  • Indogermanische Sprachen
  • Ingush-sprache
  • Interlingua (iala)
  • Interlingue
  • Inuktitut
  • Iranische Sprachen
  • Irisch
  • Irokesische Sprachen
  • Islaendisch
  • Italienisch
  • Japanisch
  • Javanisch
  • Jiddisch
  • Judenspanisch
  • Juedisch-arabisch
  • Kabardinisch
  • Kabylisch
  • Kambodschanisch
  • Kannada
  • Karenisch
  • Karibische Sprachen
  • Kasachisch
  • Kaschmiri
  • Katalanisch
  • Kaukasische Sprachen
  • Kein Sprachlicher Inhalt
  • Keltische Sprachen
  • Khasi-sprache
  • Khoisan-sprachen
  • Kikuyu-sprache
  • Kirchenslawisch
  • Kirgisisch
  • Klassisches Syrisch
  • Koelsch
  • Komi-sprachen
  • Kongo
  • Konkani
  • Koptisch
  • Koreanisch
  • Kornisch
  • Korsisch
  • Kpelle-sprache
  • Kreolisch-englisch
  • Kreolisch-franzoesisch
  • Kreolisch-portugiesisch
  • Kreolische Sprachen
  • Kroatisch
  • Kru-sprachen
  • Kurdisch
  • Kurdisch (sorani)
  • Kutchin
  • Laotisch
  • Latein
  • Lesgisch
  • Lettisch
  • Lingala
  • Litauisch
  • Luba-sprache
  • Luiseno-sprache
  • Lulua-sprache
  • Luo-sprache
  • Luxemburgisch
  • Maduresisch
  • Maithili
  • Malagassisch
  • Malaiisch
  • Malayalam
  • Maledivisch
  • Malinke-sprache
  • Maltesisch
  • Manchu
  • Mandaresisch
  • Manx
  • Maori-sprache
  • Marathi
  • Marschallesisch
  • Massai-sprache
  • Maya-sprachen
  • Mazedonisch
  • Meithei-sprache
  • Miao-sprachen
  • Micmac-sprache
  • Mittelenglisch (1100-1500)
  • Mittelfranzoesisch (ca. 1400-1600)
  • Mittelhochdeutsch (ca. 1050-1500)
  • Mittelirisch (900-1200)
  • Mittelniederlaendisch (ca. 1050-1350)
  • Mohawk-sprache
  • Mon-khmer-sprachen
  • Mongolisch
  • Montenegrinisch
  • Mossi-sprache
  • Mundart
  • Muskogee-sprachen
  • Nahuatl
  • Navajo-sprache
  • Ndebele-sprache (nord)
  • Ndebele-sprache (sued)
  • Ndonga
  • Neapolitanisch
  • Nepali
  • Neugriechisch (nach 1453)
  • Neumelanesisch
  • Newari
  • Niederdeutsch
  • Niederlaendisch
  • Nigerkordofanische Sprachen
  • Nogaiisch
  • Nordfriesisch
  • Nordsaamisch
  • Norwegisch (bokmal)
  • Nubische Sprachen
  • Nyanja-sprache
  • Nyankole
  • Nyoro
  • Obersorbisch
  • Obwaldner Mundart
  • Ojibwa-sprache
  • Okzitanisch (nach 1500)
  • Oriya-sprache
  • Osmanisch
  • Ossetisch
  • Palau
  • Pali
  • Pandschabi-sprache
  • Papiamento
  • Papuasprachen
  • Paschtu
  • Pehlewi
  • Persisch
  • Philippinen-austronesisch
  • Phoenikisch
  • Plattdeutsch
  • Polnisch
  • Polyglott
  • Portugiesisch
  • Prakrit
  • Quechua-sprache
  • Raetoromanisch
  • Rajasthani
  • Romani
  • Romanisch
  • Romanische Sprachen
  • Ruhrdeutsch
  • Rumaenisch
  • Rundi-sprache
  • Russisch
  • Rwanda-sprache
  • Saamisch
  • Saarlaendisch
  • Saechsisch
  • Salish-sprache
  • Samoanisch
  • Sango-sprache
  • Sanskrit
  • Santali
  • Sardisch
  • Schaffhauser Mundart
  • Schona-sprache
  • Schottisch
  • Schwaebisch
  • Schwedisch
  • Schweizerdeutsch
  • Semitische Sprachen
  • Serbisch
  • Sidamo
  • Sindhi-sprache
  • Singhalesisch
  • Sinotibetische Sprachen
  • Sioux-sprachen
  • Slave (athapaskische Sprachen)
  • Slawische Sprachen
  • Slowakisch
  • Slowenisch
  • Solothurner Mundart
  • Somali
  • Soninke-sprache
  • Sorbisch
  • Sotho-sprache (nord)
  • Sotho-sprache (sued)
  • Spanisch
  • Sumerisch
  • Sundanesisch
  • Swahili
  • Swazi
  • Syrisch
  • Tadschikisch
  • Tagalog
  • Tahitisch
  • Tamaseq
  • Tamil
  • Tatarisch
  • Telugu-sprache
  • Temne
  • Tetum-sprache
  • Thailaendisch
  • Thaisprachen (andere)
  • Tibetisch
  • Tigre-sprache
  • Tigrinya-sprache
  • Tonga (bantusprache, Malawi)
  • Tongaisch (sprache Auf Tonga)
  • Tschagataisch
  • Tschechisch
  • Tschetschenisch
  • Tschuwaschisch
  • Tsonga-sprache
  • Tswana-sprache
  • Tuerkisch
  • Tumbuka
  • Tupi-sprache
  • Turkmenisch
  • Udmurt-sprache
  • Ugaritisch
  • Uigurisch
  • Ukrainisch
  • Unbestimmt
  • Ungarisch
  • Urdu
  • Usbekisch
  • Vai-sprache
  • Venda-sprache
  • Verschiedene Sprachen
  • Vietnamesisch
  • Volapuek
  • Volta-comoe-sprachen
  • Wakashanisch
  • Walamo-sprache
  • Walisisch
  • Walliser Mundart
  • Wallonisch
  • Weissrussisch
  • Welthilfssprache
  • Westfriesisch
  • Wienerisch
  • Wolof-sprache
  • Xhosa-sprache
  • Yao-sprache
  • Yoruba-sprache
  • Yupik-sprache
  • Zapotekisch
  • Zeichensprache
  • Zhuang
  • Zuerichdeutsch
  • Zulu
  • Relevanz
  • Autor
  • Erscheinungsjahr
  • Preis
  • Titel
  • Verlag
Zwischen und
Kriterien zurücksetzen

From Mathematics to Generic Programming (Stepanov, Alexander / Stepanov, Alexander A. / Rose, Daniel E.)
From Mathematics to Generic Programming
Autor Stepanov, Alexander / Stepanov, Alexander A. / Rose, Daniel E.
Verlag Pearson Academic
Co-Verlag Pearson Import Trade (Imprint/Brand)
Sprache Englisch
Einband Kartonierter Einband (Kt)
Erscheinungsjahr 2014
Seiten 320 S.
Artikelnummer 16092082
ISBN 978-0-321-94204-3
Auflage 1. A.
CHF 44.50
Zusammenfassung

In this substantive yet accessible book, pioneering software designer Alexander Stepanov and his colleague Daniel Rose illuminate the principles of generic programming and the mathematical concept of abstraction on which it is based, helping you write code that is both simpler and more powerful.

If you’re a reasonably proficient programmer who can think logically, you have all the background you’ll need. Stepanov and Rose introduce the relevant abstract algebra and number theory with exceptional clarity. They carefully explain the problems mathematicians first needed to solve, and then show how these mathematical solutions translate to generic programming and the creation of more effective and elegant code. To demonstrate the crucial role these mathematical principles play in many modern applications, the authors show how to use these results and generalized algorithms to implement a real-world public-key cryptosystem.

As you read this book, you’ll master the thought processes necessary for effective programming and learn how to generalize narrowly conceived algorithms to widen their usefulness without losing efficiency. You’ll also gain deep insight into the value of mathematics to programming—insight that will prove invaluable no matter what programming languages and paradigms you use.

You will learn about

  • How to generalize a four thousand-year-old algorithm, demonstrating indispensable lessons about clarity and efficiency
  • Ancient paradoxes, beautiful theorems, and the productive tension between continuous and discrete
  • A simple algorithm for finding greatest common divisor (GCD) and modern abstractions that build on it
  • Powerful mathematical approaches to abstraction
  • How abstract algebra provides the idea at the heart of generic programming
  • Axioms, proofs, theories, and models: using mathematical techniques to organize knowledge about your algorithms and data structures
  • Surprising subtleties of simple programming tasks and what you can learn from them
  • How practical implementations can exploit theoretical knowledge

This book is a great introduction to the core principles of generic programming for the experienced programmer. The authors work through examples showing how to analyze the requirements of an algorithm and make it as general as possible. The book includes several programming "laws” of particular interest to those building software components. The authors show how programmers can become more effective by learning about the idea of abstraction and the math it relies on. In an engaging and accessible fashion, they describe how these mathematical results were first discovered and are surprisingly useful in programming.

Alexander A. Stepanov studied mathematics at Moscow State University from 1967 to 1972. He has been programming since 1972: first in the Soviet Union and, after emigrating in 1977, in the United States. He has programmed operating systems, programming tools, compilers, and libraries. His work on foundations of programming has been supported by GE, Polytechnic University, Bell Labs, HP, SGI, Adobe, and, since 2009, A9.com, Amazon’s search technology subsidiary. In 1995 he received the Dr. Dobb’s Journal Excellence in Programming Award for the design of the C++ Standard Template Library.

Daniel E. Rose is a research scientist who has held management positions at Apple, AltaVista, Xigo, Yahoo, and A9.com. His research focuses on all aspects of search technology, ranging from low-level algorithms for index compression to human–computer interaction issues in web search. Rose led the team at Apple that created desktop search for the Macintosh. He holds a Ph.D. in cognitive science and computer science from University of California, San Diego, and a B.A. in philosophy from Harvard University.