1
wspsxing 2018-03-18 22:02:43 +08:00 1
作为写过的,给你一点点建议
如果注重功能,可维护性,建议用自己熟悉的语言写,基于 WEB 框架或者 HTTP 库维护容易,功能容易完善。 如果是注重学习网络编程,从 C/Tcp 写起可以学习网络编程。 从某个 HTTP 库写起可以了解 WEB 框架。 |
2
AngelCriss 2018-03-19 00:01:35 +08:00
那你看语言无关的啊,比如 tcp ip 详解
|
3
AngelCriss 2018-03-19 00:01:54 +08:00
@wspsxing 又见 Rust 巨佬
|
4
wellsc 2018-03-19 00:03:15 +08:00 via iPhone
先看书再看 tornado 源码
|
5
wspsxing 2018-03-19 00:09:24 +08:00 via Android
@AngelCriss 学霸你好。
|
6
hezhe 2018-03-19 00:14:24 +08:00 via Android
建议先自己写个对各种知识有粗浅了解,再结合书本学以致用,修改重构代码。
|
7
cyheng OP @wspsxing 感谢大佬建议。
@AngelCriss 那本书全是理论太枯燥,看不下去,我更偏向于实践中学习。 @wspsxing 书指的是哪本书? 我换一种问法吧,网络编程这个概念是不是跟语言无关…这本书虽然是用 c 作为例子,但是学完之后无论你用什么语言都能写一个服务器。如果大家回答是的话,我估计能下定决心啃这本书了。 |
9
wspsxing 2018-03-19 00:45:42 +08:00 via Android
@cyheng 我没有说哪本书啊,学霸说的那本 tcpip 详解作为理论补充也不错
你要是觉得 c 太繁杂,就用基于 java (你会的?)的 socket tcp 开始写呗,只是这个没有 c 的那么靠近底层。不过网络编程的知识是通用的。 |
10
susecjh 2018-03-19 00:53:30 +08:00
用 C 吧,贼爽
|
11
cyheng OP @wspsxing 额,刚才回复不小心 @错了不好意思……
听到你这句我就安心了,其实我担心的就是会出现某种才有的特定 api 的情况。照你这么一说,只是不同语言的实现繁杂程度不同? |
12
wspsxing 2018-03-19 01:11:27 +08:00 via Android
基本的 api 差不多的(名字不同也可能,但是肯定得有 api 才能满足需求啊,仔细看 api 文档),只是高级的语言可能没有暴露 c 那么多细节,然后写起来高级语言简单一些。
|
14
noli 2018-03-19 01:28:32 +08:00
从 netty 开始的话,就别想学到什么 TCP IP 的基础知识了吧。
本质上来说, 什么 netty nodejs 都是在 OS 提供的 C API 基础上,总结使用经验,经过大量抽象提炼的。 用来写写 网络应用是好的,但是对于了解低层原理没什么好处。 情形就好像让临床医生去研究 生物学,让建筑工程师研究理论物理——绕太远了。 |
15
zhengxiaowai 2018-03-19 10:26:14 +08:00
既然不想看理论,直接 github 中搜索源码看
|
16
AngelCriss 2018-03-20 00:46:48 +08:00
@cyheng 这玩意儿和数据结构算法啥的有共同点,套路都已一样的,你用 Java 也好 C 也好,最终都是调用系统函数,所以你看 unp 是没错的。
|
17
gabon 2018-04-30 11:54:51 +08:00 via Android
先看 unp 啊,我就是先看 unp 再看 netty。有了 unp 基础对理解 netty 有很大帮助
|