Tuesday 2 December 2014

Website Development

PCBizness Technosoft Pvt. Ltd.

Web development is a broad term for the work involved in developing a web site for the Internet (World Wide Web) or an intranet (a private network). Web development can range from developing the simplest static single page of plain text to the most complex web-based internet applications, electronic businesses, and social network services. A more comprehensive list of tasks to which web development commonly refers, may include web design, web content development, client liaison, client-side/server-side scripting, web server and network security configuration, and e-commerce development. Among web professionals, "web development" usually refers to the main non-design aspects of building web sites: writing markup and coding. Most recently Web development has come to mean the creation of content management systems or CMS. These CMS can be made from scratch, proprietary (such as Open Text) or open source (such as Drupal). In broad terms the CMS acts as middleware between the database and the user through the browser. A principle benefit of a CMS is that it allows non-technical people to make changes to their Web site without having technical knowledge.

For larger organizations and businesses, web development teams can consist of hundreds of people (web developers). Smaller organizations may only require a single permanent or contracting developer, or secondary assignment to related job positions such as a graphic designer and/or information systems technician. Web development may be a collaborative effort between departments rather than the domain of a designated department.

Web design encompasses many different skills and disciplines in the production and maintenance of websites. The different areas of web design include web graphic design; interface design; authoring, including standardised code and proprietary software; user experience design; and search engine optimization. Often many individuals will work in teams covering different aspects of the design process, although some designers will cover them all.The term web design is normally used to describe the design process relating to the front-end (client side) design of a website including writing mark up. Web design partially overlaps web engineering in the broader scope of web development. Web designers are expected to have an awareness of usability and if their role involves creating mark up then they are also expected to be up to date with web accessibility guidelines.

Web Development can be split into many areas and a typical and basic web development hierarchy might consist of:

Client side coding

1. Ajax Asynchronous JavaScript provides new methods of using JavaScript, and other languages to improve the user experience.
2. Flash Adobe Flash Player is a ubiquitous browser plugin ready for RIAs. Flex 2 is also deployed to the Flash Player (version 9+).
3. JavaScript JavaScript is a ubiquitous client side platform for creating and delivering rich web applications that can also run across a wide variety of devices. It is a dialect of the scripting language ECMAScript.
4. jQuery Cross-browser JavaScript library designed to simplify and speed up the client-side scripting of HTML.
5. AngularJS, BackboneJS, EmberJS and ReactJS are client-side MVC technologies introduced for building single page application and offline applications for both desktop and mobile. They make the application more modular and also help dramatically increase development speed.
6. Microsoft Silverlight Microsoft's browser plugin that enables animation, vector graphics and high-definition video playback, programmed using XAML and .NET programming languages.
7. HTML5 and CSS3 Latest HTML proposed standard combined with the latest proposed standard for CSS natively supports much of the client-side functionality provided by other frameworks such as Flash and Silverlight
8. Scalable Vector Graphics (SVG), WebGL and Canvas deliver 2D and 3D capabilities, often used through JavaScript libraries; D3js (2D datavisualisations) and threeJS (3D) are popular examples.

Looking at these items from an "umbrella approach", client side coding such as XHTML is executed and stored on a local client (in a web browser) whereas server side code is not available to a client and is executed on a web server which generates the appropriate XHTML which is then sent to the client. The nature of client side coding allows one to alter the HTML on a local client and refresh the pages with updated content (locally), web designers must bear in mind the importance and relevance to security with their server side scripts. If a server side script accepts content from a locally modified client side script, the web development of that page is poorly sanitized with relation to security.

Server side coding

1. ASP (Microsoft proprietary)
2. ColdFusion (Adobe proprietary, formerly Macromedia, formerly Allaire)
3. CGI
4. Erlang, with Linux, Yaws, Mnesia, Erlang (LYME) solution stack
5. Groovy, using the Grails framework
6. Java, e.g. Java Servlets, JSP or WebObjects
7. Lotus Domino
8. Node.js
9. Perl, e.g. Catalyst, Dancer or Mojolicious (all open source)
10.PHP (open source)
11.Python, e.g. Django (web framework) (open source)
12.Ruby, e.g. Ruby on Rails (open source)
13.Scala, e.g. Play Framework, Lift Framework (open source)
14. SSJS Server-Side JavaScript, e.g. Aptana Jaxer, Mozilla Rhino
15.ASP.NET and ASP.NET MVC Frameworks (Microsoft proprietary)

Client side + server side

1. Google Web Toolkit provides tools to create and maintain complex JavaScript front-end applications in Java.
2. Dart provides tools to create and maintain complex JavaScript front-end applications as well as supporting server-side code in Dart (programming language).
3. Opa is a high-level language in which both the client and the server parts are implemented. The compiler then decides which parts run on the client (and are translated automatically to JavaScript) and which parts run on the server. The developer can tune those decisions with simple directives. (open source)
4.Pyjamas is a tool and framework for developing Ajax applications and Rich Internet Applications in Python.
5. Tersus is a platform for the development of rich web applications by visually defining user interface, client side behavior and server side processing. (open source)

However languages like Ruby and Python are often paired with database servers other than MySQL (the M in LAMP). Below are example of other databases currently in wide use on the web. For instance some developers prefer a LAPR (Linux/Apache/PostgreSQL/Ruby on Rails) setup for development.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

<< Home