服务器所用到的知识:TCP/UDP,最基本的;
并发——你可以选择使用select、poll,或者是多线程、多进程:如果你使用多线程,那么就必须使用同步技术——信号量、互斥体、条件变量的一种或几种,并且对于多线程技术,你还需要考虑使用进行线程分离与合并;
如果你使用了多进程,那么同步技术就不是你需要考虑的了,你需要考虑的是进程相关的问题了,你是使用fork还是vfork,你该如何处理客户端的请求,如何处理客户端断开连接后保证能够处理完数据并且没有僵尸进程产生,你还需要考虑高并发的问题;
你发送接受数据的时候,采用何种方式,是阻塞的还是非阻塞的,还有连接超时、重传等问题
你是选择TCP还是UDP,如果选择UDP你可得忙了,需要你自己去进行重传验证,模拟TCP的三次握手,保证数据不会丢失,保证数据的有序性;
还有其他很多需要你考虑的,以上都是指在Linux下的C++,本人对windows C++不了解。
推荐书目:UNIX高级环境编程,UNIX网络编程,卷一。C++只不过是你使用这些技术的方式,不管你使用C还是C++,你都可以使用从这两本书中学习到很多有用的知识,但是不能保证你就可以写出高质量的服务器程序。
服务器开发需要学习什么?
服务器所用到的知识:TCP\/UDP,最基本的;并发——你可以选择使用select、poll,或者是多线程、多进程:如果你使用多线程,那么就必须使用同步技术——信号量、互斥体、条件变量的一种或几种,并且对于多线程技术,你还需要考虑使用进行线程分离与合并;如果你使用了多进程,那么同步技术就不是你需要考虑...
业余时间学习软件开发需要学习知识点有哪些呢?
业余时间学习软件开发需要学习的知识点有计算机基础,计算机网络编程,计算机科学与技术,计算机数据,计算机逻辑思维,下面是详细的学习部分知识点。1.确保堆栈上至少有 n 个额外空位。 如果不能把堆栈扩展到相应的尺寸,函数返回假。 失败的原因包括将把栈扩展到比固定最大尺寸还大 (至少是几千个元素)...
我想自己开发软件需要学习什么??
要自始自终地加强英语的学习。因为目前的计算机程序设计语言主要是外国开发的,编代码的主要语句往往是英文,中文通常是做解释和说明用。有一定的英文基础,在计算机学习上可以事半功倍。方法\/步骤2:重视编程基本功的学习 学习软件需要什么?一个优秀的程序员也不是十天半个月就能够造就出来的,必须要扎扎...
学软件开发需要有什么基础?
学习软件开发需要大量与数学、英语打交道,所以需要有一定的数学、英语基础。有了这个基础,学起来可以事半功倍。当然,对数学、英语的要求也没有想象中的那么高。2、基础编程语言 编程语言是学软件开发的钥匙,初学者好根据自身的喜好或者职业规划选择语言。目前主流的编程语言包括Java、PHP、.net、C#语言...
软件开发需要学习什么知识
软件开发需要学什么1、基础知识学习软件开发需要大量与数学、英语打交道,所以需要有一定的数学、英语基础。有了这个基础,学起来可以事半功倍。当然,对数学、英语的要求也没有想象中的那么高。2、基础编程语言编程语言是学软件开发的钥匙,初学者好根据自身的喜好或者职业规划选择语言。目前主流的编程语言...
学软件开发需要有什么基础?
5. 数据结构与算法:掌握常用的数据结构和算法,如数组、链表、栈、队列、排序算法、搜索算法等。6. 前端开发:学习HTML、CSS和JavaScript等前端开发技术,掌握网页布局和交互效果的实现。7. 后端开发:掌握服务器端开发技术,如Java后端开发、Python Django框架、Node.js等。8. 版本控制系统:了解使用Git...
对于服务器开发需要学习什么?
还有其他很多需要你考虑的,以上都是指在Linux下的C++,本人对windows C++不了解 推荐书目:UNIX高级环境编程,UNIX网络编程,卷一。C++只不过是你使用这些技术的方式,不管你使用C还是C++,你都可以使用从这两本书中学习到很多有用的知识,但是不能保证你就可以写出高质量的服务器程序。
软件开发需要学什么?
2、熟悉一种操作系统(Windows、Unix、Linux\/类Linux、Android、IOS等),3、简单的算法和数据结构。先确定你学习完软件开发后想从事的工作,比如游戏开发(LOL,吃鸡,手游等);前端开发(网页、微信小游戏、Android\/IOS APP等);后台服务器,数据库(支撑前端运行的技术和数据);嵌入式(驱动、单片机...
学软件开发要会什么
学软件开发要会:1、编程语言:如Python、Java、C++等。2、编程基础:掌握变量、数据类型、条件语句、循环结构、函数、面向对象编程等。3、开发工具:如IDE或文本编辑器。4、数据结构和算法。5、版本控制工具:如Git。6、软件开发流程:如需求分析、设计、编码、测试和部署等。7、调试和测试:学会调试...
新手学JAVA都要学哪些知识啊
Java学习基础路线(内容) 1.Java SE部分,初级语法,面向对象,异常,IO流,多线程,Java Swing,JDBC,泛型,注解,反射等。 2.数据库部分,基础的sql语句,sql语句调优,索引,数据库引擎,存储过程,触发器,事务等。 3.前端部分, HTML5 CSS3 JS, HTML DOM Jquery BootStrap等。 4.Java EE部分,Tomcat和Nginx服务器搭建...