对于很多想踏入网络编程世界的人来说,网络编程领域里复杂的网络协议知识常让人望而生畏。不过,川大锦江学子的创新作品《Copycat高性能网络应用开发框架》带来新惊喜:想象一下,当网络编程像“撸猫”一样放松,几个步骤就开发出属于自己的服务器,将创意转化为作品是多么美妙的体验。

我校计算机学院2022级计算机科学与技术专业学生谭晓静、2022级物联网工程专业学生黄莉雯便是这神奇“魔法”的创造者。她们同中山大学、重庆大学、香港城市大学、澳门科技大学等两岸四地近百所高校的师生同台竞技,凭借作品《Copycat高性能网络应用开发框架》斩获海峡两岸暨港澳地区大学生计算机创新作品赛二等奖,取得四川省最好成绩。接下来,【多彩锦江人】带领大家一起开启这场网络编程与“撸猫”奇妙融合的探秘之旅。
让网络编程像撸猫一样简单
“让网络编程像撸猫一样简单”这一理念贯穿于《Copycat高性能网络应用开发框架》设计中。“对于非专业人士或网络编程初学者而言,这个框架的友好之处在于它屏蔽了SOCKET编程的底层细节,用户只需在其基础上专注于业务开发,无需深入了解复杂的网络协议知识。例如,我们制作了一个基于该框架的聊天demo,相较于从头编写代码,步骤大幅减少,充分体现了框架的易用性。”谭晓静和黄莉雯介绍道。

假设你想要开发一个更好的即时通信软件,跟微信竞争,但是不具备高性能网络编程的技术,便可以选择Copycat Framework,只需三步,即可开发属于你的全新聊天服务器。第一步,“懂猫语”:设计一个用户聊天时互相发送的数据格式,如选择一个解码器,对用户间互相发送的消息进行解码,而Copycat正好内置了多种解码器,可以覆盖日常应用场景;第二步,“掌握‘撸猫’要点”:处理聊天相关业务功能,如注册、登录、身份验证,是否支持群聊,聊天信息是否保存等基础设置;第三步,“实践撸猫”:利用Copycat的API写一些配置和启动的代码,点击完成,一个由你创作的全新聊天服务器就此生成。
以netty为师 与netty不同
谈及《Copycat高性能网络应用开发框架》的灵感源泉,谭晓静与黄莉雯表示,在大学课堂学习中,她们对网络应用开发产生了浓厚兴趣,在察觉到国内网络应用开发领域框架开发稀缺后,她们由此展开调研。
调研显示,目前国内网络应用开发领域框架开发虽有知名的 netty(一个java开源框架),但其侧重通用网络编程,在其他领域仍有很大拓展空间。谭晓静与黄莉雯便计划以netty为参考,秉持“以netty为师,与netty不同”的理念,朝物联网方向的框架开发进行探索创新,打造一款国产、更契合初学者,且操作简易的框架,助力设备连接、数据处理、云服务等。

开发过程中,《Copycat高性能网络应用开发框架》主要分为decoder、frame和handle三个部分。黄莉雯负责编写decoder部分,谭晓静承担其余两个部分的开发工作。开发过程并非一帆风顺,其中最大的技术难题是开发框架制作难度极高,尤其是各个协议的结构以及解析方法。得益于平时课上打下的坚实基础,她们迎难而上,在计算机学院王鹏飞老师的指导下,一点点进行架构设计与API规划,推动基础开发设计与后期优化工作顺利开展。
通过不懈努力,她们设计的协议开发框架可在10分钟内实现应用层协议,保障用户开发的应用程序与其他应用程序之间的互操作性和数据传输的可靠性。
多思考 重实践 功夫在平时
“此次参赛经历我们受益良多。” 谭晓静和黄莉雯回忆道:“在比赛现场,尽管彼此之间存在竞争,但大家都秉持相互鼓励与交流的态度,常就各自作品展开探讨,赛场氛围非常友好。最难忘的就是参观澳门理工大学,我们领略到了多元学术氛围与创新开放的思维,同时也有幸结识了众多志同道合的朋友们。”

“从大一到现在,从课堂到参赛并获奖,我们的成长和学校注重理论与实践相结合的教学理念息息相关。” 黄莉雯说道:“入学以来,老师一直鼓励我们多参加大型比赛,拿奖固然好,但最重要的是拓宽眼界、巩固知识。”“拿这次比赛举例,我们其实早在比赛前就有类似的想法,利用学校创新实验室的先进设备和软件资源进行了大量项目实践、技术探索和创新尝试,积累了经验,然后刚好赶上这次比赛,在对难点进行集中攻克后,顺利将想法变成现实,此次获奖其实也是‘功夫在平时’的体现。谭晓静补充道。
谭晓静和黄莉雯建议学弟学妹们,多思考,重实践,不仅要积极学习各种编程语言、数据库等基础知识,还要不断拓宽知识面,了解其他领域的知识,同时善于思考、分析和解决实际问题,这将有助于在开发过程中更好地理解问题,从而进行创新设计。
据悉,创新实验室作为万象城平台产教融合与个性化教育的先锋典范,充分挖掘并利用学校丰富资源,持续优化个性化教学框架。学校与产业界紧密合作,强化与业界龙头企业的战略伙伴关系,不断探索和实践新型教育模式,为学生提供丰富实践机会和广阔发展空间。目前,该实验室共有4个团队、16位指导教师,分别负责 “软件开发”“计算机应用”“人工智能”和“信息安全”4个研究项目。
近年来,创新实验室完成了绿满堂官网开发”“智慧水务管理系统”等30多个项目,打通人才培养到社会的最后一公里。此外,实验室学生还获得了“中国大学生计算机设计大赛”全国三等奖、“海峡两岸暨港澳地区大学生计算机创新作品赛”全国二等奖、“第十五届蓝桥杯全国软件和信息技术专业人才大赛”省一等奖等奖项80余项。



新闻中心记者 汤丁 余欣颖 邱红利
编辑 冯耀丹