Mitchell Bosecke, Greg Burlet, David Dietrich, Peter Lorimer, Robin Miller
0 Introduction 0 ASP .NET 0 Web Services and Communication 0 Microsoft Visual Studio 2010 0 Mono 0 Support and Usage Metrics
.NET What is .NET? 0 Framework for developing software in Microsoft Windows 0 Large library 0 Several languages supported, allows language interoperability 0 Initial Release: February, 2002 0 Current Version: .NET 4.0
C# and VB.NET C# 0 Syntax extremely similar to Java and C 0 Extremely common language for Windows development VB .NET 0 Relatively easy to learn 0 Friendly for non‐developers to use
Lambda Expressions 0 Greatly reduce the amount of code needed 0 Supported starting in .NET 3.5 0 Custom Sorting! (a,b) => a.Length.CompareTo(b.Length); Nothing like it in Java, planned for JDK 8, not until late 2012
0 Introduction 0 ASP .NET 0 Web Services and Communication 0 Microsoft Visual Studio 2010 0 Mono 0 Support and Usage Metrics
ASP.NET What is it? 0 Web application framework 0 Supports dynamic websites, web applications, and web services 0 Developer can use any .NET language
ASP.NET Engine reads the IIS 1 passes ASP.NET `ile Browser request to `ile line by is returned requests ASP.NET line and to browser engine on as plain ASP.NET `ile executes the the server scripts in HTML the `ile 1 IIS – Internet Information Services
ASP.NET Pros 0 Can program in VB.NET, C#, Delphi.NET, Chrome, etc. 0 Can even use multiple languages in one application 0 Object oriented programming approach 0 Support for web services 0 Very easy to use XML support 0 Easy migration for windows developers to switch to web development
ASP.NET Cons 0 Microsoft platform needed for deployment 0 Not open source 0 Possibly steep learning curve
ASP.NET ASP.NET vs. PHP 0 ASP.NET is compiled where PHP is scripted 0 Room for better performance with compilation 0 Updates to ASP.NET are much more drastic than PHP so more effort is needed to keep up 0 Use ASP.NET if developers already have experience with Windows
0 Introduction 0 ASP .NET 0 Web Services and Communication 0 Microsoft Visual Studio 2010 0 Mono 0 Support and Usage Metrics
Web Services and Communication 0 Many modern web applications require the ability to interface with other applications 0 SOAP (Simple Object Access Protocol) 0 Sends commands to a single server via POST in XML documents 0 Single endpoint 0 REST (Representational State Transfer) 0 Uses the web's infrastructure (like URLs) to send commands 0 Distributable endpoint
Web Services and Communication 0 (WCF) Windows Communication Foundation API 0 Supports SOAP natively and REST with add on package 0 Other 3rd party packages 0 XML Parsing (ex. Chilkat) 0 Can integrate other services 0 ex: Google Maps 0 ex: Amazon Store
0 Introduction 0 ASP .NET 0 Web Services and Communication 0 Microsoft Visual Studio 2010 0 Mono 0 Support and Usage Metrics
Visual Studio 2010 0 Microsoft’s Solution to Development 0 A collection of products integrated into one environment ranging from design to deployment. 0 Divided into packages such as Visual Studio Ultimate, Premium, Professional and Express.
Development Made Easy Visual Studio 2010 Pros 0 Allows for development in multiple languages for multiple platforms. i.e. PC, XBOX and Windows 7 phone 0 Easy project creation and management. 0 Easy design and deployment of ASP .NET applications 0 Intellisense ‐ advanced code completion. 0 Easy layout management 0 Great technical support.
Maybe Not That Easy Visual Studio 2010 Cons 0 Proprietary. 0 It’s not cheap either ranges from $800 ‐ $12 000. 0 Large overhead for small projects. 0 Heavy resource consumption.
.NET and Visual Studio 0 .NET 4 SDK ‐ development optimized in Visual Studio. 0 Visual Studio has support for ALL .NET languages C#, ASP.NET, VB.NET, etc.. 0 Microsoft products play well together.
0 Introduction 0 ASP .NET 0 Web Services and Communication 0 Microsoft Visual Studio 2010 0 Mono 0 Support and Usage Metrics
Hypothetical Situation 0 Economic recession forces your company to reduce costs. You look into Linux because not only is it free, but it has free, open‐source software leading to signi`icant cost reductions. 0 Your code base contains various .NET applications critical to your business. 0 Your business employs developers skilled in .NET and VS. Either employ new developers (costs go up) or push current developers out of their comfort zone leading to a learning curve, initial mistakes (costs go up) 0 Problem: .NET applications do not run in the Linux environment
An open source implementation of .NET framework. A software platform designed to promote easy development of cross‐platform .NET applications.
Options, options, options Portability Flexibility 0 Develop and run .NET 0 Write code in your applications on Linux, favourite Microsoft Windows, programming Mac OS X, BSD, Sun language supported Solaris, Nintendo Wii, Sony PlayStation 3, by CLR (Common Apple iPhone Language Runtime). 0 Mono is cross‐platform 0 Code is interoperable itself. It runs on the between CLR aforementioned languages. platforms
Hassle‐Free Installation 0 Linux Distribution packages (apt‐get) or manual source‐ code compilation disclaimer: manual compilation probably isn’t hasslefree 0 Windows, OS X, BSD, Solaris Automated installers
Compatibility 0 Now supports everything included in .NET 4.0 except: Windows Presentation Foundation (WPF), Windows Communication Foundation (WCF), and Windows Forms (WF) 0 These features are projected to be completed in Mono 3.0 Olive 0 As well as supporting most of .NET 4.0 features, Mono also has it’s own extended frameworks
Mono Tools for Visual Studio 0 Microsoft Visual Studio plugin allows developers to create .NET applications to deploy on mono‐enabled platforms. 0 Sets everything up for you Mono caters to web as well as desktop applications!
Mono for the Web Apache/Nginx Web Services/Consuming Database Connection
Apache: Mod_Mono 0 Mod_Mono is a module providing ASP.NET support for the widely used HTTP web server Apache. Socket:TCP host multiple independent applications 0 Mod_Mono passes ASP.NET page requests to external program, modmonoserver which handles the request instead of apache.
Results 0 Can route speci`ic URL’s to different modmonoserver processes running under one virtual machine Example: testing server runs experimental code apart from production code. 0 Set speci`ic quotas (CPU, disk, memory) to different server processes 0 Mod_Mono Con`iguration Tool – automatically generates conf.d `ile to deploy application immediately Con: works well for simple applications. Anything more complex requires extensive con`iguration text `ile tweaking
Recommend
More recommend