Evaluation Of Different Programming Languages Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

Desktop development is the process of writing software that will run on normal computers. This software in question is for operating systems and application software. The software is originally designed in such a way that it can perform only one or tasks that are related to each other and this includes personalised applications for companies, computer games consoles and word processors.

Desktop development also includes the guidance of creating the user's experience in the area of his or her solution for a particular programming problem. These solutions include the clients-side applications' guidance, solution for web applications, rich internet application (RIA), and solution for mobile device applications. Guidance for creating complex Windows Forms desktop and, also on web client application development, on application deployment and mobile applications development which will be evaluated shortly and on building offline-capable applications, are being guaranteed with the desktop development.

Advantages of Desktop Development

A better set of UI control than HTML is achieved when the programming is done with the use of desktop UI.

The customisation of the UI is made possible by the user.

The gaining of total control of the screen element positioning is totally guaranteed.

Tab controlling can be made by the use of desktop development and editable grids, input masking control that enables the creation and developing of a better UI can be used.

When creating a game, there are benefits from the hardware that is already present in the user's machine which enables the creating of the desktop application.

Without the direct interaction with the user's machine hardware, the developing of Computer-Aided Manufacturing (CAM) and Computer-Aided Drawing (CAD) applications will not be possible.

The screen of the web page is drawn once on the desktop and it is only data that needs to be changed, this enables the performances of the programme to be faster on the desktop than should have been, in other words, it does not allow lots of screen data to pop up from the server to the client which could be time consuming for the data to be displayed one after the other.

With the use of desktop application, the integration of specific hardware such as Point of Sale (POS) systems, printers /scanners, numerical control machines is made easier to produce due to the presence of a tidy interface on the desktop than it would have been when using the browser and this also enables the integration with other products to be a lot easier.

The exchanging of data with Words/Excel is made easy with the use of automation with the desktop application, unlike how difficult it would have been when using the browser-based interface.

Disadvantages of Desktop Development

Though much can be done with the use of UI support from the desktop application, this allows the abuse of it which has given room for uncontrollable third-parties and this causes the deviation of Microsoft style guide for Windows applications. For all theses to be done, additional training would be required which is expensive and after the training, there is bound to be the possibility of some staff not following the right standards of the process which can create room for confusion in work places.

When the user of the desktop application is working from a remote location, the use of the application becomes hard.

The deploying of application to many users can be a lot tasking, example can be drawn from the burning of CDs and setting up a push server like text messages in order to distribute an application to all the users.

The applications have to be installed in every workstation before users can have access to applications anywhere they are.

Web Development:

This is one of the fastest growing industries in the world since the mid-90s. As at 1995, there were less than a thousand web development companies in the States and ten years after, there were more than 30,000 of it in the states alone. This has been able to affect the cost of website development and hosting by their prices dropping dramatically.

This is a comprehensive terminology for the activity that is involved with the creating and developing of website for the internet which can serve the world for surfing and browsing the net. It is generally known as the World Wide Web otherwise called the intranet as a personalised network for individual of firm usage. The stages at which the web development has to go through for the complete process to be achieved includes the client liaison, web design, client-side and server-side, web server, web content development, e-commerce development and network security configuration.

Web development is mostly seen by the web professionals as aspects that does not include the non-design building of websites as an example can be drawn from coding and marking-up of a programme. The stages of web development could range from the creating/ converting and developing of the commonest fixed singular page of basic text to the most multifaceted web-based social network, electronic businesses and internet application services.

The web development teams from the multi-national companies can consist of many people who are otherwise known as the web developers and likewise the companies that are locally based can necessarily have the need of fewer people who could be referred as the web-masters and they can be contract or permanent staff or the geographic designers and the information system technicians depending on how buoyant is the company's capital to afford the type of staff operation of their choice. Different departments are involved for a complete web development to be carried out and not just a designated department that would fine the task to ambiguous and complicated as specialised professionals are needed to handle the different roles of duty in order for the completed development to be accomplished.

Client Side Coding which can be as the creating of new methods of using JavaScript and other developing languages to improve the experience of a programme user via the means of Ajax Asynchronous JavaScript.

Amongst other client side codding is Flash Adobe Flash Player which is seen to be non-complex browser for RIAs, JavaScript formerly called ECMAScript which is for the creating and delivering a rich web applications that run across a wide variety of devices.

The Advantages of Web Development

Web development allows the web UI to bring quality benefits to an application

When developing with web, the use of standard HTML interface element is allowed.

The familiarising of the internet browsing by a potential user of web development is made easy and this enhances the easy use of the web pages which makes the user feel relaxed when using it at any time.

The benefit of centralising the application development for upgrading is possible without the distribution of the Microsoft. NET Framework.

There is no need for cancelling a new software application of the large.NET Framework and transferring it to multiples of desktops, rather, the placement of the new software on a centralised server for users' access from anywhere in the world is made possible by web development.

The changing of a system can be carried out centrally.

The importation of Windows from applications is made possible when there is the .NET Framwork in the users' computer.

Rather than updating every individual workstation, one can upgrade the output of the central server; this is because some applications do consume much of processing power.

The Disadvantages of Web Development

With the already existing of hardware that is present in the user's machine, the creation of desktop application is carried out without a check.

The users have limited control over the appearance of screen elements on your computer screen, this is because the standard HTML does not give room for total positioning of elements and this can result to the users' design being inelegant that it would have been in the desktop application.

There is no presence of input mask with the standard HTML elements.

The web application is slower as data and screen design have to be sent every time an HTML document is being needed.

However, a careful thought has to be considered before a user decides on the type of application he or she is to use for a particular purpose as they both have their good and bad sides.

Computer Vision and Gesture Recognition

This is the use of mathematical algorithms to interpret human gesture as a topic in language technology and computer science. Its origin can be from any bodily motion which could range from the face to hand of any being. This aspect is used as an approach which is made by computer vision algorithms and cameras to translate sing languages and these techniques are used to identify and recognise postures, proxemics, gait and human behaviours.

This aspect helps humans to compete with machines (HMI) and communicate naturally without the use of any mechanical devices. By this means, the conventional use of devices like keyboards, mouse and touch-screen are being made irrelevant. The computer vision has a role to play through the image processing when conducting gesture recognition through several techniques and this can be commonly seen with the use of X-BOX Kinect game where the gamer's image is being transformed in a gesture character to imitate whatever the gamer is doing in front of the sensor.

There are basically two types of gesture and they are:

Offline gestures which are seen to be those gestures that are activated with the use of a menu as it is processed after the users' interaction with the object.

Online gestures which are commonly used to scale and rotate physical objects with the use of direct manipulation gestures.

Advantages of Gesture Recognition and Computer Vision

The gesture recognition can be used for the directional indications through pointing, sign language recognition, and control through facial gesture, socially assistive robotic movements, alternative computer interfaces, affective computing, virtual controllers and remote controls.

The Disadvantages of Gesture Recognition and Computer Vision

The accuracy of the usefulness of gesture recognition software cannot be guaranteed and there are limitations on the equipment that are used as there is the possibility for the presence of image noise.

Images have to be in a constant location in order for them to be captured by the camera and there is need for constant lighting for a clearer videoing.

This method is expensive as there is the need for bigger and more powerful computers to be used for operating the vision sensors that is meant for the capturing of image movements.

Mobile Developing

This is the means through which application software is created and developed for a smaller lowered power handheld gadgets which could range from organizational digital assistants, mobile phones and personal digital assistants. These applications are downloaded by phone owners from different mobile software distribution dealers or they can be pre-installed on the phone from the manufacturers.

Advantages of Mobile Development

It is very easy to handle and to implement

It is an open-source based

The software development equipment powered by Android enables the developer to work at a greater extent and to carry out implementations at a faster pace.

It is seen to be user friendly due to the availability of Google's Android that enables the operating system to serve as a pocket fit personal computer.

The creations of applications in the smart phones are done with ease.

The developers charge extremely affordable rates as there is a high return rates of investment.

It facilitates a quick information gathering and it provides accurate information and it development tools are mostly easy to use.

Disadvantages of Mobile Development

Interface size which is of high quality when being compared with the desktop computer makes it to be the rave of the moment but at the same time, there will be struggles for market position and it might be difficult for consumers to change to the new technology.

There are sometimes technical constraints when it comes to devices choice that is to be targeted towards a particular market.

Due to the cost that is involved in the production of the devices, the product cost could be more expensive which other competitors can capitalise on as a threshold. An example can be with the use of Twitter and mini-podcasts which can provide alternative services at a cheaper cost.