当前位置:编程学习 > wap >>

从菜鸟到菜鸟的Android学习篇一:安卓初体验

    在世界末日的数年前,嗯,想想哥当年还是个“洋葱少年”,有位大鸟跟我说Google要开发自己的操作系统。有两个特点:定制化服务的操作系统和基于浏览器的操作系统云去!我就在想到时候在自己的台式机给其分个区玩玩……

    又过了一些日子,嗯,想想哥当年还在玩MTK。又有位大鸟跟我说Google推出了自己的手机平台,叫ANDROID。也有两个特点:开源和JAVA开发云云!我就在想到时候去下载源代码自己编译试试……

    又过了些日子,嗯,就在世界末日的前一年,因为工作环境的变化哥不得不搞ANDROID了。又有位大鸟介绍说:它是基于LINUX2.6操作系统,要想学好必须下载源代码细心的去研究。哥果断下载了源代码却果断的放弃了对其进行编译。他妹的,哥一个就在WIN下开发过的小菜鸟一看到什么makefile, ant, cywin啥的介绍,脑袋和蛋一块儿疼!于是乎先装个开发环境搞个“Hello World!“”吧。

    哥憋手憋脚一天终于搞定了一个"Hello Android!",虽然哥能猜得到这几句代码的意思。因为一直都没接触过JAVA。主要是卡在编译环境那块儿了。下载了半天设置了半天。这件事让我明白一个道理:什么事都是看起来容易做起来难。我们在学习的时候,DEMO要自己去写写看看。

    苦B的学习岁月就这样开始了! android google java 非技术文档 大伙聊聊 --------------------编程问答-------------------- 篇二: 刨“祖&坟”寻宗
    哥是个武侠迷,小时候最喜欢武打的电视剧、电影。后来发现有个定律,牛B的少年总是有个失散多年且必陷害了的英难老爹用来证明他的血统纯证。看来在我天朝血统是个多么重要的事情!当然有大鸟会攻击我,《鹿鼎记》中韦小宝是个贱民小人物啊。唉,那时金庸爷爷埋了一个伏笔,看他那么会做人做事,指不定当朝重臣老爹去闲逛的副产品呢!
    呃,有些跑题了,调个头先。像我们这样老代码工总是有个“贱”到骨头里的屌丝情节:在要上ANDORID小妞前总是想知道她是总哪里来的,她爹是谁? 会不会跟乔帮主、盖茨大爷有没有一点儿关系。或者这位小妞会有哪些显为人知的“绯闻”。这些对我们这种贱人来说,比“”脱“”光了她看源代码更过瘾、更有谈资!!
   据相关文档记载,这位楚楚动人的妹子是基于LINUX操作系统的,而且不是那种所谓的嵌入式的精简版的LINUX。呃,所以那些如:进程、线程、进程间通信,独立的内存地址空间、资源管理、并发控制等现代的操作系统的基本概念在她身上也应该都能找的到。
    众所周知LINUX起源于UNIX。iOS源自乔帮助的NeXTSTEP当年打造牛B的经济的工作站,而当时选择的操作系统是UNIX。如果真是这样的话,iOS也算是起源于UNIX? 那他们之间可就是同宗亲戚了。
    于是贱到骨头里的我就有了第一个问题:如果ANDROID完全使用C/C++来开发应用的话会不会和苹果手机一样的好的性能?因为她们可是同宗,起源于一个祖先!!
--------------------编程问答-------------------- 篇三 进程与通信
    本人乃民办专科学校专科的优秀毕业生,因为学校的风气导致了本人在学校的学习成绩异常的优秀。造就了现在的自强不息和过份自信的“专业人才”!很多东西都是先用着,再总结,最后学习并熟练应用的非标准过程,即传说中的“野路子”。所以很随便给一些概念下个定义。有什么不对的地方还请大鸟们指正,谢谢!

    其实本篇进程不是重点,重点是进程间的通信。独立的内存地址空间使各个任务(进程)之间互不影响,也像是给任务(进程)建了一座密不透风的墙。那么进程间的相互共享数据就要使用一些小手段,那就是进程间通信。好像有个叫IPC,管他叫什么呢!

   据相关文档,传统的LINUX的进程间通信有管道(PIPE)、套接字、共享内存等。就个人对管道的理解就是将任务A产生的结果传递给B作为参数使用。如哥要吃饭了,哥首先去超市来一桶方便面,然后回家烧好开水,泡上。最后才吃的上。通过管道的方式如下:
$ buy | cook | eat  

    套接字就是Socket通信,这个理解起来更容易,即一个当服务器,一个当客户端。它的优势也很明显,我们可以把服务端装在本机上也可以安装在专用的计算机,实现分布式服务。可能常用于数据量偏小且运算量偏大的通信吧?
    贱人问题:Socket通信会不会导致通信过程和响应很慢啊?据了解,在一台机器上的Socket通信好像比较特殊的处理流程。我也不太想深入了解了。什么都了解学得也太累!

    内存共享就是多个进程可以共享同一块内存区域。大家都可以写入或读取数据。据了解它并没有相关的并发性控制,也就是别人还没写完整 的时候,你去读的话就可能读到不完整的错误数据。

    最后Google大神们发现这些都不是很理想,于是就有了一个叫Binder的概念出来。

    据相关文档上说:它是一个LINUX虚拟的驱动程序,目的就是在进程间快速的双向通信功能。很多著作都会前几章内就介绍这个玩意儿,看来在ANDROID框架中这个Binder应该相当重要。我们暂且把它理解和传统的IPC一样吧。我也讲不好,干脆不讲。想特别了解的朋友可以找一下度娘问问!
--------------------编程问答--------------------     Google大神的在线文档,第一章节就是讲4大应用组件,哪4个我也记不清了,Activity, Service, ...,反正目前还没用着,等用着了再去看。然后就是ANDROID进程的生命周期,刚开始看的时候,就感觉好像是懂了,也好像没看懂。ANDROID框架就是想让我们尽量避免重复开发,任何一个应用(就理解成APK吧)都可以使用所有其他应用的全部或部分功能。如:可以在你的APK中调用电话本、短信编辑或打电话等功能而不必要再去写一个类似的Activity或者是Service. 这些都难免不涉及到进程间通信的模块。

   个人感觉Google大神想让我们尽量避免看到“进程”这样冷冰冰的概念,想通过这些封装好的组件让我们不必去关心它。就是想让我们尽情的用吧,不要再想这些旧谷子的烂事了。嗯,本意是好的。在这里先谢了。但贱到骨头里的我要是看不到进程就很不放心,就像编写C代码时我竟然没有写main函数一样。心里空荡荡的。于是就打算开始真正得去了解它!

    今天就写到这儿,明天继续^^ , 呵呵。哥自娱自乐,没观众就自己顶! 我顶! --------------------编程问答-------------------- 想学,菜鸟中的菜鸟,不知道从哪里下手 --------------------编程问答-------------------- 配置开发环境开始 --------------------编程问答-------------------- 语言很犀利啊~~顶
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,