ORPP logo

Learning D : (Record no. 103388)

MARC details
000 -LEADER
fixed length control field 10065nam a22004693i 4500
001 - CONTROL NUMBER
control field EBC4191168
003 - CONTROL NUMBER IDENTIFIER
control field MiAaPQ
005 - DATE AND TIME OF LATEST TRANSACTION
control field 20240729130143.0
006 - FIXED-LENGTH DATA ELEMENTS--ADDITIONAL MATERIAL CHARACTERISTICS
fixed length control field m o d |
007 - PHYSICAL DESCRIPTION FIXED FIELD--GENERAL INFORMATION
fixed length control field cr cnu||||||||
008 - FIXED-LENGTH DATA ELEMENTS--GENERAL INFORMATION
fixed length control field 240724s2015 xx o ||||0 eng d
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
International Standard Book Number 9781785289347
Qualifying information (electronic bk.)
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
Canceled/invalid ISBN 9781783552481
035 ## - SYSTEM CONTROL NUMBER
System control number (MiAaPQ)EBC4191168
035 ## - SYSTEM CONTROL NUMBER
System control number (Au-PeEL)EBL4191168
035 ## - SYSTEM CONTROL NUMBER
System control number (CaPaEBR)ebr11135219
035 ## - SYSTEM CONTROL NUMBER
System control number (CaONFJC)MIL876496
035 ## - SYSTEM CONTROL NUMBER
System control number (OCoLC)930994064
040 ## - CATALOGING SOURCE
Original cataloging agency MiAaPQ
Language of cataloging eng
Description conventions rda
-- pn
Transcribing agency MiAaPQ
Modifying agency MiAaPQ
050 #4 - LIBRARY OF CONGRESS CALL NUMBER
Classification number QA76.7 -- .P37 2015eb
100 1# - MAIN ENTRY--PERSONAL NAME
Personal name Parker, Michael.
245 10 - TITLE STATEMENT
Title Learning D :
Remainder of title Leverage the Modern Convenience and Modelling Power of the d Programming Language to Develop Software with Native Efficiency.
250 ## - EDITION STATEMENT
Edition statement 1st ed.
264 #1 - PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE
Place of production, publication, distribution, manufacture Birmingham :
Name of producer, publisher, distributor, manufacturer Packt Publishing, Limited,
Date of production, publication, distribution, manufacture, or copyright notice 2015.
264 #4 - PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE
Date of production, publication, distribution, manufacture, or copyright notice ©2015.
300 ## - PHYSICAL DESCRIPTION
Extent 1 online resource (465 pages)
336 ## - CONTENT TYPE
Content type term text
Content type code txt
Source rdacontent
337 ## - MEDIA TYPE
Media type term computer
Media type code c
Source rdamedia
338 ## - CARRIER TYPE
Carrier type term online resource
Carrier type code cr
Source rdacarrier
505 0# - FORMATTED CONTENTS NOTE
Formatted contents note Cover -- Copyright -- Credits -- Foreword -- About the Author -- About the Reviewers -- www.PacktPub.com -- Table of Contents -- Preface -- Chapter 1: How to Get a D in Programming -- Say hello to D -- An introductory program -- Getting help -- The Digital Mars D compiler -- Frontends, backends, and linkers -- Installing DMD -- The Windows installer -- Installing from the ZIP -- Compiling the example -- Documentation and source code -- The documentation -- The source -- Say hello to MovieMan -- The problem -- The features -- DUB - the D build tool and package manager -- Getting started -- Configuring the MovieMan project -- Understanding dub.sdl -- Building and running MovieMan -- Changing the output directory -- Summary -- Chapter 2: Building a Foundation with D Fundamentals -- The very basics -- Identifiers -- A note about scope -- More on modules -- Module declarations -- More about import declarations -- The special package module -- Comments -- Variable declaration and initialization -- Basic types -- The types -- Literals -- Integer literals -- Floating-point literals -- Character literals -- Conversions -- Alias declarations -- Properties -- Basic operators -- Arithmetic operators -- Bitwise operators -- Relational and logical operators -- The cast operator -- Derived data types -- Pointers -- Arrays -- Array basics -- Rectangular arrays -- Slices -- Array literals -- Arrays and void -- Array operations -- Strings -- String essentials -- Alternative string literals -- Associative arrays -- Control flow statements -- Traditional loops -- The foreach loop -- Traditional conditionals -- The goto statement -- Type qualifiers - const and immutable -- The contracts -- With the basic types -- With pointers -- With arrays -- Conversions -- Functions -- Overloaded functions -- ref and out -- inout parameters -- lazy parameters.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Function attributes -- Return statements and memory -- Function pointers and delegates -- MovieMan - first steps -- The io module -- The app module -- Summary -- Chapter 3: Programming Objects the D Way -- User-defined types -- Enumerations -- Unions -- Structs and classes -- Working with objects -- Encapsulation with protection attributes -- Public -- Private -- Package -- Voldemort types -- Constructors and destructors -- Class constructors and destructors -- Struct constructors and destructors -- Static constructors and destructors -- Inheritance and polymorphism -- Interfaces -- Fake inheritance -- Nested classes -- Objects with const and immutable -- const as a storage class -- Error handling -- Scope guards -- Exception handling -- Contract programming and unit tests -- Assert contracts -- Function contracts -- Invariants -- Unit tests -- MovieMan - adding menus -- The Menu base class -- The MainMenu class -- The DisplayMenu class -- Summary -- Chapter 4: Running Code at Compile Time -- Pragmas -- The lib pragma -- The msg pragma -- The inline pragma -- Conditional compilation -- The version condition -- The debug condition -- The static if condition -- Compile-time strings -- The import expression -- String mixins -- Compile-time function execution -- Odds and ends -- static assert -- The is expression -- Alignment -- Compile-time reflection -- User-defined attributes -- Summary -- Chapter 5: Generic Programming Made Easy -- Template basics -- Templates as code blocks -- Struct and class templates -- Enum templates -- Function templates -- Special features -- More template parameters -- Value parameters -- Alias parameters -- This parameters -- Beyond the basics -- Template specializations -- Specialization on pointers and arrays -- Template constraints -- Template mixins -- Variadic templates -- Terminology -- More on usage.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Operator overloading -- Non-templated operator overloads -- Comparison overloads - opEquals and opCmp -- Function call overloads -- Assignment overloads -- Index overloads -- Templated operator overloads -- Unary overloads -- Binary overloads -- Cast overloads -- Operator assignment overloads -- Slice operator overloads -- Other overloads -- opDispatch -- opApply -- toHash -- MovieMan - the database -- db.d -- Back to the menus -- Summary -- Chapter 6: Understanding Ranges -- Ranges defined -- The problem -- The solution -- The interface -- A range for arrays -- The implementation of filter -- The test -- The real ranges -- Input ranges -- Forward ranges -- Bidirectional ranges -- Random-access ranges -- Output ranges -- Optional range primitives -- Ranges in use -- Custom ranges -- Getting a range from a stack -- A name generator range -- Other considerations -- Custom algorithms -- Summary -- Chapter 7: Composing Functional Pipelines with Algorithms and Ranges -- Functional programming and composable pipelines -- A simple example -- A more complex example -- Sometimes we can't -- Navigating Phobos -- std.range -- Generative ranges -- Selective ranges -- Compositional ranges -- std.algorithm -- Comparison -- Iteration -- Mutation -- Searching -- Set operations -- Sorting -- std.array -- Appender -- assocArray -- join -- Where to look for more -- MovieMan - wrapping up -- The db module -- The display menu -- Making it better -- Summary -- Chapter 8: Exploring the Wide World of D -- Online resources -- DWiki -- Planet D -- reddit and StackOverflow -- This Week in D -- DConf -- DSource -- Editors and IDEs -- Text editors -- Vim and Emacs -- Textadept -- Sublime Text -- IDEs -- Visual D -- Mono-D -- DDT -- Code::Blocks -- Tools and utilities -- DMD -- Optimized and debug builds -- Changing the default output -- Compiling libraries -- Using libraries.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Warnings -- Profiling -- Code coverage analysis -- Compile and run -- GDC and LDC -- GDC -- LDC -- RDMD -- DustMite -- DCD -- DVM -- Libraries -- code.dlang.org -- Using libraries from the DUB registry -- Registering libraries with the DUB registry -- Browsing the DUB registry -- Deimos and DerelictOrg -- Summary -- Chapter 9: Connecting D with C -- Preliminaries -- Terminology -- Bindings, wrappers, and ports -- Dynamic and static - context matters -- Object file formats -- Linkage attributes -- Name mangling -- Calling conventions -- Putting it together -- Binding D to C -- Function prototypes -- Manually loading shared libraries -- Trying it out -- C types to D types -- Strings and characters -- Special types -- Enumerations -- Structures -- Pointers -- Type aliases -- Function pointers -- Defined constants -- Function parameters and return types -- Symbols -- Global variables -- Macros -- Conditional compilation -- Calling C from D -- D arrays and C arrays -- Basic arrays -- Arrays of arrays -- Strings -- Memory -- C callbacks and exceptions -- Calling D from C -- Summary -- Chapter 10: Taking D Online -- The software -- vibe.d -- Package overview -- The anatomy of a vibe.d web app -- The database library -- MovieManWeb -- Getting started -- The basics of diet templates -- Tags and indentation -- Including and extending templates -- The MovieManWeb layout -- Setting up the database -- Fleshing out the index page -- Mapping web interface functions to URLs -- Rendering diet templates -- Rewriting index.dt -- Adding movies -- Implementing the addMovie function -- Implementing the postAdd function -- Implementing add.dt -- Modifying index.dt -- Modifying app.d -- Modifying layout.dt -- Listing movies -- Implementing the listMovies function -- Modifying the index function -- Modifying index.dt -- Finding movies -- Implementing the postFind function.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Implementing find.dt -- Modifying index.dt -- Modifying app.d and layout.dt -- Implementing the findMovie functions -- Editing and deleting movies -- Expanding on MovieManWeb -- Summary -- Chapter 11: Taking D to the Next Level -- Concurrency -- Threads and fibers -- Threads -- Fibers -- Data sharing -- __gshared -- Shared -- Synchronization and atomics -- Automatic synchronization -- Manual synchronization -- Atomics -- Message passing -- Parallelism -- More information -- SafeD -- Functional purity -- The garbage collector -- Connecting with C++ -- More on Phobos -- std.container -- std.datetime -- std.digest -- std.experimental -- std.getopt -- std.process -- std.socket -- Modules for Unicode and other encodings -- System bindings -- Game development with D -- The future of D -- Summary -- Index.
588 ## - SOURCE OF DESCRIPTION NOTE
Source of description note Description based on publisher supplied metadata and other sources.
590 ## - LOCAL NOTE (RLIN)
Local note Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element Programming languages (Electronic computers).
655 #4 - INDEX TERM--GENRE/FORM
Genre/form data or focus term Electronic books.
776 08 - ADDITIONAL PHYSICAL FORM ENTRY
Relationship information Print version:
Main entry heading Parker, Michael
Title Learning D
Place, publisher, and date of publication Birmingham : Packt Publishing, Limited,c2015
International Standard Book Number 9781783552481
797 2# - LOCAL ADDED ENTRY--CORPORATE NAME (RLIN)
Corporate name or jurisdiction name as entry element ProQuest (Firm)
856 40 - ELECTRONIC LOCATION AND ACCESS
Uniform Resource Identifier <a href="https://ebookcentral.proquest.com/lib/orpp/detail.action?docID=4191168">https://ebookcentral.proquest.com/lib/orpp/detail.action?docID=4191168</a>
Public note Click to View

No items available.

© 2024 Resource Centre. All rights reserved.