04 2020 档案

摘要:一、存储数据的演变过程 随意的存到一个文件中、数据格式也是千差万别的完全取决于我们自己 软件开发目录规范 限制了存储数据的具体位置 假设上述是一个单机游戏 那么每个人的游戏记录只会在自己的计算机上面保存 注册登录的账号也只能在自己的计算机上有效 如何将单机变成连网 二、数据库的本质 三、MySQL 阅读全文
posted @ 2020-04-30 18:25 sunshine如你 阅读(156) 评论(0) 推荐(0)
摘要:一、 IO模型简介 我们这里研究的IO模型都是针对网络IO的 Stevens在文章中一共比较了五种IO Model: * blocking IO 阻塞IO * nonblocking IO 非阻塞IO * IO multiplexing IO多路复用 * signal driven IO 信号驱动I 阅读全文
posted @ 2020-04-28 22:50 sunshine如你 阅读(199) 评论(0) 推荐(0)
摘要:一、 死锁与递归锁(了解) 1.1 死锁: 当你知道锁的使用抢锁必须要释放锁,其实你在操作锁的时候也极其容易产生死锁现象(整个程序卡死 阻塞) from threading import Thread, Lock import time mutexA = Lock() mutexB = Lock() 阅读全文
posted @ 2020-04-27 21:10 sunshine如你 阅读(159) 评论(0) 推荐(0)
摘要:一、进程对象的其他方法 pid号:计算机通过给运行的进程分配pid号来管理计算机上的进程服务端 windows电脑查看方法 进入cmd输入tasklist查看 tasklist |findstr pid号 来查看具体的进程信息 mac电脑查看方法 进入中断输入ps aux ps aux|grep p 阅读全文
posted @ 2020-04-26 16:08 sunshine如你 阅读(167) 评论(0) 推荐(0)
摘要:一 、线程 1.1 什么是线程 """ 进程:资源单位 线程:执行单位 将操作系统比喻成一个大的工厂 那么进程就相当于工厂里面的车间 而线程就是车间里面的流水线 每一个进程肯定自带一个线程 再次总结: 进程:资源单位(起一个进程仅仅只是在内存空间中开辟一块独立的空间) 线程:执行单位(真正被cpu执 阅读全文
posted @ 2020-04-25 16:07 sunshine如你 阅读(137) 评论(0) 推荐(0)
摘要:一 、背景知识 顾名思义,进程即正在执行的一个过程。进程是对正在运行程序的一个抽象。 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老也是最重要的抽象概念之一。操作系统的其他所有内容都是围绕进程的概念展开的。所以想要真正了解进程,必须事先了解操作系统 操作系统发展史:参考博 阅读全文
posted @ 2020-04-23 08:41 sunshine如你 阅读(177) 评论(0) 推荐(0)
摘要:一、实现并发的里两种方式 # 第一种 from multiprocessing import Process import time class MyProcess(Process): def run(self): print(f'{name} is running') time.sleep(3) 阅读全文
posted @ 2020-04-23 08:40 sunshine如你 阅读(178) 评论(0) 推荐(0)
摘要:今日作业: 必做题: 编写cs架构的软件,实现客户端可以下载服务端的文件,如图片、视频、文本等 选做题: 1.实现上传功能 2.服务端支持并发 3.阿里云服务器应用 阅读全文
posted @ 2020-04-21 22:30 sunshine如你 阅读(148) 评论(0) 推荐(0)
摘要:一、什么是粘包(粘包问题的原因) 所谓粘包问题主要还是因为接收方不知道消息之间的界限,不知道一次性提取多少字节的数据所造成的。 只有TCP有粘包现象,UDP永远不会粘包,tcp的客户端与服务端进行通信的时候是以一种数据流的形式, 首先需要掌握一个socket收发消息的原理: 服务端把要发送的数据送到 阅读全文
posted @ 2020-04-21 22:26 sunshine如你 阅读(449) 评论(1) 推荐(0)
摘要:一、socket套接字 1、socket是什么 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口。在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对用户来说,一组简单的接口就是全部,让Socket去组织数据,以符合指定 阅读全文
posted @ 2020-04-21 21:25 sunshine如你 阅读(223) 评论(0) 推荐(0)
摘要:3.3 传输层 : tcp/udp==》基于端口 端口+IP 通信 端口范围:0-65535,其中0-1023为系统所有 ip地址+port=》标识全世界范围内独一无二的一个基于网络通信的应用程序 tcp三次握手和四次挥手 基于TCP协议通信之前:必须建立一个双向通信的链接 C >S C< S 三次 阅读全文
posted @ 2020-04-21 21:12 sunshine如你 阅读(151) 评论(0) 推荐(0)
摘要:1、CS架构与BS架构 Client< >Server 客户端软件send 服务端软件recv操作系统 操作系统计算机硬件< 物理介质 >计算机硬件 Browser< >Server 2、网络通信 网络存在的意义就是跨地域数据传输=》称之为通信网络=物理链接介质+互联网通信协议 3、OSI七层协议 阅读全文
posted @ 2020-04-16 21:07 sunshine如你 阅读(175) 评论(0) 推荐(0)
摘要:1、什么是异常 异常是程序发生错误的信号,程序一旦出错就会抛出异常,程序的运行随即终止 print('start....') [1,2,3][1000] print('stop...') # IndexError: list index out of range 1.1 异常处理的三个特征: 异常的 阅读全文
posted @ 2020-04-16 20:50 sunshine如你 阅读(183) 评论(0) 推荐(0)
摘要:一、今日作业1.在元类中控制把自定义类的数据属性都变成大写 cls_singleton.py模块 class Foo(object): pass instance = Foo() class Mymetaclass(type): # Chinese, Chinese.__name__, (), {c 阅读全文
posted @ 2020-04-15 17:17 sunshine如你 阅读(202) 评论(0) 推荐(0)
摘要:一、反射 1、什么是反射? 指的是在程序运行过程中可以"动态 (不见棺材不掉泪)"获取对象的信息 2、为什么要用反射? 在不清楚对方程序提供的obj值对其进行分析处理时,不知道从什么地方获取,也不清楚这个值得属性的情况下 就需要用到反射进行动态获取进行分析 3、如何实现反射? #举例: class 阅读全文
posted @ 2020-04-15 17:12 sunshine如你 阅读(169) 评论(0) 推荐(0)
摘要:一、今日作业 封装作业 作业二:在昨天作业的基础之上# 1、引入属性访问控制+property# 2、引入继承与派生的概念来减少代码冗余注意:要满足什么"是"什么的关系,不满足"是"的关系不要去继承作业三:选做作业,本周内完成,在作业二的基础上编写业务逻辑提供三个角色操作:1 学员视图:可以注册, 阅读全文
posted @ 2020-04-09 22:31 sunshine如你 阅读(194) 评论(0) 推荐(0)
摘要:一:装饰器 装饰器是在不修改被装饰对象源代码以及调用方式的前提下为被装饰对象添加 新功能的可调用对象 print(property) property是一个装饰器,是用来绑定给对象的方法伪造成一个数据属性 二:案例 """ 成人的BMI数值: 过轻:低于18.5 正常:18.5-23.9 过重:24 阅读全文
posted @ 2020-04-09 22:24 sunshine如你 阅读(184) 评论(0) 推荐(0)
摘要:一、今日作业: 1.练习上课作业讲解的面向对象代码,明天默写 2.基于上课作业讲解的面向对象代码,扩写Student类 3.加入序列化与反序列化操作 4.对象之间的关联采用id号 5.可以通过id找到对应的文件,然后从文件中反序列化出执行的学校、班级、课程、学生对象 import uuid impo 阅读全文
posted @ 2020-04-09 20:54 sunshine如你 阅读(197) 评论(0) 推荐(0)
摘要:一:封装介绍 封装:面向对象三大特征 最核心 的一个特性 封装 <=> 整合 二:将封装的属性进行隐藏操作 2.1 如何隐藏:在属性名前加前缀,就会实现一个对外隐藏属性效果 该隐藏需要注意的问题: I : 在类外部无法直接访问双下滑线开头的属性,但知道了类名和属性名就可以拼出名字:_类名属性,然后就 阅读全文
posted @ 2020-04-09 14:23 sunshine如你 阅读(180) 评论(0) 推荐(1)
摘要:一:面向过程 与 面向对象 1、面向过程: 核心是‘过程’二字 过程的终极奥义:将程序流程化 过程是‘流水线’,用来分步骤解决问题的 2、面向对象: 核心是‘对象’二字 对象的终极奥义:将程序‘整合’ 对象是‘容器’,用来盛放 数据 与 功能的 二:实现方法 程序 = 数据 + 功能 # 学生的数据 阅读全文
posted @ 2020-04-07 23:13 sunshine如你 阅读(263) 评论(0) 推荐(0)
摘要:一、今日作业:选课系统项目中涉及到诸多数据与功能,要求引入面向对象的思想对其进行高度整合1.学校数据与功能整合2.课程数据与功能进行整合3.学生数据与功能进行整合4.讲师数据与功能进行整合5.班级数据与功能进行整合ps:不会写的同学,可以先用普通的方式,先把数据与功能都给写好,再考虑基于面向对象的思 阅读全文
posted @ 2020-04-07 22:58 sunshine如你 阅读(249) 评论(0) 推荐(1)
摘要:conf >settings.py ''' 存放项目相关配置信息(相关路径的配置) ''' import os #获取文件跟目录路径 BASE_PATH=os.path.dirname(os.path.dirname(__file__)) #转到db目录下 DB_PATH=os.path.join( 阅读全文
posted @ 2020-04-07 20:54 sunshine如你 阅读(372) 评论(0) 推荐(0)
摘要:一、项目开发过程 1、需求分析 1.拿到项目,会先在客户那里一起讨论需求, 商量项目的功能是否能实现,周期与价格,得到一个需求文档。 2.最后在公司内部需要开一次会议,最终得到一个开发文档, 交给不同岗位的程序员进行开发。 - Python: 后端,爬虫 - 不同的岗位: - UI界面设计: - 设 阅读全文
posted @ 2020-04-02 21:01 sunshine如你 阅读(182) 评论(0) 推荐(0)
摘要:一、logging模块 1、日志级别 import logging CRITICAL = 50 # FATAL = CRITICAL ERROR = 40 WARNING = 30 # WARN = WARNING INFO = 20 DEBUG = 10 NOTSET = 0 # 不设置 2、基本 阅读全文
posted @ 2020-04-02 20:44 sunshine如你 阅读(182) 评论(0) 推荐(0)