IFB104 – Building IT Systems

IFB104 Code Presentation Guide

Overview

Writing computer program, scripting or mark-up language code is no different from any other style of writing. Its purpose is to communicate concisely and clearly. Any computer language document must communicate effectively in two ways:

  • Telling the computer what to do. The “executable” part of the program, script or mark-up tells the computer what actions you want performed. We know if this has been done properly if the document gets the computer to do or display what we intended.
  • Informing other programmers. These may be your immediate colleagues if you’re working in a team or someone else who reads your code many months or years from now, perhaps with the intention of modifying or extending your code’s behaviour.

Our concern here is with the second of these. Part of the profession of “building IT systems” is to create a well-presented computer language document. Over the years, programmers have developed style guides and conventions for most pro- gramming, scripting and mark-up languages, and you will be able to find many of these online. For the purposes of IFB104, however, we do not want to be too pre- scriptive. Our main goal is that you follow a consistent style that meets the criteria listed below. The examples below are for Python program code, but the same prin- ciples should be applied to any other code you write, including SQLite scripts and HTML/CSS documents.

General Principles

As a general guide, consider that whether you’re writing a text message, a novel, a technical report or a computer program, there is one rule that always applies:

Whatever is quick and convenient for the author is slow and awkward for the reader.

For instance, frequent use of abbreviations allows you to type quickly, but makes your writing harder to understand. Studies have shown that even expert “texters” are slower to read and comprehend heavily-abbreviated SMS messages than the equivalent English text.

Another important rule, highly relevant to long-lived computer programs that are often modified during their lifetime, is:

Code is written once but read many times.

This means that any extra effort expended during writing will be paid back to us lat- er on.

While these principles are mainly relevant to large-scale software development (ra- ther than small university assignments) our goal is to get you into the habit of think- ing about your code’s presentation at an early stage.

Code Presentation Criteria

You should think of your code’s presentation in terms of the following criteria.

1.   Clear, uncluttered layout

Your code should be laid out neatly and consistently. To a large extent Python pro- grammers are forced to adopt a particular layout because indentation is significant in the language. Nevertheless you should give thought to choices of vertical white space, line breaks and commenting. Many people frown upon overly wide lines, which inhibit readability and make it necessary to scroll back and forth horizontally. In general lines should not be wider than about 80 characters. (You can see the cur- rent column number in the bottom of IDLE’s editing window.)

Consideration should also be given to consistent horizontal spacing, in order to avoid cluttered code and improve its readability. Always put a space after a comma, and surround operators with spaces, e.g., “7 * 9 != 9 + 7”, rather than “7*9!=9+7”. However, don’t include a space between a function/method name and the opening parenthesis.

Lines of related code should be blocked together to improve readability. Blocks can be formed simply by adding appropriate line breaks.

2.   Meaningful choices of variable and function identifiers

You usually have a free choice of variable and function names in your code. You should make good use of this to explain the purpose of the variable or function, i.e., its role in the computation.  Consider the following code segment.

def a(b):

x = len(b) // 2 y = b[:x]

z = b[x:]

return [y, z]

This code is hard to understand because none of the identifiers explain the func- tion’s or the variables’ purposes.

Now consider exactly the same code with well-chosen identifiers.

def split_in_half(text): midpoint = len(text) // 2 first_half = text[:midpoint]

second_half = text[midpoint:]

return [first_half, second_half]

Even without comments this code is now easy to understand. We can see from the function signature that its purpose is to split some text in half. The role of each vari- able is made clear by its name, e.g., the first one finds the midpoint of the given text, and so on. Choosing sensible variable and function names has a dramatic impact on the understandability of your code.

Avoid the use of abbreviations when it comes to variables and function names.

Function/method names should be verbs, or ‘doing’ words which reflect the pur- pose of the function/method. Variable names should reflect the value/s intended to be stored in them.

IMPORTANT NOTE: Some old-fashioned programming languages, and even text- books, encourage the use of single-character identifiers, especially for loop varia- bles, typically ‘i’, ‘j’, ‘k’ and so on. These languages usually do not offer Python’s ability to iterate over all values in a sequence (e.g., a list or string). Thus, where in Python we would write

for letter in word:

print(letter)

to print each letter in a given string, each on one line, older languages force the pro- grammer to introduce an “index” variable and express this computation in a form equivalent to:

for i in range(len(word)): print(word[i])

Notice how much more obscure the second version is. The index variable is unnec- essary and the meaningless choice of identifier ‘i’ is unhelpful. In Python each vari- able introduced has a specific purpose and should be given a name describing the values it contains. Code like the second for loop above, containing unneces- sary, single-character loop variable names, should be avoided.

3.   Concise, helpful commenting

Your program code should be commented to explain features that are not obvious from the code itself. In particular, you can assume that the reader can understand what the code does by inspecting it, but will not necessarily understand why. Your comments should thus explain the purpose of obscure code segments. However, you should not clutter the code with comments that add no helpful information for the reader.

For instance, the following comment is useless and should not be included, because it does not tell us anything we can’t see from the code itself.

amount = amount + 1 # add one to amount

On the other hand, the comment below (taken from one of the IFB104 lecture demonstrations) makes the purpose of the following statements clearer than just the code itself.

# Draw the middle circle penup()

home() pendown() color(“orange”)

dot(middle_radius * 2)

The comment in this case tells us what the code does (but how the code does this job can be seen from the code itself and needs little or no commenting).

A comment should precede (i.e., come before) the relevant code block and be in- dented to the same level as the code to which it refers.

4.   No magic numbers

A “magic number” is a constant in your code whose purpose and choice of value is not immediately apparent. Although the term is normally applied to numerical val- ues, it is equally applicable to any literal value, regardless of its type. Magic num- bers make code harder to understand. They also make code harder to maintain be- cause if the number appears in several places, and we want to change it, then we have to search the code for all of its occurrences.

We can eliminate magic numbers in either of two ways:

  • By explaining the number’s purpose in a comment where it appears.
    • By giving the number a meaningful name.

The first of these is acceptable if the number only appears in a few places in the code. However, if the number is used in several places it is better to name it, be- cause this means only one code change is needed to modify the number.

For example, the following code segment is obscure due to the use of a poor variable name, no commenting and the unexplained magic number ‘7’.

x = (x + 1) % 7

The following version is longer but much clearer.

days_in_week = 7 # days are numbered from 0 to 6

day = (day + 1) % days_in_week # advance to next day

(Observation: Should the ‘1’ in the ‘day’ example above or the ‘2’ in the ‘circle’ ex- ample previously shown be considered as magic numbers? Arguably not because their purpose is very obvious in both cases. The number 1 is clearly being used to

increment variable day and the number 2 is clearly being used to double a radius to produce a diameter. It would clutter the code to give special names to these ‘obvi- ous’ uses. However, if in doubt, it never hurts to add a brief comment. Also, we ac- cept that it’s very difficult to write Turtle graphics code without using a lot of specif- ic numbers for coordinates and distances, so these “magic” numbers are usually ac- ceptable since these numbers are used once only and for a clear purpose, e.g., to go to a specific location on screen.)

5.   No unnecessary duplication of code segments

You should aim to develop as concise a solution as possible.   For instance, we learn in this teaching unit how functions allow us to reuse code segments that would oth- erwise appear more than once in your program. You should aim to use them to eliminate duplicated code wherever possible. Similarly, loops should be used rather then repeating similar code many times.

6.   Correct grammar and spelling

You should present your computer language code as professionally as you would any other document that will be seen by your colleagues. Code that contains spelling and grammatical errors in either the variable/function names or the com- ments gives a poor impression.

Order Now

Get expert help for IFB104 – Building IT Systems and many more. 24X7 help, plag free solution. Order online now!

Universal Assignment (December 21, 2024) IFB104 – Building IT Systems. Retrieved from https://universalassignment.com/ifb104-building-it-systems/.
"IFB104 – Building IT Systems." Universal Assignment - December 21, 2024, https://universalassignment.com/ifb104-building-it-systems/
Universal Assignment September 11, 2022 IFB104 – Building IT Systems., viewed December 21, 2024,<https://universalassignment.com/ifb104-building-it-systems/>
Universal Assignment - IFB104 – Building IT Systems. [Internet]. [Accessed December 21, 2024]. Available from: https://universalassignment.com/ifb104-building-it-systems/
"IFB104 – Building IT Systems." Universal Assignment - Accessed December 21, 2024. https://universalassignment.com/ifb104-building-it-systems/
"IFB104 – Building IT Systems." Universal Assignment [Online]. Available: https://universalassignment.com/ifb104-building-it-systems/. [Accessed: December 21, 2024]

Please note along with our service, we will provide you with the following deliverables:

Please do not hesitate to put forward any queries regarding the service provision.

We look forward to having you on board with us.

Most Frequent Questions & Answers

Universal Assignment Services is the best place to get help in your all kind of assignment help. We have 172+ experts available, who can help you to get HD+ grades. We also provide Free Plag report, Free Revisions,Best Price in the industry guaranteed.

We provide all kinds of assignmednt help, Report writing, Essay Writing, Dissertations, Thesis writing, Research Proposal, Research Report, Home work help, Question Answers help, Case studies, mathematical and Statistical tasks, Website development, Android application, Resume/CV writing, SOP(Statement of Purpose) Writing, Blog/Article, Poster making and so on.

We are available round the clock, 24X7, 365 days. You can appach us to our Whatsapp number +1 (613)778 8542 or email to info@universalassignment.com . We provide Free revision policy, if you need and revisions to be done on the task, we will do the same for you as soon as possible.

We provide services mainly to all major institutes and Universities in Australia, Canada, China, Malaysia, India, South Africa, New Zealand, Singapore, the United Arab Emirates, the United Kingdom, and the United States.

We provide lucrative discounts from 28% to 70% as per the wordcount, Technicality, Deadline and the number of your previous assignments done with us.

After your assignment request our team will check and update you the best suitable service for you alongwith the charges for the task. After confirmation and payment team will start the work and provide the task as per the deadline.

Yes, we will provide Plagirism free task and a free turnitin report along with the task without any extra cost.

No, if the main requirement is same, you don’t have to pay any additional amount. But it there is a additional requirement, then you have to pay the balance amount in order to get the revised solution.

The Fees are as minimum as $10 per page(1 page=250 words) and in case of a big task, we provide huge discounts.

We accept all the major Credit and Debit Cards for the payment. We do accept Paypal also.

Popular Assignments

RES800 Assessment 1 – Research Question and Literature Review

Subject Title Business Research Subject Code RES800 Assessment Title Assessment 1 – Research Question and Literature Review Learning Outcome/s     Utilise critical thinking to analyse managerial problems and formulate relevant research questions and a research design   Apply research theories and methodologies to assist in developing a business research

Read More »

Assessment Task 2 Health advocacy and communication plan

Assessment Task 2 Health advocacy and communication plan Rationale and multimedia plan presentation Submission requirements Due date and time:         Rationale: 8pm AEST Monday 23 September 2024 (Week 11) Multimedia plan presentation: 8pm AEST Monday 30 September 2024 (Study Period) % of final grade:         50% of overall grade Word limit: Time

Read More »

MLI500 Leadership and innovation Assessment 1

Subject Title Leadership and innovation Subject Code MLI500 Assessment Assessment 1: Leadership development plan Individual/Group Individual Length 1500 words Learning Outcomes LO1 Examine the role of leaders in fostering creativity and innovation LO5 Reflect on and take responsibility for their own learning and leadership development processes Submission   Weighting 30%

Read More »

FPC006 Taxation for Financial Planning

Assignment 2 Instructions Assignment marks: 95 | Referencing and presentation: 5 Total marks: 100 Total word limit: 3,000 words Weighting: 40% Download and use the Assignment 2 Answer Template provided in KapLearn to complete your assignment. Your assignment should be loaded into KapLearn by 11.30 pm AEST/AEDT on the wdue

Read More »

TCHR5001 Assessment Brief 1

TCHR5001 Assessment Brief 1 Assessment Details Item Assessment 1: Pitch your pedagogy Type Digital Presentation (Recorded) Due Monday, 16th September 2024, 11:59 pm AEST (start of Week 4) Group type Individual Length 10 minutes (equivalent to 1500 words) Weight 50% Gen AI use Permitted, restrictions apply Aligned ULOS ULO1, ULO2,

Read More »

HSH725 Assessment Task 2

turquoise By changing the Heading 3 above with the following teal, turquoise, orange or pink you can change the colour theme of your CloudFirst CloudDeakin template page. When this page is published the Heading 3 above will be removed, but it will still be here in edit mode if you wish to change the colour theme.

Read More »

Evidence in Health Assessment 2: Evidence Selection

Evidence in Health Assessment 2: Evidence Selection Student name:                                                                    Student ID: Section 1: PICO and search strategy Evidence Question: Insert evidence question from chosen scenario here including all key PICO terms.       PICO Search Terms                                                                                                                                                                                                          Complete the following table.   Subject headings Keywords Synonyms Population  

Read More »

Assessment 1 – Lesson Plan and annotation

ASSESSMENT TASK INFORMATION: XNB390 Assessment 1 – Lesson Plan and annotation This document provides you with information about the requirements for your assessment. Detailed instructions and resources are included for completing the task. The Criterion Reference Assessment (CRA) Marking Matrix that XNB390 markers will use to grade the assessment task

Read More »

XNB390 Task 1 – Professional Lesson Plan

XNB390 Template for Task 1 – Professional Lesson Plan CONTEXT FOR LESSON: SOCIAL JUSTICE CONSIDERATIONS: Equity Diversity Supportive Environment UNIT TITLE:    TERM WEEK DAY TIME 1   5           YEAR/CLASS STUDENT NUMBERS/CONTEXT LOCATION LESSON DURATION         28 Children (chl): 16 boys; 12

Read More »

A2 Critical Review Assignment

YouthSolutions Summary The summary should summarise the key points of the critical review. It should state the aims/purpose of the program and give an overview of the program or strategy you have chosen. This should be 200 words – included in the word count. Critical analysis and evaluation Your critical

Read More »

PUN364 – Workplace activity Assignment

Assessment 1 – DetailsOverviewFor those of you attending the on-campus workshop, you will prepare a report on the simulated simulated inspection below. For those of you who are not attending, you will be required to carry out your own food business inspection under the supervision of a suitably qualified Environmental

Read More »

FPC006 Taxation for Financial Planning

Assignment 1 Instructions Assignment marks: 95 | Referencing and presentation: 5 Total marks: 100 Total word limit: 3,600 words Weighting: 40% Download and use the Assignment 1 Answer Template provided in KapLearn to complete your assignment. Your assignment should be loaded into KapLearn by 11.30 pm AEST/AEDT on the due

Read More »

Mental health Nursing assignment

Due Aug 31 This is based on a Mental health Nursing assignment Used Microsoft word The family genogram is a useful tool for the assessment of individuals, couples, and families.  It can yield significant data and lead to important, new patient understandings and insights as multigenerational patterns take shape and

Read More »

Assessment 2: Research and Policy Review

Length: 2000 words +/- 10% (excluding references)For this assessment, you must choose eight sources (academic readings and policy documents) as the basis of your Research and Policy Review. You must choose your set of sources from the ‘REFERENCES MENU’ on the moodle site, noting the minimum number of sources required

Read More »

HSN702 – Lifespan Nutrition

Assessment Task: 2 Assignment title: Population Nutrition Report and Reflection Assignment task type: Written report, reflection, and short oral presentation Task details The primary focus of this assignment is on population nutrition. Nutritionists play an important role in promoting population health through optimal nutritional intake. You will be asked to

Read More »

Written Assessment 1: Case Study

Billy a 32-year-old male was admitted to the intensive care unit (ICU) with a suspected overdose of tricyclic antidepressants. He is obese (weight 160kg, height 172cm) and has a history of depression and chronic back pain for which he takes oxycodone. On admission to the emergency department, Paramedics were maintaining

Read More »

Assessment Task 8 – Plan and prepare to assess competence

Assessment Task 8 – Plan and prepare to assess competence Assessment Task 8 consists of the following sections: Section 1:      Short answer questions Section 2:      Analyse an assessment tool Section 3:      Determine reasonable adjustment and customisation of assessment process Section 4:      Develop an assessment plan Student Instructions To complete this

Read More »

Nutrition Reviews Assignment 2 – Part A and Part B

This assignment provides you with the opportunity to determine an important research question that is crucial to address based on your reading of one of the two systematic reviews below (Part A). You will then develop a research proposal outlining the study design and methodology needed to answer that question

Read More »

NUR332 – TASK 3 – WRITTEN ASSIGNMENT

NUR332 – TASK 3 – WRITTEN ASSIGNMENT for S2 2024. DESCRIPTION (For this Task 3, the word ‘Indigenous Australians’, refers to the Aboriginal and Torres Strait Islander Peoples of Australia) NUR332 Task 3 – Written Assignment – Due – WEEK 12 – via CANVAS on Wednesday, Midday (1200hrs) 16/10/2024. The

Read More »

NUR100 Task 3 – Case study

NUR100 Task 3 – Case study To identify a key child health issue and discuss this issue in the Australian context. You will demonstrate understanding of contemporary families in Australia. You will discuss the role of the family and reflect on how the family can influence the overall health outcomes

Read More »

NUR 100 Task 2 Health Promotion Poster

NUR 100 Task 2 Health Promotion Poster The weighting for this assessment is 40%. Task instructions You are not permitted to use generative AI tools in this task. Use of AI in this task constitutes student misconduct and is considered contract cheating. This assessment requires you to develop scholarship and

Read More »

BMS 291 Pathophysiology and Pharmacology CASE STUDY

BMS 291 Pathophysiology and Pharmacology CASE STUDY Assessment No: 1 Weighting: 40% Due date Part A: midnight Friday 2nd August 2024 Due date Part B: midnight Sunday 29th September 2024 General information In this assessment, you will develop your skills for analysing, integrating and presenting information for effective evidence-based communication.

Read More »

Assessment Task: Health service delivery

Assessment Task Health service delivery is inherently unpredictable. This unpredictability can arise from, for example, the assortment of patient presentations, environmental factors, changing technologies, shifts in health policy and changes in division leadership. It can also arise from changes in policy within an organisation and/or associated health services that impact

Read More »

LNDN08002 Business Cultures Resit Assessment

LNDN08002 Business Cultures Resit Assessment Briefing 2023–2024 (Resit for Term 1) Contents Before starting this resit, please: 1 Assessment Element 1: Individual Report 1 Case Report Marking Criteria. 3 Assessment Element 2: Continuing Personal Development (CPD) 4 Guidance for Assessment 2: Reflection and Reflective Practice. 5 Student Marking Criteria –

Read More »

Assessment Task 2 – NAPLAN Exercise

Assessment Task 2 (35%) – Evaluation and discussion of test items Assessment Task 2 (35%) – Evaluation and discussion of test items AITSL Standards: This assessmeAITSL Standards: This assessment provides the opportunity to develop evidence that demonstrates these Standards: 1.2        Understand how students learn 1.5        Differentiate teaching to meet with

Read More »

EBY014 Degree Tutor Group 2 Assignment

  Assignment Brief Module Degree Tutor Group 2 Module Code EBY014 Programme BA (Hons) Business and Management with   Foundation Year Academic Year 2024/2025 Issue Date 6th May 2024 Semester Component Magnitude Weighting Deadline Learning outcomes assessed 2 1 2000 words Capstone Assessment 100% 26th July, 2024 1/2/3/4 Module Curriculum

Read More »

NTW 600 Computer Network and Security

Assessment 2 Information and Rubric Subject Code  NTW 600 Subject Name Computer Network and Security Assessment Number and Title Assessment 2: Cyber Security Threats to IT Infrastructure of a real-world Organisation Assessment Type Group Assessment Length / Duration  1500 words Weighting %  30% Project Report: 20% Presentation :10% (Recorded) Total

Read More »

Can't Find Your Assignment?

Open chat
1
Free Assistance
Universal Assignment
Hello 👋
How can we help you?