You are on page 1of 20

ASSIGNMENT 2 BRIEF

Qualification BTEC Level 5 HND Diploma in Computing

Unit number and title Unit 1: Programming

Assignment title Application development with IDE

Academic Year

Unit Tutor

Issue date Submission date

Submission Format:

Format: The submission is in the form of an individual written report. This should be written in a concise,
formal business style using single spacing and font size 12. You are required to make use of
headings, paragraphs and subsections as appropriate, and all work must be supported with
research and referenced using the Harvard referencing system. Please also provide a
bibliography using the Harvard referencing system.
Submission Students are compulsory to submit the assignment in due date and in a way requested by the
Tutors. The form of submission will be a soft copy in PDF posted on corresponding course of
http://cms.greenwich.edu.vn/
Note: The Assignment must be your own work, and not copied by or from another student or from
books etc. If you use ideas, quotes or data (such as diagrams) from books, journals or other sources, you
must reference your sources, using the Harvard style. Make sure that you know how to reference properly,
and that understand the guidelines on plagiarism. If you do not, you definitely get fail

Assignment Brief and Guidance:

Scenario: You have applied for a post as a trainee with a software development company and have
been invited for an interview. You have been passed the presentation to demonstrate your problem
solving and basic programming skills. Now you are given a more challenge task to create a fully
working, secure application that has been developed using an IDE and adheres to coding standards for
a detailed business problem.

Tasks
You will discuss a suitable problem with your mentor and list the user requirements before designing,
implementing (coding) and testing a solution. You will create a report that should include:
● Introduction to your program (list of requirements and screenshots of program)
● Explain some of programming paradigms. Evaluate why and how your program use these (or some
of) paradigms.
● Explain the common features of an IDE should have and evidence of how the IDE was used to
manage the development of your code.

Page 1
● An evaluation of developing applications using an IDE versus developing an application without
using an IDE.
● An explanation and evaluation of the debugging process in the IDE used and how it helped with
development.
● An explanation and evaluation of coding standards used in your program and the benefits to
organisations of using them.

The working application produced must also be demonstrated together with the presentation.

Learning Outcomes and Assessment Criteria

Pass Merit Distinction

LO2 Explain the characteristics of procedural, object-oriented and event-driven programming, conduct an analysis
of a suitable Integrated Development Environment (IDE)

P2 Give explanations of what M2 Analyse the common features that D2 Critically evaluate the source
procedural, object-oriented and a developer has access to in an IDE. code of an application which
event-driven paradigms are; their implements the programming
characteristics and the relationship paradigms, in terms of the code
between them. structure and characteristics.

LO3 Implement basic algorithms in code using an IDE


LO4 Determine the debugging process and explain the importance of a coding standard

P3 Write a program that M3 Use the IDE to manage the D3 Evaluate the use of an IDE for
implements an algorithm using an development process of the program. development of applications
IDE. contrasted with not using an IDE.

P4 Explain the debugging process M4 Evaluate how the debugging D4 Critically evaluate why a coding
and explain the debugging process can be used to help develop standard is necessary in a team as
facilities available in the IDE. more secure, robust applications. well as for the individual.

P5 Outline the coding standard


you have used in your code.

Page 2
Table of Contents
P2. Give explanations of what procedural, object-oriented and event-driven paradigms
are; their characteristics and the relationship between them ............................................ 4
1. Procedural programming ..................................................................................................................... 4
2. Object oriented programming .............................................................................................................. 5
3. Event based programming .................................................................................................................. 7
4. the relationship between them ............................................................................................................. 8

P3 Write a program that implements an algorithm using an IDE .................................... 8


1. Defining integrated development environment (IDE)........................................................................... 8
2. Program to calculate power of any number using the Visual Studio IDE ............................................. 8
3. Run program ...................................................................................................................................... 9

P4. Explain the debugging process and explain the debugging facilities available in the
IDE ........................................................................................................................................ 9
1. Debug ................................................................................................................................................. 9
2. Debug in IDE Visual Studio ............................................................................................................. 10

P5 Outline the coding standard you have used in your code .......................................... 14
1. Coding Standards ............................................................................................................................. 14
2. My Program ..................................................................................................................................... 16

M2 Analyse the common features that a developer has access to in an IDE ................. 18

Page 3
P2. Give explanations of what procedural, object-oriented and event-driven
paradigms are; their characteristics and the relationship between them.

1. Procedural programming
 Procedural programming means that you define a program and its subprograms as a
series of steps. In contrast, declarative programs try to describe the result without
regard to the steps taken to computer it but rather some description or denotation of
the desired result.

 Key features of procedural programming :


 Predefined functions.
 Local variables.
 Global variables.
 Parameter passing.
 Modularity.
 Procedures.
 Programming libraries.
 Procedural programming paradigm.
 Include two example programming languages as examples.
 Include samples of code including: if, else, else if, for, int, char, String,
double and Boolean explaining what parts do.

Page 4
2. Object oriented programming

 Object oriented programming is a way of organizing code around the principles of


encapsulation, inheritance, substitution, programming to interfaces, and so on.
Object oriented programs are usually mostly procedural.

 Some key features of the Object Oriented programming are:

 Emphasis on data rather than procedure

 Programs are divided into entities known as objects

 Data Structures are designed such that they characterize objects

 Functions that operate on data of an object are tied together in data structures

 Data is hidden and cannot be accessed by external functions

 Objects communicate with each other through functions

 New data and functions can be easily added whenever necessary

 Follows bottom up design in program design

 The characteristics of OOP are :

 Class definitions – Basic building blocks OOP and a single entity which has
data and operations on data together

 Objects – The instances of a class which are used in real functionality – its
variables and operations

 Abstraction – Specifying what to do but not how to do; a flexible feature for
having overall view of an object’s functionality.

Page 5
 Encapsulation – Binding data and operations of data together in a single unit –
A class adhere this feature

 Inheritance and class hierarchy – Reusability and extension of existing classes

 Polymorphism – Multiple definitions for a single name - functions with same


name with different functionality; saves time in investing many function
names Operator and Function overloading

 Generic classes – Class definitions for unspecified data. They are known as
container classes. They are flexible and reusable.

 Class libraries – Built-in language specific classes

 Message passing – Objects communicates through invoking methods and


sending data to them. This feature of sending and receiving information
among objects through function parameters is known as Message Passing.

Page 6
3. Event based programming

 Event based programming is about writing event handling procedures and having
the core event loop provided by the underlying system. In this way you can save the
trouble of writing your own event loop and benefit from various libraries that
already work with the system provided event loop. Event based programs are very
often writing using object oriented style, but not always.

 Key features and characteristics of event-driven programming :

 Service Oriented

 Time Oriented

 Event Handlers

 Trigger Functions

 Events

 Simplicity of Programming and Ease of Development

 Compare Event Driven Programming with Object-oriented Programming


(OOP)

Page 7
4. the relationship between them

These three categories are thus not related strictly hierarchically, but in common usage
they are mostly nested within one another.

P3 Write a program that implements an algorithm using an IDE.

1. Defining integrated development environment (IDE)

An integrated development environment (IDE) is a software application that provides


comprehensive facilities to computer programmers for software development. An IDE
normally consists of at least a source code editor, build automation tools and
a debugger. Some IDEs, such as NetBeans and Eclipse, contain the
necessary compiler, interpreter, or both; others, such as SharpDevelop and Lazarus, do
not.

2. Program to calculate power of any number using the Visual Studio IDE

Page 8
3. Run program :

P4. Explain the debugging process and explain the debugging facilities
available in the IDE.
1. Debug
 Debugging, in computer programming and engineering, is a multistep process that
involves identifying a problem, isolating the source of the problem, and then either
correcting the problem or determining a way to work around it. The final step of
debugging is to test the correction or workaround and make sure it works.
 In software development, the debugging process begins when a developer locates a
code error in a computer program and is able to reproduce it. Debugging is part of
the software testing process and is an integral part of the entire software
development lifecycle.
 In hardware development, the debugging process typically looks for hardware
components that are not installed or configured correctly. For example, an engineer
might run a JTAG connection test to debug connections on an integrated circuit.
 Some examples of common coding errors include the following:
 Syntax error
 Runtime error
 Semantic error
 Logic error
 Disregarding adopted conventions in the coding standard
 Calling the wrong function
 Using the wrong variable name in the wrong place
 Failing to initialize a variable when absolutely required
 Skipping a check for an error return

Page 9
2. Debug in IDE Visual Studio :

 Set a breakpoint and start the debugger :

 To debug, you need to start your app with the debugger attached to the app
process. F5 (Debug > Start Debugging) is the most common way to do that.
However, right now you may not have set any breakpoints to examine your app
code, so we will do that first and then start debugging. Breakpoints are the most
basic and essential feature of reliable debugging. A breakpoint indicates where
Visual Studio should suspend your running code so you can take a look at the
values of variables, or the behavior of memory, or whether or not a branch of code
is getting run.
 If you have a file open in the code editor, you can set a breakpoint by clicking in
the margin to the left of a line of code.

 Press F5 (Debug > Start Debugging) or the Start Debugging button in the
Debug Toolbar, and the debugger runs to the first breakpoint that it encounters. If
the app is not yet running, F5 starts the debugger and stops at the first breakpoint.

Page 10
 Breakpoints are a useful feature when you know the line of code or the section of
code that you want to examine in detail.
 Navigate code in the debugger using step command :

 To start your app with the debugger attached, press F11 (Debug > Step Into). F11
is the Step Into command and advances the app execution one statement at a time.
When you start the app with F11, the debugger breaks on the first statement that
gets executed.

 The yellow arrow represents the statement on which the debugger paused, which
also suspends app execution at the same point (this statement has not yet executed).
 F11 is a good way to examine the execution flow in the most detail. By default, the
debugger skips over non-user code.

Page 11
 Data trip:

When moving the mouse pointer to a variable name in any location within the current { },
the value of the variable will be displayed on the screen.

 Set a watch:

 You can use a Watch window to specify a variable (or an expression) that you
want to keep an eye on.
 While debugging, right-click an object and choose Add Watch.

Page 12
Page 13
P5 Outline the coding standard you have used in your code.
1. Coding Standards:

Purpose of Having Coding Standards:


 A coding standard gives a uniform appearance to the codes written by different
engineers.
 It improves readability, and maintainability of the code and it reduces complexity also.
 It helps in code reuse and helps to detect error easily.
 It promotes sound programming practices and increases efficiency of the
programmers.
Some of the coding standards:
 Limited use of global: These rules tell about which types of data that can be declared
global and the data that can’t be.
 Standard headers for different modules: For better understanding and maintenance
of the code, the header of different modules should follow some standard format and
information. The header format must contain below things that is being used in various
companies:
 Name of the module
 Date of module creation
 Author of the module
 Modification history
 Synopsis of the module about what the module does
 Different functions supported in the module along with their input output
parameters
 Global variables accessed or modified by the module
 Naming conventions for local variables, global variables, constants and functions:
Some of the naming conventions are given below :
 Meaningful and understandable variables name helps anyone to understand the
reason of using it.

Page 14
 Local variables should be named using camel case lettering starting with small
letter (e.g. local Data) whereas Global variables names should start with a
capital letter (e.g. Global Data). Constant names should be formed using capital
letters only (e.g. CONSDATA).
 It is better to avoid the use of digits in variable names.
 The names of the function should be written in camel case starting with small
letters.
 The name of the function must describe the reason of using the function clearly
and briefly.
 Indentation: Proper indentation is very important to increase the readability of the
code. For making the code readable, programmers should use White spaces properly.
Some of the spacing conventions are given below:
 There must be a space after giving a comma between two function arguments.
 Each nested block should be properly indented and spaced.
 Proper Indentation should be there at the beginning and at the end of each block
in the program.
 All braces should start from a new line and the code following the end of braces
also start from a new line.
 Brackets {} rule:
 Put the bracket opening with the same line as the keyword.
 Set the bracket opening in the next line to line up with brackets.

Page 15
2. My Program

Page 16
 I use Camel Case to set name of variable: nhanVien, nhanvienKinhDoanh, soHopDong, soLuong,
tinhLuong, soluongSanPham, nhanvienSanXuat.

Page 17
 Use tabs and whitespace in:

 Use Brackets {} rule in:

M2 Analyse the common features that a developer has access to in an IDE.


 IDE Common Features:
 Text editor: Virtually every IDE will have a text editor designed to write and
manipulate source code. Some tools may have visual components to drag and drop
front-end components, but most have a simple interface with language-specific
syntax highlighting.
 Debugger: Debugging tools assist users in identifying and remedying errors within
source code. They often simulate real-world scenarios to test functionality and
performance. Programmers and software engineers can usually test the various
segments of code and identify errors before the application is released.
 Compiler: Compilers are components that translate programming language into a
form machines can process, such as binary code. The machine code is analyzed to
ensure its accuracy. The compiler then parses and optimizes the code to optimize
performance.
 Code completion: Code complete features assist programmers by intelligently
identifying and inserting common code components. These features save
developers time writing code and reduce the likelihood of typos and bugs.

Page 18
 Programming language support: IDEs are typically specific to a single
programming language, though several also offer multi-language support. As such,
the first step is to figure out which languages you will be coding in and narrow
your prospective IDE list down accordingly. Examples include Ruby, Python, and
Java IDE tools.
 Integrations and plugins: With the name integrated development environment, it is
no surprise that integrations need to be considered when looking at IDEs. Your
IDE is your development portal, so being able to incorporate all your other
development tools will improve development workflows and productivity. Poor
integrations can cause numerous issues and lead to many headaches, so make sure
you understand how well a potential IDE fits into your ecosystem of existing tools.

Page 19
REFERENCES

1. ‘What are the relationships between programming procedural, object-oriented and event-driven
paradigms?’ by Quora. Available at: https://www.quora.com/What-are-the-relationships-between-
programming-procedural-object-oriented-and-event-driven-
paradigms?fbclid=IwAR0u0TwnUgYrO7YzxBPX1Sjk9GGs4rnXV0QPaso1PqxuMCTCmnVGZvQ3QO0

2. ‘What are the characteristics of Object Oriented programming language?’ by careerride. Available at:
https://www.careerride.com/oops-
characteristics.aspx?fbclid=IwAR14lE74n_n6eVEmHjdZa8WUqVgGDXQF_8YYhrlOV0b02GwAtfKkfXkE8eY#:~:text=Wh
at%20are%20the%20characteristics%20of,and%20some%20of%20its%20own

3. ‘Event-Driven Programming Features’ by Wikipedia. Available at:


https://www.ukessays.com/essays/computer-science/eventdriven-programming-features-
6167.php?fbclid=IwAR2zHWtKNZL5jJgRS-UUomrjfEFpInG-N2uXCATYfRspRrFlY9zcU7w-wKc
4. ‘Integrated development environment’ by wikipedia. Available at:
https://en.wikipedia.org/wiki/Integrated_development_environment?fbclid=IwAR3v3NdzlgDTuHK_wm0r0ZQlBcLYj
s0GPRi0jL1D6y3AY_4-30CkD4Iv9Cc

5. ‘Debugging’ by searchsoftwarequality. Available at:


https://searchsoftwarequality.techtarget.com/definition/debugging?fbclid=IwAR2zHWtKNZL5jJgRS-
UUomrjfEFpInG-N2uXCATYfRspRrFlY9zcU7w-wKc

6. ‘First look at the Visual Studio Debugger’ by docs. Available at: https://docs.microsoft.com/en-
us/visualstudio/debugger/debugger-feature-tour?view=vs-
2019&fbclid=IwAR0J2eFZMKL7EuofwPKKx9Y4xTF1KzfAFRJg6FBe4edWJn9PRj955_Ampcg

7. ‘Coding Standards and Guidelines’ by geeksforgeeks. Available at: https://www.geeksforgeeks.org/coding-


standards-and-guidelines/?fbclid=IwAR33h6N1CZR64t8cUKRNgHuwLu-pAMC0Rxc7_7_v2S3kbsPg7RIAOIQErUk

8. ‘What is an IDE (Integrated Development Environment)?’ by learn. Available at:


https://learn.g2.com/ide?fbclid=IwAR3v3NdzlgDTuHK_wm0r0ZQlBcLYjs0GPRi0jL1D6y3AY_4-30CkD4Iv9Cc

Page 20

You might also like