Logo

Navigation
  • Home
  • Services
    • ERP Solutions
    • Implementation Solutions
    • Support and Maintenance Solutions
    • Custom Solutions
    • Upgrade Solutions
    • Training and Mentoring
    • Web Solutions
    • Production Support
    • Architecture Designing
    • Independent Validation and Testing Services
    • Infrastructure Management
  • Expertise
    • Microsoft Development Expertise
    • Mobile Development
    • SQL Server Database and BI
    • SAP BI, SAP Hana, SAP BO
    • Oracle and BI
    • Oracle RAC
  • Technical Training
    • Learn Data Management
      • Business Intelligence
      • Data Mining
      • Data Modeling
      • Data Warehousing
      • Disaster Recovery
    • Learn Concepts
      • Application Development
      • Client Server
      • Cloud Computing Tutorials
      • Cluster Computing
      • CRM Tutorial
      • EDI Tutorials
      • ERP Tutorials
      • NLP
      • OOPS
      • Concepts
      • SOA Tutorial
      • Supply Chain
      • Technology Trends
      • UML
      • Virtualization
      • Web 2.0
    • Learn Java
      • JavaScript Tutorial
      • JSP Tutorials
      • J2EE
    • Learn Microsoft
      • MSAS
      • ASP.NET
      • ASP.NET 2.0
      • C Sharp
      • MS Project Training
      • Silverlight
      • SQL Server 2005
      • VB.NET 2005
    • Learn Networking
      • Networking
      • Wireless
    • Learn Oracle
      • Oracle 10g
      • PL/SQL
      • Oracle 11g Tutorials
      • Oracle 9i
      • Oracle Apps
    • Learn Programming
      • Ajax Tutorial
      • C Language
      • C++ Tutorials
      • CSS Tutorial
      • CSS3 Tutorial
      • JavaScript Tutorial
      • jQuery Tutorial
      • MainFrame
      • PHP Tutorial
      • VBScript Tutorial
      • XML Tutorial
    • Learn Software Testing
      • Software Testing Types
      • SQA
      • Testing
  • Career Training
    • Career Improvement
      • Career Articles
      • Certification Articles
      • Conflict Management
      • Core Skills
      • Decision Making
      • Entrepreneurship
      • Goal Setting
      • Life Skills
      • Performance Development
      • Personal Excellence
      • Personality Development
      • Problem Solving
      • Relationship Management
      • Self Confidence
      • Self Supervision
      • Social Networking
      • Strategic Planning
      • Time Management
    • Education Help
      • Career Tracks
      • Essay Writing
      • Internship Tips
      • Online Education
      • Scholarships
      • Student Loans
    • Managerial Skills
      • Business Communication
      • Business Networking
      • Facilitator Skills
      • Managing Change
      • Marketing Management
      • Meeting Management
      • Process Management
      • Project Management
      • Project Management Life Cycle
      • Project Management Process
      • Project Risk Management
      • Relationship Management
      • Task Management
      • Team Building
      • Virtual Team Management
    • Essential Life Skills
      • Anger Management
      • Anxiety Management
      • Attitude Development
      • Coaching and Mentoring
      • Emotional Intelligence
      • Stress Management
      • Positive Thinking
    • Communication Skills
      • Conversation Skills
      • Cross Culture Competence
      • English Vocabulary
      • Listening Skills
      • Public Speaking Skills
      • Questioning Skills
    • Soft Skills
      • Assertive Skills
      • Influence Skills
      • Leadership Skills
      • Memory Skills
      • People Skills
      • Presentation Skills
    • Finding a Job
      • Etiquette Tips
      • Group Discussions
      • HR Interviews
      • Interview Notes
      • Job Search Tips
      • Resume Tips
      • Sample Resumes
 

.NET Client-Server Technology

By Exforsys | on July 15, 2007 |
Client Server

.NET Client-Server Technology

Decentralized Applications

Client-server technology developed as applications were decentralized from PCs and mainframe computers. Desktop computers were connected through a network or LANs (Local Area Networks) and WANs (Wide Area Networks). In this equation, ‘clients’ are the machines or programs that request services from another machine or server on the network. The server is linked to databases or the Web and performs the processing of the request and the delivery of the response.

The client provides the interface with which users communicate and make requests. The server programs and data function much like a remote disk drive. The Web is a natural client-server environment. In multi-tier Web servers, the database servers, application servers, and cache servers are all linked. Clients and servers communicate through scripts embedded in Web pages, insuring the intelligibility of requests and responses. The Internet’s main program, TCP/IP (Transmission Control Protocol/Internet Protocol), is written as a client-server program. In a typical client-server communication on the Web, the web browser sends a request for web pages or processing functions from a web or HTTP server located remotely on the Internet. In another configuration, user/client computers use TCP/IP to request files through FTP (File Transfer Protocol) servers locate on the Internet.

.NET is a suite of programs developed by Microsoft that support web services or the ability for personal computers to use the web. This is an alternative to using installed applications to perform services. Web or application services combine human resources, applications, and data. These services are made available through the organization’s web server to respond to a variety of client requests. These requests include broad services like database management or customer relationship management (CRM). However, it can include much smaller detailed services between clients and the Web, such as providing updated bid information in an on-line auction to providing stock or weather quotes. .NET servers support web services by providing clients with interfaces and seamless applications that make the execution of services more centered on the web browser. However, .NET platforms also contribute to the server-side of the equation by providing foundational services for building servers such as web-based data storage and services like Passport, in which users fill in a form once and it is stored for future identity verification.

Development of .NET

.NET developed as a framework in which to build and develop Windows applications. In a traditional Windows application, APIs (Application Program Interfaces) provide the basic tool for building applications. It offers the building blocks for software applications. For example, APIs allowed programmers to write specific functions into programs such as dialog boxes, buttons, etc. However, each new function required a new API to be called upon. Also, APIs required heavy code writing on the part of programmers. Using visual tools products and languages like Visual C++ or Visual Basic simplified, Windows programming developed more sophisticated GUIs (Graphic User Interfaces).

However, Windows APIs needed to be ‘wrapped’ in ‘wrapper classes’. Wrappers are software or data that contain or wrap around other software so that the contained software can exist in another operating environment to insure compatibility. Wrapping is used to make wrapped software behave like an object. OLE (Object Linking and Embedding) was the original technology that allowed applications to communicate with each other in Windows. This technology was upgraded to COM (Common Object Model), Microsoft’s object-oriented programming model. This model defined object interaction within single applications or between different applications.

COM launched ActiveX controls to compete with Java applets. ActiveX controls contain sets of rules defining how applications share information. Microsoft’s ActiveX technology proved more powerful than Java applets because they have access to the entire Windows operating system.

As client-server technology, distributed object-oriented programming (OOP), and the explosion of web services came together, standards like CORBA (Common Object Request Broker Architecture) were developed that specified protocols for transmitting objects over a network. However, this required tight client-server coupling, which meant that these protocols had to be very specific. The client needed to know how to communicate with the server precisely. This required a large deployment effort because of the need for detailed and exact communication.

.NET is Microsoft’s response to the issues described above. Upgrading existing technologies was not enough to compete with Java-based technologies that produced distributed enterprise applications. COM was upgraded to COM+ and DCOM (Distributed Common Object Model). While this addressed distributed programming, it still didn’t address the gaping holes in web services development and distributed application building. .NET did.

.NET Structure and Components

The .NET framework can be described in three layers. The top layer contains two modules. One is responsible for containing .NET compliant languages like VC (Visual C++), VB.NET (VisualBasic.NET), ASP.NET (Active Server Page.NET), C#, J#, etc. The module located next to compliant languages contains Windows forms, web forms, and web services. Any .NET-compliant languages can use these features to create dynamic GUIs (Graphic User Interfaces).

The next layer contains base classes. Base classes are used to derive other classes. In .NET languages, classes are templates for defining new categories of variables, and it is also responsible for describing the properties and behaviors of objects. Properties are the characteristics of objects. They are used to describe data structure attributes. Behaviors describe how an object functions, and they are defined by methods. This combination of properties and behaviors come together to create object interfaces. It is important to remember that classes are idealized objects, and when an object is instantiated or exists in a real-life instance; they are mobilized to participate in client-server communication.

The .NET framework base classes offer class packages to be used by .NET-compliant languages. This offers a high degree of functionality. Base class libraries are the building blocks of application building, and they function as the point of interaction with the run-time. ADO.NET (ActiveX Data Object.NET) is the Microsoft version of ADO. ADO is Microsoft’s standard programming interface for data access. ADO.NET is different from ADO in its ability to support XML (Extensible Markup Language) documents. XML is important because of its increased use. XML is a specification designed for web documents, and it is standardized by W3C to make web application development more sophisticated. XML allows designers to create customized tags and facilitates the “definition, transmission, validation, and interpretation of data between applications and organizations.” ADO.NET also includes an interface layer created by .NET data providers between the application and databases.

The bottom layer is the Common Language Runtime (CLR). This is the layer responsible for managing the execution of programs written in any of the languages it supports. This allows them to have common base class libraries and instantiate objects, regardless of what language they are written in as long as they share the same class. A program compiled for CLR doesn’t need a specific language environment to be executed in the .NET framework, but can run on any system with Windows. CLR is the runtime environment that translates MSIL (Microsoft Intermediate Language) into executable code. .NET programming languages are complied through MSIL, but the programmer doesn’t need to worry about syntax since the source code of the programming languages is automatically converted to MSIL. The CLR converts the MSIL into host machine language. This is run on the host machine where the request is received, executed, and sent back to the client.

General Contributions of .NET Framework

One of the major contributions made by .NET technology is interoperability. For example, it allows a wide range of devices to work together and automatically update and synchronize user information on an entire network. It also offers increase interactive potential for web sites through its ability to support XML documents, which are quickly replacing HTML (Hypertext Markup Language) as the markup language for writing web sites. The .NET revolution also promises premium on-line subscription services that will offer a central interface from which to customize access and manage various applications, from messaging applications like e-mail to software applications like Office.NET. Centralized data storage enables the synchronization of information across devices and users. It also facilitates efficient access to information. .Net also offers the ability to integrate communications media from e-mails to telephones. Finally, developers can create reusable modules, which reduce the possibility of programming errors.

Ultimately, .NET provides benefits for three types of users: organizations, individual users, and developers. .NET technology helps organizations by providing a way to integrate widely disparate technologies. This allows organizations to take the best advantage of the technology they’ve already invested in .NET also offers increased flexibility by allowing organizations to choose software modules from a variety of vendors to best suit their needs and then integrate it through a .NET framework. It also improves scalability by allowing organizations to use their existing resources to the fullest integrated capacity while laying the foundation for the incorporation of future technologies. .NET benefits individual users by providing integrated data that allows for more customized user interactions with computing devices regardless of location. Finally, .NET provides developers with an integrated set of tools for building web services. .NET was in many way designed for creating web services in multi-language environments. It provides all the translation and conversion mechanisms to make requests independent of language.

« « XML Parsing
NLP Neurological Levels » »

Author Description

Avatar

Editorial Team at Exforsys is a team of IT Consulting and Training team led by Chandra Vennapoosa.

Free Training

RSSSubscribe 0 Followers
  • Popular
  • Recent
  • Object-Oriented Client-Server Internet

    August 20, 2007 - 0 Comment
  • Server Side Scripting

    July 4, 2007 - 0 Comment
  • Web Services and Client Server Technology

    August 20, 2007 - 0 Comment
  • Client Server : Object Request Brokers

    July 6, 2007 - 0 Comment
  • Java and Client Server Models

    August 22, 2007 - 0 Comment
  • Unix Client Server Technology

    July 9, 2007 - 0 Comment
  • Ajax and Web Applications

    August 22, 2007 - 0 Comment
  • Client-Server Technology : Thin Clients

    July 18, 2007 - 0 Comment
  • Client-Server Security

    July 20, 2007 - 0 Comment
  • Client-Server Trends for 2007

    July 28, 2007 - 0 Comment
  • Ajax and Web Applications

    August 22, 2007 - 0 Comment
  • Java and Client Server Models

    August 22, 2007 - 0 Comment
  • Web Services and Client Server Technology

    August 20, 2007 - 0 Comment
  • Object-Oriented Client-Server Internet

    August 20, 2007 - 0 Comment
  • N-Tier Client-Server Architecture

    August 15, 2007 - 0 Comment
  • Peer-to-Peer and Client-Queue-Client Architecture

    August 15, 2007 - 0 Comment
  • Client-Server Testing Technology

    August 6, 2007 - 0 Comment
  • Virtualization and Client-Server Technology

    August 1, 2007 - 0 Comment
  • Client-Server Trends for 2007

    July 28, 2007 - 0 Comment
  • Client-Server Security

    July 20, 2007 - 0 Comment

Exforsys e-Newsletter

ebook
 

Related Articles

  • Ajax and Web Applications
  • Java and Client Server Models
  • Web Services and Client Server Technology
  • Object-Oriented Client-Server Internet
  • N-Tier Client-Server Architecture

Latest Articles

  • Project Management Techniques
  • Product Development Best Practices
  • Importance of Quality Data Management
  • How to Maximize Quality Assurance
  • Utilizing Effective Quality Assurance Strategies
  • Sitemap
  • Privacy Policy
  • DMCA
  • Trademark Information
  • Contact Us
© 2023. All Rights Reserved.IT Training and Consulting
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.AcceptReject Read More
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT