• 浅聊我和一些编程语言的缘分


    初识 DEV C++

    首先小胡同学自己并不是科班出身,不是计算机或者互联网相关专业的的学生,我本科期间是车辆工程专业,偏机械一点。

    本科期间对编程语言的唯一认识就是C,其实也不算是,准确的是DEV C++,但大家都懂得,本科的通识课是可以忽略不计的。

    再之后就到了研究生学校这边,考研的时候就想着能跳出老专业的限制,去见识一些新的东西,因为四年的大学生活,让我明白如果毕业之后,还是找一份画三维图的工作的话,我可能会疯掉~

    阴差阳错就来了我现在导师这边,说是做的嵌入式,但实际上更多是电子相关的东西,或者说单片机。

    又遇 Java+Mysql数据库

    还记得去年暑假,导师给我安排的第一个任务居然是做一个安卓的APP。

    我是一脸的问号啊?是我拿错剧本了吗?

    但导师安排的第一个任务,也不能不做,于是我开始了我的Java学习生涯~

    同时还搭配着android studio这个软件的学习,前后一个月,赶鸭子上架做了一个手机APP出来。

    这个软件实现的功能并不复杂。无非就是:数据的输入,处理,输出,再加上一个存储历史数据的功能。

    最后勉勉强强的过了,再往后做到了MYSQL数据库管理系统部分,所以说我的第三门语言是数据库操作语言~

    给大家放一个我当时做的笔记:这个链接也可以看MYSQL数据库管理系统 - 幕布

    但这部分的功能并没有完全的实现,因为开学研一的课程还是挺多的,之后这件事就不了了之了,后来我反应过来,可能这件事就是导师拿来考察我学习能力的,还好当时我没摆烂,认认真真的去做了。

    可见有些事情你可以不喜欢,但当你不得不去做的时候,一定要态度端正,尽自己最大努力。

    陷于 C

    我第一次看到一段C代码时,并没有觉得它是有多么的特殊,在当时的我看来,无非就是固定的代码结构,重设其中的一些变量,封装各种功能的函数,提供相应的接口,按照逻辑进行调用。

    原谅我的这种认识,因为当时的我还在51学习板上跑我的C程序,撑死一两百行代码。

    改变我对C代码认识的,其实源自于我恶补计算机相关课程的时候。

    那段时间就觉得计算机好神奇,奇怪这玩意是怎么跑起来的?

    《计算机:一部历史》、《深入理解计算机系统》、《计算机是怎样跑起来的》、《程序是怎样跑起来的》、《操作系统之哲学原理》、《网络是怎样连接的》…………(需要这方面电子书的朋友也可以给我留言)

    看了很多书和课程,但现在回想起来好像又什么都没记住,因为计算机的历史真的是太精彩了,涌现出的一个又一个天才,创造出一个又一个的改变和正在改变这个世界的技术……

    哎呦,跑题了,咱们回到C上。

    就像有一句话说的那样:

    你可以不写C语言的程序,但是你不可能不用C语言写的程序.

    我们可以需要深挖一下有哪些软件以 C 语言为主

    • 操作系统内核。例如 Linux 等
    • 微控制器
    • 视频编解码器
    • 底层共享库,例如 OpenSSL 等
    • Unix 命令行工具,例如 ls、cat 和 git 等

    现在几乎所有基础设施,操作系统都有C语言的痕迹,我们很难离开它。

    如果说未来有一天产生一种新的语言终将代替C,我想这种语言最起码要有以下几个特点:

    • 能够重用现有的 C 库;
    • 建立在已有的知识和惯例之上;
    • 没有垃圾回收,或者采用手动内存管理;
    • 控制可执行文件的大小;
    • 系统层面的友好。你需要能够操纵位和字节。你需要良好的二进制运算符和指针;
    • 逐步替换 C 代码。能够良好地兼容 C 的可执行文件。

    当然这些也都是个人观点,纯属没事瞎想,未来的事谁说的清楚。

    对于现在我来讲,C语言仍然是一门很高深的语言,距离掌握它还有很长一段路要走。

    工具语言

    虽然我平时学习生活中都以C语言为主,但一旦涉及到某些领域的功能,还是会去接触新的语言。

    比如,C++做QT开发

    比如,HTML5和CSS写一些简单的网页

    再比如,用Python爬取一些数据,并进行数据处理

    等等……………………

    最后

    归根结底,编程语言只是一种工具,一种我们和计算机进行交流的工具。

    编程语言之间没有高低贵贱,更没有歧视链,有的只是不同的应用环境适合不同的语言,一切都是时代造就的趋势。

    参考文献:

    C语言能够被替换吗? | 程序师 - 程序员、编程语言、软件开发、编程技术

    http://t.csdn.cn/SLK0T

    http://t.csdn.cn/CpCFM

  • 相关阅读:
    Gen-AI时代天下英雄谁主沉浮?赛场见!卷起来!
    牛客刷题<17>用3-8译码器实现全减器
    传输层协议——UDP
    k8s集群安全机制
    Webpack常见的插件和模式
    极简7照训练法,奇趣相机引领儿童AI摄影潮流
    知识蒸馏IRG算法实战:使用ResNet50蒸馏ResNet18
    gromacs中一些有用的分析命令
    计算机系统(11)----- 线程概念
    【Java】jdk9为何要将String的底层实现由char[]改为byte[]
  • 原文地址:https://blog.csdn.net/weixin_43824188/article/details/125627442