Architecture and Design Pattern in Applications Development On.NET Platform Sergey Baidachni MCT, MCSD, MCDBA.

Slides:



Advertisements
Similar presentations
1 Introduction to ASP.Net 4.0 Development David Ringsell MCSD MCT MCPD.
Advertisements

Unit 1: Overview of the Microsoft.NET Platform
1 Unit 1: Introduction To.Net. 2 Introduction to.Net Integrated Development Environment (IDE) Languages in the.NET Framework The Common Language Runtime.
Introduction to .NET Framework
ADO.NET: Working in Disconnected Environment Sergey Baidachni MCT, MCSD, MCDBA.
Windows Programming 1 Part 1 dbg --- Getting Acquainted with Visual Studio.NET and C#
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
Introduction. What is.Net? The hype: “Microsoft.Net is a set of Microsoft software technologies for connecting information, people, systems, and devices.
XML Web-Services Sergey Baidachni MCT, MCSD, MCDBA.
Introduction to the C# Programming Language for the VB Programmer.
Thursday Evening 6.30VB.NET Introduction 7.30Break for food 8.00VB.NET Migration 8.45Q & A 9.00Done.
Module 1: Overview of the Microsoft.NET Framework.
Programming in ADO.NET: Data-Centric Applications and ADO.NET Original copyright by Microsoft, 2002, with minor modifications by Dan Eaves, 2005.
1 An Introduction to Visual Basic Objectives Explain the history of programming languages Define the terminology used in object-oriented programming.
Creating and Running Your First C# Program Svetlin Nakov Telerik Corporation
Platforms and tools for Web Services and Mobile Applications Introduction to C# Bent Thomsen Aalborg University 3rd and 4th of June 2004.
Intro to dot Net Dr. John Abraham UTPA – Fall 09 CSCI 3327.
CIS205 Part 1 dbg --- Getting Acquainted with Visual Studio.NET and C#
A Free sample background from © 2001 By Default!Slide 1.NET Overview BY: Pinkesh Desai.
Overview of Microsoft.Net and Vb.Net ITSE 2349 Spring 2002 Material from Microsoft.Net an Overview for ACC faculty by Stuart Laughton and Introduction.
© 2004 by The McGraw-Hill Companies, Inc. All rights reserved. McGraw-Hill/Irwin Programming the Web Using ASP.Net Chapter 2: The ASP.Net Template Dave.
1 Introduction to.NET Framework. 2.NETFramework Internet COM+ Orchestration Orchestration Windows.NET Enterprise ServersBuildingBlockServices Visual Studio.NET.
Introduction to .Net Framework
Module 7: Essentials of Object-Oriented Programming.
VS.NET Syllabus By Peter Huang.
ASP.NET The.NET Framework. The.NET Framework is Microsoft’s distributed run-time environment for creating, deploying, and using applications over the.
Microsoft.NET Framework Overview Abidi Mahmoud Seminarium on Component -based Software Engineering.
Meir Botner David Ben-David. Project Goal Build a messenger that allows a customer to communicate with a service provider for a fee.
C# A 1 CSC 298 Introduction to C#. C# A 2 What to expect in this class  Background: knowledge of an object oriented language of the C++, Java, … family.
.NET Framework & C#.
Introduction to.NET Framework. .NET – What Is It? Software platform Language neutral In other words:.NET is not a language (Runtime and a library for.
Microsoft Visual Basic 2005: Reloaded Second Edition
Introduction to .NET Rui Ye.
Appendix D: Microsoft.NET Framework Overview. Overview.NET Framework Architecture.NET Namespaces.
Creating and Running Your First C# Program Svetlin Nakov Telerik Corporation
Module 7: Object-Oriented Programming in Visual Basic .NET
Bacon A Penetration and Auditing Framework Hernan Gips
Module 1: Overview of the Microsoft.NET Platform.
C# Programming Fundamentals of Object-Oriented Programming Fundamentals of Object-Oriented Programming Introducing Microsoft.NET Introducing Microsoft.NET.
ISYS 573 Special Topic – VB.Net David Chao. The History of VB Early 1960s:BASIC-Beginner’s All-Purpose Symbolic Instruction Code –Teaching –Simple syntax,
.NET Language Supports. .NET Language Support Operating System Common Language Runtime Base Class Library ADO.NET and XML ASP.NET Web Forms Web Services.
.Net Framework Web Application and Development Digital Media Department Unit Credit Value : 4 Essential Learning time : 120 hours
.NET Framework Danish Sami UG Lead.NetFoundry
ISYS 812 Business Software Development David Chao.
Introduction to VB.Net. What is.NET? A brand of Microsoft technologies A platform for creating distributed Web applications A combination of new and updated.
.Net – The First Glance What Is.Net, Why Use.Net.
Module 1: Getting Started. Introduction to.NET and the.NET Framework Exploring Visual Studio.NET Creating a Windows Application Project Overview Use Visual.
Module 3: Using Microsoft.NET- Based Languages. Overview Overview of the.NET-Based Languages Comparison of the.NET-Based Languages.
Intro to dot Net Dr. John Abraham UTPA CSCI 3327.
Module 1: Overview of the Microsoft .NET Framework
ASP.NET (Active Server Page) SNU OOPSLA Lab. October 2005.
ASP.NET Web Services.  A unit of managed code installed under IIS that can be remotely invoked using HTTP.
Design Patterns Introduction
.NET Mobile Application Development XML Web Services.
INTRODUCTION CHAPTER #1 Visual Basic.NET. VB.Net General features It is an object oriented language  In the past VB had objects but focus was not placed.
July 22, 2001Introduction to.NET1 Introduction to.NET Framework Gholamali Semsarzadeh July 2001.
Introduction to.NET Building.NET Applications Mike Taulty Developer & Platform Group Microsoft Ltd
C# Fundamentals An Introduction. Before we begin How to get started writing C# – Quick tour of the dev. Environment – The current C# version is 5.0 –
Csci 490 / Engr 596 Special Topics / Special Projects Software Design and Scala Programming Spring Semester 2010 Lecture Notes.
A Detailed Introduction To Visual Studio.NET CRB Tech ReviewsCRB Tech Reviews introduces you to the world of Visual.
Introducing the Microsoft® .NET Framework
Introduction to .NET Framework Ch2 – Deitel’s Book
Microsoft .NET 3. Language Innovations Pan Wuming 2017.
Application Foundation
Object-Orientated Programming
Module 1: Getting Started
Introduction to C# AKEEL AHMED.
Module 10: Implementing Managed Code in the Database
Overview of System Development for Windows CE.NET
.NET Framework Design Goals
Presentation transcript:

Architecture and Design Pattern in Applications Development On.NET Platform Sergey Baidachni MCT, MCSD, MCDBA

Overview Introduction to the automobile design.NET Framework architecture OOP in.NET Framework (C#) Design Patterns

Introduction About Cars  A little about cars  How cars are designed, or game of Puzzles Car creation and program creation When should we talk about.NET? Requirements or how to please a car amateur

When should you talk about.NET Should you start out with coding? Ford and model Т Collection of requirements MSF – Microsoft Solution Framework

Requirements Business  Interaction between goals and objectives, products and services, financial structures and major organizational structures Application  Automated and Non automated services that support the business process Operation  What the organization needs to know to run its business process Technology  Technical service needed to perform and support the business mission

MSF

.NET Framework architecture What does it look like? What language should you choose? Common Language Runtime Developing interactions with data bases Windows application– what can be any simpler? ASP.NET – development of Web applications Web Services or will there be any future Web applications?

Как это выглядит? Win32 MessageQueuingCOM+ (Transactions, Partitions, Object Pooling) IISWMI Common Language Runtime.NET Framework Class Library ADO.NET: Data and XML XML Web Services User Interface Visual Basic C++C# ASP.NET PerlJ#…

What language to choose? С# - New component-oriented language for.NET VB.NET – New language version VB with additions Managed Extensions to С++ J# - for Java amateurs …And any languages

What language to choose? Microsoft Intermediate Language (MSIL) Or Common Intermediate Language

Common Language Runtime Base Class Library Support Thread Support COM Marshaler Type Checker Exception Manager MSIL to Native CompilersCodeManagerGarbageCollector Security Engine Debug Engine Class Loader

Data Base interaction ADO.NET Connected environment Disconnected environment System.Data: DataSet, DataTable, DataRow,DataColumn.NET Providers: System.Data.SqlClient, System.Data.Odbc, System.Data.OleDb, System.Data.OracleClient

Data Base Interaction ADO Connection Command RecordSet ADO.NET XxxConnection XxxTransaction XxxCommand XxxDataReader XxxDataAdapter DataSet.NET Data Provider

Windows application Convenient graphic designer for Visual Studio.NET System.Windows.Forms  Controls  Form, TextBox, ComboBox e. t. c. System.Drawing  Drawing  Pens, Brushes e. t. c.

Windows applications It is an extremely short program using System.Windows.Forms; class SimpleForm { static void Main() { Form form=new Form(); Application.Run(form); }

ASP.NET – Development of Web applications Web Forms editor for VS.NET System.Web  User interface  Security  SessionState  Caching  Configuration

XML Web Services What is this?  URL-addressable set of functionality exposed over a network Advantage  HTTP: Stateless and text  XML: Standard format  Any platform and language Standards  XML  SOAP  WSDL  XSD

OOP in.NET Framework (C#) Class and Object What’s missing? Class in C# Using UML Basics on OOP

Class and Object Class  Abstract notion  Description of something  A named syntactic construct that describes common behavior and attributes Object  Instance of a class  Identity  Behavior  State

What’s missing? OOP – way of thinking of a human Can I set gears in motion? Access Modifiers  public  private  protected …And additional in.NET  internal  protected internal

Class in C# public class Bicycle { public Wheel leftWheel; public Wheel rightWheel; public void move the pedals (){…} protected void move the gear (){…}..... }

Using UML Which language is of easy understanding to all? UML – Universal modulation language

Basics on OOP Encapsulation  Combining Data and Methods  Controlling access visibility Polymorphism Inheritance Abstract base class Interfaces

Inheritance  Specifies an “is a kind of” relationship  Class relationship  Specialize existing classes

Inheritance example (C#) public class Bicycle { public Wheel leftWheel; public Wheel rightWheel; public void Move the pedals (){…} protected void Move the gear (){…}..... } public class ExtendBicycle: Bicycle { protected void Move the gear (){…}..... }

Polymorphism The method name resides in the base class The method implementations reside in the derived classes String Musician TuneYourInstrument( ) Guitar Player TuneYourInstrument( ) Violin Player TuneYourInstrument( ) A method with no implementation is called an operation A method with no implementation is called an operation

Polymorphism example(C#) public class StringMusician { public virtual void Tune(){…} } public class GuitarPlayer: StringMusician { public override void Tune(){…} } public class ViolinPlayer: StringMusician { public override void Tune(){…} } StringMusician obj=new ViolinPlayer(); obj.Tune();

Abstract Base Classes Some classes exist solely to be derived from  It makes no sense to create instances of these classes  These classes are abstract Stringed Musician { abstract } Stringed Musician { abstract } Guitar Player « concrete » Guitar Player « concrete » Violin Player « concrete » Violin Player « concrete » You can create instances of concrete classes You can create instances of concrete classes You cannot create instances of abstract classes

Abstract base class example(C#) public abstract class StringMusician { public abstract void Tune(); } public class GuitarPlayer: StringMusician { public override void Tune(){…} } public class ViolinPlayer: StringMusician { public override void Tune(){…} } StringMusician obj=new ViolinPlayer(); obj.Tune();

Interfaces Contains only operations without implementation

Interfaces example(C#) public interface StringMusician { void Tune(); } public class GuitarPlayer: StringMusician { public void Tune(){…} } public class ViolinPlayer: StringMusician { public void Tune(){…} } StringMusician obj=new ViolinPlayer(); obj.Tune();

Design Patterns What is this? Strategy Pattern Singleton Pattern Publish-Subscribe Pattern

What is this? Solution of the problem that occurs most often Patterns Name  Strategy  Proxy  Iterator Problem definition Solving Results

Strategy pattern Problem Solving (UML) Solving (C#)

Problem Do I need all the algorithms? How do I choose the proper method? swith(type) { case 1: FirstMethod(); case 2: SecondMethod();..... }

Solving (UML)

Solving (C#) interface AbstractStrategy { void Operation(); } class ConcreteStrategy1: AbstractStrategy { public void Operation(){... } } class ConcreteStrategy2: AbstractStrategy { public void Operation(){... } } public class Client { private AbstractStrategy stat; }

Singleton Pattern Problem Solving (UML) Solving (C#)

Problem Only one class sample What for?  One Garbage Collector  One Explorer

Solving (UML)

Solving (C#) class Singleton { public static Singleton Instance() { if (_instance == null) { _instance = new Singleton(); } return _instance; } protected Singleton(){}; private static Singleton _instance; }

Publish-Subscribe Problem Solving (UML) Solving (C#)

Problem How Windows work Message Queue Repainting windows

Solving (UML)

Solving (C#) Event and Delegate Example