From cainiao to experts (reprinted mark lassoff & tcjiaan)

Source: Internet
Author: User

1. Understand the "Philosophy" behind the language"

When I first learned Java, I thought it was lengthy and complex. At that time, I was not experienced.ProgramAnd is used to coding in C. Java is a great language, but I cannot understand the essence of it-or even its purpose, because I cannot understand Java's object-oriented principle.

Later, I understood the object-oriented method and used it for computer science programming in the Browne class at the University of Texas at Austin. This has played a major role in understanding Java's core ideas and programming methods.

Now there are thousandsProgramming LanguageDifferent programming languages solve and optimize different types of programming problems, and are at different levels in computer systems. What you need to do is to understand what the language you are learning and what the goal is. Understanding is crucial, and then uses it to solve practical problems.

2. Enter allCodeInstance

Practice is the only criterion for testing truth. To learn a language, apart from knowing its principles, the fastest way to learn is practice. Writing code is far more effective than reading or watching videos. Inputting code and making them run is a crucial step in learning a language. Even if you are completely unfamiliar with the language, you will find their syntax structure and gradually understand the meaning.

In the process of writing, you will surely make mistakes, discover errors and correct them. This process cannot be ignored. The more errors, the more you will spend on research, in this way, you will be more profound.

3. Further steps

Both experiment and practice attempt to learn more. This will often bring you endless gains and drive you to constantly read the language-related materials you have learned. There are two major advantages: first, learn the document structure of the language and be familiar with it; second, deepen the concept and help you solve some minor problems.

For example, if you are learning how to use HTML5 and JavaScript to make audio, you should ask yourself: "How to control the volume ?" After solving this problem, you can gain a deeper understanding of the Code.

4. Learn through many small examples-not big projects

During years of training, I have been focusing on the client's network language, such as Java and subsequent mobile development. In the classroom, each lesson has a corresponding courseware, each courseware will demonstrate some examples, and finally combine these examples into a project. In the early days, such errors were often made without mutual isolation.

In fact, it is very important to use an isolated method to learn various language skills. Integration is a more complex process than learning personal skills. After you have a solid foundation for a language, integration is indeed the best way to learn, otherwise it is likely to confuse concepts.

5. Run the program

Make sure to run the program. Even if multiple bugs occur, you must debug them until they can run correctly. To open a door, you must close it. When you learn a new language skill, you certainly hope to have a higher skill level in the future. Sometimes, it is easy to give up or skip a small defect, so that the problem remains in the pending state-this is very dangerous.

There's nothing more exciting than this-the first time I saw my own application running.

In comparison with my philosophy, this article is just a small part.

In additionArticleAs mentioned in, there are:

1. A wide range of interests, philosophy, art, martial arts, common sense of economic management, and knowledge penetrating into each other to optimize Ding; 2. The programming philosophy of Heaven and Man, returning to nature; 3. the realm of experts is the first in programming ideas, the second in efficient development skills, and the third in technology. Writing a program is simply a process of translating my ideas into executable logic, not the core. Therefore, thoughts and inspiration are very important; 4. Reject brainwashing from any company, break the mindset, and give full play to multiple routines, not limited to the traditional model; 5. All architecture ideas and design patterns are on paper, and each type of project in each industry is a completely different development model. Therefore, I created an OTC model-object-> goal-> control, the object is the unit division of large projects. The goal is what my program can do at last, and the control is what to do after what is done during the development process and how to arrange it.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.