开发人员经常使用他们选择的编码语言作为身份标识——比如Java开发人员和Python开发人员,但是区块链的出现意味着是时候改变我们对开发的看法了,以及典型角色是如何变化、重叠和变得更加流畅的时候了。
不同语言框架的固有功能反过来又造就了新一代开发人员,他们精通并丰富了特定领域的知识。随着开发者的头衔向各个方向发展,人才群体找到了完全不同的领域,以垂直的姿态登陆,这些都是由新技术和创新技术的到来而形成的。在世纪之交,区块链是颠复性的典型代表,它反映了在日益复杂的科技生态系统中人才的广度。
区块链:把代码当作一个流动的概念
区块链是在诸如加密学、分布式系统和应用程序开发等成熟学术领域的基础上发展起来的,自那以后,它的繁荣已经被更务实的感觉所取代,以它的价值而非其潜力来衡量。在加速创新曲线的过程中,区块链开发商必然会欢迎来自不同背景和学科的人才加入其行列。
不同层次和技术专长方向之间的细微差别,表现在从全栈开发人员到语言设计者的一系列角色中,进而揭示代码是一个动态的、流动的概念。这种接触超越了人们经常探讨的共识算法和协议的基础设施描述,在编译器工程师为不同平台设计、开发和测试智能合同所使用的编程语言时,把人们的目光投向了起来,Solidity就是如此。Solidity是事实上的语言,也就是以比特币为目标设计的低端定制的区块链语言。
从编译器工程师的角度进行梳理,将提供一个难得的机会来了解幕后的操作,因为编织技术结构的实际语言将不仅仅被理解为代码。
语言设计:实验与教育
今天,项目正积极地采用各种编程语言来实现不同的目的。以以太坊为例,它使用了面向对象的图灵完整语言Solidity来实现和部署智能合约,而Zilliqa则侧重于Scilla,这是一种非图灵完整的原则性语言,它借用了函数式编程原则,允许正式验证,开发人员可以应用数学证明来满足安全条件。
虽然兴趣常常被认为是希望加入该行业的有抱负的开发人员的切入点,但语言设计的严谨性要求更多的正规和制度化的学习,编译器工程师来自计算机科学的背景,通常是研究生或研究生水平。作为编译工程师,这需要对高级编程语言的深入理解,将代码结构的语义转换为所需的新语言。在保证输入/输出的效率和对编辑过程行使自主权之间的良好平衡,语言的实现和处理是一项持续的优化工作。
虽然数据结构和算法概念的知识存储无疑是有帮助的,但大多数开发人员也是终生学习者,超过90%的开发人员拥有校外自学的新语言、框架或工具。同样,编译器工程师在提出和解决现有的技术问题时,也会不断地进行独立思考;研究成为一个自然的行动过程,因为他们考虑的替代方案坐在通常的范式之外。
有趣的是,在新兴的区块链行业中,无数的角色指向了该领域中重叠的专业知识,知识共享已经成为驱动开发人员作为一种集体力量的必要收益。
现在看得见的
虽然组织中的每个职位对其所做和交付的工作都有意义,但编译器工程师尤其必须认识到自己在一个更大的、相互关联的系统中作为一个齿轮的角色,表明他们在工程变革中工作的可能性。由于区块链项目竞相实现去中心化的、不可信任的经济的愿景,传统上受过培训的开发人员将有机会在几十年的学术文献中添加内容,使具有真实世界背景和影响力的用例结出硕果。
对于开发人员来说,区块链本身就是一个独特的机会,让开发者可以在前所未有的空白中尝试和试验他们的想法,因为他们可以利用这个机会来制定资源板,并为技术的未来建立最佳实践和标准。随着对开发人员意图的日益重视,编程再次走到前台,不仅展示了不断变化的技术前景,而且为编程机会提供了一条新的道路。
本文地址: https://www.xiguacaijing.com/news/zhuanlan/2019/12826.html
赞助商