编程界也有修仙秘籍?程序员码字3年终得《JavaScript 百炼成仙》

2024-02-05 12:30

本文主要是介绍编程界也有修仙秘籍?程序员码字3年终得《JavaScript 百炼成仙》,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

刚接触编程的小伙伴,估计都想过把枯燥无聊的编程教材变成小说读的念头,这不,说曹操曹操就来了,真的有程序员用写修仙小说的方式写了本编程教材。

它就是《JavaScript 百炼成仙》,不少读者表示越看越上头,越学越着迷。甚至有读者在文章留言表示把修仙和编码融为一体,达到天人合一的境界,达到屏幕有码,心中无码的境界了,还有网友表示作者真乃鬼才也。

《JavaScript 百炼成仙》走红

该书于2021年6月出版,作者杨逸飞是一名从事Java开发六年的程序员,写过诸多技术博客。全书共计75章,采用玄幻小说的写作风格,以主人公叶小凡的修仙旅途展开。作者在CSDN博客上对粉丝提出关于《JavaScript 百炼成仙》的问题进行了统一回复,该博文持续占据CSDN热榜第二,热度达190w。下面截取该书部分章节让大家品品:

专栏地址链接:https://blog.csdn.net/weixin_39570751/category_11396658.html

与传统的技术图书截然不同,书中的故事情节趣味十足,令人眼前一亮。

作者将编程语言知识点与修仙故事相融合,通过比武的方式,作为某个知识点的场景引出,从JavaScript的基础入手,贯穿DOM,Vue,ES6,不仅让读者了解前端知识本身,还代入了该场景下的心情,难怪让不少程序员热血沸腾、着迷其中。

在该书的简介中,作者写道:这是一本讲解JavaScript编程语言的技术书籍,只不过,本书采用了一种全新的写作手法。

如果你厌倦了厚厚的、如同字典般的编程书籍,不妨尝试一下新的口味!通过本书,你可以领悟到JavaScript的函数七重关秘籍;通过本书,你可以轻松学会使用jQuery操作DOM对象;通过本书,你可以学会目前流行的Vue基础语法;通过本书,你还可以学会最新的ES6常用语法。本书可作为JavaScript初学者入门的趣味读物。

《JavaScript 百炼成仙》是如何炼成的?作者写这本书的初衷是什么,为什么会取这个名字?这背后又有什么故事呢?程序人生联系到了作者杨逸飞,即将为大家解开这些疑惑。

《JavaScript 百炼成仙》背后的故事

1、通过您的文章描述,这本书是历时3年才出版,为什么会想写《JavaScript百炼成仙》这本书呢?书名有没有什么特殊的含义?目标读者是哪些?

我第一份工作虽然是Java开发工程师,但是因为种种原因我写JS更多一些。JS语法简单且不需要配置各种环境,一个浏览器,一个记事本都可以开刷,且立刻能看到效果,我感觉这样学习比较有趣,从此对JS产生了浓厚的兴趣。

至于为什么会想写《JavaScript百炼成仙》这本书,那是因为我觉得编程思维是共通的,不管是什么编程语言,都有变量、函数、堆栈等概念,那为什么不用一个方便学习的语言来入门呢?我感觉JavaScript是入门IT最好的选择。所以我想写一本书来介绍JavaScript,让更多对编程有兴趣的人们了解程序员这个行业。

书名中“百炼成仙”的含义是,如果在刚开始的阶段,自己只是一个青铜,只要付出努力,通过不断的尝试和努力,总会变成王者的。对于JavaScript初学者,就算一开始是零基础,我希望他通过阅读这本书,加上自己的学习和钻研,最终能够熟练地使用JavaScript进行编程,从而为以后真正从事前端工作、学习最新前端框架打下坚实的基础。

这本书的目标读者是编程初学者,我的愿景是:对于想要从事前端工作的朋友,能够轻轻松松地入个门。即便是那些对编程完全不懂的人,看了这本书,也能对JavaScript有个不错的印象。

2、为什么会想到用修仙小说的形式写书?是怎么把编程知识与修仙故事融合的?

任何修真或玄幻小说一般都有这样的描述“xx大陆,强者为尊”,IT行业也有相似的地方。那就是在编程界,只要你能力足够强,就可以改变自己的命运!哪怕一个人学历、资历、情商都很一般,但只要他编程技术足够好,一样能找到一份不错的工作,这是挺公平的。

引用某个大佬的话,修仙小说之所以让人着迷,是因为在看小说的过程中,能够给读者带来一种沉浸式的体验感,而造成这种体验感的,是看着主角从弱小一步一步走向强大的过程,相当于在极短的时间里,体验了一次别人的人生经历,而且是很爽的那种经历。

很多修仙小说俗称爽文,让人看了欲罢不能,停不下来。之前有个读者的评价打动了我,就是”被动学习”!既然爽文可以让人有兴趣看下去,不枯燥,那我为什么不可以在爽文中“夹带私货”呢,这些“私货”就是JavaScript知识点,在读者看情节的时候,就被动吸收了。即便不能100%理解,也能留个印象。对于一本教程类书籍而言,我觉得这一点是很好的,也是挺有新意的。

对于初学者,我认为最好的内容就是不仅只讲简单的代码,还要把简单的代码反复讲,这本书很多地方是这么做的,我一直认为对于初学者就是应该把知识点拆的越细越好,而且例子一定不能难,代码一定要短。我的目的是让初学者学会,而不是在小白面前秀肌肉,因为这本书本来就是面向初学者

3、在写这本书的过程中,遇到哪些困难?又是如何解决的?

其实写作过程非常不轻松,比如我经常写着写着就会迷失自我,不知道自己到底是在写小说还是写教程?如果剧情部分写多了,我就会有负罪感,感觉对不起读者,没有起到教程该起的作用。如果知识点讲多了,我更会有负罪感,因为明明想要让读者快乐地学习,结果又是长篇的知识点,和其它书籍没区别了。

我觉得核心就是一个火候问题。这个火候真的挺难掌控的,我能做的就是不停地推敲、删改。关于知识点和剧情的比例,我一直在琢磨和研究。

4、您觉得现实中的学编程和小说里的修仙有哪些相同点和不同点?

先说相同点,不管是小说里的修仙还是现实中的编程,都是一个自我提升的过程,不同点自然是学习的东西不一样。

5、在《JavaScript百炼成仙》走红后,大家对这本书褒贬不一,有人说这是在写小说,有人觉得是在讲技术,您怎么看?

每个人都有自己的想法,我觉得大家说的都各有一定的道理。

我的初衷是想用一种有趣的、与以往不同的方式来写一本编程方面的书籍,有创新,但我最终的目的还是讲技术方面的内容。毕竟这是我的第一本书,肯定有一定的缺陷,所以对于大家的意见,我都虚心接受,希望大家可以期待我的第二本书。相信我的第二本书会比第一本更好。

6、您最满意的是书中的哪一章节,为什么?

我最满意的是函数七重关和JavaScript编译原理的部分,尤其是函数七重关里面的闭包,这部分是我多年写JS总结的精华。

7、这本书备受欢迎,您是否有写下一本编程教材的打算?

有的,下一本书是Java相关的,已经开始创作了。其实这本书的后半本节奏偏快,有一定的不足,下一本书我会尽量吸取这本书遇到的经验教训,争取更进一步!

8、对于那些真正想从这本书中学习技术的读者,您有哪些学习的思路或方法可以分享/有什么建议?

我并非科班出身,也是从一个小白一步步走过来的,下面分享一下我个人的学习经验。

  • 学编程,一定要有及时的反馈。经常有粉丝问我,为什么学编程这么困难,难以坚持?我觉得那是因为很多人一心专注于理论知识,学了很多理论却不知道要用在哪里。

事实上,学那么多东西,哪里记得住?一个知识只有你实际用到了,切切实实看到效果了,你才能真正掌握它。这个阶段可以多去看看项目实战的教学视频,通过项目去学习是最快的。

  • 一定要先看怎么用,再认真研究原理。比如学骑自行车,你肯定也是先骑上去试试看,不会纠结自行车的运作原理,不把原理搞明白就不肯骑?这是一样的道理。

比如阅读《JavaScript百炼成仙》这本书,我的建议是看两遍,第一遍就当小说看,留个印象。第二遍再认认真真读,尤其要把里面的每一个例程代码都写一遍,巩固一下。这本书并不是很厚,也不会花太多的时间。

  • 压箱底的学习方法:项目吸收大法,分享给大家!这个操作建议有了一定功力之后再做。简单来说就是,当你已经不再是连怎么部署项目都不会的小白了,就可以找一个好的平台,比如CSDN、Github、码云,去搜索那些好的项目!把项目clone到本地,想尽一切办法让它跑起来,再去一点点翻看它的实现。

一开始,可以专门找那种简单的crud项目来学。注意:很多人陷入了误区,总觉得要自己把项目写出来才算是成功,其实Duck不必。因为再小的项目,如果全部自己手写,也是很累的,也浪费时间。

我的建议是,直接学别人的项目,看看里面有哪些东西是自己没见过的,这些东西请立刻记录下来,比如这个项目用到了shiro,shiro是啥?再去了解弄懂。那么下次看到别的项目用shiro,你就不用再学了。

这个过程有点类似于寻宝,项目中你没见过的新玩意儿就是宝藏,是很快乐的。

我就是用以上三个方法学习的,感觉比较适合我,也希望对大家有所帮助。

9、除了编程,您还有哪些兴趣爱好?

看动漫:海贼王,口袋妖怪,蜡笔小新;运动:乒乓球;还有就是看小说,喜欢玄幻和修真类的。

这篇关于编程界也有修仙秘籍?程序员码字3年终得《JavaScript 百炼成仙》的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/680913

相关文章

JVM 的类初始化机制

前言 当你在 Java 程序中new对象时,有没有考虑过 JVM 是如何把静态的字节码(byte code)转化为运行时对象的呢,这个问题看似简单,但清楚的同学相信也不会太多,这篇文章首先介绍 JVM 类初始化的机制,然后给出几个易出错的实例来分析,帮助大家更好理解这个知识点。 JVM 将字节码转化为运行时对象分为三个阶段,分别是:loading 、Linking、initialization

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

浅析Spring Security认证过程

类图 为了方便理解Spring Security认证流程,特意画了如下的类图,包含相关的核心认证类 概述 核心验证器 AuthenticationManager 该对象提供了认证方法的入口,接收一个Authentiaton对象作为参数; public interface AuthenticationManager {Authentication authenticate(Authenti

Spring Security--Architecture Overview

1 核心组件 这一节主要介绍一些在Spring Security中常见且核心的Java类,它们之间的依赖,构建起了整个框架。想要理解整个架构,最起码得对这些类眼熟。 1.1 SecurityContextHolder SecurityContextHolder用于存储安全上下文(security context)的信息。当前操作的用户是谁,该用户是否已经被认证,他拥有哪些角色权限…这些都被保

Spring Security基于数据库验证流程详解

Spring Security 校验流程图 相关解释说明(认真看哦) AbstractAuthenticationProcessingFilter 抽象类 /*** 调用 #requiresAuthentication(HttpServletRequest, HttpServletResponse) 决定是否需要进行验证操作。* 如果需要验证,则会调用 #attemptAuthentica

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory

JAVA智听未来一站式有声阅读平台听书系统小程序源码

智听未来,一站式有声阅读平台听书系统 🌟 开篇:遇见未来,从“智听”开始 在这个快节奏的时代,你是否渴望在忙碌的间隙,找到一片属于自己的宁静角落?是否梦想着能随时随地,沉浸在知识的海洋,或是故事的奇幻世界里?今天,就让我带你一起探索“智听未来”——这一站式有声阅读平台听书系统,它正悄悄改变着我们的阅读方式,让未来触手可及! 📚 第一站:海量资源,应有尽有 走进“智听

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor