For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
事件驱动编程开发是目前大多数软件开发程序员都在学习的一个编程开发技术,而今天我们就通过案例分析来了解一下,事件驱动编程都有哪些常见问题。
计算管道是处理数据转换和分析问题的一种极佳的方法,但许多问题需要程序作为持久性服务运行,等待事件发生,然后处理那些事件。在这类服务中,为了能够同时容纳多个用户(或多个操作),通常必须要并发地处理多个事件。
JavaScript初是作为Web浏览器的事件处理语言而开发的,允许网站开发者在本地响应客户端操作(如鼠标点击和按键敲击)和事件(如网页完成了渲染)。所有现代浏览器都支持它,它与HTML5领域对象模型(DOM)一起,已经成为一种定义用户界面外观和行为的事实上的标准。
Go是谷歌设计的一种用于创建高度可伸缩的Web服务的专用语言,并且已经被证明是一种非常适合开发命令行应用程序的语言。从编程语言设计的角度来看,Go有趣的方面是在其核心并发模型中使用了通信顺序进程(CommunicatingSequentialProcesses)概念。
Erlang是由爱立信设计的专用语言,用于创建高度可靠的电话交换机以及类似的设备。它被用于开发出了流行的RabbitMQ消息代理中间件。Erlang使用Actor模型作为核心的并发原语,在执行线程之间传递消息,而不是让它们直接共享数据。虽然我从未用过Erlang编程,但我的一份全职工作涉及一个基于Actor的C++并发框架,而该框架由一名前爱立信工程师开发,另外,我自己也开发了一个这样的框架,基于德州仪器(TexasInstrument)的轻量级DSP/BIOS运行时(现在的TI-RTOS)里面的TSK(Task)和MBX(Mailbox)原语。
Elixir出现在这份清单里,因为它被设计运行在ErlangVM上,提供了与Erlang相同的并发语义,同时还提供了一系列在语言层面上的特性,打造出一个更加全面的环境,更有可能吸引其它语言例如Python、Java或Ruby的开发者。
学习这些语言,你可以深入了解Python对并发和并行的支持,包括原生协程、基于生成器的协程、concurrent.futures和asyncio标准库模块、三方网络服务开发框架(如twisted和Tornado)、Django中引入的channel概念、GUI框架中的事件处理循环。Python进阶。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。