自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(94)
  • 资源 (22)
  • 收藏
  • 关注

原创 工厂模式

设计模式第四章 工厂模式基础重点设计原则依赖倒置:是程序要依赖于抽象接口,不要依赖于具体实现。 简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。。范例披萨店简单工厂模式-产品接口package factoryDemo.demo1;/** * @author joy zhou * @date 2021/7/16 * 产品的抽象接口...

2021-07-16 00:55:00 50

原创 PureMVC 模块的划分

源码查看PureMVC 模块的划分Proxy:他是负责数据的模型Mediator:是视图模型Command:Command可以获取Proxy对象并与交互,发送Notification,执行Commoand进入场景并且初始化初始化pureMVC1.知识点:单利模式2.框架进行启动的初始化var facade:puremvc.IFacade = puremvc.Facade.g...

2021-07-03 17:25:00 52

原创 ccc-MVC设计之场景管理

重点需求:解决了场景切换的时候资源预加载的问题设计思想api的编写需求每一个场景进行切换的时候,我们都希望他可以有自己的加载包,自己的进入函数,根据自己的需求把每一个资源进行操作(删除)设计思想进入场景需要加载的配置包(资源包)加载完毕以后进入场景退出场景的删除对应的资源结合上一期的资源管理使用一个场景模版进行编写//加载资源包var res_mgr = req...

2021-05-05 07:58:00 59

原创 ccc-设计之资源管理

重点需求:h5 游戏资源都是需要先加载,才能使用资源的分类api的编写需求因为所有的h5游戏都需要从服务器上下载资源,而且只有加载完毕的资源我们才能正常的显示到,如果没有加载完毕的话,就不会显示,这样我们通过管理预加载对资源进行管理,和删除资源资源的分类图片资源预制体资源声音资源打包图片集合资源等api的设计核心设计事件的监听preload_res_pkg a...

2021-05-04 16:53:00 32

原创 cocoscreator框架设计目录建设

第一天学习什么是mvcm:俗称model,所称为数据模块都放在这里v:既view,视图层主要是ui部分c:控制层,主要是控制数据显示到显示层建立客户端的目录res:用户的ui的资源部分resources:存放预知的地方script:存放代码的地方scenes:存放场景的地方其中script文件下面在分成game游戏逻辑模块,mangers所有的管理模块。首先在m...

2020-12-05 19:52:00 27

原创 nodejs express模块的基础应用

express 基础get psot基础应用npm install express 安装express模块导入对应的模块使用app = express();创建需要的对象使用app.get/post(路由地址,函数(参数1客户端连接对象,参数2服务器对象))要获得发送的数据客户端连接对象.query获得使用参数2.send发送给客户端数据主要post和get 发送数据的时候的区别...

2020-11-30 13:00:00 23

原创 nodejs http服务器 express.js的基础使用

学习总结http ServerhttpServer是一种支持http协议的服务器。httpServer是一个监听端口上面,等待客户端的http连接客户端,创建一个tcp socket 连接到服务器(本质还是用的tcp进行的连接)客户端向服务器发送一个http协议的请求包服务器获得这个请求,然后返回一个http的响应然后服务器关闭tcp socket,客户端也关闭tcp socke...

2020-11-29 19:36:00 27

原创 nodejs websocket学习

学习总结为什么websocket可以是实现长连接因为websocket的底层是使用的socket进行了封装websocket的连接协议(1)客户端发送过来会有一个key代码如下GET /chat HTTP/1.1Host: server.example.comUpgrade: websocketConnection: UpgradeSec-WebSocket-Key...

2020-11-29 12:26:00 35

原创 nodejs安装第三方模块以及注意事项

学习总结/** * 1.全局与本地的区别:本地安装完以后只要对方安装nodejs的模块就可以运行,不然需要在package.json中找到所有的 * 第三方依赖进行安装 * 2.require()中如果是模块就直接搜索模块名就可以,搜索原理是先找当前文件夹下的node_modules如果没有 * 继续往上一级搜索,知道跟目录上查找有没有 * 3.reuqire文件的时候需要对应的路径...

2020-11-29 11:14:00 32

原创 nodejs 网络基础

服务器的代码如下,还有一些基础概念/** * 概念: * ip和端口主要是为了区分服务器的运用的操作 * ipv4的格式 [0-255] xxxx.xxxx.xxxx.xxxx * ipv6的格式 [0-0xffff] 8个xxxx * 可靠:tcp * 不可靠:udp * * tcp可靠的原因 * 1.面向连接 * 2.字节流,传输层的服务器 * 3.采用3次握手 ...

2020-11-28 20:47:00 23

原创 js继承

Person对象类的导出类Person.js代码如下//创建对象function Person(name,age){ //给属性表赋值 this.name = name; this.age = age;}//获得对象的名字Person.prototype.getName = function(){ return this.name;}//获得对象...

2020-11-27 20:36:00 29

原创 js "对象"本质

js new关键字学习function Person(name,age){ this.name = name; this.age = age;}console.log(Person.prototype);//打印结果是一个{}首先每个函数都有一个prototype属性它是函数的函数列表。主要作用是为后面new 对象以后可以增加新的函数用的。如果我们想给这个"对象"增加一...

2020-11-27 19:24:00 16

原创 this 的基础学习

函数里面的this,this是什么调用环境来决定的function fun_c(){ console.log(this);}fun_c();//这个时候打印的是打印出来的结果是Object [global] { global: [Circular], clearInterval: [Function: clearInterval], clearTimeout:...

2020-11-27 16:28:00 16

原创 导入模块require,Module.exports的应用

作用:使用其他的js文件把一些公用的函数做一个封装,让别人可以方便利用这个封装简化代码使用方式:两个js文件,main.js,model.js,其中model.js是封装的模块,核心就是module.exports这个导出什么没有module.exports这个导出的model.js文件function add(a,b) { return a+b;}let model =...

2020-11-27 15:39:00 29

原创 nodejs表的一些体会

表的基础应用1.表的初始化let table_1 = {};上面是定义一个空的表2.表是以key和value的形式存储数据,下面是带初始化数据的。let person = { name:"xiaosan", age:18}3.获取对应的数据console.log(person.name);//xiaosan这个感觉就结构体,对象都有点像,于是我使用了consol...

2020-11-27 13:35:00 23

原创 java网络基础

网络学习基础基本概念一组计算机连接组成交换数据共享资源网络三要素ip端口通信协议网络分层osi的网络模型tcp/ip参考模型应用层,表示层,会话层=》应用层传输层=〉传输层网络层=》网络层数据传输层,物理层=》网络接口层ip地址的使用InetAddress类基础使用package com.joy;import java.net.InetAddre...

2020-11-23 15:46:00 18

原创 Netty搭建Socket服务器(第一天学习)

为什么要学习netty    当你写了一段时间的客户端以后你会发现除非你想写opengl或者提别的复杂的图形算法,否则你不得不承认你只会写一些逻辑的显示,至于那些现在流行的,高并发,大数据,人工智能就会越来越远,于是我准备学习高并发的相关知识,顺便也可以总结一下以前学习的c的linux网络编程的一些基础知识。参考书(netty实战)第一天学习的代码    我这里的代码是jdk1.8    使用工具...

2018-04-12 16:28:20 2715 3

原创 openresty基础

OpenResty是什么OpenResty(也称为 ngx_openresty)是一个全功能的 Web 应用服务器。它打包了标准的 Nginx 核心,很多的常用的第三方模块,以及它们的大多数依赖项。通过揉和众多设计良好的 Nginx 模块,OpenResty 有效地把 Nginx 服务器转变为一个强大的 Web 应用服务器,基于它开发人员可以使用 Lua 编程语言对 Nginx 核心以

2018-02-06 13:17:26 617

原创 静态链表-新片

.h文件声明//// Created by sanzhixiong on 2017/10/31.//#ifndef DAY14_LINKLIST_H#define DAY14_LINKLIST_H//节点操作typedef struct Node{ int data; struct Node *pNext;}*pNode;//创建头pNode Crea

2017-11-01 00:33:40 221

原创 数据结构-静态链表的模型

网上对链表的基本操作已经有很多,我就不班门弄斧了,我就把我以前学习,理解当中最简单的模型放出来,希望对那些觉得有点难得同学。#include #include //静态链表typedef struct Node{ int data;//数据部分 struct Node *next;//指针部分}NODE,*PNode;int main(void){ //定义变量

2017-10-31 18:24:12 257

转载 网狐棋牌游戏平台服务器架构设计分析

基本设计概念和处理流程 调用模型模仿COM组件接口模式,利用面向对象思想多态性polymorphism,调用方保存着被调用方的基础接口指针(interface or sink钩子)(Pure Virtual Function),调用方直接调用接口指针内声明的纯虚方法,而此纯虚函数的具体逻辑由该接口的派生类实现。示意图: 基于事件驱动的数据处理

2017-10-08 18:41:31 496

原创 进程间通信-pipe函数

#include #include #include int main(void){ int fd[2];//数组 pid_t pid; int ret = pipe(fd);//使用pipe if(ret < 0) { perror("pipe error\n"); exit(0); } pid = fork(); if(pid<0) { perror("

2017-10-06 13:53:24 277

原创 unix 高级编程学习 --进程

进程进程创建函数#include fork()函数记住条件1.创建返回0,则是当前子进程。2.创建返回大于0,则是父进程。3.如果创建出错则是-1.简单代码例子#include#include#includeint main(void){ pid_t pid = 0; pid = fork(); if(pid<0) { prin

2017-10-05 16:53:16 170

转载 extern "C" __declspec(dllexport) __declspec(dllimport) 和 def

前面的extern "C"  __declspec(dllexport)  __declspec(dllimport)都是用于函数或者变量,甚至类的声明的(可以把extern "C"放在class的前面,但是编译器会忽略掉,最后产生的还是C++修饰符,而不是C修饰符)这样的用法有个好处就是下面的代码可以在混有类的函数和变量上使用下面的宏,虽然对类不起作用:#ifdef __cplusp

2017-09-20 20:44:31 505

转载 关于Socket创建失败,10093

问题:创建套接字时发现10093错误。问题描述:Failed to create UDP socket:10093!Close and restart app.解决方案:在InitInstance()中初始化网络WSADATA wsaData;int nRet;if((nRet = WSAStartup(MAKEWORD(2,2),&wsaData)) != 0){TRAC

2017-09-19 16:51:36 3880 1

原创 libevent在windows下面基础使用

1.环境官方下载地址:http://libevent.org/libevent-2.18-stable2.编译静态库1 解压把上面下载到libevent-2.0.22-stable.tar.gz解压,得到libevent-2.0.22-stable文件夹2 添加宏定义在libevent-2.0.22-stable文件夹下找到下面三个文件:event_io

2017-09-19 11:07:30 474

转载 网络IO模型

同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asynchronous IO和non-blocking IO是一个东西。这其实是因为不同的人的知识背景不同,并且在讨论这个问题的时候上下文(context)也不

2017-09-19 10:19:15 446

转载 非阻塞connect,错误码:EINPROGRESS

当我们以非阻塞的方式来进行连接的时候,返回的结果如果是 -1,这并不代表这次连接发生了错误,如果它的返回结果是 EINPROGRESS,那么就代表连接还在进行中。 后面可以通过poll或者select来判断socket是否可写,如果可以写,说明连接完成了。

2017-09-18 14:14:00 714

转载 创建线程后为什么马上调用CloseHandle()来关闭句柄

hThread = CreateThread( NULL, 0, ThreadFunc, NULL, 0, &dwThreadId);CloseHandle(hThread);如上面这样的代码,原因为:创建线程后返回了线程句柄,新创建的线程内核对象的使用计数是2,一个是线程本身,一个是创建线程的线程,创建线程的线程closehandle后,新的线程的内核对象使用计数为1,当这个新线

2017-09-15 19:53:41 352

转载 IOCP完成端口的一个简单封装类

/////////////////////////////////////////////////////////////////////////////////////// Iocp 头文件 #pragma once #include #pragma comment( lib, "ws2_32.lib" ) const int OP_READ = 0;const int O

2017-09-13 17:08:44 507

原创 编译错误 无法打开包括文件:“SDKDDKVer.h”: No such file or directory

在这里我要给那些前辈说下,你们转了帖子就转了,能不能把解决的过程也发下,给个一两句话,又没有实际的操作过程,让很多的新人都很误导,我就是其中之一。原因还是那个原因,由于vs2012和2010的目录问题。给出一张图把这个问题解决掉,以后在碰到这种问题的特别是新人和对vs操作不是特别熟悉的人一些帮助。上面放入$(WindowsSDK_IncludePath);下面放入$(WindowsSD

2017-09-08 15:47:19 2787 1

原创 学习网络编程-第八天

问题遇到僵尸进程百度解释由于子进程的结束和父进程的运行是一个异步过程,即父进程永远无法预测子进程 到底什么时候结束. 那么会不会因为父进程太忙来不及wait子进程,或者说不知道 子进程什么时候结束,而丢失子进程结束时的状态信息呢? 不会。因为UNⅨ提供了一种机制可以保证只要父进程想知道子进程结束时的状态信息, 就可以得到。这种机制就是: 在每个进程退出的时候,内核释放该进程所有的资源,

2017-09-03 23:01:15 278

原创 网络编程-第七天

网络学习分包第二种方式1.知识点:(1)字符串的截取(2)recv函数的使用知识点一:字符串的截取,相信大家在学习C语言基础的时候就已经把指针对字符串的一些基本函数做了一些操练,这里我就不多说了,有兴趣的同学可以看我前面的文章,所以学习好基础还是非常的重要,后面都只是运用。知识点二:大家根据read 和 recv的具体区别知道为什么我们在socket的编程的时候使用recv,主

2017-08-31 10:00:49 199

原创 网络编程学习第六天

产生的原因我的理解就是tcp流因为他是一个连续的,然后我们用360等工具我们每次看到发送过来的数据是有变化的,所以我们会产生没有接受完毕的数据包,或者接受了过多的情况,我们对这种情况叫做断包活着粘包的情况。解决方案有很多种,我说一种最简单的,增加头子节的长度。代码如下:解决方案1服务器:#include #include #include #include #include

2017-08-28 23:06:06 296

原创 socket 编程第五天,客户端的错误

错误的出现当服务器出现关闭的时候,通过命令我发现客户端链接并没有断,这样客户端发进行发送消息的动作,但是根本不知道服务器已经挂啦,所以会出现服务器还存在的假象,所以我就查看了一下客户端的代码发现是没有用相同的信号进行父子进程还有收到数据的判断作为依据进行正常关闭,和服务器一样,只需要用一些简单的检测就好。解决方案代码#include#include#include#include

2017-08-27 22:57:01 276

原创 网络学习第四天-点对点的网络通信加强

技术1.socket的基本技术2.进程的基本技术3.信号的基本应用话不多说,直接上我的思维图。架构图代码1.服务器 ,所用技术,socket,进程,信号#include#include#include#include#include#include#include#include#include#include#include#incl

2017-08-24 23:39:51 221

原创 网路学习第三天

问题经过头两天的学习,我们已经把客户端和服务器的基本框架已经构建起来,说起来网络编程的最基本的框架已经给各位搭建起来,然后我发现当我启动更多的客户端的时候,不能正常的操作(ps不能正常的得到反映)然后我用命令查看netstat -na | grep 端口号我发现客户端和服务器都是链接状态,我就郁闷了,于是我想起来前段时间做阻塞服务器的时候遇到的一个问题,那就是我一旦监听了websocket,然

2017-08-23 22:26:51 168

转载 GBK到UTF8编码转换C++实现

由于今天发送websocket的时候浏览器使用报错,在网上查了半天都说什么字节数的关系,后来我发现其实是我的一段字符串里面没有转成utf8导致浏览器的json没有发办法解析,于是在网上搜了一个C++ gbk转ut8的尝试一下,马上ok,当场郁闷吊了。下面是转载的内容好的东西只需要拿来主义,过后研究#include #include #include #include

2017-08-22 14:39:20 570

原创 socket 服务器关闭以后之地址复用

1.问题的出现这个问题是当我在关掉服务器的时候,没有关掉客户端的时候出现了,于是我去查找原因后来发现说可以用地址复用解决,在我看来地址复用就是修改tcp服务器的状态而设定,这只是我的猜测。2.解决方案setsockopt这个函数,它有四个参数,详细的请查看api说明3.代码实现#include#include#include#include#include#inc

2017-08-20 22:39:04 558

原创 socket编程api学习二客户端的编程

代码#include #include #include #include #include #include #include #include #include #include #include #include #include #include int main(){ int sockfd = 0; sockfd = socket

2017-08-20 18:48:45 306

网狐相关资料

v6.5数据库文档,v6.5数据字典文档,服务器管理器 使用方法,数据库备份方案建议文档,网狐棋牌机器人添加说明等

2017-10-17

HPSocket同步

HPSocket基础上进行了同步的修改代码~

2017-10-17

libevent 源码深度解剖

连google这个公司都会用的开源库~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

2017-10-10

算法导论.pdf

经典的算法,让程序员上升一个档次,希望大家好好的研究。~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

2017-09-07

Boost ASIO C++ 网络编程 中文版

Boost ASIO是开发网络程序的利器,希望大家能得到帮助。Boost ASIO是开发网络程序的利器,希望大家能得到帮助。

2017-09-01

网狐房卡算法修改课程4

对服务器的源码的详细讲解

2017-08-19

[Flash.ActionScript.3.0动画教程]

[Flash.ActionScript.3.0动画教程]

2017-08-12

TCP/IP协议

学习网络的朋友都应该要知道tcp/ip的结构层

2017-08-05

unix.v6.v7.src.rar

unixv6

2017-04-20

Linux内核修炼之道

linux内核的学习

2017-01-31

Linux内核设计与实现_第三版_清晰中文版

Linux内核设计与实现

2017-01-04

嵌入式Linux下CAN总线驱动程序设计

嵌入式Linux下CAN总线驱动程序设计

2017-01-04

linux 汇编

主要讲linux内核汇编的使用

2017-01-04

Linux进程控制

Linux进程控制基本操作

2016-12-07

Linux系统中的高级UNIX编程 PDF中文版

Linux系统中的高级UNIX编程

2016-12-06

Linux常用命令全集

Linux常用命令全集

2016-12-05

GNU make v3.80完整版中文指南

用gnu make还有gcc,g++在linux下面进行编程

2016-12-05

c与指针 书籍

C语言的经典书籍之一,主要从编辑器的角度告诉大家c语言的一些容易出错的问题

2016-12-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除