Software Engineering Education Based on Modern Software Engineering
I carefully read this article by Mr. Yan and Mr. Mao's blog.
First, I want to say,I am very supportive of "learning and learning"
Practice is the only criterion for testing truth
Compare the two software engineering courses in the chat with the students in the previous class
We can easily get the comparison result: our current software engineering courses are more meaningful.
Our software engineering courses are not tested, while the top class is to take the test.
The object-oriented modeling course for the previous semester is used as an example. The scores are divided into two parts: Average and test, each accounting for 50%, including several small assignments and one big assignment.
A small job and a large job respectively complete a "small program" and a "small project", which can be classified as practices.
Tests are about concepts, UML, etc.
If you want me to evaluate it, big jobs are more meaningful to me.
I learned Java in my large OO job, and then introduced a famous Java class.
There are more than 200 students in the full year. I want to learn Java in Java class. I don't think there are more than 10 students.
On the podium, the teacher talked about the concept, did not practice after class, and did not have actual examples. What is the test interface, and what is the use of try... catch?
Because the exam is open, we have all answered the standard answer, but no one has learned.
Some students in Class 7 may have heard of class C ++ from Teacher Liu Yu.
Liu Yu's C ++ statement is as follows:
Without PPT, open the computer, open the projection, and open VC6.0.
Enter a piece of code and ask what results do you think will happen
Based on our learning experience, this code must be problematic, such as compilation errors, result errors, and various errors.
In this way, everyone is very impressed with this "knowledge point ".
However
The method mentioned above is that practice is necessary for learning.
That is to say, learning is a good way to learn.
This does not mean that learning is not a good learning method.
Now there is a saying that the university is studying mathematics, and graduate students are studying majors.
That is to say, we use the theory as the basis, then practice it, and finally return to the theory in the process of practice.
This is different from understanding the theory in practice.
In software engineering jobs, there are demand analysts, architects, PM, and Dev
Obviously, Dev is oversupply, and demand analysts are the most difficult
Mr Mao's words make sense, but I want to pick a thorn in every aspect.
It is not necessarily a fourth-grade (fifth-grade) University graduation, but a job can be graduated from any grade.
For society, I may need more Dev than architects, just as there is only one foreman, but there are many workers.
Such a university pattern may be social, but for an individual, if you are only a technician and have learned how to be a technician, then he will always be a technician.
Any grade can enroll new students.
Can I skip the first grade to the second grade? How can we determine whether there is a second-grade level?
Learning is not just a simple accumulation of knowledge, but a systematic procedural behavior. Continuous first and second grades are certainly different from the first and second grades.
Under the new system, large factories and construction sites can start formal universities.
The theory is beautiful, and the reality is cruel. If they are not running a "university" but a "Training Course", I think it may be more accurate.
There is another saying that companies are willing to learn other majors, such as automation and electronics, rather than computer programming.
They think that programming can be edited by anyone, but other professionals have some impossible talents in computer science.
Therefore, it is important for computer students to be professional.
What is the difference between learning based on practice and learning C language from other majors?
This is because we are starting from theory. We understand not only the surface knowledge, but also the underlying knowledge, so that we can be professional.
In summary, the theory is the basis, and I think it can be practiced only in theory.
Especially in the university study period
We should lay a good foundation, starting from theory, supplemented by practice.
Learning, learning first, learning later
Learn first, learn again, have new gains, learn again, learn again
In order to get the best learning results