Jump to content
View in the app

A better way to browse. Learn more.

Horizon Community

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Designing code is often taken as a grey area which is not very documented. My approach to designing code is personal and logical. I often practice my own style of programming and have iterated over the methods a several tens of thousands of times to perfect myself and the way I write programs. Today I felt like giving my knowledge back to the community by putting it down on screen and making it practical for people to apply and use for their own needs. My style of programming is called Multi-Level Programming, Architecture and Design. In this method we iterate over the code multiple times over 3 perspectives which are put into a pattern of understanding, reading and changing the code. These 3 perspectives are repetitive and can be used to extend the pattern over and over until you are satisfied with the result of your program.

Let me present a diagram to illustrate the working of my programming style -

multi-level-programming.drawio (4).png

Here we can see 6 methods of a hierarchical approach to program code. It is simple and easy to use, and covers all the important areas of programming hierarchies that there is to know. Starting with Programming at the bottom -

Programming

This is the most basic type of code writing, the logic. The logic that we can create on screen on a single line of a file, the bare-empty in meaning with only a single instruction to the program. This is the most fundamental but also important part of the program, just plain simple logic. For example - int a; This simple instruction to reserve a memory on stack for a single variable of type int is the most fundamental part of the program which needs to be written. We're not discussing how important different parts of a program are here, we're discussing the approach to writing and understanding the program.

So for the most basic logic, int a; suffices. We're happy with what it does and it doesn't need any other kind of overhead that applies to the program, it simply does what it needs to and we are content with the structural logic of the program.

Architecture

Architecture is the fundamental structuring and formatting of the code so that it creates a pattern for evolving the program. For example, for evolving the program we see a reason to extend the architectural or structural functionality of the previous program that just defines and reserves memory for a variable - int a; . In this part of the program we understand and sense a hierarchy of the code.

struct parent_architecture {
	int a;
};

This structure above named parent_architecture creates a basic hierarchy of object types for the compiler to understand. int a; is now parented by the structure parent_architecture, creating a separating the pure simple logic into a higher level and lower level pattern in the program for the first time. This is the beginning of CLU and from here on the world of Tron is created. We have a simple hierarchy that is separates our behavior into two segments - the higher level paradigm and the lower level paradigm. This is called an Architecture. We require this to evolve the program into a more structural and comprehensive system.

Design

Design is the element of freedom we achieve by creating too many architectures for example, a very sophisticated program such as Horizon or eAthena would have multiple Design elements in every part of its code. When we structurally create programs, it leads to comprehensive and well-detailed systems. These systems have intricate behaviors, and they mount up to something that can lead to being involved with other systems. This involvement creates the element of design and because we want two systems to work together, we can align the greater part of the composition and call it a "design" of the program. Creating this design in a program leads to logical and architectural changes in a program.

Design for small parts of the code is really not something that will be apparent to you because it requires a higher understanding of hierarchy in a program. Therefore, design is more apparent in Object-Oriented languages due to their capabilities of providing a structural leveling of software. Take the design patterns of any software and see for example the different logical groups such as - Structural, Behavioral and creational design patterns. There are thousands of books on these and ways to go about achieving a better design for your software.

Here I won't be explaining what Grand Programming is and the Grander aspects of software engineering are because they are advanced topics.

What do you think of my approach to programming and how is it that you find yourself in this area of the internet browsing through my research and studies? Please let me know I would love to hear your thoughts and ideas.

For those whore are more interested in Design programming, there is The Design Programming Club - Horizon Community

Thanks for reading.

Lov @Protos

0 Comments

Recommended Comments

There are no comments to display.

Guest
Add a comment...

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.