Relational Databases for GIS

Download Report

Transcript Relational Databases for GIS

ADEV 239
Microsoft .NET and
GeoMedia
REDLANDS SOFTWARE, INC.
Richard McFarland
[email protected]
REDLANDS SOFTWARE, INC.
Overview
• What is .NET?
• How do I get started?
• What about .NET and GeoMedia?
• Example Applications
•Q&A
REDLANDS SOFTWARE, INC.
What is .NET?
• It is huge, It is software
• Provides an software environment to
develop and execute modern
applications
• Like E-Business, Grid Computing, Web
Services, Utilility computing,
Autonomic computing, …
REDLANDS SOFTWARE, INC.
What is .NET?
• Competitive products include J2EE and IBM
Websphere
• IBM has defined e-business on demand as
an enterprise whose business processes -integrated end-to-end across the company
and with key partners, suppliers, and
customers -- can respond with speed to any
customer demand, market opportunity, or
external threat.
REDLANDS SOFTWARE, INC.
What is .NET?
• This new software model integrates
horizontally to link data, legacy
systems, and custom applications, and
this integration requires new levels of
data integrity and transaction
processing
REDLANDS SOFTWARE, INC.
What is .Net?
• It allows an enterprise to connect
with other enterprises, other business
processes, other applications, and
billions of pervasive computing devices
• Open specifications and industry
standards are the only realistic way
that all of this can connect
REDLANDS SOFTWARE, INC.
What is .Net?
• Grid computing allows distributed
computing resources to be shared and
managed as if they were one, large,
virtual computer – like water, electricity,
gas
• Think of the water supply – its
completely virtualized. Our interface is a
water spigot!
• See Scientific American, March 2003
REDLANDS SOFTWARE, INC.
What is .Net?
• Autonomic computing
• Autonomic systems will self-manage, selfprotect, balance workloads, install device
drivers, and upgrade software
• See Scientific American, June 2003
REDLANDS SOFTWARE, INC.
What is .Net?
• Microsoft .NET comprises most of these
concepts, and is built upon …
• The .NET Framework
• Microsoft Visual Studio® .NET
• Servers like Microsoft Windows® Server
2003, Microsoft SQL Server™, and
Microsoft BizTalk® Server
REDLANDS SOFTWARE, INC.
What is .NET
• Client software, such as Windows XP,
Windows CE, and Microsoft Office XP
• The .NET Framework is an integral
Windows component for building and
running the next generation of software
applications and Web services
REDLANDS SOFTWARE, INC.
.NET Framework
XML Web
Web
Services
Forms
ASP.Net
Windows
Forms
Data and XML Classes
Base Framework Classes
Common Language Runtime
REDLANDS SOFTWARE, INC.
The .NET Framework
• 20 different programming languages
• Plumbing for developing software built in,
enabling developers to focus on the core
business logic code
• Easier to build, deploy, and administer
secure, robust, high performance
applications
REDLANDS SOFTWARE, INC.
The .NET Framework
• Common Language Runtime or CLR is the
core of .NET
• Like an operating system running on
another operating system
• Like Java Virtual Machine, or the VB runtime
• Abstracts the operating system even more
• Windows itself is to close to the hardware
• Is portable in theory (BSD Unix)
REDLANDS SOFTWARE, INC.
CLR
XML Web
Web
Services
Forms
ASP.Net
Windows
Forms
Data and XML Classes
Base Framework Classes
Common Language Runtime
REDLANDS SOFTWARE, INC.
CLR
• The CLR is different
• A .NET compiler generates binary
executable software in a p-code format
called Common Intermediate
Language or CIL
• At runtime the CLR re-compiles or JITcompiles (Just In Time) the CIL into
native code such as x86 machine
language.
REDLANDS SOFTWARE, INC.
CLR
• “Managed” code runs in the native
machine language of the system
on which it is launched
• The first invocation of an
assembly is cached in its native
machine code for subsequent
invocations
REDLANDS SOFTWARE, INC.
Framework Class Library FCL
• Framework Class Library or
FCL
• The FCL contains hundreds of
classes
• Classes pervade every aspect
of .NET
REDLANDS SOFTWARE, INC.
Framework Class Library FCL
• Framework Class Library reflects
.NET’s object-oriented nature.
• Most objects are extensible
through class inheritance and
other interesting .NET techniques
• The FCL is one of the most
extensive class libraries
REDLANDS SOFTWARE, INC.
Base Framework Classes
XML Web
Web
Services
Forms
ASP.Net
Windows
Forms
Data and XML Classes
Base Framework Classes
Common Language Runtime
REDLANDS SOFTWARE, INC.
FCL - Base Classes
• Base classes provide standard
functionality
• Input/output, string manipulation,
security management, network
• Communications, thread management,
text management
• User interface design features.
REDLANDS SOFTWARE, INC.
Data and XML Classes
XML Web
Web
Services
Forms
ASP.Net
Windows
Forms
Data and XML Classes
Base Framework Classes
Common Language Runtime
REDLANDS SOFTWARE, INC.
FCL - Data and XML Classes
• ADO.NET classes enable
developers to interact with data
accessed in the form of XML
through the OLE DB, ODBC,
Oracle, and SQL Server interfaces
• XML classes enable XML
manipulation, searching, and
translations
REDLANDS SOFTWARE, INC.
ASP.Net and Window Forms
XML Web
Web
Services
Forms
ASP.Net
Windows
Forms
Data and XML Classes
Base Framework Classes
Common Language Runtime
REDLANDS SOFTWARE, INC.
FCL - ASP.NET classes
• The ASP.NET classes support the
development of Web-based
applications and Web services.
• Web Forms are analogous to Windows
Forms and the design time and
execution environments look and feel
very much the same
REDLANDS SOFTWARE, INC.
FCL – Windows Forms
• The Windows Forms classes support
the development of desktop-based
smart client applications
REDLANDS SOFTWARE, INC.
.NET Framework
• Class libraries provide a common,
consistent development interface
across all languages supported by the
.NET Framework
• CLR and the .NET Frameworks allow
the seamless reuse of code written in
any supported language
• But also allows the components to be
extended in another language
REDLANDS SOFTWARE, INC.
.NET Framework
• The .NET Framework is freely
downloadable
• http://msdn.microsoft.com/netframew
ork/downloads/default.aspxs
• Its about 23 MB
• Once installed, you can run any .NET
application
REDLANDS SOFTWARE, INC.
Building .NET Applications
• The .NET Frameworks contains a collection
of tools and compilers to generate .NET
applications
• MicroSoft provides C#, VB.NET, C++, and
J#
• There are at least 20 other compilers from
other sources.
• You can generate .NET apps with just the
Framework.
REDLANDS SOFTWARE, INC.
Visual Studio .NET
• However, to be productive, most
developers use Visual Studio .NET
• Comprises a single Integrated
Development Environment for the
Framework Classes and all .NET
languages
• Many, many tools to develop apps
• Application delivery packaging
REDLANDS SOFTWARE, INC.
How do get started?
• Develop on Windows 2000 or Server,
Windows XP Professional or Server
• Target these same platforms
• Make sure Internet Information
Services are installed and functioning
• Buy and install Visual Studio .Net
• Install your GeoMedia products
REDLANDS SOFTWARE, INC.
How do get started?
• VB6 and C++ 6 will run just fine as well at
the same time
• Utilize the many free or cheap MS local
technical sessions
• Consult the many technical manuals
available at your local book store
• Utilize the Microsoft .NET online areas, and
other services like CodeProject
• MSDN Magazine
REDLANDS SOFTWARE, INC.
What language to use
• Probably currently easier to use VB.Net than
C# for GeoMedia apps
• More enterprise type apps and examples
seem to be biased towards C#. MSDN
magazine seems to be more C# oriented
• Most of the Framework and Visual Studio
.NET written in C#
• C# apps are a little faster
REDLANDS SOFTWARE, INC.
What language to use
• If you are a C or C++ developer, C#
for sure
• If you’ve always wanted to learn C++,
use C#. In many ways, C# is a leaner
easier C++
• You can still write standard MFC and
ATL C++ applications.
REDLANDS SOFTWARE, INC.
What about .NET and
GeoMedia?
• Version 4 and 5 GeoMedia seem to
work pretty well with .NET
• Version 4 GeoMediaWebMap will not
• Not all objects seem to work with .NET
• Customer requirements will probably
dictate the time when all objects will
work well with .NET
REDLANDS SOFTWARE, INC.
What about .NET and
GeoMedia?
• In the mean time, I would recommend
getting started on small scale apps
• Also applications, particularly Web
Apps, in the portions were GeoMedia
is not utilized
• A major focus in .NET is Internet
oriented applications and WebServices
REDLANDS SOFTWARE, INC.
What about .NET and
GeoMedia?
• COM versus .NET
• COM will not disappear, but .NET
Framework is a bigger, better, faster
COM
• But .NET provides many tools/classes
for working with legacy COM object
hierarchies like GeoMedia
• What is Intergraph’s direction?
REDLANDS SOFTWARE, INC.
City View Example
• .Net truly is a Rapid Develop
Environment
• CityView is a perfect example of the
power of .NET to utilize Web Services
to create interesting applications.
• Code…
REDLANDS SOFTWARE, INC.
Web Services – City View
REDLANDS SOFTWARE, INC.
GeoMedia Example
• A Water Company wants to maintain an
atlas sheet approach for the maintenance
crews
• Various interface mechanisms and plotting
mechanisms are based on a standard tiling
scheme ( 3000’ X 2000’ )
• Sheets are being added somewhat
frequently.
REDLANDS SOFTWARE, INC.
GeoMedia Example
• Need a tool to generate all the
interface/generation mechanisms from
single source
65671820
65671822
65671834
65671836
65671838
65701812
65701814
65701816
REDLANDS SOFTWARE, INC.
ASP.Net Example
• Our Web applications tend to have many
interface mechanisms for map navigation
• ASP.NET provides a rich environment for
extending existing controls
• And debugging ASP really works!
REDLANDS SOFTWARE, INC.
Conclusion
• What is .NET?
• How do I get started?
• What about .NET and GeoMedia?
• Example Applications
•Q&A
REDLANDS SOFTWARE, INC.