Vue
Vue
official::Vue.js
text::Javascript
挑战 | Vue.js挑战 (cn-vuejs-challenges.netlify.app)
JS语法框架对比:JavaScript框架语法特性对比 (lainbo.com)
一、Vue前置知识1 命令
在使用命令前先要安装Node.js
text::Node.js安装
# 创建Vue工程npm init vue@latestProject name >> # 不要存在大写Add TypeScript? # Ts扩展,回车默认NoAdd JSX Support? # JSX支持,回车默认NoAdd Vue Router for Single Page Application development? # 路由,回车默认NoAdd Pinia for state management? # 状态管理,回车默认NoAdd Vitest for Unit testing? # 单元测试,回车默认NoAdd an End-to-End Testing Solution? #Add ESLint fo ...
Django
Django
text::python
official::Django
Django前后端分离:text::python
一、准备工作1 简单流程# 1.安装pip install django# 2.终端中新建项目cd pathdjango-admin startproject <project_name># 3.新建app(工程主目录下,任一)cd <project_name>python manage.py startapp <app_name>django-admin startapp <app_name># 4.注册app(在setting.py修改)INSTALLED_APPS = [ ... , <app_name>.apps.<app_name>Config] # 案例:app名字是MainINSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', ...
C++游戏
C++游戏
text::C++
一、新建窗口项目1 新建项目
official::Windows 和消息 - Win32
VSStudio——新建项目——Windows桌面应用程序——新建(此处项目名为PvZ)
// PvZ.cpp : 定义应用程序的入口点。//#include "framework.h"#include "PvZ.h"#define MAX_LOADSTRING 100// 全局变量:HINSTANCE hInst; // 当前实例WCHAR szTitle[MAX_LOADSTRING]; // 标题栏文本WCHAR szWindowClass[MAX_LOADSTRING]; // 主窗口类名// 此代码模块中包含的函数的前向声明:ATOM MyRegisterClass(HINSTANCE hInstance);BOOL InitInsta ...
设计模式
设计模式
下列语言的实现主要是C#语言
学习资料:author::设计模式概述
资料作者:author::ZShijun/DesignPattern
设计模式面试题(总结最全面的面试题!!!)-CSDN博客
一、设计模式基础1 面向对象
特性:封装、继承、多态。
目标:设计出高内聚、低耦合的应用程序,最大程度的实现程序的复用,以应对复杂的需求变化。
设计原则:单一职责原则、依赖倒置原则、开闭原则、接口隔离原则、里氏替换原则、合成复用原则、迪米特原则。
2 设计模式
模式就是对前人积累的经验的抽象和升华。简单地说,就是从不断重复出现的事件中发现和抽象出规律,并解决同一类问题的经验总结,在软件工程领域中的模式可分为三个层次。
层次:
惯用法:最底层,语言相关,如引用计数,智能指针,垃圾收集等。
设计模式:中层,语言无关,如工厂模式,策略模式等。
架构模式:最高层,语言无关,用于高层决策,实现架构复用,如C/S架构,B/S架构,微服务架构等。
GoF设计模式根据其目的可分为三种类型:
创建型:主要用于创建对象,主要有工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结 ...
Typescript
Typescript
一、Javascript
TypeScript是JavaScript的超集,它扩展了JavaScript的语法和功能,同时增加了类型系统和其他工具,使得代码更加可读性和可维护性。
text::JavaScript
二、补充
对Js文章的补充,其中有一些不一定是Ts的特性。
1 限定类型
Ts特性。
// 变量名后加冒号,再指定类型const url: string = "https://www.baidu.com";// 限定值const sex: "male" | "female";// 限定函数返回类型addData(data: number): void{}
2 限定修饰符
Ts特性。
public表示公共变量,可以被任何地方访问。
private表示私有变量,只能在类内部访问,不能被子类或实例访问。
protected表示受保护变量,只能在类内部和子类中访问,不能被实例访问。
class Person { public name: string; // ...
Cocos2D
Cocos 2D
text::TypeScript
official::Cocos Creator手册
official::CocosAPI
源码路径:\Cocos\Creator\3.8.0\resources\resources\3d\engine
一、引擎基础1 初始配置
初始配置:
设置中文:File——Preferences——General——Language
默认编译器:File——Preferences——Program Manager——Default Script Editor
默认浏览器:File——Preferences——Program Manager——Default Browser
竖屏游戏:
Project——Project Setting——Design Width/Height分别为720/1280
勾选Fit Width和Fit Height
Vscode:
文件后缀:文件——首选项——设置——文本编辑器——文件——Exclude——新加**/*.meta
2 界面
类似Untiy。
3 机制
渲染机制:需要一个标识来证明节 ...
星火编辑器
星火编辑器一、编辑器界面1 部分顶端栏
文件:文件信息。
调试:本地运行游戏。
发布:上传到服务器,可以在手机上体验。
我的资源:系统自带美术资源。
2 数据编辑器
创建对象预制件。
3 触发编辑器v2
在此处编辑触发器。服务端数据反馈,客户端主要UI交互。
事件:发生的事件。
所属场景:区域。
变量:新建云变量——设置云变量——提交云变量。
类:多个云变量。
4 预制功能库
商店中自带模块,可以拖动至游戏机制中,然后点击左上角的应用。
4.1 N选1
应用后,点击跳转到数据编辑器,可以编辑奖励。
先编辑BUFF——再编辑奖励(没有的话点击搜索栏左侧的齿轮添加)——最后绑定触发
4.2 局内聊天
应用后,可做如下操作。
触发器:可以在『动作』中搜索 ”输出“,找到输出聊天信息输出信息。
5 界面编辑器
UI。
6 常用按键
鼠标右键:移动视角
Ctrl + 鼠标右键:转动视角
二、游戏界面1 场景
创建新场景:左上角点击加号——设置属性。
属性面板:
边缘与天顶:选择边缘类型,可以让地面向下延伸。
地形:可以选择风格,可以选择地形类型,可以自动生成装饰物,可以 ...
DVWA
DVWA
一、环境配置1 下载
official::phpstudy
official::DVWA
DVWA的默认账号和密码:
用户名
密码
admin
password
gordonb
abc123
1337
charley
pablo
letmein
smithy
password
2 配置数据库
复制一个./config/config.inc.php.dist,改名为config.inc.php。
打开,修改其中的数据库账号密码为对应的账号密码。
二、Brute Force1 Low
流程:
在网站中输入任意数据,使用burp suite进行抓包。
将数据包发给Intruder。
Positions:攻击参数选定username,password,攻击方式选择集束炸弹。
Payloads:载入字典进行攻击。
点击结果中的长度,正确的页面的长度和错误的是不一样的。找到不同的长度的界面,记下用户名和密码后到界面中进行验证。
由源码得也可以直接username = admin' and 1=1#进行登录(密码可为空)
2 ...
pikachu
pikachu
一、环境配置1 下载
official::phpstudy
official::pikachu
2 数据库错误
问题:Warning: mysqli_connect()
解决:
在phpstudy中新增一个数据库,名字最好是pikachu。
配置./inc/config.inc.php文件中的数据库名、用户名、密码。
问题:Fatal error: Uncaught Error: Call to a member function bind_param()
解决:访问http://127.0.0.1/pikachu/installl.php,重装数据库。
二、暴力破解
用户信息在提示中。
1 表单
步骤:
在网站中输入任意数据,使用burp suite进行抓包。
将数据包发给Intruder。
Positions:攻击参数选定username,password,攻击方式选择集束炸弹。
Payloads:载入字典进行攻击。
点击结果中的长度,正确的页面的长度和错误的是不一样的。找到不同的长度的界面,记下用户名和密码后到界面中进行验证。
2 验证码(on ...
2023的日常
my::力扣每日题
2023-122023-12-31【每日总结】力扣【每日】Web安全。
DRF学习。1154. 一年中的第几天
C++思路:模拟。先加上月份,再加上日,在判断是否闰年,是否要加上年。或者直接用昨天的函数判断输入日期和输入日期对应年的1月1日比差值。
时间:O(1)
空间:O(C),C=12
回文串重新排列查询 - 力扣 (LeetCode) 竞赛
2023-12-30【每日总结】力扣【每日】休憩。1185. 一周中的第几天
// 计算当前到0001-01-01经过的时间int countdays(int y, int m, int d){ if (m < 3) y--, m += 12; return 365 * y + (y >> 2) - y / 100 + y / 400 + (153 * m - 457) / 5 + d - 306;}
时间:O(1)
空间:O(C),C=7
2023-12-29【每日总结】力扣【每日】Web安全。
PS使用。2706. 购买两块巧克力
C++思路:贪心。一次遍历,找 ...