Home > Information technology essays > Use of the C programming language (essay plan)

Essay: Use of the C programming language (essay plan)

Essay details and download:

  • Subject area(s): Information technology essays
  • Reading time: 4 minutes
  • Price: Free download
  • Published: 15 November 2019*
  • Last Modified: 22 July 2024
  • File format: Text
  • Words: 926 (approx)
  • Number of pages: 4 (approx)

Text preview of this essay:

This page of the essay has 926 words.

Essay plan:

– Must talk about all C languages (C, Object-C, C# and C++) as well as drawing on other modern languages outside of this module e.g. java.

– Draw on their history (likely to be similarities/ times when differences were introduced to improve upon the limitations or pitfalls of another language).

– In what case would you use a particular C language and why. What’s it benefits/ shortcomings and how do these affect programming techniques and technology choices?

– The essay is subjective to the point of drawing your own conclusions and thoughts from “respectable” references resources.

First thoughts:

Abstract: 100-150 words

History: 500 words

Comparisons: 700ish?

Conclusion: 150-200 words

Standard C:

– History; introduced in 1971.

– Dennis Richie created C based on the previous language B, where C was the “compilable” language.

– It introduced features such as types (not including strings), structures and unions, printf function and shorthand && || notation.

– C has been accredited as being the foundations of all modern languages without of which would not exist.

C++:

– History; introduced in 1983.

Objective-C:

– History; introduced in 1983.

C#:

– History; introduced in 2000.

Major differences off the top of my head:

– Types (namely string introduction after C).

– Garbage collection/ memory allocation and memory management.

– Syntactic differences, e.g. C++’s << and >> for input and output.

– Historical introductions and practices (namely OOP).

– Differences with modern languages e.g. java, python.

– What are the different languages useful for, their strengths and weakness. Why would I use one over the other in certain scenarios?

Draft of Essay/ Ideas for paragraph layout

Abstract:

This paper analyses the similarities and differences between the four C languages (C, C++, C# and Objective-C). Highlighted will be the historical backgrounds of the for mentioned languages, differences in object orientation, data type utilisation, memory allocation and management as well as syntactical deviations and where the strengths and weakness of each language lie.

Comparisons conclude the strengths of the individual languages lie in the following areas.

C – efficiency and embedded programming.

C# – OOP similar to java.

C++ –

History:

C was developed by Dennis Ritchie [cite 1] whilst working at Bell Labs leading up to its release in 1971. The language stems from the predecessor B language co-developed by Ritchie with Ken Thompson, another developer at Bell Labs. C’s development saw the introduction of types, unions and structures and the printf function [cite 2] whilst maintaining the core components of B.

Ritchie developed C with the consideration of further developing UNIX, originally coded to both PDP-7 and PDP-11 machines in assembly the duo (Ritchie & Thompson) contemplated rewriting the OS in B, however, without the notable feature of byte accessibility the decision was taken to develop C that would then be used to re-create UNIX. [cite]

Bjarne Stroustrup, the creator behind C++, developed the language whilst at Bell Labs in 1983 with the intention of adding a layer of higher level features, most notably object orientation, whilst still benefiting from C’s efficiency and portability. [cite 3] C++ originally began as Stroustrup’s attempt to add classes to C starting in 1979, wherein it was then renamed C++ and released formally in 1985 after being used internally in AT&T Bell Labs for two years. [cite 4]

Developed by Brad Cox and Tom Love [cite 5] leading up to its release in 1983 Objective-C is the combination of C and elements of the language Smalltalk. Development aimed to bring the functionality of truly reusable code from Smalltalk architecture whilst still being backwards compatible with C, as such Objective-C is a strict superset of C. [cite 6]

Strict Objective-C whithout Apples API’s cocoa is compatible with all GNU and glang compilers.

C# was developed by Microsoft – lead by Anders Hejlsberg – it’s inception was incorporated into the .NET framework during 2000 as a competitor to the Java framework released by Sun Microsystems some 5 years prior to C#. [cite 7] The language sports many similarities to C, C++ and Java itself continuing with the object orientated design and portability of standard C.

THIS NEEDS IMPROVING AND MORE IN-DEPTH ANALYSIS^^^^^^^^^

Object Orientation:

C is the only none object orientated language within our comparison list, it’s implementation aimed for efficiency, speed and processing capabilities with the added bonus of portability.

Data types:

C ships with four basic datatypes, Int, Float, Char and Doubles. Most notable is the absence of the String type whereby character arrays are required

Memory management:

C and C++ shipped without garbage collection and such their memory management (both allocation and freeing) is done via command within an application, C’s syntax for allocating and releasing memory is “malloc” and “free” respectively

C# has automatic memory management with garbage collection, that is, the program allocates memory as and when it’s required without the programmer specifically calling memory to be set aside before variable/ object instantiation.

Objective C shipped with no garbage collection memory management, however in… currently the language, under the ownership of Apple, has no garbage collection in the shipped iOS version of Objective-C whereas the language does include automatic memory management within its development package for OSX.

Suitable for/ Applications:

Due to it’s efficiency

Conclusion:

Most likely will use this section to briefly re-iterate what has been previously said in the above document however with the addition of language preference for certain tasks/ technology stacks.

References/ sources:

1) https://www.bell-labs.com/usr/dmr/www/cman.pdf

2) Lecture slides

3) http://stroustrup.com/hopl-almost-final.pdf

4) http://www.stroustrup.com/bs_faq.html#invention

5) Slides

6) https://books.google.co.uk/books?id=ec6zAAAAQBAJ&lpg=PA381&ots=NoFaE3OEX0&pg=PA381&redir_esc=y#v=onepage&q&f=false

About this essay:

If you use part of this page in your own work, you need to provide a citation, as follows:

Essay Sauce, Use of the C programming language (essay plan). Available from:<https://www.essaysauce.com/information-technology-essays/2017-3-15-1489615512/> [Accessed 15-04-26].

These Information technology essays have been submitted to us by students in order to help you with your studies.

* This essay may have been previously published on EssaySauce.com and/or Essay.uk.com at an earlier date than indicated.