O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

C# 2012 Fundamentals LiveLessons Parts I, II, III, and IV

Video Description

C# 2012 Fundamentals LiveLessonspresents Paul Deitel's signature "Live Code" treatment of Microsoft's C# 2012 programming language - over 40 hoursof expert video! Every important C# concept is presented in the context of a complete, working C# 2012 program. This LiveLesson contains over 20,000 lines of fully tested C# program code. And developers are free to reuse all of it. Among the key topics included in this LiveLesson are:
• Windows 8 UI: Windows 8 UI style apps are called Windows Store apps. In Lesson 25, Deitel shows how to create and test Windows Store apps and upload them to Microsofts Windows Store.

• Databases and LINQ to Entities: The LINQ to SQL technology covered in the previous edition has been replaced with the more robust LINQ to Entities and the ADO.NET Entity Framework;

• Microsofts free SQL Server Express 2012 is used to present the fundamentals of database programming;

• ASP.NET 4.5, Microsofts .NET server-side technology, enables developers to create robust, scalable web-based apps;

• Windows Phone 8, Microsofts latest operating system for smartphones. It features multi-touch support for touchpads and touchscreen devices, enhanced security features and more. In Lesson 27 the author builds a complete working Windows Phone 8 app and test it in the Windows Phone simulator;

• Windows Azure, Microsoft's cloud computing platform that allows you to develop, manage and distribute apps in the cloud. Lesson 31 shows how to build a Windows Azure app;

Asynchronous programming with async and await. Asynchronous programming is simplified in Visual C# 2012 with the new async and await capabilities.

About the Author:

Paul Deitel is the co-founder of Deitel & Associates, Inc., the internationally recognized programming languages authoring, corporate-training and Internet business development organization. Paul and his father—Harvey Deitel—have written many international best-selling programming-language professional books and textbooks that millions of people worldwide have used to master C++, C, Java™, C#, Visual Basic®, Visual C++®, XML, Perl, Python, and Internet and web programming.

About Sneak Peek:

Sneak Peek videos are available to Safari Books Online subscribers offering early access to the very latest information on a given topic. Sneak Peek videos do not include post-production editing and may include further revisions before the video is complete.

Table of Contents

  1. Part I
    1. Introduction 00:04:02
  2. Setting Up Your Windows 7 Environment
    1. Lesson introduction 00:02:02
    2. Setting up your development environment 00:11:52
  3. Lesson 1: Test-Driving a C# App Using Visual Studio for Windows Desktop on Windows 7
    1. Lesson introduction 00:00:47
    2. Test-Driving a C# App Using Visual Studio for Windows Desktop on Windows 7 00:08:50
  4. Lesson 2: Dive Into® Visual Studio Express 2012 for Windows Desktop
    1. Lesson introduction 00:03:02
    2. Overview of the IDE and creating a new project 00:09:40
    3. IDE Menus and Toolbars 00:07:41
    4. Navigating the IDE 00:04:34
    5. Using Help 00:02:54
    6. Using Visual App Development to Create a Simple App that Displays Text and an Image 00:21:02
  5. Lesson 3: Introduction to C#
    1. Lesson introduction 00:03:26
    2. A Simple C# App: Displaying a Line of Text 00:13:13
    3. Creating a Simple App in Visual Studio 00:07:35
    4. Displaying a Single Line of Text with Multiple Statements 00:04:53
    5. Displaying Multiple Lines of Text with a Single Statement 00:02:32
    6. Formatting Text with Console.Write and Console.WriteLine 00:04:14
    7. Adding Integers 00:11:22
    8. Decision Making: Equality and Relational Operators 00:07:20
  6. Lesson 4: Introduction to Classes, Objexts Methods and Strings
    1. Lesson introduction 00:05:15
    2. Declaring a Class with a Method and Instantiating an Object of That Class 00:16:03
    3. Declaring a Method with a Parameter 00:08:38
    4. Instance Variables and Properties 00:28:06
    5. Value Types vs. Reference Types 00:02:25
    6. Initializing Objects with Constructors 00:10:08
    7. Floating-Point Numbers, Type decimal and Validating Data 00:19:19
  7. Lesson 5: Control Statements: Part 1
    1. Lesson introduction 00:01:45
    2. Class Average Using Counter-Controlled Repetition 00:11:57
    3. Class Average Using Sentinel-Controlled Repetition 00:07:31
    4. Nested Control Statements 00:04:01
    5. Compound Assignment Operators 00:01:14
    6. Increment and Decrement Operators 00:04:02
  8. Lesson 6: Control Statements: Part 2
    1. Lesson introduction 00:03:06
    2. Essentials of Counter-Controlled Repetition 00:01:35
    3. for Repetition Statement 00:03:59
    4. Summing integers with the for statement 00:02:08
    5. Compound Interest Calculations with for 00:05:48
    6. do…while Repetition Statement 00:02:36
    7. switch Multiple-Selection Statement 00:13:35
    8. break Statement Exiting a for Statement 00:01:44
    9. continue Statement Terminating an Iteration of a for Statement 00:01:14
    10. Logical Operators 00:05:02
  9. Lesson 7: Methods: A Deeper Look
    1. Lesson introduction 00:04:10
    2. static Methods: User-Defined Method maximum 00:07:28
    3. Three Ways to Call a Method 00:02:20
    4. Promotion Rules 00:02:43
    5. The .NET Framework Class Library 00:04:44
    6. Shifted and Scaled Random Numbers for Rolling a Six-Sided Die 00:05:41
    7. Roll a Six-Sided Die 6,000,000 Times 00:02:05
    8. Case Study: A Game of Chance; Introducing Enumerations 00:16:09
    9. Scope of Declarations 00:09:33
    10. Method Overloading 00:07:53
    11. Optional Parameters 00:02:43
    12. Named Parameters 00:03:57
    13. A Simple Example of Recursion: Factorial 00:05:18
    14. Passing Arguments By Value and By Reference 00:08:14
  10. Lesson 8: Arrays; Introduction to Exception Handling
    1. Lesson introduction 00:04:12
    2. Creating an Array 00:05:26
    3. Using an Array Initializer 00:02:09
    4. Calculating a Value to Store in Each Element of an Array; Introducing const 00:03:54
    5. Summing the Elements of an Array 00:01:54
    6. Using Bar Charts to Display Data Graphically 00:03:36
    7. Using the Elements of an Array as Counters 00:02:20
    8. Using Arrays to Analyze Survey Results; Introduction to Exception Handling 00:13:21
    9. Card Shuffling and Dealing Simulation; Introducing Arrays of References to Objects and the ToString method 00:15:53
    10. foreach Repetition Statement 00:04:14
    11. Passing Arrays and Array Elements to Methods 00:06:49
    12. Passing Arrays by Value and by Reference 00:09:25
    13. Case Study: GradeBook Using an Array to Store Grades 00:10:39
    14. Multidimensional Arrays 00:09:45
    15. Case Study: GradeBook Using a Rectangular Array 00:09:45
    16. Variable-Length Argument Lists 00:02:16
    17. Using Command-Line Arguments 00:06:41
  11. Part II
    1. Introduction 00:05:37
  12. Lesson 9: Introduction to LINQ and the List Collection
    1. Lesson introduction 00:02:24
    2. Querying an Array of int Values using LINQ 00:17:16
    3. Querying an Array of Employee Objects Using LINQ 00:17:21
    4. Introduction to Collection and the Generic List Class 00:11:09
    5. Querying a Generic Collection Using LINQ 00:07:45
  13. Lesson 10: Classes and Objects: A Deeper Look
    1. Lesson introduction 00:05:12
    2. Time Class Case Study 00:18:06
    3. Controlling Access to Members 00:01:58
    4. Referring to the Current Object's Members with the this Reference 00:10:45
    5. Time Class Case Study: Overloaded Constructors 00:22:36
    6. Composition 00:12:43
    7. static Class Members 00:12:48
    8. A Note About Constant Fields of a Class 00:01:56
    9. Class View and Object Browser 00:08:07
    10. Object Initializers 00:03:00
  14. Lesson 11: Object-Oriented Programming: Inheritance
    1. Lesson introduction 00:05:21
    2. Base Classes and Derived Classes 00:07:00
    3. Creating a CommissionEmployee Class 00:12:48
    4. Creating a BasePlusCommissionEmployee Class without Using Inheritance 00:07:36
    5. Creating a CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy 00:12:24
    6. CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy Using protected Instance Variables 00:09:12
    7. CommissionEmployee-BasePlusCommissionEmployee Inheritance Hierarchy Using private Instance Variables 00:10:50
    8. Class object 00:04:15
  15. Lesson 12: Object-Oriented Programming: Polymorpishm
    1. Lesson introduction 00:08:31
    2. Demonstrating Polymorphic Behavior with the CommissionEmployee-BasePlusCommissionEmployee Hierarchy 00:10:58
    3. Case Study: Payroll System Using Polymorphism 00:05:11
    4. Creating Abstract Base Class Employee 00:06:32
    5. Creating Concrete Derived Class SalariedEmployee 00:06:18
    6. Creating Concrete Derived Class HourlyEmployee 00:03:44
    7. Creating Concrete Derived Class CommissionEmployee 00:03:58
    8. Creating Concrete Derived Class BasePlusCommissionEmployee 00:05:20
    9. Polymorphic Processing, Operator is and Downcasting 00:22:08
    10. Sealed Methods and Classes 00:02:41
    11. Developing an IPayable Hierarchy 00:03:31
    12. Declaring Interface IPayable 00:02:02
    13. Creating Class Invoice 00:05:29
    14. Modifying Class Employee to Implement Interface IPayable 00:02:18
    15. Modifying Class SalariedEmployee for use with IPayable 00:02:29
    16. Using Interface IPayable to Process Invoices and Employees Polymorphically 00:10:34
    17. Operator Overloading 00:11:43
  16. Lesson 13: Exception Handling: A Deeper Look
    1. Lesson introduction 00:03:13
    2. Example: Divide by Zero without Exception Handling 00:10:36
    3. Example: Handling DivideByZeroExceptions and FormatExceptions 00:09:41
    4. finally Block 00:14:59
    5. The using Statement 00:02:25
    6. Exception Properties 00:10:53
    7. Programmer-Defined Exception Classes 00:06:20
  17. Lesson 14: Graphical User Interfaces with Windows Forms: Part 1
    1. Lesson introduction 00:04:08
    2. Introduction to GUIs 00:03:44
    3. A Simple Event-Driven GUI 00:16:45
    4. Building the Simple Event Example and Viewing the Auto-Generated GUI Code 00:17:02
    5. Delegates and the Event Handling Mechanism 00:07:09
    6. Locating Event Information 00:05:56
    7. Control Properties and Layout 00:07:43
    8. Labels, TextBoxes and Buttons 00:09:24
    9. GroupBoxes and Panels 00:05:02
    10. CheckBoxes 00:05:24
    11. RadioButtons 00:12:01
    12. PictureBoxes 00:07:23
    13. ToolTips 00:03:12
    14. NumericIUpDown Control 00:05:53
    15. Mouse-Event Handling 00:09:41
    16. Keyboard-Event Handling 00:07:08
  18. Lesson 15: Graphical User Interfaces with Windows Forms: Part 2
    1. Lesson introduction 00:02:48
    2. Menus 00:19:06
    3. MonthCalendar Control 00:03:20
    4. DateTimePicker Control 00:07:33
    5. LinkLabel Control 00:04:40
    6. ListBox Control 00:07:12
    7. CheckedListBox Control 00:05:17
    8. ComboBox Control 00:08:07
    9. TreeView Control 00:13:17
    10. ListView Control 00:21:16
    11. TabControl Control 00:06:59
    12. Multiple Document Interface (MDI) Windows 00:15:29
    13. Visual Inheritance 00:14:32
    14. User-Defined Controls 00:11:31
  19. Part III
    1. Introduction 00:10:28
  20. Lesson 16: Strings and Chracters: A Deeper Look
    1. Lesson introduction 00:01:46
    2. string Constructors 00:03:51
    3. string Indexer, Length property and CopyTo Method 00:04:14
    4. Comparing strings 00:06:14
    5. Determining Whether a String Begins or Ends with a Specified String 00:01:50
    6. Locating Characters and Substrings in strings 00:07:27
    7. Extracting Substrings from strings 00:01:20
    8. Concatenating strings 00:01:55
    9. Miscellaneous string Methods 00:03:04
    10. Class StringBuilder Constructors 00:03:13
    11. Length and Capacity Properties, EnsureCapacity Method and Indexer of Class StringBuilder 00:03:11
    12. Append Method of Class StringBuilder 00:03:50
    13. AppendFormat Method of Class StringBuilder 00:04:31
    14. Insert and Remove Methods of Class StringBuilder 00:02:27
    15. Replace Method of Class StringBuilder 00:02:00
    16. Char Methods 00:04:22
    17. Simple Regular Expressions and Class Regex 00:06:25
    18. Regular-Expression Character Classes and Quantifiers 00:09:17
    19. A More Complex Regular Expression 00:02:31
    20. Validating User Input with Regular Expressions and LINQ 00:12:29
    21. Regex Methods Replace and Split 00:08:18
  21. Lesson 17: Files and Streams
    1. Lesson introduction 00:02:06
    2. Using Classes File and Directory 00:10:17
    3. Using LINQ to Search Directories and Determine File Types 00:09:37
    4. BankLibrary: Reusable Class BankUIForm 00:03:38
    5. BankLibrary: Reusable Class Record 00:02:13
    6. Creating and Writing to a Sequential-Access File 00:13:40
    7. Reading Date from a Sequential-Access Text File 00:06:52
    8. Case Study: Credit-Inquiry Program 00:07:25
    9. BankLibrary: Class RecordSerializable 00:04:58
    10. Creating a Sequential-Access File Using Object Serialization 00:06:45
    11. Reading and Deserializing Data from a Binary File 00:05:53
  22. Lesson 18: Generics
    1. Lesson introduction 00:02:16
    2. Motivation for Generic Methods 00:04:19
    3. Generic-Method Implementation 00:05:19
    4. Type Constraints 00:09:20
    5. Generic Classes 00:13:00
    6. Generic Methods That Receive Objects of Generic Classes as Arguments 00:06:33
  23. Lesson 19: Collections
    1. Lesson introduction 00:03:25
    2. Class Array and Enumerators 00:09:30
    3. Class ArrayList 00:07:57
    4. Class Stack 00:05:29
    5. Class ClassHashtable 00:07:45
    6. Generic Class SortedDictionary 00:05:02
    7. Generic Class LinkedList 00:11:41
  24. Lesson 20: Databases and LINQ
    1. Lesson introduction 00:03:40
    2. Relational Databases 00:02:41
    3. Books Database 00:04:30
    4. Books Database: Entity-Relationship Diagram 00:03:09
    5. LINQ to Entities and the ADO.NET Entity Framework 00:04:30
    6. Querying a Database with LINQ: Demonstrating the Display Authors Table App 00:06:26
    7. Querying a Database with LINQ: Creating the ADO.NET Entity Data Model Class Library 00:10:04
    8. Querying a Database with LINQ: Creating a Windows Forms Project and Configuring It to Use the Entity Data Model 00:07:54
    9. Querying a Database with LINQ: Data Bindings Between Controls and the Entity Data Model 00:07:40
    10. Querying a Database with LINQ: Code for the Data Bindings Between Controls and the Entity Data Model 00:17:05
    11. Dynamically Binding Query Results 00:02:04
    12. Dynamically Binding Query Results: Creating the Display Query Results GUI 00:06:59
    13. Dynamically Binding Query Results: Coding the App 00:12:14
    14. Retrieving Data from Multiple Tables with LINQ 00:19:55
    15. Creating a Master/Detail View App 00:18:11
    16. Address Book Case Study 00:04:07
    17. Address Book Case Study: Creating the GUI 00:15:14
    18. Address Book Case Study: Coding the app 00:09:32
  25. Lesson 21: Web App Development with ASP.NET
    1. Lesson introduction 00:03:28
    2. Web Basics 00:05:15
    3. Multitier App Architecture 00:03:37
    4. Testing Your First Web App 00:07:32
    5. Building Your First Web App 00:26:07
    6. Standard Web Controls 00:26:35
    7. Validation Controls: Demo 00:09:04
    8. Validation Controls 00:11:34
    9. Session Tracking 00:17:51
    10. Data Driven ASP.NET Guestbook: Demo 00:02:50
    11. Data Driven ASP.NET Guestbook 00:12:16
  26. Lesson 26: Asynchronous Programming with async and await
    1. Lesson introduction 00:04:00
    2. Basics of async and await 00:03:14
    3. Introduction to the Fibonacci calculation used in Sections 26.3-26.5 00:01:53
    4. Executing an Asynchronous Task from a GUI App 00:20:06
    5. Sequential Execution of Two Compute Intensive Tasks 00:06:30
    6. Asynchronous Execution of Two Compute Intensive Tasksp 00:20:04
    7. Invoking a Flickr Web Service Asynchronously with WebClient 00:30:36