大家好,这里是链客区块链技术问答社区,上班的第一天,祝大家开工大家!今天讲一讲哪些开发语言的也行有助于开发系统。
首先我认为,大型系统指的是,团队里面的人你认识和沟通不超过5%、没有文档就无法理解大多数人当初写那几行代码的意图、代码具有或者接近8位数行、而且需要长期维护、具有完善的自动化测试,所以制度本身和(面试、考核或certification等的)高门槛才是保证项目本身可以健康的生存下去的最重要的因素的系统也不要以为这种代码不多,windows、ffice,maya,、ca软件、战斗机控制程序、还有出了bug就可以吧杨利伟杀死的这些要命的程序—这些通常都复杂。
本周NFT销售额增长18.43%,以太坊链上NFT以2.385亿美元销售额居首位:2月12日消息,本周NFT销售额增长18.43%,超过200个发行NFT的项目的销售总额达到2.7268亿美元。其中基于以太坊的NFT占总销售额的85.76%,为2.385亿美元,较前一周增加了25.42%。
Solana在过去一周的NFT销售额中排名第二,为20415068美元。但是,这一数字比前一周减少了25.95%。紧随以太坊和Solana之后的是Immutable X、Polygon和Cardano的NFT销售额。上周,Immutable X的NFT销售额为6222375美元,Polygon的NFT销售额为3469913美元,Cardano的NFT销售额为3132714美元。(Bitcoin.com)[2023/2/12 12:01:29]
完成这种系统,需要这个团队在根需求无关的、跟开发有关的几乎所有方面都实行独裁统斫以这种系统需要语言提供什么样的功能呢?我们知道,因为这几千万行都是同一个软件的代码,所以里面必然具有无数的互相依赖的模块,一万多人开发十几年下来,什么是什么都基本上理不清楚了。所以这个时候你做一个修改,最重要的是要保证不要把别人的代码搞烂。就算你跑完了所有自动化测试,如果存在一些东西是自动化测试所无法覆盖的,那你觉得你可以靠人肉排除来保证所有已知的、修过的bug不再出现吗?
USDT稳定币市场主导地位升至49.24%,创2021年11月以来最高水平:金色财经报道,根据Defillama数据,USDT稳定币市场主导地位已升至49.24%,创下自2021年11月以来最高水平,USDC市场主导地位约为31.05%,BUSD为11.52%。整体而言,排名前三的美元稳定币控制着当前92%的稳定币市场份额。
另据CryptoCompare稳定币报告,截至2023年1月,稳定币总市值已连续10个月下跌,当前约为1370亿美元,其中USDT小幅上涨0.82%至667亿美元,而其主要竞争对手USDC和BUSD市值则分别下跌2.27%和3.97%,降至431亿美元和161亿美元。[2023/1/29 11:35:17]
这当然是不可能的,尽管不能100%解决问题,但是一个强大的静态分析软件是可以帮我们解决5%的问题(就是那些不能被自动化测试所覆盖的问题里面的95%)。于是这就要求这个语言必须要有一个强大的静态分析软件,或者potentially你可以写一个强大的静态分析软件。写一个静态分析软件面临的最大的困难有两个,一个是nameresolving,另一个是referenceresolving。nameresolving的意思就是,你得到了这个名字,你知不知道他究竟代表的是你源码里面的哪一个函数或者变量。referenceresolving的意思就是,你得到了两个指针,你知不知道运行到某一行确定的代码的时候,这两个指针是否指向同一个对象?
兴业银行成为第10家数字人民币运营机构:金色财经报道,在国务院新闻办公室举办的新闻发布会上,人民银行货币政策司司长邹澜介绍,在各机构的支持下,央行正扎实稳妥推进数字人民币试点测试。兴业银行将成为继工商银行、农业银行、中国银行、建设银行、交通银行、邮储银行、招商银行、网商银行(支付宝)、微众银行(微信支付)之后的第10家数字人民币运营机构。此外,数字人民币已从原来的“10+1”试点地区拓展到15个省市的23个地区,深圳市、苏州市、雄安新区、成都市取消了白名单限制。[2022/7/14 2:12:36]
于是为了让静态分析软件更容易的做出来,我们需要语言本身可以让我们很轻松的分析出这两个resolving的内容。很难分析nameresolving的般是动态类型语言,譬如python、Javascript、ruby这些。很难分析referenceresolving的般是带指针和引用的静态类型语言语言,譬如Java、C#
我们知道,两个都容易的一般指的是那些在语法上要求你明确副作用的语言,譬如Haskell如果世界上大部分人都是从isp/scheme/ocaml/haskel开始学习的话,其实学习Haskel并没有那么难一旦你习惯了C语言那一套你就晚了)。只要你招得到足够多的人,并且让那些人满足你制作出来的规章制度的话,Haskell是可以用来做大型系统的。只不过这个事情在现实里面般比较难满足,那nameresolving和referenceresolving取舍哪个好?
因为解决referenceresolving是在nameresolving解决了的基础上才可以解决的,所以你只能保留nameresolving。如果一个语言没有nameresolving的困难,那你的静态分析软件的难度瞬间就下降了许多。根据上面的描述,这方面的代表自然是静态类型语言。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。