|
|
|
|
LEADER |
00000nam a2200000M 4500 |
001 |
OR_on1269347368 |
003 |
OCoLC |
005 |
20231017213018.0 |
006 |
m o d |
007 |
cr |n||||||||| |
008 |
210827s2021 xx o 0|| 0 eng d |
040 |
|
|
|a INT
|b eng
|c INT
|
020 |
|
|
|a 9781638356417
|q (electronic bk.)
|
020 |
|
|
|a 1638356416
|q (electronic bk.)
|
020 |
|
|
|z 1617298026
|
020 |
|
|
|z 9781617298028
|
029 |
1 |
|
|a AU@
|b 000071519555
|
035 |
|
|
|a (OCoLC)1269347368
|
049 |
|
|
|a UAMI
|
100 |
1 |
|
|a RODENBURG, JORT.
|
245 |
1 |
0 |
|a CODE LIKE A PRO IN C#.
|
260 |
|
|
|a [S.l.] :
|b O'REILLY MEDIA,
|c 2021.
|
300 |
|
|
|a 1 online resource
|
336 |
|
|
|a text
|b txt
|2 rdacontent
|
337 |
|
|
|a computer
|b c
|2 rdamedia
|
338 |
|
|
|a online resource
|b cr
|2 rdacarrier
|
505 |
0 |
0 |
|a Machine generated contents note:
|g 1.
|t Introducing C# and .NET --
|g 1.1.
|t Why work in C#? --
|t Reason 1: C# is economical --
|t Reason 2: C# is maintainable --
|t Reason 3: C# is developer friendly and easy to use --
|g 1.2.
|t Why not work in C#? --
|t Operating system development --
|t Real-time operating system embedded development in C# --
|t Numerical computing and C# --
|g 1.3.
|t Switching to C# --
|g 1.4.
|t What you will learn in this book --
|g 1.5.
|t What you will not learn in this book --
|g 2.
|t NET and how it compiles --
|g 2.1.
|t What is the .NET Framework? --
|g 2.2.
|t What is .NET 5? --
|g 2.3.
|t How CLI-compliant languages are compiled --
|t Step 1: C# code (high-level) --
|t Step 2: Common Intermediate Language (assembly level) --
|t Step 3: Native code (processor level) --
|g 3.
|t How bad is this code? --
|g 3.1.
|t Introducing Flying Dutchman Airlines --
|g 3.2.
|t Pieces of the puzzle: Taking a look at our requirements --
|t Object-relational mapping --
|t GET /flight endpoint: Retrieving information on all flights --
|t GET /flight/ tflightNumbed endpoint: Getting specific flight information --
|t POST /booking/ (flightNumber) endpoint: Booking a flight --
|g 3.3.
|t Coming to terms with the existing codebase --
|t Assessing the existing database schema and its tables --
|t existing codebase: Web service configuration files --
|t Considering models and views in the existing codebase --
|g 4.
|t Manage your unmanaged resources! --
|g 4.1.
|t FlightController: Assessing the GET /flight endpoint --
|t GET /flight endpoint and what it does --
|t Method signature: The meaning of ResponseType and typeof --
|t Collecting flight information with collections --
|t Connection strings, or how to give a security engineer a heart attack --
|t Using IDisposable to release unmanaged resources --
|t Querying a database with SqlCommand --
|g 4.2.
|t FlightController: Assessing GET /flight/ {flightNumber} --
|g 4.3.
|t FlightController: POST /flight --
|g 4.4.
|t FlightController: DELETE /flight/ {flightNumber} --
|g 5.
|t Setting up a project and database with Entity Framework Core --
|g 5.1.
|t Creating a .NET 5 solution and project --
|g 5.2.
|t Setting up and configuring a web service --
|t Configuring a .NET 5 web service --
|t Creating and using HostBuilder --
|t Implementing the Startup class --
|t Using the repository/service pattern for our web service architecture --
|g 5.3.
|t Implementing the database access layer --
|t Entity Framework Core and reverse-engineering --
|t DbSet and the Entity Framework Core workflow --
|t Configuration methods and environment variables --
|t Setting an environment variable on Windows --
|t Setting an environment variable on macOS --
|t Retrieving environment variables at run time in your code --
|g 6.
|t Test-driven development and dependency injection --
|g 6.1.
|t Test-driven development --
|g 6.2.
|t CreateCustomer method --
|t Why you should always validate input arguments --
|t Using "arrange, act, assert" to write unit tests --
|t Validating against invalid characters --
|t In-lining test data with the [DataRow] attribute --
|t Object initializers and autogenerated code --
|t Constructors, reflection, and asynchronous programming --
|t Locks, mutexes, and semaphores --
|t Synchronous to asynchronous execution...continued --
|t Testing Entity Framework Core --
|t Controlling dependencies with dependency injection --
|g 7.
|t Comparing objects --
|g 7.1.
|t GetCustomerByName method --
|t Question marks: Nullable types and their applications --
|t Custom exceptions, LINQ and extension methods --
|g 7.2.
|t Congruence: From the Middle Ages to C# --
|t Creating a "comparer" class using EqualityComparer --
|t Testing equality by overriding the Equals method --
|t Overloading the equality operator --
|g 8.
|t Stubbing, generics, and coupling --
|g 8.1.
|t Implementing the Booking repository --
|g 8.2.
|t Input validation, separation of concerns, and coupling --
|g 8.3.
|t Using object initializers --
|g 8.4.
|t Unit testing with stubs --
|g 8.5.
|t Programming with generics --
|g 8.6.
|t Providing default arguments by using optional parameters --
|g 8.7.
|t Conditionals, Func, switches, and switch expressions --
|t ternary conditional operator --
|t Branching using an array of functions --
|t Switch statements and expressions --
|t Querying for pending changes in Entity Framework Core --
|g 9.
|t Extension methods, streams, and abstract classes --
|g 9.1.
|t Implementing the Airport repository --
|g 9.2.
|t Getting an Airport out of the database by its ID --
|g 9.3.
|t Validating the AirportlD input parameter --
|g 9.4.
|t Output streams and being specifically abstract --
|g 9.5.
|t Querying the database for an Airport object --
|g 9.6.
|t Implementing the Flight repository --
|t IsPositive extension method and "magic numbers" --
|t Getting a flight out of the database --
|g 10.
|t Reflection and mocks --
|g 10.1.
|t repository/service pattern revisited --
|t What is the use of a service class? --
|g 10.2.
|t Implementing the CustomerService --
|t Setting up for success: Creating skeleton classes --
|t How to delete your own code --
|g 10.3.
|t Implementing the BookingService --
|t Unit testing across architectural layers --
|t difference between a stub and a mock --
|t Mocking a class with the Moq library --
|t Calling a repository from a service --
|g 11.
|t Runtime type checking revisited and error handling --
|g 11.1.
|t Validating input parameters of a service layer method --
|t Runtime type checks with the is and as operators --
|t Type checking with the is operator --
|t Type checking with the as operator --
|t What did we do in section 11.1? --
|g 11.2.
|t Cleaning up the BookingServiceTests class --
|g 11.3.
|t Foreign key constraints in service classes --
|t Calling the Flight repository from a service class --
|g 12.
|t Using IAsyncEnumerable T and yield return --
|g 12.1.
|t Do we need an AirportService class? --
|g 12.2.
|t Implementing the FlightService class --
|t Getting information on a specific flight from the FlightRepository --
|t Combining two data streams into a view --
|t Using the yield return keywords with try-catch code blocks --
|t Implementing GetFlightByFlightNumber --
|g 13.
|t Middlezvare, HTTP routing, and HTTP responses --
|g 13.1.
|t controller class within the repository/service pattern --
|g 13.2.
|t Determining what controllers to implement --
|g 13.3.
|t Implementing the FlightController --
|t Returning HTTP responses with the lActionResult interface (GetFlights) --
|t Injecting dependencies into a controller using middleware --
|t Implementing the GET /Flight/ FlightNumber) endpoint --
|g 13.4.
|t Routing HTTP requests to controllers and methods --
|g 14.
|t JSON serialization/deserialization and custom model binding --
|g 14.1.
|t Implementing the BookingController class --
|t Introduction to data deserialization --
|t Using the [FromBody] attribute to deserialize incoming HTTP data --
|t Using a custom model binder and method attribute for model binding --
|t Implementing the CreateBooking endpoint method logic --
|g 14.2.
|t Acceptance testing and Swagger middleware --
|t Manual acceptance testing with an OpenAPI specification --
|t Generating an OpenAPI specification at runtime --
|g 14.3.
|t end of the road.
|
588 |
|
|
|a Description based on print version record.
|
590 |
|
|
|a O'Reilly
|b O'Reilly Online Learning: Academic/Public Library Edition
|
776 |
0 |
8 |
|c Original
|z 1617298026
|z 9781617298028
|
856 |
4 |
0 |
|u https://learning.oreilly.com/library/view/~/9781617298028/?ar
|z Texto completo (Requiere registro previo con correo institucional)
|
994 |
|
|
|a 92
|b IZTAP
|