[{"content":"这篇文章实际写于今天凌晨一点。\n博客网站初步搭建完成后，我就在这个时间上传了这篇文章。\n回望自己上大学以来经历的两次重大挫折，我开始重新审视自己的热爱、野心，以及未来真正想走的路。\n第一次是在大一上学期。\n那时，我开始接触股票，拿着父母资助的钱、自己的生活费，甚至借助同学的融资，带着几千块钱入市。我天真地以为，凭借自己的数学基础和对数学模型的兴趣，或许就能在市场中小赚一笔。我曾幻想着有一天能够成为一名 Quant，通过数学、统计学和算法建立交易模型，在金融市场中找到属于自己的优势。\n但现实很快给了我沉重的一击。市场并不会因为一个人懂一些数学，就向他展示额外的善意。那些曾经让我感到兴奋的想法，在真实的市场面前显得稚嫩而脆弱。\n第二次是在昨天。\n这半个月，我投入了大量时间学习网络安全。我喜欢数论，喜欢密码学，也曾幻想着有一天能够逆向一个程序，分析复杂的加密算法，发现软件中的漏洞，写出属于自己的工具，成为一名真正的 Hacker。\n这些东西在我看来很酷，也充满了神秘感。\n然而，当我真正开始接触这个领域，看到学长和同辈们展现出的技术实力时，我再次感受到了自己的不足。那些曾经觉得自己或许能够很快掌握的东西，背后竟然有着如此深厚的知识积累和技术门槛。\n两次经历，两次挫折。\n我开始意识到，自己似乎总是想做很多事情。Quant、Hacker，这些身份在我眼中不仅代表着技术实力，也带有一种特殊的吸引力。我渴望成为这样的人，渴望证明自己有能力进入那些看起来高深、神秘，甚至有些遥不可及的领域。\n但仔细想来，这种渴望有时反而让我迷失了方向。\n我究竟是真的热爱建立数学模型、研究金融市场，还是仅仅向往 Quant 这个身份？我究竟是真的享受逆向分析、密码学研究的过程，还是仅仅觉得破解程序、发现漏洞的自己很酷？\n如果我只是想通过某个身份证明自己，那么当我遇到更强的人、发现自己的不足时，挫败感就很容易淹没最初的兴趣。\n我可能会因为暂时赚不到钱而怀疑数学的价值，也可能因为技术不如别人而怀疑自己是否适合编程。但实际上，这些事情并不能简单地画上等号。\n一次投资的失败，不意味着数学建模没有价值；一次竞赛中的受挫，也不意味着自己不适合研究安全技术。\n真正值得反思的，或许不是自己为什么没有迅速成为高手，而是自己为什么总希望迅速成为高手。\n我喜欢数学，喜欢编程，也喜欢那些需要耐心、推理和创造力才能解决的复杂问题。相比于一个光鲜的身份，我或许更应该关注那些让我愿意长时间沉浸其中、即使没有即时回报也想继续钻研的东西。\n我不必现在就决定自己将来一定要成为 Quant，也不必急着证明自己能够成为 Hacker。\n我可以继续学习数学，深入算法，研究计算机底层原理，也可以逐步接触人工智能、量化金融、网络安全。未来，我可能会在其中某个领域找到真正愿意长期深耕的方向，也可能在不断探索的过程中发现自己此前从未想过的可能性。\n我不需要因为一时的冲动，就把某个领域认定为自己的人生目标；也不需要因为暂时落后于别人，就急着否定自己。\n当然，我知道，未来的人生中，我大概还会经历无数次失败。或许会有努力很久却没有结果的时候，也会有发现自己与优秀的人存在巨大差距的时候。但我想起一句话：\n成功者失败的次数，可能比失败者尝试的次数还要多。\n失败并不值得美化，也不意味着只要坚持就一定能够成功。但如果每次失败都能让我更清楚地认识自己，修正自己的方法，理解一个领域真正的难度，那么这些经历至少不会毫无意义。\n今后，我依然可能接触量化交易，也依然可能深入网络安全。这些兴趣没有必要因为两次挫折就被放弃。但下一次，我希望自己是因为真正想弄懂其中的原理，想解决其中的问题，才选择投入时间，而不是因为某个身份足够炫酷，或者我急于向别人证明自己的能力。\n我想去学习数学背后的逻辑，研究算法的设计思想，理解程序运行的底层机制，探索人工智能的能力边界。我想知道一个复杂的问题为什么难，又能否通过自己的思考，把它一点点拆解、分析，最终找到解决方案。\n至于最终能走多远，不必急于给出答案。\n尤其是在今天，人工智能的发展已经深刻改变了知识获取、编程和问题解决的方式。我们或许不必再像过去一样，把掌握某种技术当作不可逾越的门槛。但这也不意味着我们可以跳过基础，更不意味着努力与积累已经失去意义。\n恰恰相反，当工具越来越强大时，什么值得研究、什么值得投入，以及自己究竟想解决什么问题，可能变得更加重要。\n我不需要因为 AI 越来越强大而焦虑，也不应该因为 AI 能够完成很多任务，就放弃亲自理解问题的乐趣。\n我仍然可以学习数学、钻研算法、探索技术的底层，在一次次实践中建立自己的理解。\n我希望自己以后做一件事，是因为我真的想弄懂它，而不是因为做成这件事之后，我会成为一个什么样的人。\n保持稳定的心态，接受自己的不足，尊重技术积累的规律，不因暂时的落后而自我否定，也不因一时的兴奋而盲目投入。\n大胆追求自己的热爱，但不必急着向世界证明什么。\n毕竟，我还年轻。\n还有很多东西值得学习，还有很多领域值得探索，还有很长的路可以慢慢走。\n比起现在就决定自己要成为谁，我更希望自己能够在未来的日子里，逐渐成为一个真正懂得自己为什么而学习、为什么而探索的人。\n","date":"2026-10-12T21:56:00+08:00","permalink":"/posts/two-setbacks/","title":"两次挫折之后"},{"content":"先说说这个站打算如何运转。\n它的前身，其实只是一堆空目录。\n拆掉栏目\r搭站之初，我规划了很多方向：算法竞赛、数学、英语、计算机系统、金融科技。\n每个方向建立一个目录，再配上一页说明，写清楚以后这里会记录什么。\n规划完成后，真正放进去的内容是：\n零。\n原因其实很简单：空目录不会自己长出文章。\n它只会在每一次打开编辑器的时候，让你先思考一个问题——这篇文章到底应该放在哪里？\n起初，我做得最多的事情，是让这个站「看起来像一个博客」：挑选主题、调整配色、添加粒子背景、接入播放器。\n这些事情修改一行，刷新一下，就能立刻看到变化；而写文章不一样。\n写完一篇文章，需要隔一段时间重新阅读，删掉几处自己都无法说服自己的推论，修改几遍，才敢真正发布出去。\n慢慢发现，搭一个博客最难的部分，从来不是把网站搭起来，而是写下第一句话。\n所以现在，我把所有栏目都拆掉了。\n这里暂时只有一个地方存放文章：想到什么，就写什么，不提前分类。\n名字也还没有确定。既然现在还没有足够多的内容，那也没有必要急着给它取一个精准的名字。等文章慢慢积累，相似的东西自然会聚集在一起，到那个时候，再建立目录也不迟。\n会写什么\r大概会涉及以下几个方向：\n编程：算法竞赛需要 C++，理解计算机底层原理需要 C，金融分析和数据处理离不开 Python。除此之外，我也对区块链方向比较感兴趣，未来可能会学习并记录一些 Rust 相关内容。\n数学：出于对数学本身的热爱，这里可能会记录一些大学数学知识、统计建模、密码学算法，以及一些觉得有意思的问题。数学不只是考试中的公式，也可以成为理解世界的一种方式。\n竞赛：目前主要在准备算法竞赛和数学竞赛。因此，一些算法、数学知识点，以及刷题过程中产生的思考，也会整理到这里，希望能够和更多人交流。\n专业：作为一名金融科技专业的学生，自然不能忘记自己的专业学习。课程内容、项目经历，以及一些个人理解，也会在这里留下记录。\n考研：希望未来能够继续深入学习计算机技术，因此计划跨考计算机 408。平时学习计算机相关知识的过程，也会记录下来。\n语言：这一部分不会占太大比重。可能会记录一些专业术语、英文表达，或者偶尔出现的一些感想。\n除此之外，这里也不会限制主题。\n可能是一道突然想通的题，也可能是一个深夜冒出来的奇怪想法。可能是一次失败后的反思，也可能只是某个瞬间觉得“这个东西挺有意思”，于是想把它记下来。\n博客不一定只记录最终的答案，也可以记录寻找答案的过程。\n这里会留下成长中的尝试、困惑、失败，以及一些慢慢想明白的事情。\n不设边界。\n一条约定\r正文使用中文。\n但专业术语保留英文原词。\n这并不是一种折中，只是因为很多技术名词存在不同的中文译法，而英文原词往往更加准确，也更接近实际使用环境。\n收尾\r一个空的目录不算开始，第一行文字才算。\n","date":"2026-10-12T21:08:00+08:00","permalink":"/posts/site-launch/","title":"开站记"},{"content":"先讲讲自己的编程经历吧。\n我最早接触编程是在初中的时候，当时因为参加竞赛，开始了 C++ 的学习。只可惜那时候只是参加了一些当地组织的比赛，并没有继续走到 NOIP 之类的竞赛舞台，现在想想也算是学生时代的一个小遗憾吧。（写到这里又开始感伤了哈哈）不过真正让我喜欢上编程的，其实并不是比赛本身，而是在第一次写出程序，第一次让计算机按照自己的想法解决一个问题的时候，那种很特别的感觉。我本身比较喜欢数学，也喜欢敲键盘，可能正是因为这两个原因，在写出第一个程序之后，我慢慢就喜欢上了编程。\n很多人可能会觉得，会写代码就代表计算机水平很高，但其实并不是这样。我觉得自己就是一个比较典型的例子，虽然平时写代码不少，但距离真正意义上的计算机能力，还有很长的一段路。现实中的计算机领域，更多是工程实践、系统设计、软件架构等内容。而算法更多体现的是一个人的逻辑能力、抽象能力和解决问题的能力，这也是为什么高中阶段可能会看到一些数竞转信竞，或者数信双修的同学，因为两者在底层思维上确实有不少相通的地方。\n高中时期，因为课业压力增加，我自然也不可能一直保持编程学习，只是在暑假或者一些空闲时间，零零散散写过一些基础代码。高考结束之后，我重新开始了编程学习之路，当时又接触了一些 C 和 Python。不过可能是因为 C++ 用习惯了吧，我其实并没有真正大量使用这两门语言。学完基本语法之后，更多时候还是继续使用 C++ 解决问题，甚至后来也逐渐接触了一些 vibecoding。所以现在回头看，虽然我知道 C 和 Python 的语法，但真正让我用它们完成一些复杂任务，反而没有 C++ 那么熟练。\n后来，我慢慢接触到了区块链。这是我目前比较感兴趣的一个方向。如果未来只能选择一种技术改变金融领域，我大概率还是会选择区块链。关于这个方向，我之后也会单独写一篇文章，聊聊自己对区块链的一些理解。接触区块链之后，再加上自己对 C++ 一些特点的重新认识，我开始了解另一门比较新的语言——Rust。Rust 是我目前比较看好的一门语言，对它的一些描述是它试图在性能、安全和现代开发体验之间寻找新的平衡，这也是它吸引我的地方。当然，还有很多语言也值得学习，Java、JavaScript、Go、Swift、Lean、Solidity 等语言，都在自己的领域发挥着重要作用，只是受到发展方向、学习成本以及语言自身特点的影响，目前暂时没有深入研究。\n介绍完自己的编程经历后，我想说的是：编程语言其实没有绝对的优劣。不同语言诞生于不同的背景，也适用于不同的问题。它们更像是工具箱中的不同工具，没有必要追求掌握所有工具，而是在面对问题的时候，知道应该选择什么工具，以及为什么选择它。\n我的起跑线\r在真正开始重新认识 C 和 Python 之前，我觉得有必要先回顾一下自己的起点。 我的编程经历主要从 C++ 开始，而且很大程度上来自算法竞赛。 不过这里需要说明一下，我熟悉的 C++ 其实并不是完整意义上的 C++。相比于工程开发中涉及的大量内容，我接触最多的还是竞赛中的那一套：STL、数据结构、算法模板，以及如何快速把一个想法转化成代码。\n比如数组，我习惯使用：\nvector\u0026lt;int\u0026gt; v;需要排序的时候：\nsort(v.begin(), v.end());需要记录一些键值关系：\nmap\u0026lt;string, int\u0026gt; mp;这些东西在算法竞赛中非常常见，也逐渐成为了一种编程习惯。 很多时候，面对一个问题，我想到的都是： 有没有现成的数据结构？ 有没有合适的算法？ 自己能不能快速实现？ 程序能不能高效执行？ 这也是 C++ 带给我的一种思维方式。 它提供了大量已经封装好的工具，同时又保留了足够的自由度，让我可以根据自己的需求进行修改和扩展，在保证开发效率的同时，也尽可能追求程序运行效率。\n我在 C++ 里这么写 在 C 里对应 在 Python 里对应 vector\u0026lt;int\u0026gt; v; 动态数组需要自己管理内存，例如 malloc list，自动扩容 v.push_back(x); 手动扩容并添加元素 append(x) int* p = new int[10]; malloc 分配内存，需要 free 通常不需要直接管理 for(int x:v) 使用下标或者指针遍历 for x in list map\u0026lt;string,int\u0026gt; 需要借助结构体、哈希表实现 dict sort() qsort() sorted() 或 sort() 当然，这张表只是列出了一些简单的区别。 实际上，不同语言之间的差异远不止这些。看到这里可能会产生一个问题： 为什么会有这么多编程语言？ 既然 C++ 已经可以完成很多事情，为什么还需要 C、Python，甚至 Rust？ 为什么不设计一门“万能语言”，解决所有问题呢？\n为什么需要不同的编程语言？\r在学习了几门编程语言之后，我曾经有过一个疑问： 既然 C++ 已经可以完成很多事情，为什么还需要 C、Python，甚至更多其他语言？\n如果只是为了让计算机完成任务，难道一门语言不能解决所有问题吗？后来我慢慢发现，编程语言其实是在不同需求之间做出的选择。\n计算机本身并不能理解人的想法，我们需要通过程序告诉它应该如何执行。但这里存在一个矛盾：\n对于机器来说，我们希望程序运行得足够快，能够尽可能发挥计算机的性能；而对于人来说，我们又希望写代码的过程足够简单，可以快速验证自己的想法。\n比如，如果我要控制一个机器，让它高效地执行某个任务，那么我可能需要更加关注底层细节，榨干它的所有性能。但如果我只是想快速验证一个想法，比如分析一批数据，那么我可能更希望少考虑一些底层问题，把更多精力放在自己的想法上。\n这两个方向并没有谁一定更好。只是不同场景下，我们关注的重点不同。 C 语言更接近计算机本身，它给予程序员更多控制权；Python 则更加关注表达效率，让人可以用更少的代码完成更多事情；而 C++ 则处在两者之间，既保留了底层能力，也提供了大量高级工具。\n这也是为什么不同语言能够长期存在。它们并不是简单的替代关系，而是在解决不同的问题。就像现实生活中，不同工具有不同用途一样。一把锤子和一把螺丝刀没有必要比较谁更优秀，重要的是面对不同的问题时，知道应该选择什么工具。\n对于编程语言来说也是如此。真正重要的可能不是“哪门语言最好”，而是理解： 为什么这门语言会这样设计？ 它希望解决什么问题？ 它又做出了什么取舍？\n往下看一层：C\r学习 C 的过程，有点像重新拆开一个已经习惯使用的工具。以前写 C++ 的时候，很多事情都是理所当然的。 需要动态数组？ vector。 需要字符串？ string。 需要映射关系？ map。 需要动态申请空间？ new。 这些东西已经成为了一种编程习惯，以至于我很少再去思考： vector 的底层是什么？ new 到底帮我做了什么？ 程序运行的时候，内存究竟发生了什么？ 而 C 语言恰好把这些问题重新摆到了面前。 在 C++ 中，我更多关注的是： “我要解决什么问题。” 而在 C 中，我需要开始关注： “计算机到底是如何完成这件事情的。”\n看见 C++ 隐藏的东西\r比如动态数组。 在 C++ 中：\nvector\u0026lt;int\u0026gt; v;然后：\nv.push_back(x);即可完成扩容和添加元素。 但在 C 中，没有现成的 vector，需要自己申请内存，管理空间大小，并在需要的时候重新分配。 这让我第一次更加直观地理解： C++ 并不是凭空创造了这些能力，而是在 C 的基础上建立了一层更方便的抽象。 同样，new 和 delete 也是如此。 C++：\nint* p = new int[10]; delete[] p;C：\nint *p = malloc(sizeof(int) * 10); free(p);看起来只是语法不同，但背后体现的是不同的设计理念。C 把更多控制权交给程序员。这带来了更强的自由度，同时也意味着程序员需要承担更多责任。内存泄漏、数组越界，这些问题不会因为语言简单就消失，而是需要开发者更加小心。 学习 C 的意义，并不是因为以后一定要用 C 写所有程序，而是它让我重新理解： 程序到底是如何运行在计算机上的。 其实，这也是我后来重新认识 C 的一个原因。\n一个问题\r之前参加网络安全面试的时候，曾经遇到过一个让我印象很深的问题： printf(\u0026quot;hello\u0026quot;); 这样一句简单的代码，在计算机内部到底经历了什么? （其实当时研究生学长问我的原问题是：print(f) 这一行代码，在计算机中是如何一步一步执行出来的。）\n当时的我其实回答不上来。因为平时写代码时，我更多关注的是： 程序能不能运行？ 结果是否正确？ 算法是否高效？\n但很少真正思考： 这一行代码从源代码到屏幕上的字符，中间到底发生了什么？ 函数是如何被调用的？ 参数是如何传递的？ 数据经过了哪些层次？ 操作系统和硬件又参与了什么？\n这些问题可能已经超出了某一门语言本身，而是计算机系统的基础。 而学习 C，恰好提供了一条更加接近计算机运行过程的路径。 它不会替你隐藏太多细节，反而会迫使你重新思考： 一段程序究竟是如何从源代码，变成计算机真正执行的指令。 至于这个问题的完整答案，我打算之后单独写一篇文章。\n从一行简单的 printf(\u0026quot;hello\u0026quot;); 开始，看看一段代码究竟是如何一步一步在计算机中运行起来的。\n换一个方向：Python\r如果说 C 是让我往计算机内部看，那么 Python 则刚好是另一个方向。 它让我开始思考： 如果程序的目标是快速验证一个想法，那么我们是否真的需要关注所有底层细节？\n在学习 C++ 的过程中，我逐渐习惯的一种思维方式是： 变量是什么类型？ 数据存储在哪里？ 算法复杂度是多少？ 程序如何运行？ 这些问题当然很重要。\n但有些时候，我们面对的问题并不是如何让计算机发挥极限性能，而是如何快速把自己的想法实现出来。\n而 Python 恰好选择了另一种设计方向。\n从写代码到表达想法\r比如在 C++ 中，如果需要保存一组数据：\nvector\u0026lt;int\u0026gt; v; v.push_back(1); v.push_back(2);而在 Python 中：\nv=[1,2]同样的事情可以更加直接地表达。 这种区别并不是简单的“代码多少”。 背后体现的是两种不同的设计思想。 C++ 更倾向于让程序员拥有更多控制权。 Python 则希望程序员能够更加关注问题本身，而不是花费大量精力处理语言和底层细节。\n动态类型带来的自由\rPython 一个很明显的特点就是动态类型。 在 C++ 中：\nint a = 10;变量的类型在定义时已经确定。 而 Python：\na = 10 a = \u0026#34;hello\u0026#34;它允许变量名在不同时间引用不同类型的对象。 这种设计让 Python 写起来更加灵活。 尤其是在数据分析、人工智能、自动化脚本等场景中，我们往往更关注： 这个想法能不能快速验证？ 这个数据能不能快速处理？ 这个模型能不能快速运行？ 而不是一开始就设计完整的数据结构。\n但隐藏复杂性并不代表复杂性消失\r不过，Python 的简单也并不是没有代价。 很多时候，人们会说： “Python 很慢。” 但这个“慢”其实需要具体分析。 如果是大量简单循环：\nfor i in range(10000000): ...Python 的执行效率确实通常不如 C/C++。 因为 Python 需要解释器参与执行，并且动态类型也带来了额外开销。 但如果任务主要是： 数据读取、网络请求、调用成熟库、AI模型训练， 那么 Python 的效率可能并不会成为主要瓶颈。 很多时候，真正限制我们的并不是计算机运行速度，而是人的开发速度。 以前学习 C++ 的时候，我更多关注： 如何让程序更快？ 如何设计更好的算法？ 如何优化复杂度？\n而 Python 让我看到另一种可能： 程序也可以是一种快速表达想法的工具。 很多人工智能、数据分析领域的发展，也离不开 Python 这种“降低实验成本”的特点。 当然，这并不意味着 Python 可以替代所有语言。 如果需要接近硬件、追求极致性能，C/C++ 仍然有不可替代的价值。 但如果目标是快速探索、验证想法，那么 Python 提供了一种非常高效的方式。 这也是我重新认识 Python 后最大的感受： 编程不仅仅是让机器执行命令。有时候，更重要的是让人的想法能够快速变成现实。\n一个反思\r其实，回过头来看，我之前没有真正掌握 Python，也有一些自己的原因。\n写算法题比较多之后，我会对一些“黑盒”产生天然的抵触。 在算法竞赛中，我习惯了去理解： 一个数据结构为什么这样设计？ 一个算法为什么能够成立？ 一个优化为什么能够降低复杂度？\n所以当面对 Python 中大量封装好的库和接口时，我有时候会产生一种不太适应的感觉。 因为如果不了解背后的原理，只是记住： 这个函数怎么调用。 这个库怎么使用。 那么这些东西很容易随着时间遗忘。\n而 Python 恰恰是一门高度依赖生态的语言。 很多时候，真正解决问题并不是自己从底层实现所有东西，而是知道： 有没有现成的工具？ 如何正确使用它？ 它背后的原理是什么？ 这也是我过去学习 Python 时遇到的问题。\n另一个原因，则是 C++ 使用习惯带来的影响。 从 C++ 切换到 Python，并不仅仅是语法变化。 它背后对应的是两种不同的编程思维。 C++ 中，我习惯关注数据结构、类型和效率；而 Python 中，我需要更加关注如何快速表达想法。 这种思维方式的转换，并不是简单背几个语法就能完成的。\n之前参加网络安全面试时，也暴露出了这个问题。 当时有同辈问我： 脚本是不是自己写的？ 我回答是通过 AI 辅助完成。 现在回头看，一个学习过 Python 的人，如果连一些基础脚本都无法独立完成，着实可笑。\n但我觉得，能够早点发现这个问题，也是一件好事。 至少它让我意识到： 学习一门语言，不能只停留在知道语法、会调用工具。 真正重要的是理解它的设计思想，并通过实际使用建立自己的能力。 所以之后，我也会像前面重新认识 C 一样，重新补充自己的 Python 学习过程。 从简单脚本开始，真正理解 Python 为什么适合快速表达想法，以及它在实际工程中是如何被使用的。\n看一眼 Rust\r关于 Rust，其实目前我的了解还比较有限。 我接触它主要是因为区块链和底层开发方向的兴趣。相比 C++，Rust 希望在性能、安全性和现代开发体验之间找到一种新的平衡。 不过目前我还没有真正使用 Rust 完成过实际项目，所以这里不会过多评价它。 等未来真正学习和使用之后，可能再回来打个补丁。\n写给刚开始编程的人\r回头看自己的编程经历，我其实觉得自己从 C++ 开始学习编程是一件比较幸运的事情。 当然，这并不代表 C++ 一定是最好的入门语言。不同的人有不同的目标，也会有不同的选择。 如果你喜欢算法、数学，或者希望训练自己的逻辑能力，C++ 可能是一条不错的道路。它会让你接触数据结构、算法，培养一种更加严谨的思考方式。 如果你的目标是快速做出一些东西，比如自动化脚本、数据分析或者人工智能应用，那么 Python 可能会更加适合。 如果你想进一步理解计算机内部，理解内存、程序运行和硬件之间的关系，那么 C 会是一条很好的道路。\n但无论选择哪门语言，我觉得最重要的不是“学会多少语法”，而是不要停留在： “这个函数怎么调用？” “这个代码怎么运行？”\n而应该继续追问： 它为什么这样设计？ 它解决了什么问题？ 它背后隐藏了什么？\n编程语言会不断变化，新的语言也会不断出现。 真正属于自己的能力，是面对一个问题时，能够分析它、拆解它，并选择合适的方法解决它。\n换成我自己的选择\r回到自己身上，我目前对于这些语言的定位其实还比较简单。\nC++ 依然会是我解决算法问题的主要工具。 C 则更多承担“理解计算机”的角色。它让我重新关注那些平时容易忽略的细节：内存如何管理，程序如何运行，代码如何一步步变成机器能够执行的指令。 Python 可能会是我之后需要重点补充的一门语言。以前我更多停留在“知道语法”的阶段，未来希望真正用它快速验证想法、编写脚本、处理数据，把它变成解决实际问题的工具。 至于 Rust，目前更多是一种对未来的储备。我目前对它的了解还比较浅，真正的认识还需要等未来实际使用之后再慢慢建立。\n所以现阶段，我对自己的定位大概是： 用 C++ 训练算法思维，用 C 理解计算机底层，用 Python 提高解决问题的效率，用 Rust 探索未来可能的发展方向。\n当然，这只是现在阶段的选择。技术的发展很快，自己的兴趣和方向也会不断变化。 但无论未来使用什么语言，我希望自己始终保持一个习惯： 不仅知道怎么写代码，也知道为什么这样写。\n收尾\r写完这些之后，我最大的变化可能不是学会了更多语言，而是重新认识写代码的方式。 C 让我重新关注计算机本身，理解程序如何运行；Python 让我看到快速表达想法的价值；而 C++ 则连接了算法思维和工程效率。 未来我可能还会学习更多语言，也可能会发现自己现在的一些理解并不完全正确。但至少现在，我希望自己不只是一个会写代码的人。 编程语言只是入口。真正值得探索的，是代码背后的解决问题的方式。\n","date":"2026-10-13T15:40:42+08:00","permalink":"/posts/programming/programming-languages/","title":"重新理解编程语言"}]