51CTO博客开发
——每个现象后面都隐藏一个本质,关键在于我们是否去挖掘 写在前面: 函数重载的重要性不言而明,但是你知道C++中函数重载是如何实现的呢(虽然本文谈的是C++中函数重载的实现,但我想其它语言也是类似的)?这个可以分解为下面两个问题 1、声明/定义重载函数时,是如何解决命名冲突的?(抛开函数重载不谈,using就是一种解决命名冲突的方法,解决命名冲突还有很多其
上篇我们介绍了Intents和Intent Filters的理论部分,主要是介绍了:activities、services、broadcast receivers三种组件的Intent机制两种Intent(显式和隐式)及它们如何去匹配目的组件、Intent对象包含哪些信息、Intent Filters的action & category & data。
做为一个web开发者,不与数据库打交道几乎是不可能的!由此可见,掌握SQL语句对于一个web开发人员来说是多么的重要。下面是我在整理电脑时,找到的资料,觉得还不错就拿出来与大家分享。不废话了,好不好你看了就知道。
前面我们介绍了Mongoose所有的几个主要的数据结构mg_context、mg_connection、mg_request_info,还有Mongoose的生命主线。有了这些基础就可以来看看Mongoose的核心处理工作是怎样的。
我看一个项目的时候,比较喜欢首先看它的架构和设计。因为这样在研读源码的时候,有一个指导作用,不会迷失于具体细节,并能够引导我如何去将点串成线,将线串成面。而且一个软件怎么样,很大程度上取决于它采用的架构。
Mongoose中有几个数据结构扮演着重要的角色,它们分别是:1.struct mg_context:保存Mongoose的上下文,几乎每个函数都有mg_context参数 2.struct mg_connection:保存HTPP连接信息 3.struct mg_request_info:保存HTTP请求的信息,这个结构体传递给URL处理函数
要剖析Mongoose的源码,首先你得知道它的一些基本情况和特性、并去使用它。本文就是介绍Mongoose是个什么东西?及如何安装和使用?这里假设你知道什么web服务器软件、web服务器使用什么协议、怎么提供服务等,如果你还不知道建议首先阅读:《Mongoose源码剖析:外篇之web服务器》。
在深入Mongoose源码剖析之前,我们应该清楚web服务器是什么?它提供什么服务?怎样提供服务?使用什么协议?客户端如何唯一标识web服务器的资源?下面我们抛开Mongoose,来介绍一个web服务的这些通性。
大部分移动设备平台上的应用程序都运行在他们自己的沙盒中。他们彼此之间互相隔离,并且严格限制应用程序与硬件和原始组件之间的交互。 我们知道交流是多么的重要,作为一个孤岛没有交流的东西,一定毫无意义!Android应用程序也是一个沙盒,但是他们能够使用Intent、Broadcast Receivers、Adapters、Content Providers、Internet去突破他们的边界互相交流。有交流还会和谐,由此可见这些交流手段有多重要。
前面我们介绍都只是如何发送SMS消息,接下来我们介绍如何接收SMS消息,及另一种发短信的方式并增强为可以发生图片等,最后介绍一下emulator工具。
昨晚一时兴起,我脑子就问自己下面的代码会输出什么,也不知道我脑子为什么有这个代码模型,只是模糊的有些印象。
在用C++的项目源码中,经常会不可避免的会看到下面的代码.
Map是标准关联式容器(associative container)之一,一个map是一个键值对序列,即(key ,value)对。它提供基于key的快速检索能力,在一个map中key值是唯一的。map提供双向迭代器,即有从前往后的(iterator),也有从后往前的(reverse_iterator)。
本文通过运行两个Android模拟器,介绍在Android中如何实现短信服务(SMS,short message service)的功能。通过这个例子,我想带给大家的是:更加熟悉之前介绍过的Android应用程序的概念及技术细节,且通过实例调度大家的兴趣。我之所以选择SMS为例子,主要原因是SMS已经非常成熟了,从中可以发掘更多的信息和技术细节,而且我相信大部分人发短信比打电话多。
我们对Android应用程序运行原理及布局文件可谓有了比较深刻的认识和理解,并且用“Hello World!”程序来实践证明了。在继续深入Android开发之旅之前,有必要解决前两篇中没有介绍的遗留问题:View的几种布局显示方法,以后就不会在针对布局方面做过多的介绍。View的布局显示方式有下面几种:线性布局(Linear Layout)、相对布局(Relative Layout)、表格布局(Table Layout)、网格视图(Grid View)、标签布局(Tab Layout)、列表视图(List View)、绝对布局(AbsoluteLayout)。本文虽然是介绍View的布局方式,但不仅仅是这样,其中涉及了很多小的知识点,绝对能给你带来Android大餐!
“设计模式”我一向是敬而远之的态度,不会去写这方面的文章,原因有二:第一,要想写好设计模式的文章太难,需要笔者丰富的经验;第二,没有深厚的功底写出的设计模式文章容易误导他人。自认没有深厚的功底,但我不会为了设计模式而设计模式。我想大部分人对设计模式的理解是不够深刻的,不然应用自如,特别是初学者!所有研究高质量的源码或框架是我们学习实践设计模式的好途径之一。
"??"我很早就知道这它了,但我之前从没想过要拿它出来分享。主要是因为感觉它应该很基础,大家都知道,但是现在我发现身边很多人不知道"??"这个运算符!故有此文,如果您已经对??很熟悉了就没必要看此文了。
上篇可以说是一个分水岭,它标志着我们从Android应用程序理论进入实践,我们拿起手术刀对默认的“Hello World!”程序进行了3个手术,我们清楚了“Hello world!”是如何实现显示在屏幕上的,而且我们知道不仅可以根据布局文件main.xml来初始化屏幕,还可编程地进行。以后基本我们都会以实践的方式来深入Android开发。我们这次深入分析Android应用程序的布局文件。
HTTP协议我想任何IT人士都耳熟能详了,大家都能说出个所以然来。但是如果我问你HTTP协议的请求方法有哪些?POST与GET的差异?GET或POST传送数据量的大小有限制吗?HTTP响应的状态有哪些?以及在C#中你如何使用?如果你不能清楚地回答其中的大部分问题,那么这篇文章就是为你准备的!
这篇文章我很早很早之前就想写了,本来是想把它作为我开博的第一篇的,但由于种种原因直到现在写出来。本文不是用.NET平台和其余平台(诸如Java)做比较,不去评论孰优孰劣。仅仅是作为一个.NET开发者,介绍一下我眼中的.NET。
随着CPU多核的普及,编程时充分利用这个特性越显重要。上篇首先用传统的嵌套循环进行数组填充,然后用.NET 4.0中的System.Threading.Tasks提供的Parallel Class来并行地进行填充,最后对比他们的性能。本文将深入分析Parallel Class并借机回答上篇9楼提出的问题,而System.Threading.Tasks分析,这个将推迟到.NET(C#) Internals: 以一个数组填充的例子初步了解.NET 4.0中的并行(三)中介绍。
随着CPU多核的普及,编程时充分利用这个特性越显重要。本文首先用传统的嵌套循环进行数组填充,然后用.NET 4.0中的System.Threading.Tasks提供的Parallel Class来并行地进行填充(当然这里也用到嵌套循环),通过对比发现其中差异。
至此,我们终于算是完全算是双脚步入Android开发的大门了,但我们现在还只能算是金字塔底端的那群人,还需要不断地实践、实践、再实践。而且上面所讲的是作为一个真正Android开发人员必须要深刻理解的东西,如果您还没有达到深刻的程度那请你回去再浏览一遍,然后跟着我的这个系列继续深入学习,在接下来的文章我将更多的是利用实例来解析这些东西。下面我再次用Hello World程序来分析一下Android应用程序。
Android系统试图尽可能长地保持一个应用程序进程,但是当内存低时它最终还是需要移除旧的进程。为了决定保持哪个进程及杀死哪个进程,Android将每个进程放入一个基于运行于其中的组件的重要性等级和这些组件的状态。重要性最低的进程首先被杀死,然后是次低,以此类推。总共有5个层次等级。
应用程序组件有一个生命周期——一开始Android实例化他们响应意图,直到结束实例被销毁。在这期间,他们有时候处于激活状态,有时候处于非激活状态;对于活动,对用户有时候可见,有时候不可见。组件生命周期将讨论活动、服务、广播接收者的生命周期——包括在生命周期中他们可能的状态、通知状态改变的方法、及这些状态的组件寄宿的进程被终结和实例被销毁的可能性。
从一个仅有数额指标的交易表中创建一个查询,这个查询用于会计日志条目。因此如果一个日志条目应该有存款和借款,但是其他的值应该是相同的,因此我想通过SQL查询从一行提取2行记录。听起来很模糊?我Google之后发现没有任何结果,所以我就写了这篇文章。
当应用程序的组件第一次运行时,Android将启动一个只有一个执行线程的Linux进程。默认,应用程序所有的组件运行在这个进程和线程中。然而,你可以安排组件运行在其他进程中,且你可以为进程衍生出其它线程。本文从下面几点来介绍Android的进程与线程。
四月二十九号——让我等待很久的一个日子,ubuntu 10.04就是在这天正式发布的,我想有很多人跟我一样一直在等官网挂出下载链接的那刻。读大学时曾经在官网订过ubuntu光盘,要用英文写的,还以为会寄不到,谁知大概一个月时间我就收到了,自此就跟ubuntu接下了不解之缘,在此之前用过red hat 9.0(它永远的经典,我想很多人都是用这个进入linux大门的)、red hat 企业版、Fedora。
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号