已写下 83 篇博客文章,共计 99,716 字,完整阅读预计需要 8.3 小时,已有 12,807 次阅读。

按照【分类】筛选文章

按照【标签】筛选文章

Cover

金铲铲之战九五新手教程

适用于当前 s9 赛季。 

Cover

【教女朋友 从 0 到 1 学编程系列】三、2048 前端游戏实战

 

Cover

【教女朋友 从 0 到 1 学编程系列】二、快速掌握前端基础

首先明确一点学习的最根本原则: - 预习:是不可能预习的 - 复习:是不可能复习的 那么如何能够教女朋友快速从零基础上手写代码,将成为本课时的最关键内容。 前端的基础主要包括三个部分,HTML、CSS、JS,其中 HTML 和 CSS 是前端的基础,JS 是前端的核心。本课时主要讲解 HTML 和 CSS,JS 将在下一阶段重点讲解。 简单来说,HTML 是网页的骨架,CSS 是网页的皮肤,JS 是网页的灵魂。 ## HTML HTML 指的是超文本标记语言: **H**yper**T**ext **M**arkup **L**anguage ![](https://www.runoob.com/wp-content/uploads/2013/06/02A7DD95-22B4-4FB9-B994-DDB5393F7F03.jpg) > 图片来自 [Runoob.com](https://www.runoob.com/html/html-intro.html) ### 通用声明 HTML 5: ```html <!doctype html> ``` 目前最常见的也是最简单的声明方式,其他还有 html 4.01、 xhtml 1.0 等,具体可以参考: [https://www.runoob.com/tags/tag-doctype.html](https://www.runoob.com/tags/tag-doctype.html) (`可以忽略不看`) 目前在大部分浏览器中,直接输出中文会出现中文乱码的情况,这时候我们就需要在头部将字符声明为 `UTF-8` 或 `GBK`。 整体页面结构: - `DOCTYPE` 声明 - `<html>` 页面元素 - `<head>` 头部信息元素(不会显示,内部元素顺序可以随意调整) - `<title>` 页面标题 - `<meta>` 元数据 - 其他头部信息 - `<body>` 网页主体 - 各元素内容 示例代码: ```html <!doctype html> <html lang="zh-CN"> <head> <meta charset="utf-8" /> <title>页面标题</title> </head> <body> <h1>我的第一个标题</h1> <p>我的第一个段落。</p> <!-- 这是一段注释,不会显示到页面中 --> </body> </html> ``` > [在线体验](https://www.runoob.com/try/try.php?filename=tryhtml_headers) ### head 元素 | 标签 | 描述 | | : 

Cover

【教女朋友 从 0 到 1 学编程系列】一、计算机基础

教女朋友 从 0 到 1 学编程系列大纲,主要技术栈围绕 JS/TS 前后端,欢迎完善补充,提出宝贵意见。 

Cover

Nuxtpress - Node.js 动态网站静态化之路

相信 Hexo、Ghost、WordPress 等常见的开源内容框架对于很多人来说都不陌生。 

Cover

创意分享:Redis 客户端

我在 iPad 上买过两个: - Redis Touch(6 元) - RedisFly (24 元) 但这两个都不支持 SSH 登录,让我很尴尬。 ## 第一步,分析:实现设想 没考虑原生方式,原因很简单,不会。 最初的设想是直接封装一个 Hybrid App,用 js 实现。 但搜索了一圈,好像没有什么方案可以直接在前端去连接 ssh 服务器的。 那么就需要服务器作为中转,将客户端的请求采用 ssh 连接进行透传,然后保持连接,并抛出 RESTful 或 Websocket 接口。 ## 第二步,应用架构 最终用户使用的网络传输过程大概是这样子的: ![redis-app.svg](./_attachment/redis-app.svg) ```sequence 客户端->应用服务器: 普通接口调用 应用服务器->用户服务器: ssh 连接 redis Note right of 应用服务器: 抛出接口 用户服务器-->应用服务器: 返回结果 应用服务器-->客户端: 返回结果 ``` ## 第三步,筹备 TODO List: - [ ] 设计 UI 原型 - [ ] 服务器端 ssh 连接 - [ ] 服务器端接口设计 - [ ] 开发客户端上层应用 - [ ] 进行测试发布 - [ ] 服务器优化,以允许更高并发客户端连接  

Cover

创意分享:Github/Coding 聚合客户端

## 为什么需要一个聚合的客户端 举个栗子,之前微博类产品风靡的时候,有很多类似的产品,如:腾讯微博、新浪微博、饭否、Twitter……那么,就可能会发生这样的一个现象,手机上装了一大堆类似的 APP,然后用个文件夹放到一起。 实际上大多数也确实这么做了。切换不同的 APP,去刷内容不同但本质相近的微博消息。 同样,目前我在我的手机上各自装了 Coding.net 和 GitHub(GitPoint)客户端。 而最近,我在入手 iPad Pro 之后,发现 Cdoing 并没有对应的 iPad 客户端,从而萌生了这样的一个点子。 ## 第一步,分析 从技术实现的角度来讲,并不复杂。 因为它们都是代码管理平台,功能相近,有着许多共同之处,随便列举一些: - 都是通过 OAuth 进行鉴权 - 大多数都功能重叠,如:用户,项目,组织(团队),关注,ISSUE…… ## 第二步,设计接口逻辑架构 ![api.svg](./_attachment/api.svg) ```mermaid graph TD APP[应用层]-->INTERFACE(封装统一接口) INTERFACE-->|抛出参数一致|CODING[封装Coding API] INTERFACE-->|抛出参数一致|GITHUB[封装Github API] ``` ### 以 Star 一个项目为例 根据操作的类型进行判断,接口参数里带入类型即可。 ![star-project.svg](./_attachment/star-project.svg) ```sequence Action->Interface: 关注github\nwillin/leader.js.cool Interface->Github: 调用关注 Note right of Github: 抛出接口一致 Interface-->Action: 返回结果 Action->Interface: 关注coding\nwillin/leader.js.cool Interface->Coding: 调用关注 Interface-->Action: 返回结果 ``` ### 第三步,筹备 TODO List: - [ ] 整理完整的功能清单(包括相同功能和两个平台差异性功能) - [ ] 设计 UI 原型(两者的客户端可以选择一个作为主体风格,或者重新设计) - [ ] 封装底层接口 - [ ] 开发上层应用 - [ ] 进行测试发布