CNSS 2025 Dev Guideline
💻 Dev Guideline
Dev 为开发者 Developer 的缩写,主要从事软件设计与开发工作。
Dev 是 CNSS DevOps 组的重要成员。只要你热爱计算机,希望能用代码改变世界,我们都欢迎你加入凝聚 Dev 的大家庭。
❓ 为什么要学习 Dev
- 只要你从事的是计算机领域的工作,你就需要一定的软件开发能力
- 了解 Dev 相关知识将有助于你理解计算机、互联网乃至数字社会的运作方式
- Dev 可以成为你创造万物的途径之一,这将伴随巨大的成就感
🛣️ 如何学习 Dev
😘 Intro
- 熟练运用至少一门编 程语言,再了解掌握一种或者多种
- 建议先学习使用 C 语言,它既会在大学课程里出现,也能让你对计算机底层的架构有一定的了解
- 不同的语言可能各具特色,但是它们的本质是一样的,只是语法和库有所不同,在实际开发过程中选择最合适的就行。所以在你初步学习了一门语言后,再上手另一门其实不会特别困难
- 当然,如果你对编程语言领域感兴趣的话,可以多研究几门语言的异同,深入探寻其中的奥秘
- 多阅读、多练手,去写写算法题或者写点工程项目
- 养成良好的代码习惯,注意规范自己的码风
- 掌握一些基础的技能
- 自学计算机科学以及 CS 自学指南
- 在需要帮助的时候及时寻求帮助:
- 耐心!耐心!耐心!
- 保持一颗热爱的心❤
🥵 Intermediate
当你通过一门语言正式开启你的计算机之旅后,随着代码越写越多,你可能会发现你需要一些其他知识来支撑你的开发,下面这些资 料或许可以帮到你。
- 《深入理解计算机系统》
- 别被中文译名里的“深入”吓到了,这本书英文原名是《计算机系统:一个程序员的视角》,非常适合程序员梳理计算机系统的知识。
- 《Operating Systems: Three Easy Pieces》
- 推荐以这本书为教材的南京大学蒋炎岩老师的操作系统课程:https://jyywiki.cn/OS/2024/
- 《计算机网络:自顶向下方法》
- 设计模式与重构
- OI Wiki
- 学习一些简单常用的算法就行了。
- 《动手学深度学习》
- SICP《计算机程序的构造和解释》
🤯 Advanced
如果还想要继续深入了解计算机的世界某些领域,请留意每道招新题中给出的提示,那里面会有关于相关内容更进一步的介绍。
🌍 也试试 Ops/SA
同为 DevOps 组,Ops/SA 方向与 Dev 方向联系紧密。相比于创造机器,Ops/SA 方向更侧重于维护机器。Dev 打累了也可以试试 Ops/SA 方向(
👨💻 Dev 是不是和网络安全完全没有关系啊
当然不是。网络安全和开发的科技树有重合。特别地,Bin 方向和 Dev 方向需要非常多相似的知识基础,例如程序在 main
前做了什么、gets
为什么不安全等等。而且,想要编写出安全健壮的程序,也需要网络安全相关的知识。你甚至可能会在 Dev 题中见到一些 Re 题。
有些 CTF 比赛会有专门的 AI 赛道,某些 misc 题也和 Dev 有关,可以来 Dev 组一起做 AI(x
希望今年能招到更强大的 Dev 壬!
👊 暴打负责人
@edragain