[TRANSLATION] translate 6031.md and fix a tiny error (#262)

* [TRANSLATION] translate 6031.md

* Update MITLA.en.md

* Update 6031.en.md
This commit is contained in:
smxm
2022-10-04 14:36:08 +08:00
committed by GitHub
parent 31bababb23
commit fc2ade16e4
2 changed files with 34 additions and 1 deletions

View File

@@ -12,7 +12,7 @@ Gilbert Strang, a great mathematician at MIT, still insists on teaching in his e
![image](https://math.mit.edu/~gs/linearalgebra/linearalgebra5_Front.jpg)
In addition to the course materials, the famous Youtuber **3Blue1Brown**'s video series [The Essence of Linear Algebra](https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab) are also great learning resourses.
In addition to the course materials, the famous Youtuber **3Blue1Brown**'s video series [The Essence of Linear Algebra](https://www.youtube.com/playlist?list=PLZHQObOWTQDPD3MizzM2xVFitgF8hE_ab) are also great learning resources.
## Resources

View File

@@ -0,0 +1,33 @@
# MIT 6.031: Software Construction
## Descriptions
- Offered by: MIT
- Prerequisites: better if you are already proficient in a programming language
- Programming Languages: Java
- Difficulty: 🌟🌟🌟🌟
- Class Hour: 100 hours
The goal of this course is for you to learn how to write high quality code, and what is meant by high quality is to meet the following three targets:
> Safe from bugs. Correctness (correct behavior right now) and defensiveness (correct behavior in the future) are required in any software we build.
>
> Easy to understand. The code has to communicate to future programmers who need to understand it and make changes in it (fixing bugs or adding new features). That future programmer might be you, months or years from now. Youll be surprised how much you forget if you dont write it down, and how much it helps your own future self to have a good design.
>
> Ready for change. Software always changes. Some designs make it easy to make changes; others require throwing away and rewriting a lot of code.
To achieve this, the instructors write a book explaining many of the core principles of software construction and valuable lessons learned from the past. The book covers many practical topics such as how to write comments and specifications, how to design abstract data structures, and many parallel programming caveats. You will explore all of these ideas in the programming assignments.
In the 2016 spring, the course open-sourced all of its programming assignments, and the textbook can be found on the latest website (see links below).
## Course Resources
- Course Website: [2021spring](http://web.mit.edu/6.031/www/sp21/), [2016spring](https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-005-software-construction-spring-2016/)
- Recordings: None
- Assignments4 Problem Sets + 1 Project
## Personal Resources
All the resources and assignments used by @PKUFlyingPig in this course are maintained in [PKUFlyingPig/MIT6.031 --- GitHub](https://github.com/PKUFlyingPig/MIT6.031-software-construction)
@pengzhangzhi completed the assignments and took some notes, maintained at [pengzhangzhi/self-taught-CS/Software Construction - Github](https://github.com/pengzhangzhi/self-taught-CS/tree/main/Software%20Construction)。