那时年少春衫薄
如今却忆江南乐,当时年少春衫薄。骑马倚斜桥,满楼红袖招。翠屏金屈曲,醉入花丛宿。此度见花枝,白头誓不归——韦庄《菩萨蛮·如今却忆江南乐》 刚才在知乎上看到一个孩子,提问了许多问题,大抵就是11岁学编程先学C 还是 Rust什么的,看样子,是觉得人工智能很火,现在要早早入局,以后卷起一片风云的人物。我也不得不想起,我刚上初中的时候也是这样,对编程很感兴趣,我那个时候是怎样的来着?让我想想。在我的青春将至的少年时节,我有好多奢望。 虽然囿于小小的天井,不过幸运,或者说无关紧要的是,在我年少的时候我有着一台台式机,连通着互联网。 我因而看到了很多,这些繁杂而又瑰丽的信息让我不由得神往,这些信息勾起了少年的欲望。 那个时候,还是诸如德国下水道,日本夏令营的故事大有受众的时候,我当然也不例外,漫威的电影一部不落,人生目标就是下一个乔帮主或者比尔盖茨,幼小的我想着,以后我也要写出让全世界的人都使用的操作系统,冠以自己的名号,当然,还有上不了台面的——想当世界首富 当然,后来我知道了...
Win 平台下的 GCC 与 Clang
本文主要介绍如何在 Windows 平台下使用 GCC 与 Clang 编译器,以及 包括 Cygwin、MinGW、MinGW-w64、MSYS2 的历史 前置知识如果你了解了下面这些知识,那么你可以跳过这一节。 点击 这里 跳过这一节。 什么是 GCCGCC (GNU Compiler Collection) 是 GNU 开发的编程语言编译器。它是 GNU 项目的关键部分,也是 GNU 工具链的主要组成部分之一。GCC 目前支持的语言包括 C、C++、Objective-C、Fortran、Java、Ada、Go、D 以及各种处理器的汇编语言。 GCC 是自由软件,它的源代码在 GNU 通用公共许可证 (GPL) 下发布。GCC 由自由软件基金会 (FSF) 开发,是 GNU 项目的一部分。 什么是 ClangClang (C Language Family Frontend for LLVM) 是一个 C、C++、Objective-C 和 Objective-C++ 的编译器前端,它采用 LLVM 作为后端。Clang 是一个自由软件,它以 BSD...
设计模式与 Warcraft 其三
须知: 这并不是一篇教程,而是一篇笔记, 如果你想学习设计模式,建议直接阅读比较好的设计模式教程,比如 设计模式|菜鸟教程。 这篇文章我们来讲讲行为型模式… 吗? 并不是,这篇文章先来讲一讲 part 1 中提到的大作业 Warcraft 3。 Warcraft 3如果你对这个不管兴趣请点击 这里 跳过这一节。 什么是 Warcraft 3魔兽争霸 3(Warcraft III: Reign of Chaos)是由暴雪娱乐公司开发的一款即时战略游戏,于2002年7月3日发行。游戏的故事发生在魔兽争霸系列的虚构世界中,讲述了一场由人类、兽人、亡灵和暗夜精灵四个种族之间的战争。游戏的扩展包《冰封王座》于2003年7月1日发行。 我顺便下载下来玩了会儿,很好玩,推荐。 大作业的要求然而,这个大作业除了名字,和魔兽争霸 3 没有任何关系。 除此之外,这个大作业甚至并不是原创,实际上,经查证,原题来自 北京大学...
设计模式与 Warcraft 其二
须知: 这并不是一篇教程,而是一篇笔记 如果你想学习设计模式,建议直接阅读比较好的设计模式教程,比如 设计模式|菜鸟教程。 好的,上一篇文章我们讲了创建型模式:单例模式、工厂模式、抽象工厂模式、建造者模式、原型模式。这一篇我们来讲讲结构型模式。 结构型模式(Structural Patterns)结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。 一句经典的话:组合优于继承 (Composition over Inheritance) 结构型模式包括:适配器模式、桥接模式、过滤器模式、组合模式、装饰器模式、外观模式、享元模式、代理模式。 适配器模式适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。它结合了两个独立接口的功能。 我们直接举例子,这个例子来自于菜鸟教程 - 适配器模式。 为了节省空间,让我们只放这张图: 为了防止图片失效,简述一下这个例子: 我们现在有 一个实现了 MediaPlayer 接口的实体类...
设计模式与 Warcraft 其一
须知: 这并不是一篇教程,而是一篇笔记 如果你想学习设计模式,建议直接阅读比较好的设计模式教程,比如 设计模式|菜鸟教程。 在做高级程序设计大作业的时候,ChatGPT 告诉了我工厂模式,我觉得很有意思,于是就去查了一下,了解到了设计模式 什么是设计模式设计模式 (Design pattern) 是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 四人在 1994 年所著的《Design Patterns: Elements of Reusable Object-Oriented Software》一书中提出。他们四人合称为 GoF(四人帮,全拼 Gang of Four)。 在软件工程中,设计模式是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案。这个术语是由埃里希·伽玛(Erich Gamma)等人在 1990...
可能永远鸽子掉的博客12篇
以下是上半年的博客计划,由 Claude 帮助下整理之 大概是永远要鸽掉的,不过还是先写下来,以后有时间再写吧。 清单非常感谢你对技术博客文章清单的修订与优化!你的修改使这份清单变得更加合理和贴近实际。 这里是根据你的修订后的清单: Qt:C++开发五子棋 使用Qt框架开发一款五子棋游戏 SDL2开发Chrome官方小游戏《无网恐龙》 使用SDL2库开发Chrome浏览器官方小游戏《无网恐龙》 Flutter开发,浏览某网站上的的美图App 使用Flutter开发一款图片查看应用 WSL2和WSL GUI配置 Windows子系统Linux(WSL)安装配置与使用教程 Hexo博客搭建和主题配置 使用Hexo框架搭建个人博客网站并配置主题 学习CS50的心路历程 学习哈佛大学公开课CS50的心得与体会 CMake工程配置经验分享 CMake工程配置技巧与使用教程 C/C++编译器 C/C++编译流程分析 C/C++代码的编译与链接过程介绍 工厂模式与其他设计模式 ...
人生如逆旅
一别都门三改火,天涯踏尽红尘。依然一笑作春温。无波真古井,有节是秋筠。惆怅孤帆连夜发,送行淡月微云。尊前不用翠眉颦。人生如逆旅,我亦是行人。——...
精简记录 -- 年轻人的第二个 Hexo 博客
这一次我将重新构建 Hexo 博客环境,不是新手教程,而是更为精简的记录。 起因先前的博客环境存在诸多问题: 包环境很乱,npm 报一堆版本错误 设置文件混乱,有的在主题文件夹中,有的在博客根目录下 采用注入 js 进行了一些修改,但是在主题文件中,升级主题时会被覆盖 我忘了我是怎么把 Live 2d 看板娘设置的,找了半天没有找到设置 目标 尽量不动主题文件,保证升级稳定 注入 js 单独放在 source/js/ 目录下,不使用 butterfly 自带的 js 注入(因为需要放在主题文件夹中) 配置文件集中在博客根目录下 Install && Path包管理器 make a better life! 这里我选择在 windows 下,实际上在 WSL2 中或许会更好一些 既然是在 windows 下,那么就用 scoop 吧 不知道为什么,nvs 我设置完环境变量之后还是没有生效,所以我重启了一遍就好了 12scoop install nodejsscoop install git Scoop 会帮你配...
Hexo on air! 持续集成,托管与 CDN 加速
这篇博客将承接上一篇精简部署,快速走一遍 Github Pages 托管后,着重介绍 通过 Github Actions 进行持续集成,Vercel、Netlify、Cloudflare Pages 等托管平台,以及 CDN 加速的配置。 Deploy to Github Pages关于 Github Pages 的部署,可以参考 Hexo 官方文档。 网上的教程也很多,这里直接给出一个简单的配置。 12345# _config.ymldeploy: type: git repo: https://www.github.com/username/username.github.io.git branch: master CI by Github Actions我们可以通过 Github Actions 来实现持续集成。 这种方式的好处是,我们可以在本地写好博客,然后通过 Github Actions 自动部署到 Github Pages 上。 因此,你不需要担心在不同的电脑上写博客的问题,只需要将博客的源码推送到 Github 上,Github Actions...
再见绘梨
下午刚考完英语,心情不怎好,出来振声苑的时候看一看手机,快递到了,是买的书,一本是藤本树的 再见绘梨,另一本是置身事内。 回到宿舍楼我买了瓶 AD钙奶,边喝边想起刚才在群里发的分流考试,没有大数据方向的,听说没报满,而智能方向却是相当的火爆,足足有一倍又半。 回到宿舍我便拆开那本 再见绘梨...