In this video series, the self-taught developer will teach you about a design pattern that is called top-down programming.
Top-down programming means that you start with the most important parts of your website or application and concentrate only on that.
To view more programming videos that I have made,
use the link below to see all of the programming playlists that I have created
that have helped many people to learn how to programming and understand many different programming languages.
Software developers can be most effective if they are given tasks that require them to only solve specific tasks. This also allows for web developers in this example to write blocks of code that can be tested and documented based upon a specific set of criteria, this also allows the developer to write clean code.
Once the web developer or software has written their code, let’s say for their website, they can then submit their code to a git repository, where another developer can then check their pull request/merge request and review their code based upon the criteria that were contained with their task.
If in this case the lead developer or developer that is responsible for reviewing this code does not find that it has achieved the aim of the task, the branch can then be declined to require that the developer that submitted the code must complete any changes required for it to be merged.
By separating the tasks into smaller pieces, it allows for the project to move forward in a more agile way. The tasks will be completed faster and also reduce the number of bugs that may have been created whilst trying to program a project that works on a bottom to top technique.
By having levels of tasks in your project, you can allow for your customer to define the minimum viable product, that they want to see after a specific deadline. Once this time goes by, they expect to see a product that they can use for their customers that will work. It can be that it does not do everything that is required, but it is at least working and can be extended over time. This is the logic behind top-down programming.
Creating websites, or web applications, in the beginning, requires lots of planning. Jumping straight into the development of the project is a very unwise thing to do. It’s best that the lead developer sits together with the person that is responsible for the planning of the project for the customer. It can be that the lead developer is also the project manager, but ultimately the project needs to be planned first and likes previously mentioned cut into smaller sprints for the developers in the team to accomplish in a weekly sprint.
This method of planning can be used in any programming language or project. It is not just restricted to PHP. The programming language is really not important at all. What is important within the programming phase is for the developers/programmer to work out what the names of the classes, functions, objects, variables, etc will do, and also how they will communicate with another.
This can be best done by using interfaces, or protocols. Basically creating a blueprint of your project first. The blueprint of your project will define the modules, components, dependencies, repositories, stores that your application requires, and also how each component will communicate with the others. This step is the architecture phase. The architecture phase plans exactly that is mentioned in the last sentences. Which component is permitted to talk with another component, and if they can’t communicate directly, through which component can that use to retrieve or send the data.
Junior developers, even normal developers should not be making these decisions in a web development project, these decisions are best left to the architect in the project. The lead developer should then be in charge of delegating the tasks to the other developers within this project.
If you are new to my channel, I try and upload videos on a frequent basis.
As you can see I do a lot of programming videos. Over the past couple of years, I have been tried to broaden my channel to assist more people in different areas.
So don’t be put off when you see videos about other topics.
I have over 10 years of experience in web / mobile and application development. I have created many websites for many companies and people. I have worked on famous German comparison websites and helped to develop an enterprise-size water dispenser company mobile application.
I can promise you that I have more than enough experience with how not to create a website because I am a self-taught programmer and I have probably at one time encountered all of the same problems that you are having now.
This video will point you in the correct direction and I will explain each step clearly so that you understand it.
source by Davids Videos