• Complain

Sarcar - Interactive C# Fundamentals, Core Concepts and Patterns

Here you can read online Sarcar - Interactive C# Fundamentals, Core Concepts and Patterns full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. year: 2018, publisher: Apress, genre: Computer. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Sarcar Interactive C# Fundamentals, Core Concepts and Patterns
  • Book:
    Interactive C# Fundamentals, Core Concepts and Patterns
  • Author:
  • Publisher:
    Apress
  • Genre:
  • Year:
    2018
  • Rating:
    5 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Interactive C# Fundamentals, Core Concepts and Patterns: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Interactive C# Fundamentals, Core Concepts and Patterns" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Chapter 1: Object Oriented Programming Concepts -- Chapter 2. Class and Objects -- Chapter 3. The concept of inheritance -- Chapter 4. Inheritance in depth -- Chapter 5. Interfaces, -- Chapter 6. Properties -- Chapter 7. Important comparisons, -- Chapter 8 -- OOPs concepts revisited -- Chapter 9. Consult with the experts -- Chapter 10. Exceptions -- Chapter 11. Disposals through garbage collections -- Chapter 12. Generics[25-30] -- Chapter 13. Flexibilities with anonymous methods -- Chapter 14. Become a hero in the real world -- Chapter 15. Winning notes and the road ahead.;Presenting a two-way discussion between a teacher and students, this unique tutorial will give you a feeling that you are learning C# in a classroom environment providing questions and counter-questions to clarify points where necessary. --

Sarcar: author's other books


Who wrote Interactive C# Fundamentals, Core Concepts and Patterns? Find out the surname, the name of the author of the book and a list of all author's works by series.

Interactive C# Fundamentals, Core Concepts and Patterns — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Interactive C# Fundamentals, Core Concepts and Patterns" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Part I
Enter into the World of OOP
Enter into the World of OOP
This sections highlights :
  • What is object-oriented programming (OOP)?
  • Why do we need this type of programming?
  • How can we cover the fundamental concepts of OOP with the core building blocks of C#?
  • How can we make our C# applications attractive and efficient?
Vaskaran Sarcar 2018
Vaskaran Sarcar Interactive C#
1. Object-Oriented Programming Concepts
Vaskaran Sarcar 1
(1)
560066 Bangalore, Karnataka, India
Welcome to object-oriented programming (OOP) . You may already be familiar with the proverb Necessity is the mother of invention. The same concept applies here. If we have a basic idea about why we introduced this type of programming, or how these concepts will make real-world programming easy, our learning paths will be enjoyable and we will be able to extend our learnings in various directions. Therefore, Ill try to address some common questions then Ill provide an overview of object-oriented programming.
I have just two warning messages for you.
  • Do not get discouraged if you do not understand everything after your first pass. Sometimes it may seem complicated, but gradually it will seem easier to you.
  • There are many criticisms against OOP. Do not forget, each human mind has a tendency to criticize a new thing. So, even if you want to criticize these concepts, I suggest that you first try to understand and use the concepts, and then make your own decision whether to appreciate or criticize.
Now let us begin the journey
We started computer programming with binary codes, and mechanical switches were needed to load those programs. You can guess that a programmers job was very challenging in those days. Later, some high-level programming languages were developed to make their lives easier. They started writing simple English-like instructions to serve our purpose. In turn, the compilers used to translate those instructions into binaries because a computer can understand instructions in a binary language only. So, we became happy to develop those high-level languages.
But over a period of time, the computer capacity and capabilities increased a lot. As an obvious result, we needed to expand our vision and we started trying to implement more complex concepts in computer programming. Unfortunately, none of the programming languages that were available at that time was mature enough to implement those concepts.These were our primary concerns:
  • How can we reuse the existing codes to avoid duplicate efforts?
  • How can we control the use of global variables in a shared environment?
  • How do we debug the code when too much jumping is occurring (with keywords like goto ) in an application?
  • Suppose a new programmer has joined a team. He found it extremely difficult to understand the overall structure of the program. How can we make his/her life easier?
  • How can we maintain a large code base in an effective way?
To overcome these problems, expert programmers came up with the idea of breaking big problems into smaller chunks. The idea behind this was very simple: If we can solve each of the small problems/chunks, eventually we will solve that big problem . So, they started breaking large problems into small parts and the concept of functions (or procedure or subroutines) came into the picture. Each of these functions was dedicated to solve one small problem area. At a high level, managing the functions and their interaction became the key areas of focus. In this context, the concept of structured programming came into picture . Structured programming started gaining its popularity because small functions are easy to manage and easy to debug. In addition to this, we started limiting the use of global variables, which were replaced with local variables in the functions (in most of the cases).
Structured programming maintained popularity for almost two decades. During this time, the capacity of hardware increased significantly and as an obvious effect, people wanted to achieve more complex tasks. Gradually, the drawbacks and limitations of structured programming drew our attention; for example
  • Suppose, we have used a particular data type across multiple functions in an application. Now if we need to change the data type, we have to implement the changes across all functions across the products.
  • It is difficult to model all real-world scenarios with the key components of structured programming (i.e., data + functions). In the real world, whenever we create a product, there are two areas we need to focus on.
    • Purpose . Why do we need this product?
    • Behavior . How does the product make our lives easier?
Then the idea of objects came into existence.
Points to Remember
The fundamental difference between structured programming and object-oriented programming can be summarized as : Rather than the operations on data, we focus on the data itself.
There are few principles at the heart of object-oriented programming. You can easily guess that we will cover them in detail in rest of the book. First, Ill introduce each of them.
Class and Objects
These are the core of OOP. A class is the blueprint or the template for its objects. Objects are instances of a class. In simple language, we can say that in structured programming, we segregate or divide our problems into functions, and in OOP, we divide our problems into objects. In computer programming, we are already familiar with data types like int, double, float, and so forth. These are called built-in data types or primitive data types because they are already defined in the corresponding computer languages. But when we need to create our own datatype (e.g., Student), we need to create a Student class. Just as when we need to create an integer variable, we need to refer the int first, similarly, when we need to create a student object (e.g., John), we need to refer our Student class first. Similarly, we can say Ronaldo is an object from a Footballer class, Hari is an object from an Employee class, your favorite car is an object from a Vehicle class, and so on.
Encapsulation
The purpose of encapsulation is at least one of the following:
  • Putting restrictions so that the components of an object cannot be accessed directly
  • Binding the data with methods that will act on that data (i.e., forming a capsule)
In some OOP languages, the hiding of the information is not implemented by default. So, they come up with an additional term called information hiding .
Later we will see that data encapsulation is one of the key features in a class. In ideal cases, this data is not visible to the outside world.Only through the methods defined inside the class, we can access these data. Therefore, we can think of these methods as the interface between the objects data and the outside world (i.e., our program).
In C#, we can implement encapsulation through the proper use of access-specifiers (or modifiers) and properties.
Abstraction
The key purpose of abstraction is to show only essential details, and hiding the background details of implementation. Abstraction is also very much related to encapsulation , but the difference may be easily understood with a simple day-to-day scenario.
Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Interactive C# Fundamentals, Core Concepts and Patterns»

Look at similar books to Interactive C# Fundamentals, Core Concepts and Patterns. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Interactive C# Fundamentals, Core Concepts and Patterns»

Discussion, reviews of the book Interactive C# Fundamentals, Core Concepts and Patterns and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.