简单来说,就是去创建网站以及 Web 应用程序。新闻门户是我们每天会访问的,像微博、知乎这样的社交媒体平台也是,淘宝、京东这样的在线购物网站同样如此,还有视频网站等,这些都是 Web 开发所产生的成果。我们这门课的目标,便是让初学者能够掌握构建这些应用的核心技术。
1.3 前端 vs 后端
想象一个餐厅:
前端:包括餐厅的大堂,还有菜单,以及漂亮的装修,同时也有提供点餐服务的服务员。这部分是顾客能够直接看到并且与之互动的。在 Web 世界中,前端是用户在浏览器里所看到的所有内容,像文字、图片、按钮、表单等,还有与这些内容进行交互时的体验,比如点击按钮有反应、页面滚动很流畅等。主要技术包含 HTML,它的作用是定义内容结构;还有 CSS,其功能是设计样式外观;以及能够实现交互行为的部分。
后端:指的是餐厅的后厨、仓库以及厨师们。这部分通常是顾客无法看到的,然而它却对整个餐厅的运作起着支撑作用,包括处理订单、烹饪菜肴以及管理库存等。在 Web 世界中,后端的职责是处理前端发送过来的请求,像用户提交的登录信息等,进行业务逻辑运算,与存储数据的数据库进行交互,最后将处理结果返回给前端。我们即将学习的 Node.js 就是一种流行的后端技术。
全栈 (Full Stack) 意味着什么?
全栈开发者如同餐厅中的全能经理或老板,既懂得大堂管理(前端),又精通后厨运作(后端)。他们能够理解并参与到一个 Web 应用从开始到结束的整个开发过程,既能构建用户界面,又能搭建服务器以及管理数据库。这使我们具备更全面的视野和更强的解决问题的能力。
在本教程里,我们首先会按照 HTML 的顺序进行,接着是 CSS,然后是前端核心部分,再接着是 Node.js 作为后端基础,之后是 React 这个现代前端框架,最后是全栈实战项目。一步一步地,循序渐进,扎实推进。最终,我们能够独自去构思、设计并且开发出功能完备的 Web 应用,就像我们最后一起做的点餐小程序以及电商小程序等这些实用的项目!
在 AI 编程工具尚未出现之前,能够自主借助搜索引擎来解决问题。AI 编程工具出现之后,有效提问依然是有效的,只是需要像向大模型提问那样,问题越是具体,所得到的答案就会越精准。
3.4 拥抱 Bug,调试是常态
没有人能够写出没有 Bug(错误)的代码,即便对方是资深开发者。程序出现错误了?这是一件很棒的事情!这意味着有一个学习和成长的机会。你需要去培养调试(Debug)的能力,要像侦探那样,依据错误信息,借助.log()输出,运用浏览器的开发者工具或者 VS Code 的调试器,逐步缩小范围,最终找到并修复问题。把调试看作是解谜游戏,你会发现其中的乐趣。