舉報

會員
Hands-On Object:Oriented Programming with C#
Object-orientedprogramming(OOP)isaprogrammingparadigmorganizedaroundobjectsratherthanactions,anddataratherthanlogic.WiththelatestreleaseofC#,youcanlookforwardtonewadditionsthatimproveobject-orientedprogramming.ThisbookwillgetyouuptospeedwithOOPinC#inanengagingandinteractiveway.ThebookstartsoffbyintroducingyoutoC#languageessentialsandexplainingOOPconceptsthroughsimpleprograms.Youwillthengoontolearnhowtouseclasses,interfacesmandpropertiestowritepureOOPcodeinyourapplications.YouwillbroadenyourunderstandingofOOPfurtherasyoudelveintosomeoftheadvancedfeaturesofthelanguage,suchasusingevents,delegates,andgenerics.Next,youwilllearnthesecretsofwritinggoodcodebyfollowingdesignpatternsanddesignprinciples.You'llalsounderstandproblemstatementswiththeirsolutionsandlearnhowtoworkwithdatabaseswiththehelpofADO.NET.Furtheron,you'lldiscoverachapterdedicatedtotheGitversioncontrolsystem.Asyouapproachtheconclusion,you'llbeabletoworkthroughOOP-specificinterviewquestionsandunderstandhowtotacklethem.Bytheendofthisbook,youwillhaveagoodunderstandingofOOPwithC#andbeabletotakeyourskillstothenextlevel.
目錄(330章)
倒序
- coverpage
- Title Page
- Copyright and Credits
- Hands-On Object-Oriented Programming with C#
- About Packt
- Why subscribe?
- Packt.com
- Contributors
- About the author
- About the reviewer
- Packt is searching for authors like you
- Preface
- Who this book is for
- What this book covers
- To get the most out of this book
- Download the example code files
- Download the color images
- Conventions used
- Get in touch
- Reviews
- Overview of C# as a Language
- Evolution of C#
- Managed code
- Generics
- LINQ
- Dynamics
- Async/await
- Compiler as a service
- Exception filters
- C# 8 and beyond
- Architecture of .NET
- Common Language Runtime
- Common Type System
- .NET framework class libraries
- Just-in-time compiler
- Fundamentals and syntax of C# language
- Data types
- Nullable types
- Literals
- Boolean
- Integer
- Real
- Character
- String
- Programming syntax – conditions
- If-else construct
- Switch-case construct
- goto statements
- Programming syntax – loops
- The while construct
- The do-while construct
- The for construct
- The foreach construct
- Contextual – break and continue statements
- Break
- Continue
- Writing your first C# program in a console application
- Visual Studio as an editor
- Evolution of Visual Studio
- Types of Visual Studio
- Visual Studio Community
- Visual Studio Professional
- Visual Studio Enterprise
- Visual Studio Code
- Introduction to the Visual Studio IDE
- New Project
- Solution Explorer
- Main workspace area
- Output window
- The Command and Immediate windows
- Search option in IDE
- Writing your first program in Visual Studio
- How to debug
- Debugging through code
- Summary
- Hello OOP - Classes and Objects
- Classes in OOP
- The general form of a class
- Writing a simple class
- Objects in OOP
- How to create objects
- Variables in C#
- Methods in a class
- Creating a method
- Constructor of a class
- Characteristics of OOP
- Inheritance
- Encapsulation
- Abstraction
- Polymorphism
- Summary
- Implementation of OOP in C#
- Interfaces
- The abstract class
- The partial class
- The sealed class
- Tuples
- Properties
- Access specifiers for classes
- Public
- Private
- Internal
- Protected
- Protected internal
- Summary
- Object Collaboration
- Examples of object collaboration
- Different types of object collaboration in C#
- Case study
- Dependency
- Association
- Aggregation
- Composition
- Inheritance
- Summary
- Exception Handling
- Why we need exception handling in programming
- Exception handling in C# programming
- Basics of exception handling
- Try and catch
- What happens if you don't handle exceptions?
- Multiple catch blocks
- Using the throw keyword
- What does the finally block do?
- Exception class
- Some common exception classes
- User-defined exceptions
- The exception filter
- Exception handling best practices
- Summary
- Events and Delegates
- What is a delegate?
- How to create and use delegates
- Method group conversion
- Using the static and instance methods as delegates
- Multicasting
- Covariance and contravariance
- Events
- Multicasting events
- Event guidelines from .NET
- Summary
- Generics in C#
- What are generics?
- Why do we need generics?
- Different constraints of generics
- Base class constraints
- Interface constraints
- Reference type and value type constraints
- Multiple constraints
- Generic methods
- Type-inferencing
- Covariance and contravariance in generics
- Covariance
- Contravariance
- Summary
- Modeling and Designing Software
- The importance of design diagrams
- Different UML diagrams
- Class diagrams
- Inheritance
- Association
- Aggregation
- Composition
- Dependency
- An example of a class diagram
- Use case diagrams
- The actor
- The use case
- The communication link
- The system boundaries
- An example of a use case diagram
- A sequence diagram
- An actor
- A lifeline
- An activation
- A call message
- A return message
- A self message
- A recursive message
- A create message
- A destroy message
- A duration message
- A note
- An example of a sequence diagram
- Summary
- Visual Studio and Associated Tools
- Visual Studio project types and templates
- Visual Studio Editor and different windows
- Editor window
- Solution Explorer
- Output window
- Debugging windows
- Breakpoints window
- Exception Settings
- Output
- Diagnostic Tools
- Immediate window
- Python debugger window
- Breakpoints Call Stack Trace and Watch
- Breakpoint
- Call Stack Trace
- Watch window
- Git in Visual Studio
- Refactoring and code-optimization techniques
- Rename
- Changing the method signature
- Encapsulate Field
- Extract Method
- Summary
- Exploring ADO.NET with Examples
- The fundamentals of ADO.NET
- Data providers
- Connection objects
- The Command object
- The DataReader object
- DataAdapter
- Connecting to various databases
- SQL Server
- The Oracle database
- Working with DataReaders and DataAdapters
- DataReaders
- DataAdapters
- Working with stored procedures
- Working with the Entity Framework
- What is an entity in the Entity Framework?
- Different types of Entity properties
- Scalar properties
- Navigation properties
- The code-first approach
- The database-first approach
- Using the Entity Framework
- Transactions in SQL
- Atomic
- Consistent
- Isolated
- Durable
- Summary
- New Features in C# 8
- Environment Setup
- Nullable reference types
- Async streams
- Ranges and indices
- Default implementation of interface members
- Switch expressions
- Target-typed new expressions
- Summary
- Understanding Design Patterns and Principles
- Design principles
- The single responsibility principle
- The open-closed principle
- The Liskov substitution principle
- The interface segregation principle
- The dependency inversion principle
- Creational design patterns
- The abstract factory pattern
- The builder pattern
- The factory method pattern
- The prototype pattern
- The singleton pattern
- Structural design patterns
- The adapter pattern
- The decorator pattern
- The facade pattern
- The proxy pattern
- Behavioral design patterns
- The command pattern
- The observer pattern
- The strategy pattern
- The MVC pattern
- Summary
- Git - The Version Control System
- What is version control?
- How Git works
- Modified
- Staged
- Committed
- Installing Git on Windows
- The basics of Git
- Git config
- Git init
- Git clone
- Git status
- Git add
- Git commit
- Git log
- Git remote
- Git push
- Git pull
- Git fetch
- Branching in Git
- Creating a branch
- Viewing available branches
- Changing branches
- Deleting a branch
- Merging in Git
- Summary
- Prepare Yourself - Interviews and the Future
- Interview questions
- What are the fundamental principles of object-oriented programming?
- What is inheritance?
- What is encapsulation?
- What is abstraction?
- What is polymorphism?
- What is an interface?
- What is an abstract class?
- What is a sealed class?
- What is a partial class?
- What are the differences between interfaces and abstract classes?
- What is the difference between method-overloading and method-overriding?
- What are access modifiers?
- What is boxing and unboxing?
- What are the differences between a struct and a class?
- What is an extension method in C# and how do we use it?
- What is managed and unmanaged code?
- What is a virtual method in C#?
- What do you understand by value types and reference types in C#.NET?
- What are design principles?
- What is the single responsibility principle?
- What is the Open/Closed principle?
- What is the Liskov substitution principle?
- What is the interface segregation principle?
- What is the dependency inversion principle?
- Interview and career tips
- Improving your communication skills
- Keep practicing
- Things to learn next
- Building the habit of reading
- Summary
- Other Books You May Enjoy
- Leave a review - let other readers know what you think 更新時間:2021-07-02 12:45:28
推薦閱讀
- Unity 2020 By Example
- HTML5+CSS3王者歸來
- Visual C++實例精通
- Android Development with Kotlin
- 從程序員到架構師:大數據量、緩存、高并發、微服務、多團隊協同等核心場景實戰
- Julia機器學習核心編程:人人可用的高性能科學計算
- 信息安全技術
- Visual Basic程序設計習題解答與上機指導
- INSTANT Mercurial SCM Essentials How-to
- C#應用程序設計教程
- 細說Python編程:從入門到科學計算
- Python Interviews
- OpenCV Android開發實戰
- Clojure Polymorphism
- 從零開始:C語言快速入門教程
- 例解Python:Python編程快速入門踐行指南
- 開發者測試
- IBM Cognos TM1 Cookbook
- 天天學敏捷:Scrum團隊轉型記
- OpenACC并行編程實戰
- Python樹莓派編程
- VMware Horizon桌面與應用虛擬化權威指南
- Troubleshooting Ubuntu Server
- Mastering FreeSWITCH
- Mastering QGIS(Second Edition)
- Python人工智能編程實踐
- Mastering Spring 5.0
- 微信小程序開發從入門到項目實踐
- Building Python Real:Time Applications with Storm
- Learning VMware NSX(Second Edition)