python后端开发需要学什么

python后端开发需要学什么,第1张

可以参考下面的路径去学习,祝你学有所成,公司最近在人工智能和自然语言处理的项目后端项目,我也是网上找了很多知识,最后给自己列了一个学习的目录,按照这个在复习并在总结,希望能帮到你:

计算机基本认知,环境搭建    python环境搭建

计算机基本认识,进制转换

python注释使用

python变量使用

python数据类型_Number

python数据类型    str字符串类型

容器类型数据list,tuple,str

容器类型数据set,dict

变量缓存机制

自动类型转换

Number强制类型转换  

python运算符的使用    容器类型数据强制类型转换

字典强转等长二级容器

运算符_算数_比较

运算符_赋值_成员

运算符_身份_逻辑

运算符_位运算_优先级  

python流程控制    代码块

流程控制if

多项巢状分支

循环结构while

循环判断经典题

字符串的相关 *** 作  

python循环结构    

关键字continue_break_pass

for循环的遍历_range  

字符串,列表内置方法    

字符串函数

format字符串格式化

format特殊符号的使用

列表的 *** 作

列表函数  

字典,集合内置方法+文件 *** 作    

字典的相关函数

集合 *** 作_函数

文件 *** 作

文件加号模式  

函数,函数参数    文件相关函数 

函数

形参实参

默认形参_关键字形参

收集参数

命名关键字参数

全局/局部变量,闭包    return返回值

函数名的使用

局部变量_全局变量

函数的嵌套LEGB

关键字nonlocal

闭包函数  

递归,匿名函数    

locals和globals

闭包特点意义

递归含义

斐波那契_尾递归

匿名函数lambda  

迭代器,高阶函数    迭代器

高阶函数_map

高阶函数_reduce

高阶函数_sorted

高阶函数_filter  

推导式    列表推导式

推导式题

集合_字典推导式

生成器表达式

生成器函数  

内置方法,linux基本命令    内置函数

可滑动序列

面试题演练

linux安装

linux基本命令  

python模块    序列化模块

数学模块

随机模块

time模块  

python模块    os模块

os_shutil

ospath模块

计算文件夹大小

zipfile

tarfile  

导入模块包,oop面向对象认知    

import_from绝对导入

import_from相对导入(单入口)

oop面向对象

类的封装性

oop之封装,继承    类的相关 *** 作

对象和类的删除 *** 作

单继承

多继承

菱形继承

oop之多态,魔术方法    多态

魔术方法__new__

单态模式

析构方法__del__  

oop之魔术方法,异常处理    魔术方法__call__

魔术方法__str__repr__

魔术方法__bool_add_len__

了解异常

异常处理语法

主动抛出异常

装饰器  

装饰器

静态绑定方法

property 

正则表达式    单个字符匹配

多个字符匹配

匹配分组

命名分组

正则函数

正则计算器小程序

认识网络    bs_cs流程

传输数据流程

交换机和局域网的网络通讯

arp协议  

认识tcp/udp协议  

tcp基本语法

tcp循环发消息

udp基本语法

udp循环发消息

黏包  

基于tcp协议下的应用    socketserver并发

文件校验

服务器合法性校验

tcp登录

并发编程之进程    进程

join

守护进程

lock锁

Semaphore

生产者消费者模型    Event事件

进程队列Queue

生产者和消费者模型

JoinableQueue

Managerpy

并发编程之线程

线程

用类定义线程

守护线程

lock保证线程数据安全

信号量_Semaphore

死锁,互斥锁,递归锁

线程池,进程池,协成的使用

事件Event

线程队列

进程池和线程池

回调函数

协程

协程的爬虫案例

mysql安装(linux+windows+xshell+navicat)  

掌握数据库mysql基本 *** 作

mysql登录,服务启动

创建账户,用户授权

数据库,数据表,数据的增删改查

认识常用数据类型  

数据库的存储引擎和约束  

字段约束

约束的删减

存储引擎区别用法

数据表之间的关系  

查询数据表  

单表查询

多表联查

子查询

带EXISTS关键字的子查询

python *** 作mysql  

python连接mysql的事务处理

sql注入

python连接mysql增删改查

mysql数据恢复  

HTML/CSS    html文档介绍,html标签,body标签,head标签介绍,head标签中的meta标签和link标签和title标签介绍,body中的标签分类,基础标签,img、a、列表、表格、input、label、select等标签,作业讲解,form标签介绍和示例讲解,css介绍,引入,css选择器,背景设置,高度宽度,字体效果,边框、盒子模型、display属性、float属性等  

CSS    伪类选择器,文字装饰、a标签补充、定位、权重、小米商城导航栏讲解,原型头像示例讲解  

JS基础/BOM和DOM *** 作    小米商城作业,js介绍和js引入,js数据类型、流程控制、函数等 *** 作,js中的JSON,BOM对象的d框、location对象、定时器、直接查找选择器、间接查找选择器、值 *** 作、类值 *** 作、样式 *** 作、button按钮补充、事件和绑定事件的两种方式,常用事件练习  

jQuery/Bootstrap    作业讲解,jquery介绍,引入、选择器、筛选器、值 *** 作、文档 *** 作、删除和清空标签、逻辑运算符、克隆、事件冒泡和事件委托、绑定事件的方式,作业讲解和模态对话框示例,input事件和页面载入事件补充、bootstrap介绍和引入、全局css样式、组件和常用插件

自定义web框架    作业讲解、web框架介绍、自定义web框架实现、动态页面、返回不同的html页面、函数版、多线程版、返回静态文件版,wsgiref版等web框架通过socket来实现,还有jinja2的简单使用  

django下载安装和URL路由系统    django介绍、MTV和MVC框架介绍、常用指令、目录结构、pycharm创建django项目、request的常用属性介绍、登录示例、url路由系统介绍、有名分组和无名分组,  

视图/模板    request对象的常用方法和属性、响应方法介绍和使用,CBV和FBV、CBV和FBV加装饰器,CBV源码讲解,模板渲染系统介绍,语法、简单示例、内置过滤器、for循环标签、if标签、with标签、自定义过滤器和标签、模板继承等  

Dajngo的ORM(1)    orm介绍,数据库同步指令使用和流程分析、配置连接mysql模型类中的属性介绍和常用参数说明,创建表和数据、增加的两种方法、删除、更新的两种方法、查询的13个api接口  

Dajngo的ORM(2)    单表图书管理系统展示和添加作业讲解、choices属性、auto_now_add和auto_now参数讲解、url别名和反向解析,基于双下划线的模糊查询,多表结构介绍,图书管理系统编辑和删除作业讲解、多表关系模型类创建和字段说明和参数介绍、多表数据的添加 *** 作,多表的删除和修改、基于对象的跨表查询、双下划线跨表查询、查看原生sql语句的方法、聚合查询、分组查询、F查询、Q查询等  

Ajax与Django/ 中间件    ajax的介绍和简单示例,ajax登录示例、列表数据展示示例,ajax *** 作cookie的补充、中间件介绍、自定义中间件的方法、5个中间件方法的介绍和使用、基于中间件的session登录认证 

cookie、session以及用户认证组件    cookie介绍,cookie的流程解析,django *** 作cookie和其他参数介绍、session的说明、django的session *** 作等,多表图书管理系统作业讲解  

vue初识、es6基本语法、指令系统    let、const、v-if、v-for、v-html、v-text、v-model、v-show、生命周期钩子函数、  

组件化开发、组件传值、axios简单使用    组件化开发、组件传值、axios简单使用、vue-router使用、vue-cli安装  

项目初始化/首页    项目介绍、创建、初始化、element-ui的使用,单文件组件的使用和axios在单文件中的使用和配置、vue-cli的介绍和使用、路飞项目顶部导航栏页面效果搭建,轮播图组件的使用和调整、购物车页面搭建和课程详情页面搭建,vue-video-player视频播放插件  

drf组件    序列化器、drf简单示例、restful规范、反序列化的校验机制  

drf组件    apiview、request和response对象、modelserializer、序列化器保存数据、read_only和write_only的参数  

drf组件    viewset、drf路由功能、viewset视图基类的使用、视图子类、通用视图类genericapiview/排序、django-filter过滤器、频率组件、分页组件、接口文档、异常处理、xadmin的安装和使用、认证组件和权限组件  

git、消息队列    git企业中的使用模式,rabbimq消息队列的应用  

rpc通信,grpc组件    rpc的概念以及通信模式,最火的grpc组件使用 

轻量级Flask框架    Werkzeug服务介绍、Flask框架介绍  

路由系统、自定义路由扩展  

Cookie、Session、>

蓝图、消息闪现、中间件  

Flask常用扩展、WTForms、使用SQLAchemy ORM  

Admin、Restful、websocket原理、magic string, payload len,masking key   

请求和上下文、多app应用、离线脚本、自定义扩展 

服务端项目搭建,项目配置(session、数据库、日志相关),项目初始化  

jsonrpc模块基本配置和使用,客户端展示首页及登录注册叶绵,APICloud页面控制管理

python进阶    并发、同步、异步、锁,线进程概念以及协程实现原理  

mysql进阶课    基础知识梳理、索引、执行计划  

mysql进阶课    存储引擎、日志管理、备份恢复、主从赋值、优化  

redis,mongodb    事务和发布订阅、RDB和AOF持久化、缓存击穿、缓存雪崩等原理介绍、 用户管理和复制集(RS)总结、sharding cluster 分片集群的搭建、分片使用和相关策略等  

算法与设计模式    链表、二叉树、常见算法、二分查找、插入排序、希尔排序、快排、堆排序、哈希查找  

算法与设计模式    设计模式,单例模式、工厂模式、策略模式、观察者模式  

算法与设计模式    leetcode经典算法解析  

知识体系差不多就这么多了,再就是项目部分,具体项目要看需求了,学会了钓鱼的方法,不怕钓不到鱼哦,无论在哪个行业做什么样的项目都没问题呢!

我自己也搜集了一些经典的资料,要是想要加我百度网盘:艾美电商,我发给你!

1 首先创建一个目录并在目录下创建一个Dockerfile,文件内容如下

[plain] view plain copy print

FROM centos:centos6

MAINTAINER Fanbin Kong "kongxx@hotmailcom"

RUN yum install -y mysql-server mysql

RUN /etc/initd/mysqld start &&\

mysql -e "grant all privileges on to 'root'@'%' identified by 'letmein';"&&\

mysql -e "grant all privileges on to 'root'@'localhost' identified by 'letmein';"&&\

mysql -u root -pletmein -e "show databases;"

EXPOSE 3306

CMD ["/usr/bin/mysqld_safe"]

容器化是开发和部署应用的热门趋势,因为它们是加速开发的有效方式。容器的使用量在过去几年呈指数增长。

但是,跨基础架构管理容器可能会变得十分复杂,所以容器管理平台对于任何企业来说都是必不可少的工具。Kubernetes和OpenShift是市场上最受欢迎的两个容器管理平台。而OpenShift是基于Kubernetes的,那么二者之间到底有哪些区别呢?

OpenShift是由红帽(Red Hat)开发的容器化软件解决方案。他们的主要产品是OpenShift容器平台,这是基于Kubernetes管理的平台即服务(PaaS)。它是用Go和AngularJS编写的,并且有Apache许可证。

OpenShift Origin是红帽基于开源的云平台,允许开发人员构建,测试和部署云应用。该系统在Kubernetes核心之上添加工具,以实现更快的应用开发,轻松部署和扩展。

该平台除了可扩展外,还支持Go,Nodejs,Ruby,Python,PHP,Perl和Java,允许用户添加对其他语言的支持。关于可扩展性,该平台可以自动或手动扩展容器化应用。

OpenShift提供的一些功能包括:

在整个应用程序生命周期中的安全性 - 安全性检查内置于容器堆栈中。

平台上包含的内置监控功能是Prometheus,一种数据库和应用监控软件。你可以在Grafana仪表板上实时显示应用。

集中式策略管理 - 跨集群的单个控制台为用户提供了实施策略的集中位置。

兼容性-OpenShift是Certified Kubernetes计划的一部分,因此允许与Kubernetes容器工作负载兼容。

使用OpenShift的好处包括:

快速的应用开发 - 平台流传输和自动化容器管理过程,从而增强了DevOps过程。应用开发的这种加速意味着你可以更快地进入市场,从而提高竞争力。

没有供应商锁定提供与供应商无关的开源平台,这意味着用户可以根据需要将其容器流程迁移到新的 *** 作系统,而无需重新进行容器化编排。

自助服务配置 - OpenShift允许用户集成他们最常使用的工具,例如,视频 游戏 开发人员在开发与多个 *** 作系统兼容的 游戏 时可以使用此功能。

Kubernetes是一个开源容器即服务(CaaS)编排系统,用于自动化容器化应用的部署,扩展和管理,从而改进应用程序开发过程。Kubernetes的一些功能包括:

Kubernetes的好处包括:

由于OpenShift基于Kubernetes,因此它们有很多共同之处。但是,两个平台之间存在一些差异。让我们对OpenShift和Kubernetes功能进行比较:

基础

虽然两者都基于Linux,但每个产品都在不同的环境中运行:

Kubernetes在其可运行的 *** 作系统方面更加灵活。但是,包管理器应该是RPM,这意味着选择合适的Linux发行版。因此最好在Fedora,Ubuntu或Debian上运行它。Kubernetes可以部署在任何主要的IaaS平台上,例如AWS,Azure,GCP、阿里云、IBM云平台等。

OpenShift可以安装在Red Hat Enterprise Linux(RHEL)和Red Hat Enterprise Linux Atomic Host(RHELAH)以及Fedora和CentOS上。OpenShift Dedicated允许在云中创建自己的集群,特别是基于AWS。

Rollout

这两种产品在Rollout方面都很复杂:

Kubernetes运行平台的多样性意味着有无数的解决方案可以在本地创建Kubernetes集群。大多数都基于Rancher Kubernetes Everywhere(RKE)或kops等安装程序。

OpenShift可避免在首次Rollout后需要额外的组件。因此,它配备了基于Ansible的专有安装程序,可以使用最少的配置参数安装OpenShift。

Web UI

与通过基于Web的用户界面管理集群的能力相比,OpenShift和Kubernetes之间存在很大差异。

Kubernetes的仪表板必须单独安装,需要通过kube代理访问,以将本地机器的端口转发到集群的管理服务器。此外,它没有登录页面,但你需要手动创建承载令牌以提供身份验证和授权。所有这些复杂性导致Web UI对于真正的日常管理工作而言不是很有价值。

OpenShift的Web控制台有一个登录页面,可以轻松访问,甚至可以让你通过表单创建和更改大多数资源。虽然你无法通过Web管理集群,但可以可视化服务器,项目和集群角色。

集成镜像注册表

关于集成图像注册表的两个系统之间的关键区别:

使用Kubernetes,可以设置自己的Docker注册表,但没有集成镜像注册表的概念。

OpenShift附带了一个集成的镜像注册表,可以与Docker Hub或Red Hat一起使用。它甚至还有一个注册表控制台,可以在其中搜索与集群中项目相关的镜像和镜像流的信息。

Jenkins

虽然Kubernetes中不存在该概念,但可以部署自己的自定义Jenkins镜像。生成的组件是上传到镜像存储库的docker镜像。

OpenShift使用Pipeline构建,这是一种源到镜像构建的形式,它引用包含Jenkins的镜像,而Jenkins又监控ImageStreamsTags。当需要更新时,它可以启动Jenkins构建。

网络

Kubernetes没有本机网络解决方案,但提供可供第三方网络插件使用的接口。

OpenShift有一个开箱即用的本机网络解决方案OpenvSwitch,它提供三种不同的插件。

两者都是开源软件平台,来满足容器编排和应用开发。它们使得以简单易管理的方式部署和管理容器化应用成为可能。OpenShift Web控制台使其非常有用,允许直接通过它执行80%以上的任务。

虽然两者都有类似的核心(毕竟OpenShift内置了Kubernetes),OpenShift通过其开箱即用的功能使安装更容易。安装Kubernetes通常需要交钥匙解决方案或托管Kubernetes集群。

您选择的系统将取决于您的系统要求以及开发过程的关键灵活性或良好的Web界面。

数据库系统由4个部分组成:

1、数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合。数据库中的数据按一定的数学模型组织、描述和存储,具有较小的冗余,较高的数据独立性和易扩展性,并可为各种用户共享。

2、硬件:构成计算机系统的各种物理设备,包括存储所需的外部设备。硬件的配置应满足整个数据库系统的需要。

3、软件:包括 *** 作系统、数据库管理系统及应用程序。其主要功能包括:数据定义功能、数据 *** 纵功能、数据库的运行管理和数据库的建立与维护。

4、人员:主要有4类。第一类为系统分析员和数据库设计人员;第二类为应用程序员,负责编写使用数据库的应用程序。;第三类为最终用户,他们利用系统的接口或查询语言访问数据库。第四类用户是数据库管理员(data base administrator,DBA),负责数据库的总体信息控制。

扩展资料

数据库系统特点:

1、能够保证数据的独立性。数据和程序相互独立有利于加快软件开发速度,节省开发费用。

2、冗余数据少,数据共享程度高。

3、系统的用户接口简单,用户容易掌握,使用方便。

4、能够确保系统运行可靠,出现故障时能迅速排除;能够保护数据不受非受权者访问或破坏;能够防止错误数据的产生,一旦产生也能及时发现。

5、有重新组织数据的能力,能改变数据的存储结构或数据存储位置,以适应用户 *** 作特性的变化,改善由于频繁插入、删除 *** 作造成的数据组织零乱和时空性能变坏的状况。

6、具有可修改性和可扩充性。

7、能够充分描述数据间的内在联系。

参考资料来源:百度百科-dbs

参考资料来源:百度百科-数据库系统

以上就是关于python后端开发需要学什么全部的内容,包括:python后端开发需要学什么、docker mysql 容器 数据库文件怎么娴宿主机器上、两大容器管理平台,Kubernetes与OpenShift有什么区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9418816.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存