想象这般场景,有个从事C语言编程十几年的程序员,半夜三点时,仍在瞅着屏幕上的内存报错,急得抓耳挠腮。指针存在越界情况,出现内存泄漏问题,还有悬空指针现象,这些词汇仿若噩梦一般,纠缠着每一个编写C语言程序的人。并非是技术水平不足,而是C语言这一存在了50年的“老马”,所背负的包袱实在重了些。
可是近来,有一门名为Hare的开源编程语言暗暗地火起来了。它的定位十分直白:简单且稳定,还健壮。更为刺激的是,它所要挑战的恰恰就是统治了系统编程长达半个世纪之久的C语言。
Hare凭啥敢“硬刚”C语言?
先说一下C语言的痛点,它极为灵活,灵活得有时会让人产生畏惧之感。手动管理内存恰似走钢丝,申请之后若忘记释放,便会出现内存泄漏的情况;若释放之后仍继续使用,程序就会崩溃。
在嵌入式系统当中,要是一个malloc稍有不慎,就极有可能致使运行了好多天的设备瞬间死机。更别提那些令人头疼不已的指针操作了,哪怕是经验极为丰富的老手,也不敢信誓旦旦讲自己从来都没踩过坑。
自称搞编程的Drew DeVault,是Hare的开发者,这人挺实在,他表示:“我们对C是有一定好感的,不过呢,就是想弄出一个经过保守方式改进的版本。”。
有这样一种编程语言,它被称作Hare,它保留了C语言那种静态类型以及手动内存管理的特性,然而却把那些特别容易让人踩到坑的地方给包裹起来了。它的标准库里面内置了加密、网络、日期处理等常见又实用的功能,可不像C语言那样动不动就需要去寻觅第三方库,如此一来便避免了依赖方面出现混乱的情况。
瞧一瞧一段Hare的“Hello World”代码,你就会晓得它究竟有多清爽 ,简直清爽得很!
没有复杂的头文件,没有繁琐的指针操作,干净利落。
编程语言一直在“变简单”
事实上认真思索一番,编程语言的发展历程就是一部持续降低门槛的历程。先是从汇编演进到C,接着从C发展到Java/Python,而后又到如今的Hare,每一回的进步都是为了促使开发者将精力从“与机器较量”转向“解决问题”方面来。
野兔的聪慧之处在于,它并未如同锈或齐格那般去追寻颠覆性的创新,而是实施了减法操作:去除掉C语言的“历史包袱”,留存下最为核心的能力,使得编写系统程序变得犹如搭建积木那般明晰。当下,野兔已然能够用以编写操作系统内核(赫利俄斯)、密码管理工具(秘密),甚至还有人运用它制作出了俄罗斯方块。
那么,编程的终点是“无代码”吗?
沿着这个思考方向继续深入去想:要是语言变得越发简洁,那么其最为极致的情形会是怎样的呢?大概状况便是无需编写代码了。
那听起来好似荒诞不经的奇谈,然而在企业管理软件范畴之内,这般事情已然成为现实。拿国内的无代码平台即云表平台来讲,业务相关人员根本无需懂得代码知识,凭借“绘制表格”的办法便能够搭建出一个进销存系统,或者是ERP。
犹如Hare于系统层面追寻“稳定简单”这般,云表在应用层级所追求的乃是“随需而变”。
在山西,有一家化工厂,它运用云表系统,将财务、生产以及销售的数据全部打通了。以往,若要计算一笔利润账,需要分别向三个部门索要表格,之后手动进行核对,这一过程得花费两三天时间。然而如今,数据能够实时得到刷新,只需轻轻点击一下,便可以知晓是哪个车间的物料出现了超量情况,又是哪一笔订单对利润产生了影响。而这一切操作的背后,没有一行代码,完全是依靠配置来达成的。
小结
终究而言,工具始终处于变化之中,先是从汇编转变为C语言,接着又从Hare演变成无代码平台,然而,其核心未曾有过改变,一直都是为了达成解放生产力这一目的。
未来的开发模式,大概是专业的底层开发者,运用Hare这类工具,筑牢基础,业务人员借助无代码平台,搞定日常业务,二者各司其职,既稳定又高效,这也许就是编程未来的模样。
对此,您怎么看?非常欢迎您在评论区补充观点或者干货。