Skip to content

Commit

Permalink
[COURSE] Add UW–Madison CS571 for Web/Mobile Development (#464)
Browse files Browse the repository at this point in the history
* add CS571 (Web)

* edit

* elaborate

* format & elaborate & add entry

* react.dev link in eng

* add UX
  • Loading branch information
alicia-lyu authored Jun 8, 2023
1 parent 039a0f9 commit c2ab954
Show file tree
Hide file tree
Showing 3 changed files with 51 additions and 0 deletions.
25 changes: 25 additions & 0 deletions docs/Web开发/CS571.en.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# CS571 Building UI (React & React Native)

## Course Overview

- University: University of Wisconsin, Madison
- Prerequisites: CS400 (Advanced Java. But in my opinion you only need to master one programming language)
- Programming Languages: JavaScript/HTML/CSS
- Course Difficulty: 🌟🌟🌟
- Estimated Time Commitment: 2 hrs/week (lecture) + 4–10 hrs/week (HW), 12 weeks

This course provides a comprehensive but concise introduction to the best practices of React front-end development and React Native mobile development. It focuses on the latest versions of React and React Native and is updated every semester. It is a valuable resource for tackling the complexities of front-end development.

The course also offers a good training ground. Be prepared for a significant workload throughout the semester. The techniques and knowledge points involved in the homework will be explained in class, but code won't be written hand by hand (I personally think that hand-holding code writing is very inefficient, and most courses on Udemy are of this type). As this isn't a hand-holding course, if you are unsure about how to write React code when doing homework, I recommend spending extra time carefully reading the relevant chapters on [react.dev](https://react.dev/reference/react) before diving in. The starter code also provides you with a great starting point, saving you from coping with Node.js environment settings.

Although this course doesn't require prior knowledge of Javascript/HTML/CSS, the classroom introduction to syntax is relatively limited. It's recommended to frequently consult resources and ask questions when encountering syntax issues during learning and coding.

This course also includes an introduction to and practices for Dialog Flow, a ChatBot development tool by Google. You can also find content related to UX development (on the practical side) in this course.

All course materials and assignments are open-source, but you will need to request an X-CS571-ID header from the instructor, Cole Nelson (ctnelson2@wisc.edu). The header will be necessary for API request. When sending an email, it is advisable to include a brief self-introduction. It is unclear whether the instructor is willing to give everyone an ID. If you got turned down, please [raise an issue for this GitHub repo](https://github.com/PKUFlyingPig/cs-self-learning/issues/new/choose).

## Course Resources

- Course Website: <https://cs571.org>
- Course Videos: Refer to the links labeled "R" on the course website.
- Course Assignments: Refer to the course website for more information.
25 changes: 25 additions & 0 deletions docs/Web开发/CS571.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# CS571 Building UI (React & React Native)

## 课程简介

- 所属大学:威斯康星大学麦迪逊分校(University of Wisconsin, Madison)
- 先修要求:CS400(高级 Java,但个人觉得先修不必要,掌握至少一门编程语言即可)
- 编程语言:JavaScript/HTML/CSS
- 课程难度:🌟🌟🌟
- 预计学时:每周 2 小时(讲座)+ 每周 4–10 小时(作业),持续 12 周

该课程提供了 React 前端开发和 React Native 移动端开发的最佳实践介绍,完整的同时又提纲挈领。采用 React 和 React Native 的最新版本,课程网站每学期都会更新。对于各门工具迭出的前端开发难能可贵。

同时,该课程也提供了很好的训练机会。在整个学期中,需要为较大作业量做好准备。作业所涉及的技术和知识点会在课上讲解,但不会手把手写代码(个人认为手把手写代码效率非常低,而 Udemy 上多为此类型)。由于不是保姆级课程,如果写作业时对于 React 的某些功能不确定怎么写,建议在动手之前多花些时间仔细阅读 [react.dev](https://react.dev/reference/react) 上的相关章节。作业的 starter code 提供的训练起点也恰好合适,不用为配 Node.js 环境伤脑筋。

尽管这门课程不要求预先会 Javascript/HTML/CSS,课堂上对 syntax 的介绍比较有限,建议学习和写码遇到语法问题时勤查勤问。

此外,本课程还对 Google 旗下的 ChatBot 开发工具 Dialog Flow 有较为深入的介绍和练习。还对 UX Design 的实用原则和技术有所讲解。

所有课程资料和作业都是开源的,但你需要向授课教师 Cole Nelson (ctnelson2@wisc.edu) 发送电子邮件以获取 X-CS571-ID。该 ID 是向 API 发送 request 必需。在发送邮件时,建议附上自我介绍。目前还不清楚老师是否愿意给所有人提供ID,如果老师表示无法分享,请[在 GitHub repo 里提一个 issue](https://github.com/PKUFlyingPig/cs-self-learning/issues/new/choose)

## 课程资源

- 课程网站:<https://cs571.org>
- 课程视频:请参考课程网站上标有“R”的链接
- 课程作业:请参考课程网站上的相关信息
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -213,6 +213,7 @@ nav:
- "MIT web development course": "Web开发/mitweb.md"
- "Stanford CS142: Web Applications": "Web开发/CS142.md"
- "University of Helsinki: Full Stack open 2022": "Web开发/fullstackopen.md"
- "CS571 Building UI (React & React Native)": "Web开发/CS571.md"
- 数据科学:
- "UCB Data100: Principles and Techniques of Data Science": "数据科学/Data100.md"
- 人工智能:
Expand Down

0 comments on commit c2ab954

Please sign in to comment.