⑴ 关于编程的书籍
《程序员修炼之道》由一系列的独立部分组成,涵盖的主题从个人责任、职业发展,直到用于使代码保持灵活、并且易于改编和复用的各种架构技术。利用许多富有娱乐性的奇闻轶事、有思想性的例子以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,本书都适合你阅读。
代码整洁之道
作者:Robert C. Martin,66% 推荐度
软件质量,不但依赖于架构及项目管理,而且与代码质量紧密相关。这一点,无论是敏捷开发流派还是传统开发流派,都不得不承认。本书提出一种观念:代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。作为编程领域的佼佼者,本书作者给出了一系列行之有效的整洁代码操作实践。这些实践在本书中体现为一条条规则(或称“启示”),并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。
代码大全(第 2 版)
作者:Steve McConnell,42% 推荐度
这是一本完整的软件构建手册,涵盖了软件构建过程中的所有细节。它从软件质量和编程思想等方面论述了软件构建的各个问题,并详细论述了紧跟潮流的新技术、高屋建瓴的观点、通用的概念,还含有丰富而典型的程序示例。这本书中所论述的技术不仅填补了初级与高级编程技术之间的空白,而且也为程序员们提供了一个有关编程技巧的信息来源。这本书对经验丰富的程序员、技术带头人、自学的程序员及几乎不懂太多编程技巧的学生们都是大有裨益的。可以说,无论是什么背景的读者,阅读这本书都有助于在更短的时间内、更容易地写出更好的程序。
重构:改善既有代码的设计
作者:Martin Fowler,35% 推荐度
重构,一言以蔽之,就是在不改变外部行为的前提下,有条不紊地改善代码。多年前,正是本书原版的出版,使重构终于从编程高手们的小圈子走出,成为众多普通程序员日常开发工作中不可或缺的一部分。本书也因此成为与《设计模式》齐名的经典著作,被译为中、德、俄、日等众多语言,在世界范围内畅销不衰。
深入浅出设计模式
作者:Eric Freeman / Bert Bates / Kathy Sierra / Elisabeth Robson,29.4% 推荐度
《深入浅出设计模式》(影印版) 的编写运用许多最新的研究,包括神经生物学、认知科学以及学习理论,这使得《深入浅出设计模式》(影印版) 能够将这些设计模式深深地烙印在你的脑海中,不容易被遗忘。你将会更擅长于解决软件设计中的问题,并能够和你的团队成员用模式的语言来更好地沟通。
人月神话
作者:Frederick P. Brooks Jr,27.9% 推荐度
作者为人们管理复杂项目提供了颇具洞察力的见解,既有很多发人深省的观点,也有大量的软件工程实践。书中的内容来自布鲁克斯在 IBM 公司 System 360 家族和 OS 360 中的项目管理经验。初版的 20 年后,布鲁克斯重新审视了他原先的观点,增加了一些新的想法和建议。新增加的章节包括:原著中一些核心观点的精华;在经过了一个时代以后,Brooks 博士对原先观点新的认识;1986 年的经典文章《没有银弹》;对 1986 年所下论断(在 10 年内不会出现银弹)现在的认识。
⑵ 本人想学习编程,需要哪些入门书籍
1、清华大学出版社出版的《C++程序设计教程》、《C++PRIMER》、谭浩强的《程序设计书》、《Effective C++》、《More Effective C++》、《Exceptional C++》 、《More Exceptional C++》、《深入探索c++对象模型》等
2、具体怎样学编程 :
①明确学习目的
学习编程对大多数IT业人员来说都是非常有用的。学编程,做一名编程人员,从个人角度讲,可以解决在软件使用中所遇到的问题,改进现有软件,可以为自己找到一份理想的工作添加重要得砝码,有利于在求职道路上谋得一个好的职位;从国家的角度,可以为中国的软件产业做出应有的贡献,一名优秀的程序员永远是被争夺的对象。
②打好基础
(1)数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。
(2)逻辑思维能力的培养学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。
(3)选择一种合适的入门语言 面对各种各样的语言,应按什么样的顺序学呢?
③ 注意理解一些重要概念
一本程序设计的书看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这脊带些语法、结构的应用例子,做到举一反三,触类旁通。
④掌握编程思想
学习一门语言或开发工具,语法结构、功能调用是次要的,最主要是学习它的思想。例如学习 VC 就要学习 Windows 的内在机理、什么是线程......;学习 COM 就要知道 VTALBE 、类厂、接口、idl......,关键是学一种思想,有了思想,那么就可以触类旁樱雹芦通。
⑤多实践、多交流
掌握编程思想必须在编程实际工作中去实践和体会。编程起步阶段要经常自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。这就要多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。亲自动手进行程序设计是创造性思维应用的体现,也是培养逻辑思维的好方法。
⑥养成良好的编程习惯
编程肆升入门不难,但入门后不断学习是十分重要的,相对来说较为漫长。在此期间要注意养成一些良好的编程习惯。编程风格的好坏很大程度影响程序质量。良好的编程风格可以使程序结构清晰合理,且使程序代码便于维护。如代码的缩进编排、变量命令规则的一致性、代码的注释等。
⑦上网学编程
在网上可以学到很多不同的编程思想、方法、经验和技巧,有大量的工具和作品及相关的辅导材料供下载。例如网站“编程课堂”()主要以 VB 和 Delph;教学和交流为主,提供大量实用技巧。
⑧加强计算机理论知识的再学习
学编程是符合“理论→实践→再理论→再实践”的一个认识过程。一开始要具有一定的计算机理论基础知识,包括编程所需的数学基础知识,具备了入门的条件,就可以开始编程的实践,从实践中可以发现问题需要加强计算机理论知识的再学习。程序人人皆可编,但当你发现编到一定程度很难再提高的时候,就要回头来学习一些计算机科学和数学基础理论。
⑶ 游戏脚本高级编程中文版(pdf)
本书是著名游戏程序设计类书籍作者André LaMothe的两卷本《Windows游戏编程大师技巧》中的第一卷的第二版。和作者撰写的其他畅销书一样,在书中随处可见许多有趣但又有一定难度的源程序。作者循循善诱地从程序设计的角度介绍了在Windows环境下进行游戏开发所需的全部知识,包括Win32编程以及DirectX中所有主要组件(包括DirectDraw、DirectSound、DirectInput和DirectMusic)。书中还用单独的章节详细讲授了2D图形学和光栅化技术、游戏算法、多线程编程、文本游戏和解析、人工智能(包括模糊逻辑、神经网络和遗传算法)、物理建模(完全碰撞反应、动量传递和正反向运动学)及实时模拟等游戏程序开发中的关键技术。光盘上带有两套完整的在线电子版书籍,内容涉及General 3D图形和算法以及Direct3D直接模式;此外,还有大量其他特约作者所著的关于游戏编程内容的文章。
光盘内容:
·本书中所有程序的代码,还包括一个新的16位引擎
·关于Direct3D和General 3D的文章和在线书籍
·通用游戏编程工具以及3D引擎的评定版本
·免费素材
·完整的Microsoft DirectX SDK
·Microsoft Visual C++入门版
300多m的是本书带的光盘内容。网上只找到第一版书的中文pdf,第二版是英文chm格式
⑷ Scratch儿童编程入门书籍都有哪些
我本身是程序员,我的孩子,还在小学2年级时,我就给她学习Scratch,半天时间,她就用我找的视频教程(网页链接),一起完成了一个打弹珠的游戏了。当然,视频上教的是其他动画角色,她改成了自己最喜欢的kitty猫作主角。
一开始就看书学理论,不太适合小学生,本来Scratch就很简单,图形化的编程界面,放手让孩子直接操作吧。当有需要进一步了解、深入学习时,再看理论。
就用小例子,先练着。
⑸ 有适合小学生看的电脑代码编程的书籍吗
导读:编程是当前需求比较旺盛的职业道路,因此,很多家长都希望自己的孩子长大后成为软件程序员,或者起码拥有一些编程思维。如果您想让孩子学习编程从哪里开始呢?在此儿童节之际向各位推荐7款适合儿童的编程语言。
计算机编程是一种需求旺盛的职业道路,因此父母可能希望自己的孩子长大后成为软件程序员。如果您想让孩子们学习编程的方法,那么从哪里开始呢?在此列表中尝试一些适合儿童的编程语言。
1.Scratch
Scratch是由麻省理工学院的终身幼儿园实验室开发的面向孩子的免费编程语言。通过入门教程,针对父母的课程说明以及强大的用户社区,对免费语言进行了补充。甚至当孩子离开计算机时,他们甚至可以使用这些卡片来学习Scratch编程概念。
Scratch使用积木式视觉界面为孩子和父母创建脚手架体验。您将编程组件(例如动作,事件和运算符)堆叠在一起。
每个块的形状仅允许将其与兼容对象组合。例如,重复循环的形状像是一个侧面的“ U”形,以告知您需要在循环的开始和结束之间放置块。
Scratch使用预先填充的图像和角色或通过上传新的图像和角色来制作真实的动画和游戏。Scratch不需要互联网连接。孩子们可以选择在Scratch的在线社区中分享他们的作品。
由于Scratch是免费的并且得到了良好的支持,因此它是对儿童友好的编程的最早建议之一,并且很容易看出Scratch在此处列出的许多其他对儿童友好的编程语言(如Blockly)中的影响。
建议年龄:8至16岁
要求:Windows,macOS或Linux
2.Blockly
Blockly是Google对Scratch 的改进,它使用了相同的互锁构建基块隐喻,但它可以使用几种不同的编程语言(包括JavaScript,Python,PHP,Lua和Dart)输出代码。这使Blockly成为可视化编辑器,而不仅仅是一种对儿童友好的编程语言。
将块链接在一起时,您会在屏幕的侧面看到代码,并且可以即时切换编程语言,以查看同一基本程序在语言语法上的差异。这使得Blockly非常适合在各个年龄段教授代码,包括年龄较大的孩子和成年人,他们可能不喜欢年轻的歪斜猫和Scratch的漫画。
Google正在与MIT合作,基于Blockly平台开发下一代Scratch。
Blockly是Android App Inventor的骨干,可用于开发可运行的Android应用程序。麻省理工学院控制了这个废弃的Google项目。
Blockly尚未像Scratch那样得到充分开发,并且可用的教程也不多。但是,Blockly希望为所有年龄段的程序员提供一个强大的编程环境,并拥有广阔的未来。
建议年龄:10+
要求:Windows,macOS或Linux
3.Alice
Alice是一个免费的3D编程工具,旨在教授C ++等面向对象的编程语言的概念。它使用熟悉的积木方法,使儿童可以通过对相机运动,3D模型和场景进行编程来创建游戏或动画。
与Scratch凌乱的界面相比,拖放界面和轻松播放按钮对某些学生而言可能不会造成太多混乱。可以将程序(或Alice中的“方法”)转换为Java IDE(例如NetBeans),以便编程学生可以从可视的构建模块界面过渡到标准的编程语言。
卡内基-梅隆大学开发了爱丽丝。该网站可能看起来并不漂亮,但是该程序仍在开发和研究中。
建议年龄:10+
要求:Windows,macOS或Linux
注意事项:如果在Mac上安装Alice,请通过转到系统偏好设置 > 安全和隐私 > 允许从以下位置下载应用程序来启用安装:App Store和Identified Developers。安装完成后,更改安全设置。
4.Swift Playgrounds
iOS和iPadOS的应用程序开发人员依赖Swift编程语言。Mac和iPad应用程序都可以使用Swift Playgrounds 。它旨在教孩子如何使用Swift编程,可以从Apple免费下载,并且不需要任何先验编码知识。
这些应用程序包含许多有关不同Swift命令的教程,这些教程旨在在3D世界中移动名为Byte的角色。尽管不需要编程知识,但是孩子们需要知道如何阅读教程并具有一定的解决问题的毅力。拖放代码消除了拼写错误,但是Swift Playgrounds不使用互锁块界面。
一旦您的孩子精通Swift游乐场,他们就可以开始在Swift中进行开发。
建议年龄: 10+
要求: iPad或Mac
5.Twine
Twine适用于对创建游戏和讲故事感兴趣但对编程的技术细节感到沮丧的孩子。
Twine是一个免费的非线性讲故事应用程序,各个年龄段的人都可以使用它,包括大量的成年人和教育工作者。使用Twine,您无需学习任何代码。它没有教用户如何编码,而是教他们如何构造和呈现非线性游戏和故事。
麻线故事由文字和图片页面组成,例如网站。设计界面显示了连接的页面,每个页面都可以使用文本,链接和图像进行修改。它对于“选择自己的冒险”类型的游戏特别有效,其中每个玩家的选择都进入了故事的新分支。
虽然此应用程序不教编码,但它确实教了很多对游戏设计师和讲故事者至关重要的规划和设计技能。该应用程序受支持Wiki,教程和活跃的用户社区的良好支持。
您可以通过托管应用在线创建Twine故事,也可以下载应用进行离线编辑。
建议年龄:12岁以上(强烈建议读者)
要求:Windows,macOS或Linux
6.LEGO MINDSTORMS
学习编程的另一种方法是研究机器人技术。许多孩子对编程在现实世界中工作的事物的想法做出回应。这里有各种各样的机器人套件的,你可以用它们编程语言,但LEGO MINDSTORMS系统中享有最大的用户群体和孩子友好的可视化编程的应用程序之一。
免费下载编程环境,但是您需要访问LEGO Mindstorms套件才能运行程序。这并不一定意味着您必须购买一个。一些学校和公共图书馆提供供学生使用的工具包,或者您可能想在您附近找到一个第一乐高联盟。
乐高EV3编程软件可以在平板电脑和计算机上运行,??并且使用了构建块(在这种情况下为乐高块)隐喻,就像Scratch和Blockly一样,尽管乐高的版本倾向于水平构建程序,看起来更像流程图。学生结合动作,变量和事件来操纵他们的LEGO Mindstorms作品。对于年幼的孩子来说,编程语言非常简单,而对于年长的孩子和成年人来说,编程语言仍然充满挑战。
除了LEGO Mindstorms编程环境外,LEGO还使用开放源代码Linux内核,可以通过Python和C ++等传统编程语言对其进行修改和编程。
建议年龄:10岁以上(幼儿可以在监督下使用)
要求:EVA3需要运行macOS或Windows的计算机或运行Android或iOS 的平板电脑。要运行程序而不是调试程序,需要一个或多个LEGO EV3机械手。
7.Ko
Ko是Microsoft专门为Windows和Xbox 360设计的游戏编程应用程序。Windows版本是免费的,但Xbox 360版本是付费应用程序。孩子们可以使用该应用程序来探索和设计3D世界中的游戏。
Ko的图形界面引人入胜,而Xbox版本的编程完全可以通过游戏控制器完成。如果您拥有支持它的硬件,那么Ko是一个较旧但仍然可靠的选择。
不幸的是,还没有Xbox版本的Ko,而且未来的发展似乎不太可能。但是,Xbox和Windows版本已经完全开发,这就是为什么即使放弃它也将其包括在此列表中的原因。
建议年龄:8至14岁
要求:Windows 7及以下版本或Xbox 360
总结:
有动力的中学生可能需要尝试制作和安装Minecraft mod。Unity 3D游戏界面是通过大量可用在线资源跳入编程3D游戏的另一种好方法。请记住,编程本质上令人沮丧。它涉及很多故障排除和反复试验。父母可以为初出茅庐的程序员提供的最佳工具是一种毅力和决心。
⑹ WINDOWS游戏编程之从零开始的内容简介
1. 如果你的编程经验为零:
毫无编程经验的朋友,请先阅读介绍C++编程语言的相关书籍,再来延续我们的梦想,阅读这本书。学习C++推荐书目: C++ Primer和C++ Primer Plus。
2. 如果你有C++编程经验但没有接触过Windows 编程:
有C++编程经验但毫无Windows编程经验的朋友,可以从头到尾顺畅的阅读这本书。因为这本书最准确的定位就是有一点C++编程经验之后从零开始掌握Windows游戏编程。
3. 如果你有Windows 编程经验,但不熟悉GDI:
有Windows编程经验但不熟悉GDI的朋友,推荐适当阅读第一章之后,从第4章开始您的征程。
4. 如果你想了解Windows GDI游戏绘图技巧:
想了解Windows GDI游戏绘图技巧的朋友,请阅读第5章。
5. 如果你想了解Windows游戏动画技巧:
想了解Windows游戏动画技巧的朋友,第6章会满足你的好奇心。
6. 如果你想了解Windows小游戏键盘鼠标编程的相关知识:
需要了解Windows中小游戏对键盘鼠标编程相关知识的朋友,第7章会给你答案。
7. 如果你想看看Windows GDI如何写出好玩的程序:
想看看Windows GDI可以弄出哪些好玩的玩意儿的朋友,第8章会给你惊喜。
8. 如果你想了解一个GDI小游戏完整的开发过程:
想了解一个结构完整的小游戏的开发过程的朋友们,第9章会超出你们的期待。
9. 如果你已经准备好迎接挑战,开始学习DirectX游戏编程:
有一定Windows编程经验,并且了解GDI编程,想开始DirectX 3D游戏编程学习的朋友,请从第10章开始阅读。这本书从第10章往后的内容组织起来是一个系统的DirectX游戏编程教材,其实可以单独成书的。
⑺ 一个人学游戏编程要看点什么书
有点难,要有心理准备啊!!
1、基础语言阶段:常用的编程语言有,C,C++,JAVA,其中最广泛被使用的就是C++,C++语言是一切游戏程序的基础,换而言之,一个优秀的游戏程序员,必须非常熟练掌握并应用C++.
2、数据结构:在掌握C++之后,需要进行数据结构的学习,形象的讲,就是那么一大堆数据,如何去有序的排列其结构。通过对数据结构的学习,便能够开始阅读他人编写的代码,尝试 开发简单的程序,可以实现一些编程者自己的构想,是每个程序员必须掌握的技巧。
3、“库”的学习及应用:最常用的有MFC(微软公司类库),GUI(图形界面库),当然“库”的知识及功能非常庞大,通常来说,熟练掌握一部分经常涉及的知识即可。
通过以上三点的学习,c++基础语言,数据结构,库的使用。你基本已经可以自己独立制作一个小游戏了,比如贪吃蛇,俄罗斯方块等等。
然后,将进入的高阶阶段,也将是直接涉及到游戏程序相关知识。
4、游戏程序对于硬件的操纵。比如,内存,CPU,显卡,这将会涉及到一些数学知识,比如立体几何,线性代数等,但是也不用惊慌,并不是非常困难。通过对硬件的熟练操纵,才能将游戏的画面,流畅度等等充分给予表达。
5、对于相关知识的学习。包括物理,脚本,美术等等。不需要深入了解,但相关知识的丰富对于你将来做游戏程序会有直接帮助。
6、对于游戏引擎的熟悉及使用。游戏引擎一般包括渲染器,内存管理器,组织管理几部分。对游戏的画面做出渲染,高效使用内存以及如何控制动画播放等功能。熟悉引擎的使用,也将对于游戏程序员有直观的帮助。
然后,关于你说的那本书内容我还不太了解, 如果你想开发 windows 平台下的游戏,推荐你从DirectX基础开始学习,《DirectX 9.0 3D游戏开发编程基础》完全可以作为基础推荐用书
理论方面推荐《实时计算机图形学》
希望我的回答对你有帮助,有什么问题欢迎留言