web应用开发是什么,web开发是做什么

编程也是一样,选择一个方向,勤学苦练,深入下去,不要轻易改变 。对于 Python,主要的应用领域有 5 大类,自动化测试或运维,爬虫,数据分析,Web 开发,机器学习或人工智能,这几个领域的入门难度从自动化到机器学习也是从易到难,尤其是机器学习,对 Python 的要求并不高,反而是数学及算法要精通 。
相信每个人都有自己的职业选择,今天来分享下使用 Python 从事 Web 开发的完整指南,主要有以下内容:
什么是 Web 开发?
为什么 Python 适合 Web 开发?
有哪些流行的 Python Web 框架?
有哪些用于 Web 开发的 Python 库?
Web 开发学习路线图
用 Python 创建第一个 Web 应用程序
成为 Python Web 开发人员
1、什么是网站开发?
对于那些刚接触编程的人,可能想知道到底什么是 Web 开发 。尽管不可能精确地指出一个确切的术语,但是 Web 开发可以粗略地定义为构建、创建和维护一个网站 。通常,Web 开发涉及一个前端,与客户端交互的所有内容,以及一个后端,包含业务逻辑并与数据库交互 。前端涉及 html、css、javascript 和由此衍生出的库及框架,如 Angular、React、Vue,可谓学无止境 。后端可以有很多语言实现,这里就是 Python 了,也有非常丰富的框架,后面会提到 。
2、为什么 Python 适合 Web 开发?
一是易于学习:Python 是初学者最流行的语言,与 Java 和 C ++ 等其他语言相比,你可以编写更少的代码,减少出错,从而提升效率 。不仅如此,它还具有较低的进入门槛,因为它与日常语言相对更相似,可以轻松地理解代码 。
二是具有丰富的生态系统和库:Python 提供了广泛的库工具和包,可以访问许多预先编写的代码,从而缩短了应用程序的开发时间 。例如,你可以使用Numpy 和 Pandas 进行数学分析,使用 Pygal 进行图表分析,并使用 SLQALchemy 进行可组合查询 。Python 还提供了惊人的 Web 框架,例如Django 和 Flask,后面部分深入探讨 。
三是快速原型制作:与其他编程语言相比,Python 可以节省大量的时间来构建项目,你的想法可以更快地实现,从而可以更快地获得反馈并快速迭代 。这种高效的开发使 Python 特别适合那些可以更快进入市场以获得竞争优势的创业公司 。
四是广泛流行:Python 是世界上最受欢迎的语言之一,拥有来自世界各地的社区贡献,几乎所有的技术问题通过搜索引擎都可以很快找到解决方案 。Python 本身也在不断更新以提供新功能和库,同时还提供了出色的文档和社区支持 。特别是对于新开发人员,Python 提供了广泛的支持和框架 。
3、有哪些流行的 Python Web 框架?
什么是 Web 框架,为什么如此重要?可以把 Web 框架想象成一个工具箱 。一个 Web 框架是预先写好的,由标准化的代码组成,为编写 Web 应用程序服务,目的是为了使开发更快、更容易,包装和模块的集合,使 web 应用程序更加可靠,更容易扩展 。换句话说,框架让你不必做繁琐的工作 。
Python Web 框架仅在后端用于服务器端技术,用在 URL 路由,HTTP 请求和响应,访问数据库以及 Web 安全 。虽然不一定非要使用 Web 框架,但强烈建议您使用它,因为它可以帮助你用更少的时间开发更复杂的应用程序 。
那么有哪些流行的 Python Web 框架呢?
1、Django
为了在更短的时间内创建复杂、高质量的 web 应用,很多 web 开发人员会首选 Django 框架 。Django 提供了一个开放源代码的高级框架,鼓励快速开发和简洁实用的设计,同时还提供了强大的社区支持和详细的文档 。Django 与时俱进,根据 web 开发的趋势相对地更新其功能 。Django 的特色如下:
?开放源代码?全栈框架(一条龙服务,完整的解决方案)?权限认证?URL 路由?模版引擎?DRY ( don’t repeat yourself) 设计模式?ORM 映射?数据库架构支持,支持 PostgreSQL, MySQL , SQLite, Oracle?遵循 MVC 设计架构
官方文档是最好的教程,可以从零开始构建第一个程序 。Django 非常灵活,您可以与大型公司的 MVP 合作,使用 Django 的一些最大的公司是Instagram,Dropbox,Pinterest 和 Spotify 。
2、Flask
Flask 被认为是一个微框架,是一个简约的 Web 框架 。它不那么“包含电池”,这意味着它缺少像 Django 这样的全栈框架提供的许多特性和功能,例如 Web 模板引擎,账户授权和身份验证 。其主要特色如下:
?一个轻量级、微框架?学习成本相对较低,入门快?支持 JinJa2 模版引擎?继Django模板语言之后的现代模板语言
Flask 极简且轻巧,这意味着您可以在编写代码时添加所需的扩展和库 。Flask背后的理念是,它仅提供构建应用程序所需的组件,因此开发人员具有很大的灵活性和控制力 。Flask 还是一种流行且功能强大的 Web 框架,已被 Netflix,Linkedin 和 Uber 等大公司使用 。
3、Bottle
它被普遍称为小型微框架 。它主要关注 Web API,并尝试将所有内容捆绑在一个文档中,除了 Python 标准库外,它没有依赖项 。Bottle 的特色如下:
?微框架?单一源文件最初是用于构建api的,这意味着所有内容都在一个源文件中 。?URL路由 。?模板引擎 。?实用程序 。?WSGI标准上的抽象 。
Bottle 非常适合用于原型设计,学习 Web 框架的组织以及构建简单的个人应用程序 。
4、CherryPy
CherryPy 是一个内嵌多链服务器的流行框架,包含服务器池、安装框架和模块框架 。其特色是:
?开源极简主义?一次运行多个 htpp 服务器?强大的配置和灵活的插件系统?内建对概要分析,覆盖和测试的支持
5、Pyramid
Pyramid 是 Pylon 项目的一部分;它是 Python 语言中最灵活的框架之一 。该框架允许开发人员选择任何东西如:DBMS,URL 结构,模板样式等等 。
6、Web2Py
Web2Py 允许调试器和代码编辑器通过部署工具来编辑代码和调试代码 。它使开发人员能够通过 Web 浏览器开发,修改,部署和管理Web应用程序 。
每年都可能会有新的框架、或已有框架推出新特性,作为开发者应该使用哪个?
到目前为止,Django 是最受欢迎的框架,其次是 Flask,如果你不知道怎么选就从这两者中选择一个吧 。
你可能还会问:我应该选择 Django 还是 Flask?答案是,这取决于 Web 开发人员的技能水平 。如果很有经验,请考虑使用更多的“准系统”来开发程序 。而如果您是初级开发人员,则最好使用提供更多支持(例如 Django)的框架 。
另外,问问自己,是希望使用基础代码库进行构建还是希望灵活地构建代码库的主干?如果是前者请使用 Django;如果是后者,请选择 Flask 。归根结底,他们俩都可以实现相同的功能,更重要的是开始编码,而不是为哪种框架更好而烦恼 。
4、有哪些用于 Web 开发的 Python 库?
如果需要 Web 爬虫为你的应用程序提取数据,Scrapy 非常适合 。它是用于抓取,数据挖掘,自动化测试等的广泛使用的库 。
Zappa 是一个功能强大的库,用于在AWS Lambda 上开发无服务器应用程序 。
Requests 库可可以轻松发送 HTTP 请求,用于与应用程序进行通信,获取 HTML 页面数据 。
另一个有用的库是 Dash,它可以帮助开发与数据可视化有关的 Web 应用程序 。它基于 Flask 构建,提供诸如图表,图形,仪表板等功能 。
5、Web 开发学习路线图
步骤 1: 基础知识储备
首先,前端的三个最基本的东西 HTML 5、CSS 3 和 JavaScript(ES6)是必须要学好的 。这其中有很多很多的技术,比如,CSS 3 引申出来的 Canvas(位图)、SVG(矢量图) 和 WebGL(3D 图),以及 CSS 的各种图形变换可以让你做出非常丰富的渲染效果和动画效果 。ES6 简直就是把 JavaScript 带到了一个新的台阶,JavaScript 语言的强大,大大释放了前端开发人员的生产力,让前端得以开发更为复杂的代码和程序
?JavaScript 的核心原理?浏览器的工作原理?HTTP 协议:HTTP/2,短连接、长连接、Stream连接、WebSocket
步骤 2: 前端框架及性能调优
目前而言,前端社区有三大框架 Angular.js、React.js 和 Vue.js 。React 和 Vue 更为强大,新手可以从 Vue 开始学习 。
前端性能优化方面可以看以下几本书籍:
Web Performance in Action ,是一本很不错的书,其中有 CSS、图片、字体、JavaScript 性能调优等 。
Designing for Performance ,讲了很多网页优化的技术和相关的工具,可以让你对整体网页性能优化有所了解 。
High Performance JavaScript 让你了解如何提升各方面的性能,包括代码的加载、运行、DOM 交互、页面生存周期等 。雅虎的前端工程师尼古拉斯·扎卡斯(Nicholas C. Zakas)和其他五位 JavaScript 专家介绍了页面代码加载的最佳方法和编程技巧,来帮助你编写更为高效和快速的代码 。
步骤 3:后端技能学习
首先是服务器相关的协议,诸如 WSGI,ASGI 协议的了解,其次前面提到的Python 相关的 Web 框架,还包括一些 API 框架,如:Django REST Framework、FastAPI、Flask REST frameworks 等等 。
此外还要学习数据库相关的知识,SQL 语言,数据库相关的查询优化也是不可或缺的 。
最后服务端部署的相关技术学习,包括 nginx、uwsgi、gunicorn、https 协议等 。
6、 用 Python 创建第一个 Web 应用程序
使用 Flask 创建第一个 HelloWorld 的 Web 应用程序,首先安装 Flask 。
pip install flask
创建一个 hello.py 文件,写入以下内容:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()
代码很简单,就不解释了,执行python hello.py,然后访问 http://locahost:5000/, 就可以看到一个显示 “Hello World!” 字样的网页 。
7、选择成一个 Python Web 开发人员
【web应用开发是什么,web开发是做什么】恭喜!您正在逐步成为一名熟练使用 Python 的 Web 开发人员 。现在应该对如何用 Python 进行 Web 开发有了一个很好的了解,这种了解,将在 Web 开发学习的道路上不迷茫 。

    推荐阅读