TCP协议图文秒懂
分类标签: TCP/IP
本文将简单介绍tcp协议的基本内容,主要包括一下四部分: tcp概述 TCP可靠数据传输 TCP流量控制 TCP连接管理 TCP概述 tcp是一个点对点端到端的传输协议,有一个发送方和接收方。 tcp传输的是可靠的按序到达的字节流 tcp采用流水线机制,提高传输的效率。TCP通过拥塞控制和流量控制机制来控制滑动窗口的大小阅读全文 »
详解Spring实现AOP的多种方式
分类标签: Java
目录 一、基于XML配置的Spring AOP 二、使用注解配置AOP 三、AspectJ切点函数 四、AspectJ通知注解 五、零配置实现Spring IoC与AOP 六、示例下载 AOP(Aspect Oriented Programming)面向切面编程,通过预编译方式和运行期动态代理实现程序功能的横向多模块统一控制的一种技术。阅读全文 »
一个前端妹子分享的Chrome浏览器调试方法,非常细!
分类标签: 前端开发 Chrome
引言“工欲善其事,必先利其器” 恩,这句话我觉得说的特别有道理,举个例子来说吧,厉害的化妆师都有一套非常专业的刷子,散粉刷负责定妆,眼影刷负责打眼影,各司其职,有了专业的工具才能干专业的事,这个灵感要来源于之前我想买化妆品时,店里的海报标语,由此联想到,如果你想在某个事情上做好,并且做的专业,那么你一定要把你的工具用好,这样才能事半功倍,我见过很多师兄师姐,他们写了很多代码阅读全文 »
吃透这11本书足以让你成为Java大神
分类标签: Java
“学习的最好途径就是看书”,这是我自己学习并且小有了一定的积累之后的第一体会。个人认为看书有两点好处: 1.能出版出来的书一定是经过反复的思考、雕琢和审核的,因此从专业性的角度来说,一本好书的价值远超其他资料 2.对着书上的代码自己敲的时候方便 “看完书之后再次提升自我的最好途径是看一些相关的好博文”,我个人认为这是学习的第二步阅读全文 »
学编程选择哪个语言?——编程语言人员需求和难度分析
分类标签: C C++ iOS Java PHP Android 前端开发 Python
1、C语言 C语言主要用于驱动开发、操作系统、内核开发,嵌入式(单片机)、交换机、路由器等网络设备的开发。 ①、偏硬件方面,相当于目前互联网和移动时代,可能薪资水平会低一些。如果之前学习电子自动化的或者对硬件感兴趣的,可以选择这个方向。 人员需求:★★★★ 难度指数:★★★★ ②、偏向底层开发的:难度很大,比如要看懂Linux内核代码。简单说,如果你读书的时候,数学物理不是很厉害的,不阅读全文 »
C++ 对象的内存布局
分类标签: C++ VC++
对象的影响因素 简而言之,我们一个类可能会有如下的影响因素: 1)成员变量 2)虚函数(产生虚函数表) 3)单一继承(只继承于一个类) 4)多重继承(继承多个类) 5)重复继承(继承的多个父类中其父类有相同的超类) 6)虚拟继承(使用virtual方式继承,为了保证继承后父类的内存布局只会存在一份) 上述的东西通常是C++这门语言在语义方面对对象内部的影响因素阅读全文 »
编程语言 5 月排行榜:Java 和 C 下跌厉害
分类标签: Java C C++
TIOBE 最近公布了 2017 年 5 月编程语言指数排行榜,排名前三的还是 Java、C、C++,Python 和 C# 排第四和第五。自从 2016 年开始,Java 和 C 的比率数据在下降。和去年同期相比,两者已下降超过 6%。流失的部分,哪些编程语言受益了呢?嗯,是其他语言都受益了。 随着越来越多的领域采用软件,C(底层软件开发)和 Java(高级软件开发)显然无法都满足了。阅读全文 »
十个最有“钱景”的IT技能 你掌握了哪个?
分类标签: 大数据 项目经理
IT行业的失业率仍然徘徊在历史低点,其中某些岗位(如网络和安全工程师和软件开发商)的失业率在1%左右。 Robert Half Technology最近的一项调查显示,大多数CIO将扩大IT团队或专注于填补空缺职位,而TEKsystems的2017年IT预测结果也十分乐观,IT预算正在反弹回暖。 总体而言,今年IT人员的前景乐观,尤其是那些掌握了特定技能的人士。阅读全文 »
一篇文章看明白 C++ 虚函数表
分类标签: C++
C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。阅读全文 »
教你这样提高Hibernate的性能
分类标签: Java
1.抓取策略(Fetching strategies) 抓取策略(fetching strategy) 是指:当应用程序需要在(Hibernate实体对象图的)关联关系间进行导航的时候, Hibernate如何获取关联对象的策略。抓取策略可以在O/R映射的元数据中声明,也可以在特定的HQL 或条件查询(Criteria Query)中重载声明。 Hibernate3 定义了如下几种抓取策略.阅读全文 »
敏捷开发白话篇
分类标签: 敏捷开发
敏捷的意思就是反应迅速, “为什么要反应迅速? ”看看那么多996公司就知道了, “市场变化越来越快,客户要求越来越高, ”为了满足用户的需求, “人家一个星期发一个版本, 我们仨月才能憋出一个来 , 那还不被打的满地找牙? 问题是如何才能反应迅速? ”先来看一个场景: 1、残酷的现实 软件开发有一大难题就是客户脑子中的需求难于描述出来阅读全文 »
C/C++返回内部静态成员的陷阱
分类标签: C C++
在我们用C/C++开发的过程中,总是有一个问题会给我们带来苦恼。这个问题就是函数内和函数外代码需要通过一块内存来交互(比如,函数返回字符串),这个问题困扰和很多开发人员。如果你的内存是在函数内栈上分配的,那么这个内存会随着函数的返回而被弹栈释放,所以,你一定要返回一块函数外部还有效的内存。 这是一个让无数人困扰的问题。如果你一不小心,你就很有可能在这个上面犯错误。阅读全文 »
怎么解决Hibernate + Json的死循环问题
分类标签: Java
【问题】如题所示,在我们使用hibernate框架而又需要将对象转化为json的时候,如果配置了双向的关联关系,就会出现这个死循环问题 异常信息:... 关键字是net.sf.json.JSONException: There is a cycle in the hierarchy!,意思是在层次关系里有一个循环 【原因】为什么会这样呢?原因在于你要转化的对象里配置了对另外一个对象的关联,而那个阅读全文 »
C++实战项目:坦克大战(十)
分类标签: C++
上一篇中我们已经得到了一个比较完善的游戏,不过有人反馈说目前的难度较大,第三关已经很难通过了。今天我们来做点小的修改。 如果你认为我们要通过调整参数降低游戏的难度,那你就错了。作为游戏的开发者,我们最大的优势就是拥有上帝视角,可以随意让游戏按照我们的要求变化。 添加奖励 目前的三滴血不太够用,我们添加一个功能,每得到500分就另外获得一滴血。实现起来很简单,只需要在计算分数的时候修改就好阅读全文 »
看看别人的Java面试 你是否又有学习的动力了?
分类标签: Java 求职
马老师说过,员工的离职原因很多,只有两点最真实: 钱,没给到位 心,受委屈了 当然,我是想换个平台,换个方向,想清楚为什么要跳槽,如果真的要跳槽,想要拿到一个理想的offer,除了运气,基本功也要足够的扎实,希望下面的面试经验能给你们能够提供一些帮助。 项目经验 面试官在一开始会让你进行自我介绍,主要是想让你介绍一下自己做过的一些项目阅读全文 »
C++实战项目:坦克大战(九)
分类标签: C++
现在我们的游戏已经初具规模,但如果主战坦克一直是无敌状态那也很无趣。今天我们来让敌人的炮火发挥作用。 主战坦克被击中 当敌人的炮弹和主战坦克接触时,主战坦克生命值减一。我们预设的主战坦克共有三条命,被击中三次后游戏结束。 为主战坦克添加碰撞检测大家应该很熟悉,修改之前的CheckCrash()函数如下:...阅读全文 »
C++实战项目:坦克大战(八)
分类标签: C++
上一篇中设计出了关卡和分数,但每新开始一个新的关卡时没有任何提示信息,这样略显突兀。我们需要在每一个关卡开始之前给出一个提示信息,同时让玩家有休息的时间。 绘制提示信息 我们要在Battle区域中,显示一个矩形,中间打印关卡号。效果如下: 实现起来也很容易,在Graphic类中添加一个ShowGameLevel函数:...阅读全文 »
C++实战项目:坦克大战(七)
分类标签: C++
目前我们的主战坦克已经能够开炮击毁敌人坦克了,但敌人坦克不会开炮貌似比较欺负人。今天我们让敌人坦克也拥有开炮功能。同时,我们要为游戏设定关卡,让它变得好玩起来。 让敌人坦克开炮 在EnemyTank类中,添加Shoot函数几乎和MainTank中完全相同,... 这里唯一的区别是最后一句话,我们对m_bNeedShoot属性进行了赋值。敌人坦克和主战坦克最大的区别在于自动开炮,它不像主战坦克那阅读全文 »
C++实战项目:坦克大战(六)
分类标签: C++
上一篇中,我们的主战坦克发出的炮弹还没有实际的作用,今天我们就让它拥有击毁敌军坦克的功能。 新增基础API Rect类 在Rect类中,我们添加下面两个新接口。 ... 这两个函数的作用是返回矩形右上角和左下角的两个点。这样方便我们在计算炮弹是否击中坦克时使用。阅读全文 »
5年133个经典Java面试题集锦
分类标签: Java
Java 面试随着时间的改变而改变。在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来越高级,面试官问的问题也更深入。 在我初入职场的时候,类似于 Vector 与 Array 的区别、HashMap 与 Hashtable 的区别是最流行的问题,只需要记住它们,就能在面试中获得更好的机会,但这种情形已经不复存在。阅读全文 »