本人最近接触linux,学习SOCKET,但是不知道他有什么用,感觉入门也很难,手上有TCP/IP APUE UNP这类的书,但是感觉有点难以理解,请问该怎么学习,以后的发展方向是怎样的,需要看驱动设备程序么?
如果你还不知道有什么用处,建议你先把网络编程放一边;先学习你目前最需要用到的。等到你有着方便的需求时,你自然就明白网络编程有什么用处了。这也是学习的一种方法,需求导向型的学习方法会有很高的效率。没有需求比没有兴趣更让你的学习效率变得很低。如果真想知道用处,以下可以作为参考:
网络编程可以编写网络通讯程序,比如聊天程序、数据传输程序、文件传输程序等到;
可以让你对网络通讯有更深的理解,当你遇到网络通讯方面的问题时,会有很深入的分析;
为学习涌现很多分布式应用系统打下坚实的基础。
学习网络编程,不需要学习驱动设备程序,两者基本不相关。
该如何学习? 建议你:
先找些样例,先学习编译别人的样例,并进行测试,观察。
模仿样例,进行一些改动,然后自己调试、测试、思考;
然后拟定一个题目,比如:传输一个文件到远端;试着自己独立完成编译、调试、测试;
对于服务器的构建之类的呢?还有SQL之类的东西?只需要研究网络编程就行了么?
追答”服务器“的含义很广很大,你是指“UNIX服务器”、数据库服务器、Web服务器、还是J2EE服务器?还是什么别的? 你问SQL之类,大概你指的是数据库服务器,那你就学习Oracle/DB2/Informix/MySQL/SQL Server中的任一个就可以了。不用学习什么网络编程,当然了如果懂网络编程会对你有帮助,就目前你的状态来看,先学习数据库服务器更现实。