Skip to content

How Software engineers write “Hello World” program.

Notifications You must be signed in to change notification settings

nikspatel007/HelloWorld

Repository files navigation

HelloWorld

How Software engineers write “Hello World” program.

I came across an interesting coding exercise yesterday. It was as simple as writing a “Hello world” program. Initially I thought that must be easy and I kept reading further. Following were the requirements. Write a ‘Hello World’ program.

Write a ‘Hello World’ program. a. The program has 1 current business requirement – write “Hello World” to the console/screen. b. The program should have an API that is separated from the program logic to eventually support mobile applications, web applications, or console applications, or windows services. c. The program should support future enhancements for writing to a database, console application, etc. i. Use common design patterns (inheritance, e.g.) to account for these future concerns. ii. Use configuration files or another industry-standard mechanism for determining where to write the information to. Write unit tests to support the API.

Write unit tests to support the API.

As I read whole set of requirements, it made more sense that idea was to understand the thought process and how different OOP principles could be applied to write a program that could be extended in the future. How? That we do not know yet but I guess that is the beauty of OOP. If you do it right, you can extend the existing program to add more features to it. Being a Software engineer, I promptly jumped on it. Here I share my experience on how I did it in C# using visual studio. I welcome suggestions to make it better. When I am tasked with solving a problem, I generally try to follow Software Development Lifecycle (SDLC) principles. We will go through full SDLC on this one as well. Let’s get started. Phases I have listed so far are.

  1. Requirements gathering
  2. Brainstorming
  3. Decisions
  4. Planning
  5. Skeleton creation
  6. Unit tests
  7. Coding
  8. Refactoring
  9. Repeat steps 6 to 8 till software is stable in testing.
  10. Deploy.

About

How Software engineers write “Hello World” program.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published