计算机自学指南

on

|

views

and

comments

计算机作为当代显学,在互联网上有最多的优质自学资源,并且只需要一台性能尚可的笔记本就能完成绝大部分的自学。计算机自学指南数不胜数,笔者根据其他指南以及自己的学习经历总结了一份计算机自学指南。

本文封面源于乔治·修拉的作品《大碗岛的星期日下午》。

计算机学习目标
计算机学习不仅仅是408和八股,更重要的是思维和能力。
代码功底
熟练掌握编程语言、算法和数据结构,能高效编写干净、可维护的代码,处理常见问题,注重代码的效率(时间/空间复杂度)和可读性,遇到问题时,能够对问题进行分解、变换并且进行优化分析,从而高效解决。懂得调试、测试和版本控制(如Git),以确保代码快速迭代,在实际环境中可靠运行。
理解底层
对计算机系统底层机制的深入把握,包括硬件(如CPU架构、内存管理)、操作系统(如进程调度、文件系统)和网络协议(如TCP/IP)。学生需明白代码如何在机器层面执行,例如编译过程、虚拟内存或并发模型,从而避免”黑箱”思维,让我们能够诊断性能瓶颈或安全漏洞,并桥接软件与硬件的鸿沟,从全局思考问题。
系统工程
系统工程能力,是指对复杂计算机系统的全面工程管理技能,涵盖从需求定义到运维优化的完整生命周期,包括严谨整合用户需求、硬件约束和环境变量(如在智能家居系统中评估隐私合规与电源效率),架构规划(如协调软件组件、数据库结构设计——例如选用MySQL实现事务一致性或NoSQL如MongoDB支持横向扩展——网络协议优化及硬件接口,确保系统模块间的高效交互),集成验证(如通过端到端测试确认子系统协作的鲁棒性,防范如数据传输中断或单点故障的风险),以及运维与迭代(如运用Prometheus等工具监控性能指标、开展风险评估并实施持续升级)。这一能力强调可持续设计原则(如资源优化、安全强化和伦理考量),从系统级视角构建可靠、可扩展的解决方案,如自动驾驶平台或企业级大数据基础设施,避免局部失效引发全局问题。

参考资料

Tags

单调队列

给定一个数组,设置一个窗口长度,需要求出每个窗口内的最大值或最小值,暴力做法将会是数组长度乘以窗口长度的时间复杂度。如果使用单调队列,将会是数组长度的线性时间复杂度。本文将对单调队列有一个具体的阐述...

【翻译转载】成为一名伟大的工程师——最好的特质

怎么样才能算得上一个好的工程师?这篇文章指出“一个伟大的工程师可能比45个优秀的工程师还要有价值”,对当下伟大工程师正在变得稀有感到担忧,指出了伟大工程师需要具备的5个特质。相信这篇文章对广大工科相...

月度日志-2026-4

本文是对2026年4月的月度日志。 本文封面来自pixiv画师kimiga_的作品《Blue-sea》。 日志内容 4月11日 又是一...

幻想情侣

笔者在26年1月无意中刷到一个封面很像孙俪的切片,本来以为又是什么新出的剧,结果看完之后一发不可收拾,把整个剧看了好多遍一个月才慢慢缓过来。在3月中旬,笔者已经基本对它十分熟悉,加上B站很多用户也沉...