本人想学习编程,需要哪些入门书籍

本人想学习编程,需要哪些入门书籍,第1张

C语言、C++、或者java

具体怎样学编程 :

1明确学习目的

学习编程对大多数IT业人员来说都是非常有用的。学编程,做一名编程人员,从个人角度讲,可以解决在软件使用中所遇到的问题,改进现有软件,可以为自己找到一份理想的工作添加重要得砝码,有利于在求职道路上谋得一个好的职位;从国家的角度,可以为中国的软件产业做出应有的贡献,一名优秀的程序员永远是被争夺的对象。学习编程还能锻炼思维,使我们的逻辑思维更加严密;能够不断享受到创新的乐趣,将一直有机会走在高科技的前沿,因为程序设计本身是一种创造性的工作。知识经济时代给我们带来了无限的机会,要想真正掌握计算机技术,并在IT行业里干出一番事业来,有所作为,具有一定的编程能力是一个基本条件和要求。

2打好基础

学编程要具备一定的基础,总结之有以下几方面:

(1)数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。

(2)逻辑思维能力的培养学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。

(3)选择一种合适的入门语言 面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类: 1)本地开发应用软件开发的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;数据库开发工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。 2)跨平台开发开发工具如 Java 等。 3)网络开发对客户端开发工具如:Java Script 等;对服务器开发工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的环境下几种开发工具中 VB 法简单并容易理解,界面设计是可设化的,易学、易用。选 VB 作为入门的方向对出学者是较为适合的。

3 注意理解一些重要概念

一本程序设计的书看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三,触类旁通。

4掌握编程思想

学习一门语言或开发工具,语法结构、功能调用是次要的,最主要是学习它的思想。例如学习 VC 就要学习 Windows 的内在机理、什么是线程;学习 COM 就要知道 VTALBE 、类厂、接口、idl,关键是学一种思想,有了思想,那么我们就可以触类旁通。

5多实践、多交流

掌握编程思想必须在编程实际工作中去实践和体会。编程起步阶段要经常自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。这就要多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。亲自动手进行程序设计是创造性思维应用的体现,也是培养逻辑思维的好方法。

6养成良好的编程习惯

编程入门不难,但入门后不断学习是十分重要的,相对来说较为漫长。在此期间要注意养成一些良好的编程习惯。编程风格的好坏很大程度影响程序质量。良好的编程风格可以使程序结构清晰合理,且使程序代码便于维护。如代码的缩进编排、变量命令规则的一致性、代码的注释等。

7上网学编程

在网上可以学到很多不同的编程思想、方法、经验和技巧,有大量的工具和作品及相关的辅导材料供下载。例如网站“编程课堂”()主要以 VB 和 Delph;教学和交流为主,提供大量实用技巧;网站“现在时编程学园”()是专门介绍C、VC、VB、Delphi 等的综合编程网站;网站“ VB 编程乐园 ”()提供内容丰富而且实用的编程技术文章、精选控件、源代码下载、计算机考试、相关软件以及编程书籍推荐等等。

8加强计算机理论知识的再学习

学编程是符合“理论→实践→再理论→再实践”的一个认识过程。一开始要具有一定的计算机理论基础知识,包括编程所需的数学基础知识,具备了入门的条件,就可以开始编程的实践,从实践中可以发现问题需要加强计算机理论知识的再学习。程序人人皆可编,但当你发现编到一定程度很难再提高的时候,就要回头来学习一些计算机科学和数学基础理论。学过之后,很多以前遇到的问题都会迎刃而解,使人有豁然开朗之感。因此在学习编程的过程中要不断地针对应用中的困惑和问题深入学习数据结构、算法、计算机原理、编译原理、操作系统原理、软件工程等计算机科学的理论基础和数理逻辑、代数系统、图论、离散数学等数学理论基础知识。这样经过不断的学习,再努力地实践,编程水平一定会不断提高到一个新高度。

学习编程语言很久了,学习了java又学习C#,一直想学习开发游戏,但是不知从何入手,那几天看了本书说是使用NET的CLR会比较容易的把多种语言集合到一起,不知道有没有高人给指点一下

觉得游戏开发,语言倒是次要的,关键是对游戏流程的了解,加上可行的实现方法

个人认为,游戏编程:

数学基础--》编程语言(C/C++ OR JAVA)--》算法、数据结构基础--》软件工程基础

这是编软件基本的,没法快速入门的。

然后是涉及游戏具体内容的

图形: 图形学基础--》API(OGL DX )--》游戏引擎?

逻辑,

物理,

AI 等

感觉现在游戏编程分工太细了,想自己做全部不大可能。如果只是制作自己的游戏可以考虑FLash,

现在有个Unity3D什么的,这些不太搭编程的班,属于内容性的设计。

引用 4 楼 zhangci226 的回复:

最重要的就是计算机图形学了,只要学好这个就好了

做3D游戏,没有一个扎实的图形学基本功,很难深入下去。

3D游戏不仅是游戏发展的主流,技术发展的方向,同时也是计算机技术进步的一个表现。

不过开始最好还是先熟悉一下DX的使用,等知道怎么回事了,再学图形学,也可以直接做些2D的程序。根据自己需求。

当然,在这之前肯定要把C++学好,以及了解些windows程序的设计方法,特别是窗口的创建、消息循环等

另外建议楼主在初学C++ 到初学DX的阶段,不要过多涉及人工智能(比如寻路算法)、物理甚至引擎的实现。

我认为开始最好是把精力放在如何渲染出自己的图形上面。

然后一个效果一个效果的去尝试和实现,等很多效果像样了,以至于可以组织成像摸像样的游戏了,再考虑更多的问题,比如引擎,AI,物理等问题。。

推荐新人先从OPENGL进入3D世界

楼主既然学了C# 那就从XNA着手吧

学习游戏编程,要看你的动机,高薪开发好玩的游戏

如果是想做一个好玩的游戏,不要求大,比如植物战僵尸,他的技术门槛不高,但却胜过很多"大"引擎做的游戏

开发游戏,技术是辅助,游戏性是第一位!

游戏开发有好多种,2D或者3D的,还有立体3D的;平台也很多样,PC,游戏机,掌机,手机,机顶盒涉及的面是很广的,你要首先确定是哪一类比较符合你的兴趣再有选择地去汲取相关的知识

先,C++肯定要好了。

C语言程序设计

http://bookjqcqcom/product/472414html

语言是国内外广泛使用的计算机语言,是计算机应用人员应掌握的一种程序设计工具。本书全面系统地介绍了C语言编程技术及其相关理论,是一本能使读者全面掌握c语言编程技术的好教程。根据需要,作者除了深入浅出地介绍了C语言的传统编程方法,还别具匠心地介绍了c语言的绘图功能和一些应用开发实例。本书内容新颖、结构合

C++编程风格

http://bookjqcqcom/product/620299html

编程相关的内容,例如增加代码的可读性、可维护性、可扩展性以及执行效率等的方法。本书的示例代码都是从实际程序中抽取出来的,融人了作者的实际开发经验。讲解如何正确地编写代码以及避开一些常见的误区和陷阱,并给出了许多实用的编程规则,可快速提升读者的C++编程功力。本书描述平实,示例丰富,适合有一定编程

C++编程思想第2卷:实用编程技术

http://bookjqcqcom/product/413352html

编程技术和最佳的实践方法,深入探究了异常处理方法和异常安全设计;介绍C++的字符串、输入输出流、STL算法、容器和模板的现代用法,包括模板元编程;解释多重继承问题的难点,展示RTTI的实际使用,描述了典型的设计模式及其实现,特别介绍被认为是标准C++下一版特征之一的多线程处理编程技术,并提供了最新的研究成果

学好C++后,就要掌握数据结构和算法的知识,还是STL。

数据结构与 STL(英文版) 数据结构与 STL(英文版)

http://bookjqcqcom/product/412778html

数据结构及其实现的基础知识。书中引导学生通过对方法接口、示例和应用的学习,逐渐理解和掌握如何高效地使用数据结构。适合课堂教学和自学参考。 本书特色 大多数数据结构用STL(标准模板库)提供,并详细

数据结构 C++语言描述(英文影印版) 数据结构 C++语言描述(英文影印版)

http://bookjqcqcom/product/306107html

数据结构。内容从数据结构的基本原理到面向对象程序设计的方法。书内使用适应面极广的C++语言。全书14章分别为:1绪论;2基本数据类型;3抽象数据类型与类;4集合类;5栈与队列;6抽象运算符;7类属数据类型;8类与动态存储;9链表;10递归;11树;12继承与抽象类;13先进的非线性结构;14构建集合。书后

泛型编程与STL

http://bookjqcqcom/product/332062html

编程与STL》阐述了泛型编程的中心思想:concepts、modeling、refinement,并为你展示这些思想如何导出STL的基础概念:iterators、containers、function objects。循此路线,你可以把STL想像为一个由来的完整优势……

掌握多线程编程是必须的。

C和C++实务精选:C++面向对象多线程编程

http://bookjqcqcom/product/351898html

多线程架构与增量多线程编程技术。第1章介绍了用于构建面向对象程序的不同类型C++组件,以及如何使用这些组件来构建多线程架构。第2、3、4章简要介绍进程、线程、多任务处理、多线程化、规划以及线程优先权的概念。第5章讨论讲程间和线程间通信。第6章讲座线程与进程同步与合作。第6章详细讲座临界区、死锁、数据竞争以

这些掌握了后,开始掌握通行技术。首先是网络协议:

《TCP/IP 基础(第7版)》

http://bookjqcqcom/product/399379html

TCP/IP的体系结构和主要应用程序。全书分为8章,分别介绍TCP/IP体系结构与寻址,TCP/IP应用程序,TCP/IP寻址与子网, TCP/IP协议,TCP/IP服务,TCP/IP路由选择, TCP/IP应用程序原理,以及TCP/IP网络故障诊断。本书是国家网络技术水平考试的指定参考教材,适合网络技术人员和网络管理人员阅读,也可供大中专院校相

TCP/IP详解卷Ⅰ:协议

http://bookjqcqcom/product/404145html

TCP/IP解析》中的第1卷,主要讲述TCP/IP协议方面的内容。与其他的TCP/IP书藉的最大不同在于,本书不仅仅讲述了RFCS的标准协议,而且结合大量实例讲述了TCP/IP协议包的定义原因及在各种不同的操作系统中(如Sunos413、Soloris22、 AIX322)的应用与工作方式,这样可以以动态方式讲述TCP/IP的知识,使读者可以轻松掌

TCP/IP详解卷三:TCP事务协议 HTTP NNTP和UNIX域协议

http://bookjqcqcom/product/310116html

TCP/IP详解系列”的延续。主要内容包括:TCP事务协议,即T/TCP,这是对TCP的扩展,使客户-服务器事务更快、更高效和更可靠; TCP/IP应用,主要是HTTP和NNTP;UNIX域协议,这些协议提供了进程之间通信的一种手段。当客户与服务器进程在同一台主机上时,UNIX域协议通常要比TCP/IP快一倍。本书同样采用了大量的实例和实现细

然后掌握各种平台下SOCKET的编程技术。

TCP/IP协议及网络编程技术

http://bookjqcqcom/product/580242html

本书是一本关于TCP/IP协议原理编程技术的教材,由两部分组成:第1部分系统地介绍了TCP/IP协议族的体系结构,并分别介绍了IP层、传输层和应用层中各种协议的具体原理和工作机制;第2部分介绍了基于socket编程接口的网络编程技术,重点讲述了客户端和服务器端编程应注意的问题、可用的模式和技术。作为一本TCP/IP协议理

Winsock 2网络编程实用教程 Winsock 2网络编程实用教程

http://bookjqcqcom/product/374343html

Winsock,即基于Windows的套接字,是专门为网络开发人员开发网络应用程序设计的编程接口。由于现今网络应用的普及,使成为了IT发展的重要分支之一。本书的出版正是顺应了这种需求。本书简洁而专业地介绍了Winsock的基本概念和操作方式,指导程序员如何利用现有的主流开发工具进行最流行的Windows网络应用的开发。同时,本书

Windows网络编程

http://bookjqcqcom/product/401079html

Microsoft公司的Visual C++平台不仅具有很强的网络程序处理能力,而且还能提供多种编程风格。与Visual C++捆绑的MFC提供了大量封装良好的网络类,如Winsock、WinInet、ActiveX、DCOM和ATL等,提高了用户在利用Visual C++进行网络开发时的效率。本书主要特色在于对技术细节做了深入的介绍,探讨了大量网络专用函数以及MFC

LINUX网络编程

http://bookjqcqcom/product/105718html

本书详尽而细致地介绍了在Linux操作系统下进行网络编程所需要的各种知识,从基本的进程控制、通信到Berkeley套接字都有讲解。书中还穿插了大量的实例程序,并配以说明,更加方便读者的学习和理解。本书内容的精心安排,简洁的措辞,丰富的实例可以使初学者迅速地掌握Linux网络编程的技术。同时,Linux的高级程序员也可以从

这写掌握完以后,开始学写LINUX下的服务器编程。

Linux 程序设计权威指南(附光盘) Linux 程序设计权威指南(附光盘)

http://bookjqcqcom/product/314783html

本书是“Linux与自由软件资源丛书”之一。目前Linux系统已很普及,但是介绍在Linux上进行开发的书籍并不多,本书的Linux上进行应用开发提供了详细的参考资料。内容包括Linux开发环境、Linux编程的入门知识、系统和网络编程、多线程程序设计、控制台编程、X Window系统编程、国际化编程知识等。本书内容丰富、实用性强,附带

Red HatLINUX 核心技术精解第二版(附盘)

http://bookjqcqcom/product/311825html

Linux是一个性能可以与商业x86 UNIX操作系统相提并论的32位操作系统本书全面介绍了Linux的安装和使用技术,包括Linux的安装和配置,Linux的运行,在Linux中使用各种外设,以及Linux的其他内容,如用SLIP和PPP拨号上网,将Linux用作Internet主机,在Linux上运行WWW,商务的运作,开发软件及X编程等

而GCC是你必须掌握的编译器,VC也不例外。

GCC技术参考大全

http://bookjqcqcom/product/378731html

GCC(GNU编译程序集合)是目前最重要、应用最广的开放源代码软件。在本书中,专家Arthur Griffith提供了大量关于这种开源软件的信息,教您学会使用GCC为几乎所有的平台和语言开发及部署各类软件。本书分为3个部分。第1部分,“自由软件编译程序”,介绍了编译程序的一些基础知识,以及一些可以用来下载和安装编译程序的指

C++面向对象程序设计题解与上机指导

http://bookjqcqcom/product/584574html

GCC在DOS/Windows平台上的版本DJGPP(以及与之配合使用的集成软件开发环境RHIDE);上机实验内容与安排,这部分提出了上机实验的指导思想和上机实验的内容与安排,供教学参考。随本书赠送的光盘中包括《C++面向对象程序设计》一书中的全部例题程序,各章习题解答的程序以及 DOS/Windows环境下的GCC版本(DJGPP及其配套

掌握了这些东西是不够的,你还必须学会服务器方面游戏逻辑的编写,因而要掌握脚本语言的使用,在这方面,一般使用LUA,PYTHON和RUBY来写。

学习Python:第2版(影印版)

http://bookjqcqcom/product/851923html

Python是流行、开源、面向对象的编程语言,既可以用于编写单机运行的程序也可以编写脚本程序,具有可移植、强大、易用等特点。跟随专业教师学习是最快捷的掌握此语言的方式。新版的《学习Python))把你带到Mark Lutz和David Ascher面前,他们是著名的Python专家和培训师,他们的用语亲切、组织良好的文章已经指导了许多编程

Programming Ruby中文版(第2版)

http://bookjqcqcom/product/543520html

Ruby是一种跨平台、面向对象的动态类型编程语言。Ruby体现了表达的一致性和简单性,它不仅是一门编程语言,更是表达想法的一种简练方式。它不仅受到广大程序员的欢迎,无数的软件大师亦为其倾倒。Programming Ruby是关于Ruby语言的一本权威著作,也被称为PickAxe Book(镐头书,由封面上的工具得名)。本书是它的第2版,其

我使用PYTHON,这些掌握后,数据库方面是要有的。

在LIUNX下一般使用MYSQL和postgresql来作为数据库:

MySQL 5权威指南(第3版)

http://bookjqcqcom/product/431843html

本书全面深入地介绍了MySQL的功能,主要内容包括MySQL、PHP、Apache、Perl等组件的安装与功能简介,mysql等一些重要系统管理工具和用户操作界面的使用,MySQL数据库系统设计的基础知识与用不同语言设计MySQL数据库的过程,以及SQL语法、工具、选项、API应用指南,最大限度地帮助读者更快地学习和掌握MySQL数据库系统的设计

好这些知识有了后,可以看一些网络游戏服务器是如何编写的,但这方面的书籍很少,即使出版的也是闪闪咄咄的。不过,我还是找到一本,非常的不错。详细地讲解了游戏的逻辑的实现。

MUD游戏编程(配光盘) MUD游戏编程(配光盘)

http://bookjqcqcom/product/584461html

本书从网络基本知识入手,全面阐述了如何开发纯文字MUD游戏。并通过构建SimpleMUD和BetterMUD这两个MUD,重点讲述了如何实现MUD。本书分为4大部分。第1部分介绍了计算机网络的基本知识、Winsock/Berkeley Sockets API以及多线程的概念;展示了本书所用的基本库BasicLib中的所有类和函数;创建了一个套接字库SocketLib;介

最后介绍相关网站:

一个开源的网络游戏,你可以从中看出游戏服务器的编写方法:

http://themanaworldorg

游戏开发交流:

http://wwwgamerescom

其它,你可以搜索这些关键字: RAKNET,OPENTNL。

希望有用!

以上是服务器的,如果是客户端的话,就更多了。

网络游戏开发

http://baikebaiducom/view/691941htmlwtp=tt

恩,杭州有个游戏学院,最近好象在招生,还不错

http://wwwzjgamecollegeorg/

这是学校的网址,你可以看一下

参考资料:

http://wwwjqcqcom/forum

第一部分 准备篇

第1章 初识庐山真面目——Android开发简介 2

11 Android的基本概念 2

111 Android简介 2

112 Android的版本 4

113 Android的系统构架 5

114 Android的应用程序框架 6

12 JIL Widget介绍 7

13 小结 8

第2章 工欲善其事,必先利其器——搭建和使用Android开发环境 9

21 开发包及工具的安装 9

211 开发Android程序都需要些什么 9

212 安装JDK和配置Java开发环境 10

213 Eclipse的安装与汉化 11

214 安装AndroidSDK 12

215 安装Eclipse插件ADT 13

22 真实体验——编写第一个Android程序(随机绘制圆饼) 15

221 创建Android工程 15

222 在模拟器中运行Android程序 17

223 界面控件的布局 19

224 编写代码 20

225 调试程序 23

226 在手机上运行和调试程序 28

23 迁移Android工程可能发生的错误 29

24 不需要写一行代码的开发工具:AppInventor 31

241 AppInventor简介 31

242 AppIntentor的下载和安装 31

243 用拖曳控件的方式设计界面 33

244 像拼图一样拼装代码 34

25 小结 37

第二部分 基础篇

第3章 千里之行始于足下——Android程序设计基础 40

31 Android应用程序框架 40

311 Android项目的目录结构 40

312 AndroidManifestxml文件的结构 42

32 Android应用程序中的资源 44

33 Android的应用程序组件 44

331 Activity(Android的窗体) 45

332 Service(服务) 45

333 Broadcast Receiver(广播接收器) 45

334 Content Provider(内容提供者) 46

34 Android程序的UI设计 46

341 手工配置XML布局文件 46

342 ADT自带的可视化UI设计器 47

343 使用DroidDraw设计UI布局 47

35 小结 48

第4章 我的UI我做主——用户界面开发基础 49

41 Activity的使用方法 49

411 创建Activity 49

412 配置Activity 50

413 显示其他的Activity(Intent与Activity) 52

42 Activity的生命周期 55

43 在不同Activity之间传递数据 60

431 使用Intent传递数据 60

432 使用静态变量传递数据 62

433 使用剪切板传递数据 63

434 使用全局对象传递数据 65

435 返回数据到前一个Activity 67

44 视图(View) 68

441 视图简介 68

442 使用XML布局文件定义视图 69

443 在代码中控制视图 70

45 布局(Layout) 72

451 框架布局(FrameLayout) 72

452 线性布局(LinearLayout) 75

453 相对布局(RelativeLayout) 79

454 表格布局(TableLayout) 81

455 绝对布局(AbsoluteLayout) 82

456 重用XML布局文件 82

457 优化XML布局文件 85

458 查看apk文件中的布局 86

46 小结 87

第5章 良好的学习开端——控件(Widget)详解 88

51 常用XML属性解析 88

511 android:id属性 88

512 控件的宽度(android:layout_width)和高度(android:layout_height) 88

513 android:layout_margin属性 89

514 android:padding属性 89

515 android:layout_weight属性 90

516 android:layout_gravity和android:gravity属性 90

517 android:visibility属性 91

518 android:background属性 91

519 指定单击事件方法(android:onClick属性) 92

5110 控件焦点属性(android:focusable和android:focusable-InTouchMode) 92

52 TextView(显示文本的控件) 93

521 显示富文本(URL、不同大小、字体、颜色的文本) 93

522 在TextView中显示表情图像和文字 97

523 单击链接弹出Activity 100

524 为指定文本添加背景 103

525 带边框的TextView 106

526 设置行间距 110

527 在未显示完的文本后面加省略号(…) 111

528 用TextView实现走马灯效果 113

529 垂直滚动TextView中的文本 114

53 EditText(编辑文本的控件) 115

531 像QQ一样输入表情图像 115

532 在EditText中输入特定的字符 117

533 AutoCompleteText-View(自动完成输入内容的控件) 118

54 按钮和复选框控件 120

541 Button(普通按钮控件) 120

542 图文混排的按钮 122

543 ImageButton(图像按钮控件) 124

544 RadioButton(选项按钮控件) 124

545 ToggleButton(开关状态按钮控件) 125

546 CheckBox(复选框控件) 126

55 ImageView(显示图像的控件) 128

551 ImageView控件的基本用法 128

552 显示指定区域的图像 129

553 缩放和旋转图像 132

56 时间与日期控件 133

561 DatePicker(输入日期的控件) 133

562 TimePicker(输入时间的控件) 134

563 DatePicker、TimePicker与TextView同步显示日期和时间 134

564 AnalogClock和DigitalClock(显示时钟的控件) 136

57 进度条控件 137

571 ProgressBar(进度条控件) 137

572 SeekBar(拖动条控件) 139

573 设置ProgressBar和SeekBar的颜色及背景图 140

574 RatingBar(评分控件) 143

58 列表控件 145

581 ListView(普通列表控件) 145

582 为ListView列表项添加复选框和选项按钮 147

583 对列表项进行增、删、改操作 149

584 改变列表项的背景色 153

585 ListActivity(封装ListView的Activity) 154

586 ExpandableListView(可扩展的列表控件) 155

587 Spinner(下拉列表控件) 157

59 滚动控件 160

591 ScrollView(垂直滚动控件) 160

592 HorizontalScrollView(水平滚动控件) 161

593 可垂直和水平滚动的视图 162

594 Gallery(画廊控件) 163

510 ImageSwitcher(图像切换控件) 164

511 GridView(网格控件) 166

512 TabHost(标签控件) 168

513 ViewStub(惰性装载控件) 169

514 小结 171

第6章 友好的菜单——Menu介绍与实例 172

61 菜单的基本用法 172

611 创建选项菜单(Options Menu) 172

612 带图像的选项菜单 173

613 关联Activity 173

614 响应菜单的单击动作 174

615 动态添加、修改和删除选项菜单 175

616 带复选框和选项按钮的子菜单 176

617 上下文菜单 178

618 菜单事件 179

619 从菜单资源中装载菜单 180

62 菜单特效 181

621 自定义菜单 181

622 模拟UCWeb效果菜单 184

623 QuickContactBadge与联系人菜单 189

63 小结 192

第7章 友好地互动交流——信息提醒(对话框、Toast与Notification) 193

71 对话框的基本用法 193

711 带2个按钮(确认/取消)的对话框 193

712 带3个按钮(覆盖/忽略/取消)的对话框 195

713 简单列表对话框 196

714 单选列表对话框 198

715 多选列表对话框 199

716 进度对话框 201

717 登录对话框 205

718 使用Activity托管对话框 207

72 对话框的高级应用 209

721 阻止单击按钮关闭对话框 209

722 改变对话框的显示位置 213

723 在对话框按钮和内容文本中插入图像 215

724 改变对话框的透明度 216

73 Toast 217

731 Toast的基本用法 217

732 永不关闭的Toast 218

733 用PopupWindow模拟Toast提示信息框 221

74 通知(Notification) 221

741 在状态栏上显示通知信息 222

742 Notification的清除动作 224

743 永久存在的Notification 225

744 自定义Notification 226

75 小结 227

第8章 移动的信息仓库——数据存储 228

81 读写key-value对:SharedPreferences 228

811 SharedPreferences的基本用法 228

812 数据的存储位置和格式 229

813 存取复杂类型的数据 230

814 设置数据文件的访问权限 233

815 可以保存设置的Activity:PreferenceActivity 234

82 文件存储 238

821 openFileOutput和openFileInput方法 238

822 读写SD卡中的文件 239

823 SAX引擎读取XML文件的原理 241

824 将XML文件转换成Java对象 242

825 文件压缩(Jar、Zip) 245

83 SQLite数据库 249

831 SQLite数据库管理工具 249

832 SQLiteOpenHelper类与自动升级数据库 251

833 数据绑定与SimpleCursorAdapter类 252

834 操作SD卡上的数据库 255

835 将数据库与应用程序一起发布 256

836 内存数据库 257

84 小结 258

第9章 Android中的窗口——Activity 259

91 调用其他程序中的Activity 259

911 直接拨号 259

912 将电话号传入拨号程序 259

913 调用拨号程序 260

914 浏览网页 261

915 向E-mail客户端传递E-mail地址 261

916 发送E-mail 261

917 查看联系人 262

918 显示系统设置界面(设置主界面、Wifi设置界面) 263

919 启动处理音频的程序 264

92 自定义Activity Action 264

93 Activity的高级应用 266

931 ActivityGroup 266

932 自定义半透明窗口 268

933 Activity之间切换的动画效果 269

94 小结 270

第10章 全局事件——广播(Broadcast) 271

101 什么是广播 271

102 接收系统广播 272

1021 短信拦截 272

1022 用代码注册广播接收器 274

1023 广播接收器的优先级 275

1024 来去电拦截 276

1025 截获屏幕休眠与唤醒 280

1026 开机自动运行 281

1027 显示手机电池的当前电量 282

103 发送广播 284

104 验证广播接收器是否注册 285

105 小结 286

第11章 跨应用数据源——Content Provider 287

111 Content Provider的作用 287

112 获得系统数据 288

1121 读取联系人信息 288

1122 查看收到的短信 290

113 自定义Content Provider 291

1131 查询城市信息 291

1132 为Content Provider添加访问权限 297

114 小结 298

第12章 一切为用户服务——Service基础与实例 299

121 Service基础 299

1211 Service的生命周期 299

1212 绑定Activity和Service 302

1213 开机启动Service 305

1214 判断Service是否已注册 306

1215 判断Service是否已开始 307

122 跨进程访问(AIDL服务) 308

1221 什么是AIDL服务 308

1222 建立AIDL服务的步骤 308

1223 建立AIDL服务 308

1224 传递复杂数据的AIDL服务 312

1225 AIDL与来去电自动挂断 317

123 小结 319

第13章 做好应用桥梁——网络与通信 320

131 WebView控件 320

1311 用WebView控件浏览网页 320

1312 用WebView控件装载HTML代码 322

132 访问HTTP资源 324

1321 提交HTTP GET和HTTP POST请求 324

1322 HttpURLConnection类 326

1323 上传文件 327

133 客户端Socket 330

1331 连接服务器 331

1332 扫描服务器打开的端口 331

1333 发送和接收数据 333

1334 获得无线路由分配给手机的IP地址 334

1335 设置Socket选项 335

134 服务端Socket 339

1341 手机服务器的实现 339

1342 利用Socket在应用程序之间通信 340

135 蓝牙通信 342

1351 蓝牙简介 342

1352 打开和关闭蓝牙设备 343

1353 搜索蓝牙设备 344

1354 蓝牙数据传输 346

136 小结 351

第14章 炫酷你的应用——多媒体开发 352

141 音乐 352

1411 播放音乐 352

1412 录音 353

142 视频 354

1421 使用VideoView播放视频 354

1422 使用SurfaceView播放视频 355

1423 录制视频 357

143 相机 357

1431 调用系统的拍照功能 358

1432 自定义拍照功能 359

144 铃声 364

145 小结 366

第15章 2D游戏开发 367

151 绘制游戏的画布 367

1511 在View上实现动画效果 367

1512 在SurfaceView上实现动画效果 371

152 图形绘制基础 374

1521 绘制像素点 374

1522 绘制直线 374

1523 绘制圆形 375

1524 绘制弧 375

1525 绘制文本 376

1526 综合绘制各种图形 376

153 高级图像处理技术 380

1531 绘制位图 380

1532 图像的透明度 382

1533 旋转图像 383

1534 路径 384

1535 Shader的渲染效果 388

154 帧(Frame)动画 392

1541 AnimationDrawable与帧动画 392

1542 播放Gif动画 394

155 补间(Tween)动画 397

1551 移动补间动画 397

1552 缩放补间动画 399

1553 旋转补间动画 402

1554 透明度补间动画 403

156 小结 404

第16章 有趣的Android应用 405

161 传感器 405

1611 如何使用传感器 405

1612 加速度传感器(Accelerometer) 409

1613 重力传感器(Gravity) 409

1614 光线传感器(Light) 410

1615 陀螺仪传感器(Gyroscope) 411

1616 方向传感器(Orientation) 411

1617 其他传感器 412

162 输入输出技术 413

1621 语音识别 413

1622 手势输入 415

1623 语音朗读(TTS) 417

163 Google地图 419

164 GPS定位 423

165 桌面上的小东西 425

1651 窗口小部件(AppWidget) 425

1652 快捷方式 431

1653 实时文件夹 433

166 应用更华丽——动态壁纸 435

167 小结 441

第三部分 高级篇

第17章 HTML5与移动Web开发 444

171 HTML5简介 444

172 HTML5精彩效果演示 445

173 HTML5在Android中的应用 447

174 HTML5的画布(Canvas) 448

1741 Canvas概述 448

1742 检测浏览器是否支持Canvas 449

1743 在Web页面中使用Canvas 450

1744 使用路径(Path) 452

1745 设置线条风格 453

1746 设置填充类型 453

1747 填充矩形区域 454

1748 使用渐变色(Gradient) 454

1749 拉伸画布对象 455

17410 在Canvas上绘制文本 456

17411 使用阴影 457

175 调试JavaScript 458

176 小结 459

第18章 输入法开发 460

181 Android输入法简介 460

182 控制输入法 461

183 输入法实战 462

1831 实现输入法的步骤 463

1832 编写输入法程序 463

1833 输入法服务的生命周期 466

1834 预输入文本 467

1835 输入法设置 467

184 小结 468

第19章 Android OpenGL ES开发基础 469

191 OpenGL简介 469

192 什么是OpenGL ES 469

193 多边形 470

194 颜色 474

195 旋转三角形 475

196 旋转立方体 477

197 小结 478

第20章 OpenGL ES的超酷效果 479

201 保持平衡的旋转文本 479

202 左右摇摆的Android机器人 482

203 纠缠在一起的旋转立方体 485

204 透明背景的旋转立方体 486

205 触摸旋转的立方体 487

206 2D和3D的综合旋转效果 489

207 旋转立体天空 491

208 小结 493

第21章 Android NDK编程 494

211 Android NDK简介 494

212 安装、配置和测试NDK开发环境 495

2121 系统和软件要求 495

2122 下载和安装Android NDK 495

2123 下载和安装Cygwin 495

2124 配置Android NDK的开发环境 498

213 第一个NDK程序:世界你好 499

2131 编写和调用NDK程序 499

2132 用命令行方式编译NDK程序 501

2133 在Eclipse中集成Android NDK 502

214 背景不断变化的三角形(NDK 版OpenGL ES) 504

215 使用NDK OpenGL ES API实现千变万化的3D效果 507

216 使用NDK调用音频API 510

217 本地Activity(Native Activity) 511

218 Android NDK配置文件详解 513

2181 Android NDK定义的变量 513

2182 Android NDK定义的函数 514

2183 描述模块的变量 515

2184 配置Application mk文件 516

219 小结 516

第22章 测试驱动开发(TDD) 517

221 JUnit测试框架 517

222 测试Activity 517

223 测试Content Provider 521

224 测试Service 523

225 测试普通类 523

226 小结 525

第四部分 综合实例篇

第23章 Android综合案例一——蓝牙聊天 528

231 蓝牙聊天主界面 528

232 添加选项菜单 530

233 搜索和连接蓝牙设备 530

234 使设备可被其他蓝牙设备发现 533

235 发送和接收聊天信息 533

236 小结 537

第24章 Android综合案例二——月球登陆(游戏) 538

241 游戏的玩法 538

242 实现游戏界面 539

243 设置游戏难度 540

244 开始游戏 541

245 控制飞船喷火 544

246 控制飞船改变飞行方向 544

247 判断飞船是否成功着陆 545

248 小结 546

第25章 Android综合案例三——全键盘输入法(应用) 547

251 安装输入法 547

252 输入法的初始化工作 548

253 响应键盘操作 549

254 根据EditText控件的属性显示不同的软键盘 551

255 小结 553

第26章 Android综合案例四——贪吃蛇(游戏) 554

261 游戏玩法 554

262 游戏主界面设计 555

263 控制小蛇的移动 557

264 小结 560

第27章 Android综合案例五——新浪微博客户端(应用) 561

271 新浪微博简介 561

2711 新浪微博客户端 561

2712 新浪微博开放API 563

272 使用新浪微博开发API 563

273 创建和配置新浪微博客户端工程 564

274 登录新浪微博 564

275 功能按钮 567

276 显示“我的首页”的微博 569

277 评论微博 572

278 转发微博 573

279 写微博 574

2710 小结 576

第28章 Android综合案例六——笑脸连连看(游戏) 577

281 游戏玩法 577

282 准备图像素材 578

283 实现主界面 578

284 随机生成连连看图像 580

285 选中两个相同图像后消失 580

286 用定时器限制游戏时间 581

287 小结 582

不要把编程想得太简单,游戏开发涉及面很广,选择的语言也不同,依赖于你的平台,客户端还是服务器端,产品还是引擎等等。除去图像、音效、网络等等不说,像框架构设、AI系统等也是比较复杂

要是真学的话,推荐C语,自学的话JAVA比较难啃,当然有能力可以同时

日语的话学好五十音图先,俄语则是记好字母表

棋类游戏AI的范围还是挺广的,这里推荐一本讲解象棋和五子棋游戏的书籍《PC游戏编程》,这是王小春著作的一本书,里面讲的基本上是中国象棋人机博弈和五子棋人机博弈方面的内容,里面的算法结构相当经典,你可以仔细研究研究。

推荐6本python入门必备书籍总有一本适合你

一《Python编程:从入门到实践》

本书是一本针对所有层次的Python 读者而作的Python 入门书。全书分两部分:第一部分介绍用Python 编程所必须了解的基本概念,包括matplotlib、NumPy和Pygal等强大的Python库和工具介绍,以及列表、字典、if 语句、类、文件与异常。代码测试等内容;第二部分将理论付诸实践,讲解如何开发三个项目,包括简单的Python 2D 游戏开发如何利用数据生成交互式的信息图,以及创建和定制简单的Web 应用,并帮读者解决常见编程问题和困惑。豆瓣书友推荐:很好的入门书,简洁全面,适合小白。learning python之类大砖头太不友好。这本虽然有些地方讲得不深入,但是对新手友好。

二、《"笨办法"学Python》

本书是一本Python入门书籍,适合对计算机了解不多,没有学过编程,但对编程感兴趣的读者学习使用。这本书以习题的方式引导读者一步一步学习编程,从简单的打印一直讲到完整项目的实现,让初学者从基础的编程技术入手,最终体验到软件开发的基本过程。Zed Shaw完善了这个堪称世上最好的Python学习系统。只要跟着学习,你就会和迄今为止数十万Zed教过的初学者一样获得成功。这本书会让你的每一分钟投入都有回报。Python是世界上最强大、最受欢迎的编程语言之一,很快你就会成为一名Python程序员。豆瓣书友推荐:花了一周的时间看完,在以前的基础上零零碎碎学了一些新的东西,还算是有所收获,但是前面讲的很基础很简单,到ex40之后突然难度增加不是很懂在讲些什么

三、《Python学习手册》

Python可移植、功能强大、易于使用,是编写独立应用程序和脚本应用程序的理想选择。无论你是刚接触编程或者刚接触Python,通过学习《Python学习手册(第3版)》你可以迅速高效地精通核心Python语言基础。读完《Python学习手册(第3版)》,你会对这门语言有足够的了解,从而可以在你所从事的任何应用领域中使用它

豆瓣书友推荐:用了两周的时间将这本书啃了一下,还有200多页的电子版没看,但还是忍不住先来评论。既是总结自己,也想帮助别人。本书总评:优点:解释详细,例子丰富;关于Python语言本身的讲解全面详尽而又循序渐进不断重复,同时详述语言现象背后的机制和原理;除语言本身,还包含编程实践和设计以及高级主题。缺点:有些厚;翻译不佳;代码练习题很少;

四、《Python基础教程》

本书是经典教程的全新改版,作者根据Python 30版本的种种

变化,全面改写了书中内容,做到既能“瞻前”也能“顾后”。本书层次鲜明、结构严谨、内容翔实,特别是在最后几章,作者将前面讲述的内容应用到了10个引人入胜的项目中,并以模板的形式介绍了项目的开发过程。本书既适合初学者夯实基础,又能帮助Python程序员提升技能,即使是 Python方面的技术专家,也能从书里找到令你耳目一新的东西。豆瓣书友推荐:写得挺生动亲民的,很好的入门书。

五、Python核心编程

学习专业的Python风格、最佳实践和好的编程习惯;加强对Python对象、内存模型和Python面向对象特性的深入理解;·构建更有效的Web、CGI、互联网网络和其他客户端/服务器架构应用程序及软件;·学习如何使用Python中的Tkinter和其他工具来开发自己的GUI应用程序及软件;·通过用C等语言编写扩展来提升Python应用程序的性能,或者通过使用多线程增强1/0相关的应用程序的能力;·学习Python中有关数据库的API,以及如何在Python中使用各种不同的数据库系统,包括MySQL、Postgres和 SQLite。豆瓣书友推荐:了解Python语言方方面面的不错选择,虽然版本有些旧,对于较晚接触Py的人来说,一个“副作用”是可以更多地了解Py的过去。

六、流畅的Python

本书由奋战在Python开发一线近20年的Luciano Ramalho执笔,Victor Stinner、Alex Martelli等Python大咖担纲技术审稿人,从语言设计层面剖析编程细节,兼顾Python 3和Python2,告诉你Python中不亲自动手实践就无法理解的语言陷阱成因和解决之道,教你写出风格地道的Python代码。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 本人想学习编程,需要哪些入门书籍

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情