Understanding Programming Paradigms and IDEs: A Case Study on Debugging in C#, Assignments of Network security

An overview of programming paradigms, focusing on procedural, object-oriented, and event-driven programming. It also discusses the importance of an Integrated Development Environment (IDE) in managing code development and debugging processes. The case study is based on C# programming language and Visual Studio IDE.

Typology: Assignments

2021/2022

Uploaded on 10/08/2022

hai-nguyen-28
hai-nguyen-28 🇻🇳

2 documents

1 / 35

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
During a debugging session, you may utilize the Observe (Debug / Windows / Watch / Watch (1, 2, 3, 4)) and QuickWatch (right-click on variable / Debug / QuickWatch) windows to watch variables and expressions.
The Watch window may display many variables at once, but the QuickWatch window only displays one variable at a time
Higher Nationals in Computing
Unit 1: Programming
ASSIGNMENT 2
Learner’s name: Nguyn Thanh Hi
ID:GCS210089
Class: GDS0905A
Subject code: 1618
Assessor name: PHAN MINH TAM
Assignment due: Assignment submitted:
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23

Partial preview of the text

Download Understanding Programming Paradigms and IDEs: A Case Study on Debugging in C# and more Assignments Network security in PDF only on Docsity!

During a debugging session, you may utilize the Observe (Debug / Windows / Watch / Watch (1, 2, 3, 4)) and QuickWatch (right-click on variable / Debug / QuickWatch) windows to watch variables and expressions. The Watch window may display many variables at once, but the QuickWatch window only displays one variable at a time

Higher Nationals in Computing

Unit 1 : Programming

ASSIGNMENT 2

Learner’s name: Nguyễn Thanh Hải

ID:GCS

Class: GDS0905A

Subject code: 1618

Assessor name: PHAN MINH TAM

Assignment due: Assignment submitted:

ASSIGNMENT 2 FRONT SHEET Qualification BTEC Level 5 HND Diploma in Computing Unit number and title Unit 1: Programming Submission date Date Received 1st submission Re-submission Date Date Received 2nd submission Student Name Nguyễn Thanh Hải Student ID GCS Class GDS0905A Assessor name Phan Minh Tam Student declaration I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that making a false declaration is a form of malpractice. Student’s signature Grading grid P2 P3 P 4 P 5 M2 M3 M 4 D2 D3 D

Assignment Brief 2 (RQF)

Higher National Certificate/Diploma in Computing

Student Name/ID Number: Unit Number and Title: Unit 1: Programming Academic Year: 2021 – 2022 Unit Assessor: Phan Minh Tam Assignment Title: Application development with IDE Issue Date: 27 September 2021 Submission Date: Internal Verifier Name: 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 Tutor. ● The form of submission will be a soft copy posted on http://cms.greenwich.edu.vn/. ● Remember to convert the word file into PDF file before the submission on CMS. Note: ● The individual Assignment must be your own work, and not copied by or from another student. ● 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 understand and follow the guidelines to avoid plagiarism. Failure to comply this requirement will result in a failed assignment. Unit Learning Outcomes: LO2 Explain the characteristics of procedural, object-oriented and event-driven programming, conduct an analysis of a suitable Integrated Development Environment (IDE) LO3 Implement basic algorithms in code using an IDE LO4 Determine the debugging process and explain the importance of a coding standard Assignment Brief and Guidance: Assignment scenario 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. ● 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. Case Studies You can choose one of following case studies to implement Hotel Management System: A Hotel Management System is a software built to handle all online hotel activities easily and safely. This System will give the hotel management power and flexibility to manage the entire system from a single online

scheduled flight (all stakeholders will be notified). Restaurant Management System A Restaurant Management System is a software built to handle all restaurant activities in an easy and safe manner. This System will give the Restaurant management power and flexibility to manage the entire system from a single portal. The system allows the manager to keep track of available tables in the system as well as the reservation of tables and bill generation.

  1. The waiter should be able to create an order for a table and add meals for each seat.
  2. Each meal can have multiple meal items. Each meal item corresponds to a menu item.
  3. The system should be able to retrieve information about tables currently available to seat walk-in customers.
  4. The system should support the reservation of tables. 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 procedural, object-oriented and event-driven paradigms are; their characteristics and the relationship between them. M2 Analyse the common features that a developer has access to in an IDE. D2 Critically evaluate the source code of an application which implements the programming paradigms, in terms of the code structure and characteristics. LO3 Implement basic algorithms in code using an IDE P3 Write a program that implements an algorithm using an IDE. M3 Use the IDE to manage the development process of the program. D3 Evaluate the use of an IDE for development of applications contrasted with not using an IDE. LO4 Determine the debugging process and explain the importance of a coding standard P4 Explain the debugging process and explain the debugging facilities available in the IDE. P5 Outline the coding standard M4 Evaluate how the debugging process can be used to help develop more secure, robust applications. D4 Critically evaluate why a coding standard is necessary in a team as well as for the individual.

you have used in your code.

P a g e | 1

ASSIGNMENT 2 ANSWERS

P2: Procedural, object-oriented and event-driven paradigms; their

characteristics and the relationship between them.

1. Procedural programming

1.1. Definition Procedural is an overall approach for coding. An application is divided into a series of sub-functions, methods and other relevant, which are only process a certain task in order to keep track of what is going on. Earlier than this state of programming, a code entirely encoded in the same class, which is not only hard to debug but also it is required many loops to certain lines in the code just to process a variable that occurs later in the progression. A procedural program consists of an array of computational instructions for machines to process the given task step-by-step. An example of this is some common programming languages such as Python or C language. 1.2. Characteristics

  • Procedural programming follows a top-down approach.
  • The program is divided into blocks of codes called functions, where each function performs a specific task.
  • Procedural programs model real-world processes as 'procedures' operating on 'data'.
  • The data and functions are detached from each other.
  • The data moves freely in a program.
  • It is easy to follow the logic of a program.
  • A function can access other functions' data by calling that function.

P a g e | 2

2. Object-oriented programming (OOP)

2.1. Definition Object-Oriented Programming (OOP) is a programming paradigm based on the concepts of classes and objects. It is used to divide a software program into basic, reusable code blueprints (typically referred to as classes), which are then used to build individual instances of objects.

P a g e | 4 Second, it has the encapsulation trait. This trait is reflected in the tag that came with the variable, namely private to add a security level to the data when can only be accessed in the same class, public

  • as what the word said, it is available for global access, protected which is only allow the child classes to inherit and internal - although it is rarely used and a default tag – the data would available for access in the same project.

P a g e | 5 Thirdly, it also has an abstract factor. This applies to abstract classes and interfaces. Both abstract classes and interfaces are classes that only exist for child classes inheriting. While interfaces class only provide methods for derived classes – which is used to categorize many classes or allocate overlap methods for independent classes, abstract classes furnish not only methods but also variables that are defined in the class. Lastly, it has the trait of polymorphism. Overloading methods are demonstrations for this trait. As the coder define many overlapping methods with the differences only in the parameters and order of coding. But compilers are programmed to be able to recognize and choose suitable methods for those parameters that users provide.

P a g e | 7

4. Relevant between procedural, object-oriented programming and event-driven
programming.

To execute a program, EDP permits the capture of single instances of events such as mouse clicks or keystrokes. In contrast to Procedural Programming, which needs a completely completed code to be executed, OOP permits the execution of separate classes. This enables simpler fault discovery and debugging, as well as increased software development productivity. Although all three types of programming do not rigorously associate together, it is common to see these being nested with each other.

P a g e | 8

P3 Programming using IDE

Scenario: library management system. Library members need a system for quick access to available book, adding new book when it arrives at the library in addition with removing and updating any outdated information of old books.

P a g e | 10 private List Bookdata; private string Save=""; public BookUI() { Bookdata = new List(); InitializeComponent(); Buttonlock(false); Txtlock(false); } public List Getdata() { return Bookdata; } public void Load() { Dataview.DataSource = Getdata(); } private void Dataview_CellContentClick(object sender, DataGridViewCellEventArgs e) { cate.Text = Dataview.CurrentRow.Cells[0].Value.ToString(); title.Text = Dataview.CurrentRow.Cells[1].Value.ToString(); auth.Text = Dataview.CurrentRow.Cells[2].Value.ToString(); pubDate.Value = Convert.ToDateTime(Dataview.CurrentRow.Cells[3].Value.ToString()); borrower.Text = Dataview.CurrentRow.Cells[4].Value.ToString(); outtime.Value = Convert.ToDateTime(Dataview.CurrentRow.Cells[5].Value.ToString()); ph.Text = Dataview.CurrentRow.Cells[6].Value.ToString(); string exePath = Application.StartupPath;

P a g e | 11 image.ImageLocation = exePath + "\photos\" + Dataview.CurrentRow.Cells[6].Value.ToString(); image.SizeMode = PictureBoxSizeMode.StretchImage; } public void Buttonlock(bool a) { Addnew.Enabled = !a; s.Enabled = a; u.Enabled = a; dele.Enabled = a; } public void Buttonlocks(bool a) { Addnew.Enabled = a; s.Enabled = a; u.Enabled = a; dele.Enabled = a; } public void Buttonlockss(bool a) { Addnew.Enabled = !a; s.Enabled = a; u.Enabled = !a; dele.Enabled = !a;