The 314 Experience (SWE)

11 Dec 2023

My experience in taking the class “ICS 314: Software Engineering I” was a combination of accomplishment and frustration. Throughout the semester, we’ve learned how to use new tools and about new concepts which we’ve applied and used for our final project. Now that we’ve finally finished our final projects, based on my current experience, I think that the key to being able to do software related projects are dependent on how much you actually learn and applying what you know to your work. To demonstrate a few of the things I’ve learned in this class this semester, I will be talking about UI frameworks and coding standards.

UI Frameworks

A user interface framework, or UI framework, is a collection of pre-made libraries and tools that essentially make it easier for you to implement the design of the user interface by reducing the amount of code you need to write in order to accomplish doing so. When we were first learning HTML around the beginning of the semester, we had no frameworks to work with and implemented a few web pages purely with raw HTML and CSS. With my experience in both using React Bootstrap and just HTML on its own, I can safely say that frameworks definitely save you a lot of time considering that you usually won’t need to mess around with CSS as often when you have built-in classes at your disposal. However, although there is a learning curve for using things like Bootstrap, the advantages make it too good to be disregarded when working on any type of software project. If you forget anything, you always have Google or ChatGPT!

Coding Standards

Coding standards are a set of rules that dictate how code can be written by you and your group members in order to maintain consistency and readability. For example, some coding standard might ensure that when typing out the parameters of a function call, each comma must have a space after it as shown below:

foo(param1, param2, param3, param4);

In some cases, things like recursion or the use of break statements might be forbidden. Complying with coding standards is important because, as an example, readability allows you to catch and fix bugs with more ease. Poorly formatted code could potentially lead to visual clutter which hinders your ability to spot errors. Additionally, limiting the “tools” you can use to write a solution may help you come up with one since you’ll have fewer options to choose from. Potentially, it may prevent your code from becoming convoluted and hard to follow. Overall, it’s an important practice that allows the production of quality code which in turn promotes productivity within a group.