产品经理之产品评审会

文章大纲 一、 什么是产品评审会 二、 产品评审会类型 三、产品评审会注意点 四、相关模板下载 五、参考文章 一、 什么是产品评审会   需求评审通常是由产品经理主持,通过讲解产品需求文档,让相关人员了解具体需求,并提出疑问,进行沟通的过程。统一大家对产品需求的理解,为后续“如何做”打好基础。从整个产品的分析、设计和开发的流程来看,需求评审是一个非常重要的环节,它串起了前期的需求收集、需求分析和后期的需求实施和产品落地。 二、 产品评审会类型 1. 产品内部评审 时间点   立项后(基本确定业
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

Kruskal || BZOJ 1601: [Usaco2008 Oct]灌水 || Luogu P1550 [USACO08OCT]打井Watering Hole

题面:P1550 [USACO08OCT]打井Watering Hole 题解:无 代码: 1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<algorithm> 5 #define ll long long 6 using namespace std; 7 const int maxn=350; 8 int N,W[maxn],fa[maxn],num_edge=0,ed
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

Java核心之纷繁复杂的线程(一)

 说在前面,经过一段学习过后,自己发觉线程在Java中占有举足轻重的地位,总觉得如此复杂的线程知识点一定要好好理清才好消化,因而有了这篇文章。 但因鄙人资历尚浅,如有遗漏错误之处还请广大网友不吝赐教。 ——————————————————————————我是分割线———————————————————————————————————————   首先让我们来梳理一下知识点,理清好脉络才好做题! 一、线程基本概念   我们先来了解一下什么是线程。   要解释线程,就必须明白什么是进程,那什么是进
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

Redis DeskTop Manager 使用教程

redis desktop manager windows 是一款能够跨平台使用的开源性redis可视化工具。 redis desktop manager主要针对redis开发设计,拥有直观强大的可视化界面,具有完善全面的数据操作功能,可以针对目标key执行rename,delete,addrow,reload value操作,支持通过SSH Tunnel连接,用户可以通过它对Redis进行操作管理,简化原有的命令语言,充分发挥Redis的特性。 Redis Desktop Manager 简
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

React Native之数据存储技术

1. 如何将数据存储到本地? 数据存储是开发APP必不可少的一部分,比如页面缓存,从网络上获取数据的本地持久化等,那么在RN中如何进行数据存储呢? RN官方推荐我们在RN中使用AsyncStorage进行数据存储 2. 什么是AsyncStorage? 2.1 特点 简单的,异步的,持久化的key-value存储系统 AsyncStorage也是React Native官方推荐的数据存储方式,旨在代替LocalStorage 2.2 AsyncStorage在ios中存储的两种情况 如果存储的
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

gogs 安装

docker 安装gogs 准备工作 安装一个mysql数据库,创建一个数据库 gogs,字符集为utf-8 查找gogs 镜像 docker search gogs 拉取镜像到本地 docker pull gogs/gogs 创建并启动容器 sudo docker run -di -name=gogs -p 10022:22 -p 3000:3000 -v /var/gogsdata:/data gogs/gogs 注意 这是指定把 data 的目录挂在到系统 /var/gogsdata/
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

UML第一次作业

1,用例 用例用圆括号括起来,或者用关键字xxx来定义用例 or还可以用关键字as定义一个别名 @startuml (First usecase) (Another usecase) as (UC2) usecase UC3 usecase (Last\nusecase) as UC4 @enduml 2, 角色 角色用两个冒号包裹起来。 也可以用actor关键字来定义角色。 还可以用关键字as来定义一个别名,这个别名可以在以后定义关系的时候使用。 后面我们会看到角色的定义是可选的。 角色 @
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

计算机概论(1)

计算机:辅助人脑的好工具 所谓的计算机就是一种计算器,而计算器其实是:接受用户输入指令与数据,经由中央处理器的数学与逻辑单元运算处理后,以产生或储存成有用的信息。因此,只要有输入设备 (不管是键盘还是触摸屏) 及输出设备 (例如计算机屏幕或直接由打印机打印出来),让你可以输入数据使该机器产生信息的, 那就是一部计算器了。 计算机硬件的五大单元 输入单元 包括键盘、鼠标、卡片阅读机、扫描仪、手写板、触控屏幕等等一堆; CPU内部的控制单元、算术逻辑单元 整部主机的重点在于中央处理器 (Centr
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

Oracle数据库多表查询,子查询,集合运算

记得自己要敲o~~~ select * from bonus; select * from salgrade; select 1+1 from dual; --笛卡尔积:两张表的乘积 select * from emp,dept; select * from emp e1,dept d1 where e1.deptno =d1.deptno; /* 内联接: 隐式内联接: 不等值内联接:where e1.deptno <> d1.dept
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

tf.nn.embedding_lookup函数【转载】

转自:https://www.cnblogs.com/gaofighting/p/9625868.html //里边有两个很好理解的例子。 tf.nn.embedding_lookup(params, ids):params可以是张量也可以是数组等,id就是对应的索引,其他的参数不介绍。 就是上图中的这样一个作用。
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

Springboot集成RabbitMQ(二)

上一篇说到了简单的使用RabbitMQ,生产者和消费者只又一个,也就是一对一,下面介绍复杂 的情况。 一.多对多的使用 1.一对多 @Test public void oneToMany() throws Exception { for (int i=0;i<50;i++){ neoSender.send(i); } } 一个生产者发送消息,多个消费者。接收端注册了两个消费者,发送端加入参数,发送10条消息也就是
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

第二次作业!

1.作业要求 GIT地址 https://github.com/pg7go/SchoolAssignment_AchaoCalculator.git GIT用户名 PG7GO 学号后五位 62515 博客地址 https://www.cnblogs.com/pg7go/ 作业连接 https://edu.cnblogs.com/campus/xnsy/SoftwareEngineeringClass2/homework/2795 2.开始项目 第一步,fork作业项目 第二步,拖框框 第三步,
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

Codeforces Round #545 (Div. 2) F. Cooperative Game

题目链接: https://codeforces.com/contest/1138/problem/F 不知道该说神仙题还是傻屌题。第一次写这种题,看了半天才懂让干什么。 题意:有n个人,一开始都在初始位置,然后按照要求移动到终点。提交的程序每次输出一个移动指令,然后会收到在此次移动后哪些人在同一个点,哪些人不在同一个点。在3*(t+c)内移动到终点。 移动方案: 一开始选两个点a和b,一次移动a和b,一次只移动b,交替进行2*t次,圆上坐标以终点为0点,此时b移动到终点位置,a处于t%c处。
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

功能多变表结构的设计

以json字符串格式存储会比较方便点,这样一来以后业务变化不需要不断增加字段,导致难以维护。缺点是在对数据序列化和反序列化时会损失一部分性能,相对不断的修改表结构导致表字段长度不断变大的尴尬是可以接受的,另外如果对性能要求比较高,还可以通过其他方式解决这个问题。
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

golang变量的定义

使用var关键字 (1). var a, b, c (2). var s1, s2 = "hello", "world" (3). 可以放在函数内,或者直接放在包内部 (4). 使用var()几种定义变量 编译器可以自动的决定类型 (1). a, b, c, d := 1, 2, "adasda", true 代码片段 package main import "fmt" //golang沒有全局變量的說法,a和b是包內部的變量,指示作用域包內部 var ( a = 3 b = 4 c = "a
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

Codeforces Round #547 (Div. 3) 题解

Codeforces Round #547 (Div. 3) 题目链接:https://codeforces.com/contest/1141 A,B咕咕了... C. Polycarp Restores Permutation 题意: 有一个n的排列,但现在只给出相邻两位的差,问原排列是多少,如果不存在就输出-1。 题解: 通过相邻两位的差我们可以知道第一个元素和其它位置元素的大小关系,然后根据这个来搞一波就行了。 代码如下: #include <bits/stdc++.h> using
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

socket随笔

图中展示的交互流程如下: (1)服务器根据地址类型(ipv4/ipv6)、socket类型,协议创建socket (2)服务器为socket绑定IP地址和端口号 (3)服务器socket监听端口号请求,随时准备接收客户端发来的链接, 这时候服务器的socket并没有被打开 (4)客户端创建socket (5)客户端打开socket,根据服务器的IP地址和端口号视图链接服务器socket (6)服务器socket接收到客户端的socket请求,被动打开,开始接受客户端请求,知道客户端返回链接请求
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

[BZOJ1226]学校食堂

在我看来,这是一道难度很大的状压DP。其实,对于我来说,DP,往往状态的设计更为困难,优化倒是次要的。因此,经常性的,随便一道DP题,不知难度如何,都能轻松踩我一顿TAT。 这道题折磨我将近一天,最终还是在前辈博客的帮助下,理解了算法。我们来讨论一下解法。 首先,对于一个人来说,只有他后面的\(B_i\)个人有可能比他先吃完饭。具体谁先吃谁后吃,并不好递推。发现,\(B_i\)是很小的,我们可以把点 \(i\)后面可能会影响答案的7个点的状态压成二进制数;每次处理的时候,当前状态肯定有一段连续
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

mybatis源码解析1--前言

在开始分析mybatis源码之前,需要定一个目标,也就是我们不是为了读源码而去读,一定是带着问题去读,在读的时候去寻找到答案,然后再读码的同时整理总结,学习一些高级的编码方式和技巧。 首先我们知道mybatis是一个持久层框架,封装了JDBC的一切操作,使得程序在进行JDBC操作时不需要再关注底层是怎么实现的,而只需要按照mybatis定的规则去实现即可。所以在进行mybatis源码分析之前,先来抛出一些问题,然后试着去寻找答案。 1.使用mybatis过程中,需要配置Configuratio
分类: 其他 发布时间: 03-21 21:04 阅读次数: 0

get到scanf 返回值的知识

while (scanf("%d %d", &a, &b)==2) printf("%d\n",a+b); 原来还有这样的代码 通过scanf()的返回值来作为判断条件 摘自百度百科 比较一下下面两个,第一个是超出输出限制的(Output Limit Exceeded),然后试了下第一个输入比如一个字母a,那么会无限循环(额,好像是崩了) 第二个的话,只有当正确输入才会有结果,不然就跳出循环了 #include <stdio.h> int main(void) { int a,
分类: 其他 发布时间: 03-21 20:48 阅读次数: 0