游戏 == 编程
>>> True

电子游戏和编程充满联系。从雅达利兴盛的年代开始,游戏就已经开始影响一代又一代程序员。他们开发游戏,在游戏过程中获得快乐。随着机器学习的兴起,程序员们让人工智能学会游戏技巧,战胜人类。在 9102 年,很多计算机技术完全可以通过游戏轻松快乐地学习,本文将从三方面提供从游戏到编程的入门指南:

用玩游戏的方式学编程

VIM-Adventures:打游戏学 Vim

Vim 在众多程序员心中拥有举足轻重的地位。用 Vim 编程的人不管水平如何,总会给人「这是大佬」的第一印象。但是 Vim 的学习曲线十分陡峭,学习过程又枯燥乏味。《VIM-Adventures》是一款从零开始教你学习 Vim 的游戏。

在游戏里,你要不断收集钥匙开门前进。这期间,你不断地收集快捷键,使用快捷键,通过与 NPC 对话获得提示,打开宝箱,等到游戏通关,你会发现自己已经掌握了大量 Vim 技巧,并在游戏过程中练习了无数次。

注意,这款游戏后期是收费的

Learn Git Branching:通关 Git 指令

每个程序员都清楚 Git 的重要性。但 Git 的理念却不如它的那几条常用指令那样好记。Learn Git Branching 通过可视化和闯关的方式满足了各个阶段玩家的学习需求。每一关会先进行教程,告诉你基本的理念和指令效果,之后你需要自己输入指令实操,可视化区域则会给你实时反馈。这款游戏支持中文版

程序员升职记:重温计算机基础

Steam 上知名的《程序员升职记》(《HUMAN RESOURCE MACHINE》),画风有趣,剧情感人。在玩游戏的过程中,你能温习/学习计算机专业基本的标准输入流、标准输出流、寄存器、指针等概念,同时考验逻辑思维能力。随着剧情的层层推进,你还能经历城市骚乱,职场中形形色色的人,以及随着不断升职迎接着你的最终结局。

同时,制作该款游戏的公司 Tomorrow Corporation 还新推出了一款《七十亿人类》(《7 Billion Humans》),这款游戏继承了《程序员升职记》的风格,并新加入了一个能让许多工人们一起执行的全新编程语言。

如果你还没玩过这两款游戏,不妨在假期感受一下。

CodeCombat:快速上手一门脚本语言

CodeCombat(又名《极客战记》)可以帮助你通过打游戏快速上手一门语言,它支持 JavaScript、Python、CoffeeScript 等编程语言。通过控制英雄挑战难关,你可以在不知不觉间了解其语法。在社区中,你甚至可以创建自己的关卡,物品及指令,通过与他人竞技提升自己的编程水平。

除此之外,Screeps 是一个为程序员制作的MMO战略沙盘游戏,通过编写 JavaScript 在游戏中对战;在 checkiO 中使用 JavaScript 或 Python 可以不断解决挑战...... 更多类似的游戏可以在我们之前的文章《玩游戏还能学编程?》查看。

用强化学习让机器学会玩游戏

除了与编程相关的游戏之外,你还可以做一个 AI 打游戏。

这篇文章 教你用强化学习自动玩 Dino Run(就是那个谷歌浏览器的断网小游戏),使用简单的 Python 程序,你可以让自己的机器轻松跑到 4000 分。

相应的 Github 仓库则使用强化学习玩起了贪食蛇。

图片左边是刚还是训练时的模型,右边是训练成熟的模型。

跟着教程练一遍,阅读相关书籍,或学习相关课程,你不仅能通过这个假期训练出自己的模型,打到所有人难以企及的高分,还能学会一门新兴领域的技术。

甚至,你还可以自己做一个游戏

自己做一个游戏

如果大家对C/C++感兴趣的话,可以加一下我们的学习交流Q群:637  935  295,免费领取一套学习资料和视频课程哟~

游戏开发的门槛正在逐渐降低,形式和语言也越来越多样化,使用 JavaScript 或 TypeScript 进行游戏开发不失为一种假期快速入门游戏开发的好方法。基于 JavaScript 或 TypeScript 有足够多的游戏引擎和图形库。

这篇文章教你使用大名鼎鼎的 WebGL 图形库 Three.js 制作一款打飞机游戏。

从场景,细节到操控,制作这款游戏可以很细致地帮助你熟悉 Three.js 的大部分常用功能。

TypeScript 是 JavaScript 的超集,也是近年来非常流行的语言,这篇文章教你使用 TypeScript 和游戏引擎 Phaser 3 开发一款简单的游戏,你可以通过它快速上手 TypeScript 和游戏开发。

听说玩这些游戏能提升编程能力?相关推荐

  1. 11个提升编程能力的小方法

    编程是当今社会最为实用的技能之一.从能够创造一个公司网站到知道怎么修复一个重定向错误,这些技能带来的价值,不管是对雇主还是对程序员自身,都是无法估量的. 但是,保持你当前的状态,停滞不前,那你永远无法 ...

  2. 经验分享:如何通过项目实践提升编程能力?

    本文经授权转载自微信公众号"crossin编程教室"(crossincode) 挑选编程实践题目的过程中,有些普遍被关注的问题,今天在这里集中聊一聊,包括我这些年指导学生的一点经验 ...

  3. APP接入小游戏,提升变现能力

    市面上大部分APP历经多次迭代更新已趋于完善,基础用户处于较稳定的状态,通过加入H5互动游戏激活老用户和预流失用户的同时,还能增加APP的收益,提高转化变现能力,为产品实现增值提升. 一.H5小游戏的 ...

  4. java怎么提升编程能力_怎样提升java编程能力

    1 怎样提升java编程能力 在互联网迅猛发展的时代,而我们如果对互联网一无所知,那就相当于文盲.所以很多人都想去了解它,去学习他.而作为互联网的产物--java,是一门非常不错的技术,学精通之后,你 ...

  5. 完美结合,10款提升编程能力的游戏项目

    你是否记得以前的童年时代,你曾经花了一整天,有时甚至不吃饭来玩任天堂游戏(马里奥和魂斗罗....)的日子??? 真实一波童年回忆.... 不过,从那时起,游戏经历了巨大的转变,人工智能.虚拟现实.云计 ...

  6. return Java2.0--第二阶段(提升编程能力)

    Return Java 第十四章 集合 14.1 集合的理解 14.1.1.集合 VS 数组 14.2 集合框架图 14.3 Collection接口 14.3.1 Collection接口实现类的特 ...

  7. 用java玩的游戏平台_分享4个边玩边学Python的编程游戏网站

    原标题:分享4个边玩边学Python的编程游戏网站 前言 大家好,欢迎来到 Crossin的编程教室 ! 学习编程虽然对有些人来说是件乐事,但是对大多数人来说仍然是一件比较枯燥困难的事情.当然,面临这 ...

  8. 10个可以边玩游戏边学编程的网站

    很多人说:学习编程是一件非常枯燥无味的事情. 其实,你有没有认真想过,可能是你的学习方法不对?在寓教于乐的今天,将知识游戏化是一种更容易让人接受的方式. 所以,今天就给大家推荐10个可以通过打游戏来学 ...

  9. 什么才算是“真正的”编程能力?不提升这些能力,你何时能拿高薪!

    真正的编程能力,两个词概括: 建模+实现   建模能力如何提高?关键在于分析问题 理解越深,预测能力越强,自己的智慧才越好发挥.这就是学习软件编程最快的方式之一 "造轮子" --造 ...

最新文章

  1. 转载: Python os 模块的功能以及子函数介绍
  2. 王茂霖:数据挖掘提分三板斧!(附PPT下载)
  3. 原 记录一下iOS开发中琐碎的点点_6
  4. boost function对象
  5. 消费和部署ASP.NET WebApi服务–陷阱
  6. java mp4分割_Android(java方法)上实现mp4的分割和拼接 (二)
  7. window7 已经分好区的硬盘如何再次分区?
  8. 用C语言扩展lua模块(入门)
  9. 算法测试例子特殊输入形式
  10. 华为手机连电脑当摄像头用_怎么用华为手机当电脑摄像头?
  11. php 二维数组变一维数组,php中怎么将二维数组转为一维数组
  12. 展望:2021年程序员业界趋势与生存指南
  13. 电子书籍制作工具软件大全
  14. 积分球辐射光源照度均匀性
  15. 浅谈分布式集群管理系统
  16. 谁引爆了手机里的电池?
  17. 腾讯云CDB/CynosDB技术揭秘
  18. 10个帮程序员减压放松的网站,爽!
  19. iOS开发笔记--基于面向协议MVP模式下的软件设计
  20. 【ACL管理与配置(ACL规则编号、通配符、ACL的分类)】(上)-20211214

热门文章

  1. 互联网域名产业报告(2021年)
  2. 我们公司也实行了OKR
  3. C语言中的strncmp
  4. 最有用的Postgres扩展:pg_stat_statements
  5. 利用官方的vue-cli脚手架来搭建Vue集成开发环境
  6. Docker从入门到实战(四)
  7. 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET - ActiveXForm运行容器...
  8. Equals和==的差别
  9. ubuntu安装kali工具包
  10. PHP 基本语法,变量