首页 > 编程语言 >用 Python 撸一个 Web 服务器-第9章:项目总结

用 Python 撸一个 Web 服务器-第9章:项目总结

时间:2024-06-07 10:23:07浏览次数:25  
标签:Web Python List 程序 服务器 Todo

项目总结

本教程带大家一起实现了一个 Todo List 程序,包含基础的增删改查功能,和用户登录认证。这也是 Web 开发中最常见的需求。

我画了一张思维导图,帮助你从宏观的角度来概览 Todo List 程序,加深你对 Web 开发的理解。

Todo List

Todo List

项目整体思路参考 MVC 设计模式。有意设计 utils/ 目录专门用来存储一些工具方法,这些工具方法通常比较独立,尽量不从外部模块导入依赖,其他模块需要某个工具方法时从 utils/ 目录下导入即可使用,这样就避免了循环导入的问题。

诚然,Todo List 程序还有很多待完善的地方,它不符合 Python 界的 WSGI 规范,也没有考虑 Web 安全防范、性能等方面的问题,项目可能看起来比较 Low。但这足以说明 Web 开发的本质,无论多么复杂的 Web 程序,都离不开这些底层原理。

结束 or 开始

九篇文章,带你撸了一个 Web 服务器,希望让读者能够通过这个微小的 Web 程序原型明白 Web 服务器的工作原理。只有明白基本原理,再去学习一些概念、框架才会得心应手。

教程到这里就结束了,但对于 Web 开发才刚刚开始,Web 开发还有非常多的知识等着我们去学习探索。每一段旅程的结束都是下一段旅程的开始,愿你在学习技术的道路上不再孤独。

后记

作者编程水平有限,教程中可能有表达不够准确或错误的地方,欢迎读者能提出宝贵意见。

希望读者读完此系列文章能够有所收获。

原文出处: https://jianghushinian.cn

标签:Web,Python,List,程序,服务器,Todo
From: https://www.cnblogs.com/markhoo/p/18236382

相关文章

  • 用 Python 撸一个 Web 服务器-第8章:用户管理
    用户登录原理用户登录与注册功能几乎已成为Web应用的标配。所以我们有必要给TodoList程序增加一个用户管理模块,以此来学习用户登录原理。HTTP协议是无状态的,这意味着每个完整的HTTP请求——响应过程都是相对独立的,Web服务器无法分辨前后两次连续请求是否为同一个用户......
  • 用 Python 撸一个 Web 服务器-第7章:重构——更好的组织代码
    通过前几章的学习,我们完成了TodoList程序的todo管理部分,实现了对todo的增、删、改、查基本操作,这也是几乎所有Web程序都具备的功能。我们当然可以按照目前的思路继续来实现用户管理部分,在models.py中编写用户相关的模型,在templates/目录下新建用户相关HTML,在contro......
  • 【已解决】Python报错Pytorch:ModuleNotFoundError: No module named ‘torch’
    本文摘要:本文已解决Pytorch:ModuleNotFoundError:Nomodulenamed‘torch’的相关报错问题,并总结提出了几种可用解决方案。同时结合人工智能GPT排除可能得隐患及错误。......
  • 【已解决】Python报错 ERROR: Could not find a version that satisfies the requirem
    本文摘要:本文已解决ERROR:Couldnotfindaversionthatsatisfiestherequirement的相关报错问题,并总结提出了几种可用解决方案。同时结合人工智能GPT排除可能得隐患及错误。......
  • Python进阶:解密collections库的高级功能
    Python内置库collections提供了一些强大的工具类,可以简化和优化我们的编程过程。本文将重点探索collections库中的几个类的使用。通过详细的代码示例和解释,展示如何利用Counter计数和统计元素,以及如何使用defaultdict创建有默认值的字典。一、常见类的介绍Pythoncollections......
  • idea,webstorm切换远程仓库
    当有一个老的项目需要从新上传到一个新的git地址,或者上传到云效上面,可以参考1:首先把setting->VersionControl->directoryMappings下面的仓库删除2,如果发现菜单栏的vcs不显示,双击shift,输入Mainmenu   3:选择 CreateGitRepository,创建git本地仓库   选择......
  • 一文看懂企业FTP服务器替代解决方案
    FTP(FileTransferProtocol)是一种用于在计算机网络上传输文件的协议。它基于客户端-服务器模型,用户可以通过一个支持FTP协议的客户端程序连接到远程FTP服务器,然后上传或下载文件。FTP虽然是一种广泛使用的文件传输协议,但它也存在一些使用缺陷和限制:安全性问题:传统FTP(也称......
  • 195、Django实战:从部署到运维,打造高效Web应用
    DjangoChannels:实现WebSocket与实时通信本文将向您介绍Python开发框架Django中的一个重要组件——DjangoChannels,它使得在Django中实现WebSocket通信变得轻而易举。通过阅读本文,您将了解WebSocket的概念、DjangoChannels的工作原理以及如何在实际项目中使用它来实现实时......
  • 《手把手教你》系列练习篇之12-python+ selenium自动化测试(详细教程)
    1.简介前面文章我们了解了如何获取元素的text属性值,和判断元素是否显示在页面(is_displayed()方法),本文我们来学习下,判断一个控件是否被选中状态、获取页面元素的大小、组合键-全选文字、组合键-退格键删除文本和鼠标右键等练习的内容。2.验证控件是否被选中还是以百度......
  • 《手把手教你》系列练习篇之13-python+ selenium自动化测试 -压轴篇(详细教程)
    1.简介“压轴”原本是戏曲名词,指一场折子戏演出的倒数第二个剧目。在现代社会中有很多应用,比如“压轴戏”,但压轴也是人们知识的一个盲区。“压轴”本意是指倒数第二个节目,而不是人们常说的倒数第一个,倒数第一个节目称“压台”。想看“压台篇”,敬请关注宏哥等待压台篇发......