Sucha's Homepage ~ Program Lab
学的是 CS,但数学渣,大学期间沉迷于 Linux、Emacs 这些玩意儿...
好奇心重且编程想法多,各种都想了解一点,涉猎虽广但深度堪忧,无奈半桶水走江湖,>_<
Tips & Tricks
C & C++
当年课堂上没听懂老师教的 C & C++,都是后来跳坑自学的。还是觉得 C++ 坑太多,自愚跳不完,索性放下,不学了~
- m_net: 跨平台的小型网络库,支持 Linux/MacOS/FreeBSD/Windows
- JPEG 解码器: 当年面试 163 后被问到,那就填充到简历里面去吧。
- 俄罗斯方块游戏: 纯属无聊时的作品。
- 小型 Unix 磁盘文件系统: 大三下的课程设计作业,纯模拟性质,当时选择这个题目是为了更好地理解 Unix 的文件系统,了解其对空闲磁盘和文件的管理。
- 五子棋游戏: 在大一时编的,趁脸皮厚先放上来,算法绘图什么别想了,bug 又如何,当年老爸放水,我棋连挡 8 招,:-)
ObjC & Swift
ObjC 和 Swift 都是吃饭的家伙,虽然又渐渐用上了安卓手机,但系统已经习惯 MacOS 了,对苹果是又爱又恨。
- PinStackView: 基于 PinLayout 的 StackView,特点是基于 Frame 计算,但是也保留了 UIStackView 的 distribution equal,已经用在正式环境上了。
Go
Go 语言很早就火了,我没有赶上那个时候,话说 The Language 读了大概有 2、3 遍,直到遇到了合适的项目,才能说学会了一点。
Lua
当初学 Lua 是因为要开发游戏,但后来发现这个脚本语言,跟 C 一样的命令式语法,性能还行,又不用考虑内存管理,方便得很。
- Cincau: 小型化的 MVC web 框架,支持 mnet 或者 nginx,已在公网支撑起了不知名站点。
- MoonCake: 一个类似 Swift 的 Lua 方言(也可以叫 MoocScript),最终编译为 Lua,起因是我不大喜欢 Lua 充满 then、end 关键字的语法。
- MarkdownProjectCompositor: 目前用来构建主页和博客,相比之前的 EmacsWiki 少了一些功能,但稳定性、可维护性高了太多。
- app_scheduler: 一个监控进程存活、CPU、内存占用的管理程序,基于 'ps u -p PID1 -p PID2' 来实现。
Bash
Are you bash shell today?
Elisp
Lisp 的古老方言,用以扩展 Emacs 功能的强大工具。但多年来使用的机会不多,只会一丢丢的配置了。
Assembly
大三才开始学汇编,而且是简单的 8086 系列,可以说是刚刚入门。虽说汇编足够精炼,但是用这个东西去编程实在是麻烦,太花时间,而且通用性肯定不好。
- 指法练习程序: 没错,仿以前 DOS 下的 TT 打字游戏。字符在屏幕上一个一个地往下掉,若敲中相应的键,对应的字符就消失。可调字符颜色,下落速度以及响铃模式等等,非常简单的一个小游戏,但是编它却很花时间。