Source/Reference Diagram - E

Download Report

Transcript Source/Reference Diagram - E

Microsoft
Programming
Technologies
By George Squillace
New Horizons of Michigan
MCT, MCSE, MCDBA,
CompTIA A+, CompTIA Network+
MCITP – Database Administration
MCITP – Enterprise Messaging
V2.0
" www.e-Squillace.com
First, What is an API?
API = Application Programming
Interface
Enables Easy Separation & Change of
Related Components
Both Software & Hardware Interfaces
Exist:
Examples:
ActiveX Data Objects (ADO)
ODBC
OLE-DB
MAPI (Messaging)
NetBIOS
Diagram Source:
A
NetBIOS, MAPI, COM, OLE,
OLE-DB, ODBC, ADSI, NDIS,
WinSock, WMI, ADO, CDO,
ISAPI, LDAP
http://www.e-squillace.com/tech/techdiagrams/What_is_the_value_of_an_API.htm
B
Custom Application
Building Blocks
Source/Reference
Diagram:
http://www.e-squillace.com
/tech
/techdiagrams
/DatabaseConstruction.htm
Then, use the List Box to select
the “Database Application
Building Blocks” diagram
Notice the Primary “Layers” of
the Custom-Built Application:
Front-End
Human
Windows
Application
HTML (Web app)
XML
(i.e., created using Visual
Basic .NET or C# .NET
programming languages)
(Active Server Pages)
User Interface
ADO
Office App
Custom Windows App
Custom Web App
ADO
Back-End (SQL)
Database API
ASP
(ActiveX Data Objects)
OLE-DB
(OLE-DB can also “sit” over ODBC)
OLE-DB
SQL Server Database Engine
SQL Server
(Database Engine)
Microsoft
Office
Application
(i.e.
, Access,
Excel,
Word…)
ODBC
What is ADO?
ADO is an Data Access API Between
Custom-Built Applications and a
Data Source
ADO = ActiveX Data Objects
An API that Simplifies Connecting a
Front-End Application to a Database
A
NetBIOS, MAPI, COM, OLE,
OLE-DB, ODBC, ADSI, NDIS,
WinSock, WMI, ADO, CDO,
ISAPI, LDAP
B
“Front-End” v. “Back-End” Programming
Front-End
Custom Windows application
Custom Web application
Many Custom-made Applications Involve a Database,
and in a Microsoft realm, this means
ADO Programming is Involved
Back-End
Database Design
Built Using
Transact-SQL
and/or GUI Tools
Stored Procedures
Views
Functions
Triggers
Programming Objects
Views
User-Defined
Functions
Stored
Procedures
Triggers
Data Integrity Design
Data Retrieval Design
(Constraints, Defaults and Rules)
(Indexes)
Table Design
(Columns, Data Types, Relationships [Logical Data Model])
Database Snapshot Design (SQL Server 2005, Enterprise Edition)
Schema Design (SQL Server 2005)
Database Creation, Files, Filegroup & Logfile Design
(Ask: Do I need more than just the Primary Filegroup, and/or more than one file per filegroup?)
Operating System & File System Design
(Number of Drive letters, placement of \Windows folder, Pagefile, SQL Server binaries, etc.)
Server Hardware
(CPU, RAM, Number and size of Disks, Number of Drive Channels)
Diagram Source:
www.e-Squillace.com/Tech/TechDiagrams/DatabaseConstruction.htm
Example of a Database-Oriented
Custom Windows Application
Example of a Database-Oriented
Web Application
Object-Oriented Programming (.NET)
v.
Procedural Programming (SQL)
 Object-Oriented Programming
 References are Made to Existing “Machinery”
within a Named Heirarchy
 Objects Have Properties and Methods
 Properties…
 …describe the Information & Attributes About an
Object (.i.e., Red v. Blue, Times Roman v.
Verdana)
 Methods
 Actions the Object Can Take
 Object-Oriented Programming (OOP) Requires
an Object Model and is Event-Driven
 Procedural Programming
 Procedural Programming is Often
Batch-Oriented
What is the .NET Framework?
(a.k.a. What is the .NET Framework,
and Why Do I Care?)
Picture the Framework Like
a “Black Box” of Built-In
Functionality or Machinery
Where Does Visual Studio “Fit” into
this Equation, and What is an IDE?
 Visual Studio is Used, In Part, to Create
Front-End Applications
 Windows Applications
 Web Applications (ASP-based)
 Many Other Components that “Execute” (Run
Code)
 Definition: “IDE”, or “Integrated Development
Environment”
 The Software Tool Used to Create & Debug
Programming Code
 Often Specific to a Particular Programming
Language
 A Number of Languages are Available within
Visual Studio’s IDE (later in this presentation)
What is a Visual Studio
Solution?
A Solution is a Collection of
One or More Related Projects
A Solution Represents the Sum
of All Components to be
Deployed
Click on picture for larger view.
You may have to press F11 within your
Browser to go to Full Screen mode
What is a Visual Studio Project?
 A Project is a Deployable Component
Created & Coded Within Visual Studio
 A Project is Based on a Template, which
Defines Two Important Characteristics of
the Project:
 The Language in which the Project is Coded
 The Type or Class of Component to be Created,
Such as:
 Windows Application (Windows Forms)
 Web Application
 Windows Service
 Web Service, etc.)
 A Solution Can Contain Multiple Projects,
Each Based on a Different Language
Projects Are Created in One of the
Following Available .NET Language(s)






VB .NET
C# .NET
J++ .NET
C++ .NET
Each Language has Strengths and Weaknesses
Regardless of the above Language Used to Code a
Project, when the Project is Built Visual Studio
creates code in an Intermediate Language rather
than Compiled. The Intermediate Language is
called “Microsoft Intermediate Language” Code
(MSIL), and is pronounced “Missle” code.
Presenter-Led Demonstration: Create a
Windows Forms Application Using Visual
Basic .NET
Create a Project
Add a MenuStrip Control
Insert Standard Items
Add a ToolStrip Control
Insert Standard Items
Add a Label
Reveal Code behind the Label
Add a Button
Reveal the Code behind the Button
Investigate the Code Behind the
Objects
Add Code that Demonstrates
“Intellisense” (Defined Next Slide)
Intellisense
 An Auto-completion Capability When
Entering Code Behind Objects
 Intellisense is Aware of the Object-Model
(Objects/Properties/Methods) of the
Current Object
 Hence, Object-Oriented Programming
 Demonstrate Use of Intellisense when
Adding MsgBox() code to a Label Object
Click on picture for larger view.
You may have to press F11 within your
Browser to go to Full Screen mode
Related Visual Studio 2005 Courses:
 2546, Core Application Development
 2547, Advanced Windows Application Development
 2543, Core Web Application Development (ASP)
 2544, Advanced Web Application Development
 2541, Core Data Access Development (ADO)
 2542, Advanced Data Access Development
 2548, Core Distributed Application Development
 2549, Adv. Distributed Application Development
 Compare the Above Courses to “Application Building
Blocks” Graphic Earlier in the Presentation
Resources
 http://www.e-squillace.com/nh,
then click on the very tiny “For AEs” link in the lower, right-hand
corner of the page.