1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > ruby编程语言 游戏 0基础学习编程 – 游戏开发 – 前端

ruby编程语言 游戏 0基础学习编程 – 游戏开发 – 前端

时间:2021-11-19 01:17:11

相关推荐

ruby编程语言 游戏 0基础学习编程 – 游戏开发 – 前端

1 关于编码与重构

1.1 代码整洁之道

英文名《Clean code》,该书出自 Robert C Martin 之手,又被称为 Bob 大叔,是一位美国著名的软件工程师和作家,他已经写了有关敏捷软件开发的书籍。书中提到众多有名的编程原则:比如 SOLID 原则、 Law of Demeter(LoD,又被称为最少知识原则)。推荐理由:每个程序员都必须拥有本书并阅读它。这是一本非常著名的书,它将完全改变您的编程风格,书中介绍的规则均来自作者多年的实践经验,涵盖从命名、数据结构、面向对象的设计原理到重构的多个编程方面,虽为一“家”之言,然诚有可资借鉴的价值。或许,真正整洁的代码真能让同行读起来像诗一样。任何傻瓜都可以编写计算机可以理解的代码。优秀的程序员编写人类可以理解的代码。— 马丁·福勒如果只能读一本书,偶就推荐这本。最后,基于本书,众多开发者还推出了各种语言的整洁之道:• Javascript 整洁之道• PHP 整洁之道• ABAP 整洁之道• Java 整洁之道• .NET 整洁之道还有各大科技公司的代码风格指南:• Google 风格指南• Uber Go 语言风格指南Bob 大叔的《架构整洁之道》也值得推荐,这本书是在架构领域的登峰之作,围绕“架构整洁”这一重要导向,系统地剖析其缘起、内涵及应用场景,涵盖软件研发完整过程及所有核心架构模式。还有《程序员的职业素养》,作者以自己以及身边的同事走过的弯路、犯过的错误为例,意在为后来人引路,助其职业生涯迈上更高台阶。

1.2 重构(第2版)

英文名: 《Refactoring: Improving the Design of Existing Code,2nd Edition》,作者 Joshua Kerievsky。本书是理论和实践最佳组合的罕见书籍之一。重构是一个使您的工作代码更加美丽的过程,这本书可以利用已经尝试和测试的软件开发世界的模式来为您提供帮助。推荐理由:重构一词经常在各种大会上被提及,那就是这本书带来的影响。重构也就是重写软件的过程,而无需更改其功能,以提高其可读性,可检验性或可维护性。重构是使工作代码美观的过程,重构有助于改进工作代码的设计。这也是优秀程序员的必备技巧之一,通常优秀的程序员也擅长重构。本书将教你重构代码的艺术和科学。无论您是 Java 程序员、C++ 开发人员还是 Python 开发人员,每个程序员都可以从本书中受益。与《重构》经常被提及的书就是大名鼎鼎的《代码大全》,书中解释的也是久经考验的技术和策略,能有效帮助程序员和软件开发人员。笔者也曾在大学的时候把这本书图书馆借出来,发现这本书太厚,啃不动,到期就立马归还了。

1.3 代码之美

英文名:《Beautiful Code: Leading Programmers Explain How They Think》,作者:Grey Wilson。推荐理由:大牛前辈的博客合集,同时也是提高编码技能的好书之一,因为它为您提供了一个机会,让您了解专业程序员如何处理问题、编写的代码以及他们如何解决问题,并且仍然能够保持他们的代码美观。这本书是一系列案例研究的集合,揭示了 Emacs 到 Facebook 等大型网站架构秘密,讲述了那些专家程序员,包括布莱恩·克尼原,乔恩·本特利(Jon Bentley)(编程珠玑的作者),蒂姆·布雷(Tim Bray),卡尔·福格尔(Karl Fogel),迈克尔·菲瑟斯(Michael Feathers)(有效地使用旧版代码的作者),以及许多更多伟大的作者和程序员。关于二分查找,在书中数次被不同作者提及,了解不同作者的观点。无论您使用哪种编码语言,例如 Java,C#,Python 或 Ruby,都会在本书中找到有趣的东西。代码之美调查了一项努力的人类发明和创造力的范围:计算机系统的开发。每章中的美观来自发现独特的解决方案,这是作者的力量超越界限,识别他人所忽略的需求,并找到令人惊讶的解决方案,以解决令人困扰的问题。

2 关于职业成长

2.1 程序员修炼之道(第2版)

英文名《Pragmatic programmer》,作者是 Andrew Hunt & David Thomas。中文版的译者是大名鼎鼎的云风,副标题是:通向务实的最高境界。推荐理由:本书是时隔 20 年的新版,覆盖哲学、方法、工具、设计、解耦、并发、重构、需求、团队等务实话题的最佳实践及重大陷阱,以及易于改造、复用的架构技术。刚出来的时候博文出版社举办了一个推广活动,在云风和皓子叔联袂推荐下,毫不犹豫的入手了本书。程序员往往最难得就是务实主义,总想追求新技术,炒新概念。工作后才逐渐明白,编程的本质,均不依赖于特定语言、框架和方法,技术改变世界在于能够有效解决用户的真实需求。本书本质上是程序员的自助指南。它探索了良好的软件开发实践,并为您提供了出色的建议、提示和技巧,以更有效地编程。正是对经典和现代轶事、引人入胜的类比和发人深省的例子的创造性使用,使每个部分的学习都变得有趣而有趣。如果说大学期间读的都是类似于 C 语言圣经和 Head First 系统书籍的话,工作后的人才会真正懂得为什么这本书籍不厚,读起来拍案叫好,这大概就是大道至简。作者另一著作:《程序员修炼之道: 从小工到专家》也是值得推荐的

2.2 卓有成效的程序员

英文名:《The Productive Programmer》,作者:Neal Ford。推荐理由:本书就是讲述如何在开发软件的过程中变得更加高效。同时,《卓有成效的程序员》的讲述将会跨语言和操作系统:很多技巧的讲述都会伴随多种程序语言的例子,并且会跨越三种主要的操作系统,Windows(多个版本),Mac OS X 以及 *-nix (Unix 或者 Linux)。贯穿全文的思想大概就是尽量让机器做机器该做的事情,让程序和程序打交道,发挥程序员在这方面的先天优势。学会善用工具,命令行、学会写脚本,学会宏。提供效率,不去做重复单调的工作。最终的目的:成为一个“慵懒”的程序员。

2.3 软技能:代码之外的生存指南

英文名:《Soft Skills: The software developer’s life manual》,作者:John Z. Sonmez推荐理由:研究生期间读过最受益的一本非技术书。程序员都知道编码很重要,这是大家吃饭的硬技能。可是实际工作上才发现不止写代码,代码之外的软技能也很重要:比如面临着与客户沟通、与产品打交道的沟通问题;比如应该关注自身发展,书中也介绍了怎么做职业突围;还有更多章节介绍了作者如何学习、如何理财、健身、自偶营销等等。分享书中有趣让偶印象深刻的点是作者去面试,面试官浏览过他的博客文章,两人因此相谈甚欢。 最后也想给阅读的朋友声明一下:这本书涉猎了很多方面,但是并不是没一点都是一套可以照抄的完美答案,毕竟作者也是从当时的环境和自己经历出发介绍这些内容,每个读者应该都有自己的选择,综合而言,这本书挺适合各个阶段的人阅读的,尤其大学生和初入职场的朋友。作者也出了《软技能2:软件开发者职业生涯指南》,如果说软技能关注于生活,那软技能 2 则更加关注于了软件开发职业。

3 关于黑客与开源

3.1 Unix 编程艺术

书籍英文名:《The Art of UNIX Programming》,作者:《Eric S. Raymond》从 1982 年开始就是 UNIX 开发者。推荐理由:本书涉及 Unix 系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的 Unix 编程大师、开源运动领袖人物之一 Eric S.Raymond 倾力多年写作而成。程序会过时,编程语言会更新,代码会跟随业务不断改动,但编程思想的生命力会长盛不衰,好的编程艺术也是具有穿透力的,尽管书中的案例已经偏老,但贯穿始终的 KISS 原则、思想文化体系、设计与开发哲学一定能够给你带来醍醐灌顶的感觉。Keep it simple stupid,简称 KISS 原则。在做软件设计的工作中,很多时候都不要想得过于复杂,也不要过度设计和过早优化,用最简单且行之有效的方案也就避免了复杂方案带来的各种额外成本。这样既有利与后续的维护,也有利于进一步的扩展。另外,本书还可以与“左耳朵耗子”ef=””>皓子叔推荐 过的《UNIX传奇:历史与回忆》结合着一起看,了解 UNIX 的诞生记与发展史,贝尔实验室的幕后故事!本书不但书写 Unix 的历史,而且记录作者的回忆,一探 Unix 的起源,试图解释什么是 Unix,Unix 是如何产生的,以及 Unix 为何如此重要。

3.2 大教堂与集市

英文名:《The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary》, 《Unix编程艺术》作者 Eric S. Raymond 的另一封神之作,副标题是《对 Linux 和开源革命的沉思》。推荐理由:大家都知道程序员热衷于开源文化,都在说不要重复造轮子。开源时代下的软件开发可能只需要三个键盘按钮:CTRL + C + V,开个玩笑。说到开源文化,那么本书《大教堂与集市》是开源运动的《圣经》,颠覆了传统的软件开发思路,影响了整个软件开发领域。作者把软件开发思路类比于古代的大教堂文化和集市文化,讲述了集市如何变成大教堂,书中系统解释了开源软件是如何生产的,开源开发的优势在哪,开源软件的传承是如何做到的。

3.3 黑客与画家

英文名:《Hackers and Painters: Big Ideas from the Computer Age》,作者:Paul Graham,本书的译者是大名鼎鼎的阮一峰大佬。推荐理由:说到黑客文化,就不得不提到硅谷创业之父Paul Graham 的这本书,本书主要介绍黑客 Hacker,即优秀程序员的爱好和动机,讨论黑客成长、黑客对世界的贡献以及编程语言和黑客工作方法等所有对计算机时代感兴趣的人的一些话题。本书是一本为黑客正名的技术散文集,看完书后第一次将偶从电影中的黑客形象颠覆过来,才了解到并不是入侵系统、制作病毒、各种解密的人就是黑客,Hacker 是专家级程序员,是一群与画家有着极大的相似性,他们都是在创造,而不是完成某个任务,“黑客”象征着第一流的能力,以及求解问题过程中产生的精神愉悦或享受。他们崇尚分享、开放、民主、计算机的自由使用和进步。而那些恶意入侵计算机系统的人更应该被称为 cracker(骇客)。

4 关于算法与设计模式

4.1 算法设计手册

英文名:The Algorithm Design Manual (2nd Ed.),作者:Steven S Skiena推荐理由:关于算法的重要性大家都知道,大家肯定都知道另外两本著名的《算法导论》和《算法4》:《算法导论》侧重与算法的数学推导,适合研究,而《算法4》侧重于算法的代码实现,适合入门。而这次推荐的《算法设计手册(第2版)》却没有那么有名气,但也不失为设计实用且高效算法的最全面指导书。该书揭密了算法的设计与分析,以简单易懂的写作风格,介绍了各种算法技术,着重强调了算法分析。目前市场上算法书层出不穷,但是经典的算法却一直在那里,不曾走远。

4.2 Head First 设计模式

英文名:《Head first design patterns》,作者:Elisabeth Freeman / / Eric Freeman / Bert Bates / Kathy Sierra / Elisabeth Robson推荐理由:这本书完整地涵盖了 GoF 版本全部23个设计模式,毫不费力地解释了世界各地熟练的软件开发人员和程序员用来构建优雅、功能齐全、灵活和可重用的软件的几种软件设计模式。。图文并茂,配有大量说明性和启发性的示例,它们将使学习同时变得高效和有趣。与其他文本繁重的编程书籍不同,这本书具有引人深思、视觉丰富的格式。Head First 系统书籍充满了幽默感,选题和编辑都很用心,值得一读。相信读完的读者逐步迈向对软件设计模式的深入了解。再来读 GoF 不失为一个不错的选择。

4.3 设计模式:可复用面向对象软件的基础

英文名:《 Design Patterns: Elements of Reusable Object-Oriented Software》,又被简称为计算机领域的 GoF ,因为本书的作者是四个人:Erich Gamma / Richard Helm / Ralph Johnson / John Vlissides。推荐理由:本书是任何使用面向对象代码的开发人员的必备入门读物。而且作者 Erich Gamma 是 jUnit、Eclipse、IBM Jazz 项目、Visual Studio、Azure 和 Office 365 的幕后推手。如果您没有很好地掌握 UML,您可能会发现很难吸收编程书中汇编的一些信息和示例。然而,这不会阻止您欣赏设计模式书中叙述的美妙之处,它既简单又内容丰富。《设计模式》一书详尽地解释了 23 种软件设计模式,可帮助软件开发人员和设计人员制作更好、更优雅、更灵活的软件。这本书讨论了针对常见软件设计问题的大量简洁明了的解决方案。如果说 GoF 太难读下去,那么就推荐程杰的《大话设计模式》,这本书通过对话的形式带领大家入门设计模式,人人都可以是好学的小菜和经验丰富的大鸟。

4.4 编程珠玑(第2版•修订版)

英文名:《More Programming Pearls,Second Edition》,作者:John Bentley推荐理由:这是一本带你真正领略计算机科学之美,融深邃思想、实战技术与趣味轶事于一炉的奇书。与大多数其他编程书籍不同,这本书侧重于基本问题和一般问题。它讨论了可以提高性能或减少内存需求的各种算法和技术。作者选取许多具有典型意义的复杂编程和算法问题,生动描绘了历史上众大师们在探索解决方案中发生的轶事、走过的弯路和不断精益求精的历程。就如书名一样,大浪淘沙,计算机科学中的智慧正如自然界里珍珠出自细沙对牡蛎的磨砺,留下一个个编程“珠肌”。

题外话:

上面的书都是本人曾经阅读过,或者说在图书馆中有借阅翻过的书。也是计算机领域评分很高、有口皆碑的书籍。但计算机行业的经典书籍太多,本人能推荐的也只是其中一部分,想要推荐的内容也不想针对某个特定编程语言和领域,所以像《C++编程思想》和《On Java8》这类书籍没有进行推荐,推荐理由也不一定完全正确,欢迎大家批评指正。另外,看完上述的书并不能说自己就能在工作中就能运用到,看完就能成为一个顶尖的程序员。何况看书也不能完全接收前辈们的这些大智慧,但如果在某个瞬间(看书过程或者实践过程中)对自己有一种醍醐灌顶的感觉,就已足够。

参考链接:

• UNIX传奇(上篇)• 假期好读书• Top 5 Books to Improve Coding and Programming Skills• /images/comics/wtfm.jpg

本文分享自华为云社区《【云驻共创】对于编程思想和能力有重大提升的书有哪些》,作者:宇宙之一粟 。

程序员用超极本还是游戏本?

先简单介绍一下日常工具栈:Chrome;RubyMine、Android Studio、Visual Studio、CLion、WebStorm、zsh;Sketch、Photoshop、Illustrator

日常的工具简单来说可以分成三类:吃 CPU、吃内存、吃磁盘 IOVisual Studio 属于吃磁盘 IO 的典型, 开始的 Visual Studio(你要是用什么 VC 6.0 什么的当偶没说)如果要想流畅运行 Visual Studio,磁盘务必 SSD。而相反,JetBrains 家的 IDE 则是吃 CPU 和内存的典型。不过除非你写 Kotlin,JetBrains 家大多数 IDE 你都可以找到一些开源的替代品。

所以要想用一些重型的工具来满足编程的需求的话,大家大概可以描绘这样一个大体的配置需求。16GB 或以上的内存,256GB 以上的 SSD,一款二代标压 i5 或三代低压 i7 以上的 CPU 可以满足基本的需求。然而对于 Vim 或者 Sublime 狂魔之类的,给一台 MacBook 他们都够用。。。(不过偶资历浅,这方面不行

所以回到问题程序员用超级本还是游戏本。这取决于问题是你使用的场景。上述的配置你可以轻而易举地在超级本和游戏本上找到。具体你买哪个就取决于你的使用场景了。

超级本是个好选择,通常超级本都能在 Windows 下也能拥有相对较好的续航能力,有很好的便携能力。具备个满足大多数编码场景的超级本配置比比皆是。

如果抛弃对极致轻薄的追求的话,可选择的余地就更大了。比如 ThinkPad 的 T 系列,或者 Dell M3800 都是好选择。

个人认为,偶认为游戏本是笔记本中最不实用的一种机器,因为它根本就称不上是笔记本,它根本没有移动性可言。除了 Razer Blade 之类的小众机型之外的机型大多都体积庞大、重量惊人、续航糟糕,与其说是笔记本,不如说是一台好搬运的台式机。如果说买游戏本,偶能想到的唯一场景就是学生放在宿舍里放个假还能拿回家平时天天插着电源的场景了,显然这不是所谓「程序员」的应用场景。

如果对性能有极致的追求,对于程序员怎么也不应该跑到游戏本上去,而是应该选择移动工作站。极强的性能、极度的可靠性。比如 ThinkPad P70 或者 Dell M7710。然而偶一些繁重的工作会在工作站上跑,而不是笔记本,它确实不适合,适合的太贵(逃

偶自己开发由于又要用到 Ruby 对 Windows 兼容性不佳(native extensions)的语言,又要用到 Photoshop 之类不支持 Linux 的工具,所以日常使用 15 寸的 MacBook Pro 来避免频繁的多系统切换。配置勉强能玩一些 Steam 上下载的中型游戏的低特效,所以玩游戏交给游戏机和台式机了。然而有时候要用 Visual Studio 来写 WPF,所以多系统不可避,所以偶还有两台 PC 分别都安装了 Windows/Kubuntu 的双系统。

手机上可以用来学习编程的软件有哪些?

这个其实挺多的,下面偶简单几个可以在手机上编程的软件,主要分为C/C++,Java,Python,前端网页,Linux这5个方面,感兴趣的朋友,可以下载尝试一下:

C/C++

这里介绍一个软件—C++编译器(c4droid),可以直接编辑运行C/C++程序,代码高亮、语法检查,使用起来非常不错,下面偶简单介绍一下这个软件的安装和使用:

安装C++编译器,这个直接在手机应用中搜索就行,如下,大概也就2兆多,直接点击下载就行:

安装完成后,打开这个软件,就可以直接编写C/C++代码了,如下,代码高亮,语法检查,还支持查找、定位行、格式化代码功能:

编辑完成后,直接点击“Run”,就能运行程序,效果如下:

Java

这里介绍一个软件—AIDE,可以直接编译运行Java代码,同时还可以编写简单的安卓程序,支持自动补全、代码高亮、语法提示等功能,使用起来也非常不错,下面偶简单介绍一下这个软件的安装和使用:

下载AIDE,这个也直接在手机应该中搜索就行,如下,大概也就34兆左右,直接点击下载安装就行:

安装完成后,打开这个软件,就可以直接新建项目,编写Java代码了,如下,这里会自动进行语法检查和智能补全,使用起来非常方便:

点击运行这个程序,效果如下:

Python

这里介绍一个软件—QPython3,集成了Python3解释器,既可以命令行运行Python,还可以编辑源文件后运行,支持代码高亮、语法检查等功能,下面偶简单介绍一下这个软件的安装和使用:

下载QPython3,这个与上面类似,直接在手机应用中搜索就行,如下,大概也就12兆左右,直接点击下载安装就行:

下载完成后,大家就可以直接编写python程序了,如下,这里使用的是QEdit编辑器编写代码,你也可以使用Console控制台一行一行运行代码,都可以:

点击运行程序,效果如下,类似一个简单的安卓对话框:

前端网页

这里可以使用一个软件—w3cschool编程学院,类似一个编程资料库,提供的免费教程很多,其实不仅仅限于前端Html,CSS,Js等,还有Python,PHP,C++等后端资料,对于入门编程的新手来说,是一个非常不错的学习软件,下面偶简单介绍一下这个软件的安装和使用:

下载w3cschool编程学院,与上面一样,直接搜索下载就行,大概也就19兆左右,如下:

下载完成后,打卡这个软件,大家就可以直接搜索所有的免费资料,如下,有前端的,也有后端编程的,很基础的入门资料,非常不错:

Linux

这里可以使用一个软件—Termux,一个高级终端,类似手机的Linux,支持bash,zsh,可以远程登录Linux服务器,还可以编写运行Python,C/C++等程序,下面偶简单介绍一下这个软件的安装和使用:

下载Termux,这个也直接在手机应用中搜索就行,如下,直接点击安装就行:

安装完成后,打开这个软件,初始启动需要在线安装一些插件,成功启动后的界面如下,这里可以直接使用pkg命令来进行软件包管理,类似于Linux的apt命令:

安装ssh后,可以直接在手机上远程登录Linux服务器,如下:

安装python后,也可以直接进入python shell运行python程序,如下:

目前就介绍这5个软件吧,感兴趣的朋友可以在自己手机上尝试一下,可以在闲暇时间补充一下自己的编程知识,如果想深入学习的话,建议还是在电脑端进行,调试运行起来更方便,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。