首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Linux网络编程。我能从什么开始呢?

Linux网络编程。我能从什么开始呢?
EN

Stack Overflow用户
提问于 2010-03-18 23:52:56
回答 6查看 4.2K关注 0票数 8

我最近对Linux网络编程很感兴趣,并且读了很多书(Beej's Guide to network Programming)。但现在我很困惑。我想写一些东西来练习一下,但我不知道具体是什么。能给我推荐几个项目开始吗?

谢谢。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-03-19 00:11:14

我不确定您希望如何深入地开始您的Linux网络编程职业生涯,但如果您只想开始处理套接字,那么最简单的示例可能是生产者/消费者对或Echo服务器。另一个很好的来源是查看来自任何数量的大学/学院关于分布式计算的课程的一些示例/作业。

生产者/消费者

这可以在您的计算机上的一对终端上运行以进行测试。创建两个应用程序:

(Ctrl-D).

  • Consumer程序从监听端口开始,等待生产者的连接,读取生产者发送的消息,输出该消息,关闭与生产者的连接,并在发送中断(-C)时优雅地退出。

Echo服务器

类似于生产者/消费者的想法。

  • 回显服务器以侦听端口启动,等待连接,从客户端读取消息,将相同的消息发送回客户端,并在发送中断时正常退出(Ctrl-C)。
  • 回显服务器启动时使用主机名和端口,从用户获取一行输入,连接到服务器,发送输入,读回响应,比较这两行以验证它是否为回显,请求另一行输入,并在它到达EOF时结束。
票数 5
EN

Stack Overflow用户

发布于 2010-03-18 23:54:08

写一个非常简单的愚蠢的web服务器,它将接受端口80上的连接,并提供后台页面。

然后,您可以扩展它以支持其他媒体下载(图像等)。

然后你可以添加一些(预先构建的)脚本语言解释器,它将处理PHP、Perl等语言的页面。

在这个过程中你会学到很多东西。

票数 6
EN

Stack Overflow用户

发布于 2010-03-18 23:57:13

我会从开发一个简单的多人游戏开始,比如tic-tac-toe:

  • 使用ncurses (轻松编程您的图形用户界面)
  • 管理一个大厅,玩家可以在其中加入
  • manage游戏(由要求玩另一个游戏的玩家启动)
  • manage梯子或ncurses为所有加入的人提供全球聊天,并为玩

的人提供本地聊天<

  • >F211

当然,我推荐了井字游戏,但你也可以选择另一个类似的游戏(规则很简单)..重要的部分是必须关心许多客户端,这些客户端也在一起玩游戏(处理数据转发和游戏管理),并向玩家发送状态(如游戏列表)。

这个例子的好处是你有一个两级的协议:

  • 第一级处理全局action
  • second级处理单个游戏
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2471249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档