Once you find a learning tool that uses a top-down approach, what is the best way to learn? I have a controversial point of view: I think it is absolutely necessary for beginners to remember the basics as quickly as possible. As a more advanced learner, memory quickly becomes a discarded way. You may have heard people say lightly ("Don't rote, Digest internally", "I'm digesting what I remember", "I hate testing, I have to recall something in my memory").
On the other hand, when you were in primary school, you were forced to take the time to recite the multiplication tables. Why do you have to recite it? Because your base multiplication table can be the basis for building more complex multiplication methods. This is no different from the syntax of your memory programming language: If you write an if or for loop the more natural it is, it's easier to write more complex blocks of statements.
I also admit that memory is not always the best way to learn everything, but I believe it is absolutely necessary for programmers to practice programming. Why is it? Because it can reduce resistance, if there is something that will bring the beginner frustration, that is resistance.
With this in mind, here are some specific suggestions for beginners who are learning or preparing to learn WEB application development. In fact, speaking farther and more abstract, this is a good plan for how to start learning software development. Obviously, this is not a plan for everyone, but I think it must be suitable for most beginners.
- To learn a weak type of programming language, do not first learn the type of mandatory, object-oriented programming language. Strictly speaking, if someone mentions class or inheritance to you, then you should choose another way. Although I recognize that similar and inherited technologies are essential in software development, I strongly believe that they should not be a beginner's choice.
- In view of this, I think JavaScript is the most ideal programming language for beginners, because: (a) JS interpreter is available on most browsers, (b) Its object-oriented features are not mandatory, (c) is widely used in industry (yes, even clients outside the web, Even now I work as a device engineer and I do embedded JavaScript. )
- To be more specific, I suggest you learn how to use JavaScript to learn to do the following things, especially in this order:
- Learn how to print something, learn how to declare and define variables, learn basic arithmetic operations (including remainder operations), learn loops (especially for loops), learn to write abstract repetitive code into functions, learn strings and iterate through strings, and learn the loop methods of arrays and groups (especially foreach Loop) to learn to create and manipulate object datasets.
- Remember the above and write a program every day to practice, until these are easily remembered.
- Learn the basics of git and learn how to use git from the command line. This means learning four unix/linux commands (LS,PWD,MKDIR,CD) first. When you learn these commands, you also learn to query the file system in the form of "tree" or hierarchical rendering.
- Once you have mastered the above several Unix/linux commands and will enter the file system from the command line, you should learn a few basic Git commands. It's mostly git init, git status, git add and git commit.
- Once you have mastered the basics of Git, integrate it into your workflow as you learn the techniques below.
- Learn the basics of HTML to create simple HTML pages from memory. Learn the DOM and how to understand HTML as a specified hierarchical tree structure. Take some time to think about how it relates to the layered file system you learned in the previous steps.
- Learn the CSS selector to see how it lets you select parts of the DOM. Understand the relationship between DOM elements. Understand the meaning of one DOM element as a parent or child element of another DOM element. Understand how this differs from the relationship between the offspring and the ancestors. Remember that selectors allow you to select certain elements through these relationships.
- Learn jQuery and focus primarily on the operational capabilities of the DOM. Learn to use JQuery to insert or delete elements into the DOM, and practice how visualizations affect the tree structure defined by the DOM.
- Practice event handling and DOM manipulation in jQuery (for example, practice manipulating the DOM when the user clicks on something, or at a specified time interval).
- Practice JavaScript objects more and treat them as mutable aggregators. Learn how to use JavaScript to represent more complex data rather than basic data types. Learn to apply and manipulate these data structures. Understand and define JSON, and understand how it is associated with JavaScript objects.
- Learn to use JQuery's Getjson function to get data from a file into a JavaScript object. Using a similar technique, use a simple JSONP API to practice using AJAX to pull data. Practice inserting and deleting this data into the DOM.
At this stage, make a simple slideshow to cycle through Flickr images, which will be an incredible project that will really test your ability to use the basic techniques you learned before to implement it.
If you do this, you have mastered a number of essential programming and computer science concepts. Specifically, you have mastered the most important elements of a computer program (if If-else statements, loops, variables, objects, functions, arrays, etc.), you have learned the structure of a chained or tree-like data. At this point, you are undoubtedly ready to move on to more advanced topics.
Thank you for your attention Websites Blog!
This article originally published in Codecloud.net, the article content belongs to the author individual viewpoint, does not represent this station position.
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
The above describes a very correct and powerful programming learning methods, including aspects of the content, I hope to be interested in PHP tutorial friends helpful.