Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

How to learn the way to program?

2025-04-05 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Servers >

Share

Shulou(Shulou.com)06/03 Report--

Someone on the Internet asked: I have been studying javase by myself for some time. I have seen some basic videos, but now I still don't know anything and have no direction at all! Posted before also said this problem, many senior guidance said to do small projects, but their own online search for those small projects, the source code are confused!

Here is my reply

Ever since I saw your problem, I've been thinking about how to make it clear.

Some people really want to help people like you.

But I don't know how to tell you clearly and show you the way.

People like me are thrilled to death on the first day they touch computer programming.

It is found that computers can solve the problem that abstract symbols are not easy to understand when learning mathematics in class in another way.

I was so excited that I was looking forward to the arrival of the school computer class every day (only two hours a week, when I was in high school).

What is the charm of computer programming?

When I learned the "formula for calculating the circle" in the third year of high school, I thought, "how does the computer use this formula to draw a circle?"

At that time, I learned two methods: 1. Use the Pythagorean Theorem; 2. Use trigonometric function

Because the Pythagorean Theorem is easy to understand, we use it first, but the circle is not good-looking.

Have to use trigonometric function, combined with the formula of the circle to write a new one, and finally draw the circle perfectly.

I was so excited that I couldn't sleep those days.

The most beautiful thing about computer programming is that you can quickly verify whether what you want is right or not.

Give you a quick reply to the answer to the method you have come up with

It is the best self-checking tool for the correctness of ideas.

More than that.

After so many years of evolution of programming languages,

To make this tool logical at the same time

Improve the graceful degree of using mathematical logic to solve problems.

The process of programming is to enjoy it.

A programming language invented later

The more obvious the improvement in this area.

So "in principle" Java is better than C and C++ in this respect (in principle ha! )

Unless the problem you are trying to solve cannot be solved without CAccord + (such as high speed requirements, or low-level programming of the system)

Otherwise, you should try to choose a programming language that was invented later (or continue to improve your own language in this respect, Java belongs to this category).

Speaking of which,

It still doesn't seem to answer your question: how to learn Java?

Er, as a matter of fact, I don't know if you found it.

The key to learning programming is here:

Use this "self-checking tool for correctness of ideas" to repeatedly verify how well you have learned.

Such as learning JavaSE, learning object-oriented

Did you really learn it? How much have you learned?

You have to repeatedly use programming tools such as Eclipse to write short code

Run the verification result

See what's different from what you understand.

Verify how much you know.

Verify that what you know is right.

Only to verify that you have indeed learned some key points.

Only then should we continue to learn from the more advanced parts.

You said, "I can't understand the source code of the small projects found on the Internet."

In fact, I can't understand most of the source code written by others.

It has to be "very painful and look hard" to finally understand.

The process of learning programming does not grow rapidly by looking at some source code written by others.

The right way to grow fast is to settle down and spend a few hours reading basic grammar

And then ask yourself on this basis.

With what you have learned so far, what questions can you give yourself?

How to solve it by applying what you have learned so far?

How to quickly verify that it has really been solved?

Is there a better solution?

Let's talk about one thing that happened at that time:

At that time, I first came into contact with the Unix environment shared by many people in the school computer room.

Although I have studied DOS for many years

But in the face of Unix terminals, they have no idea what they are going to do?

How to take the first step of learning Unix?

I was as lost then as you are now.

Until one of the seniors told me: you can write a program to see who is currently logged into the system.

At that time, our Unix account was our student number.

I used Shell script to write a ten-line program (it took me about 3 hours) to run in the background.

Whenever someone logs in to the system, I sit in the last row of the computer room

Know who he / she is immediately (use the student number to inquire about the address book sent by the school, you will know his / her name)

This is so much fun.

After that, I kept thinking: what else can I do with Shell scripts?

Think of a topic for yourself every day

Then look for books (at that time Unix only had English books, Baidu had not yet been born) and try to find a solution.

Although it is painful to read English books.

But compared to finding a solution to the problem you want to solve and finally achieving a sense of achievement.

That kind of pain is nothing.

For example, there is an e-mail system in the Unix environment (OK, e-mail is not a big deal these days, but it just came out at that time)

I wondered how this e-mail system sent mail from another computer far away to here.

Found a lot of information, all said that it can not be done with Shell script, only C can

So in order to figure out how the mail system is implemented,

Began the long process of learning C.

Now I'm telling you: Java can develop mail systems as well as QQ systems.

Do you want to know how to do it?

OK, you are a beginner, don't choose such a difficult topic to start with.

But go around talking so much.

Actually, I've already told you how to learn Java.

I don't know if you noticed?

Facing what javase,javaee,swing,swt,SSH,.?

A lot of nouns, a lot of things.

Everyone will be confused.

What you want to learn is like a tsunami, high and earth is coming to you.

How could you not be at a loss?

At first, the ability was very poor.

Can only solve simple problems.

It is extremely important to think about what problems you want to solve.

It would be stupid to have the ability like me today, but how to develop a moon landing rocket.

I don't even think about how to develop a flight control system for an aircraft.

Because my ability is too far from solving this problem.

What do you want to do with Java? Solve what problem?

How do you find yourself the next problem?

Start with "how to use a few lines of Java to enjoy seeing the computer solve your problem and reply to the answer"

Go out step by step.

Gradually there are more lines of code.

You have to think about how to allocate lines of code to multiple methods, classes, and files.

Gradually, the ability has increased.

Just began to wonder what else to learn besides the standard JavaJDK.

In a nutshell, what to learn next

It's about "what do you want to achieve with Java?"

Everyone will tell you to learn javaee,SSH,swing,swt.

Although they are all right, after all, these things are the most popular nowadays.

But it is irresponsible to type a few words to tell you to learn these things.

Although it is true that "language is not important, thought is the key".

But for you who are capable now, this is bullshit.

There are many people in the world who "casually come to the right conclusion, but it doesn't help us at all".

These descriptions of "only necessary conditions, not sufficient conditions"

It's not very helpful in learning things.

Just like everyone who has seen The Smiling、Proud Wanderer knows that "there is no way to win" is the highest level.

But if you haven't read the general outline of Dugujiujian first,

I have learned broken sword style, broken knife style and broken sword again. Type

And there is a teacher to explain the key points of sword theory to you bit by bit.

And practiced with Tian Boguang, the man in black and others.

How to achieve the state of "no victory and no victory"?

Did not realize the sword theory and put it into practice.

If there is no way to win, there can only be street hooligans fighting.

Finally, I want to tell you that this road is actually quite long and difficult to go.

Do you think you are really fit to enter this field?

All this is a process of learning and entering bit by bit.

There will be no achievements in a few years.

Are you really fit for programming as a career?

You really need to think about it.

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Servers

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report