image.png MVVM 的历史 MVVM 是 Model-View-ViewModel 的简写。相对于 MVC 的历史来说,MVVM 是一个相当新的架构,MVVM 最早于 2005 年被微软的 WPF 和 Silverlight 的架构师 John Gossman 提出,并且应用在微软的软件开发中。当时 MVC 已经被提出了 20 多年了,可见两者出现的年代差别有多大。 MVVM 在使用当中,通常还会利用双向绑定技术,使得 Model 变化时,ViewModel 会自动更新,而 ViewModel
本文主要从 3W (what, how, why) 角度出发通俗易懂的解释一下 什么是函数柯里化,以及怎么用三行代码来实现 add(1)(2)(3) 这个很常见的面试题。
《如何编写高质量的 JS 函数(1) -- 敲山震虎篇》介绍了函数的执行机制,此篇将会从函数的命名、注释和鲁棒性方面,阐述如何通过 JavaScript 编写高质量的函数。
反应式编程的提出,是在分布式编程刚兴起不久。当时没有各种 PaaS 平台,而分布式系统中,常常出现一个节点出问题,导致整个系统瘫痪的情况。所以,反应式编程的思想是:不等不靠,即当有一个节点慢下来的时候,整个系统都放慢,以此来避免灾难性的后果。
在Spring Cloud框架中涉及的Ribbon和Hystrix两个重要的组件都使用了RxJava响应式编程框架,其作为重要的编程基础知识,特开辟一章对RxJava的使用进行详细的介绍。
程序在高并发的情况下,程序容易崩溃。主要的原因是:在高并发的情况下,有大量用户请求需要程序计算处理,而目前的处理方式是,为每个用户请求分配一个线程,当程序内部因为访问数据库等原因造成线程阻塞时,线程无法释放去处理其他请求,这样就会早在请求的堆积,不断的消耗资源,最终导致程序的崩溃。
反应式编程在好几年前就已经出现了,它原理是基于反应式编宣言。但是,由于反应式编程推广速度比较缓慢,导致很多人现在对其不是很了解。
函数式编程在前端已经成为了一个非常热门的话题。在最近几年里,我们看到非常多的应用程序代码库里大量使用着函数式编程思想。
为了应对高并发场景下到服务端编程需求,微软最先提出了一种异步编程到方案Reactive Programming,也就是反应式编程。
本文介绍了什么是JavaScript轻量级函数式编程,以及如何使用函数式编程来编写更可读、更可扩展、更可维护的代码。作者通过大量实例介绍了函数式编程的基本概念,如不可变性、高阶函数、递归等,并利用这些概念来构建更简洁、更可读的代码。同时,作者还介绍了一些函数式编程的重要库,如Ramda、lodash/fp、functional.js和Immutable.js等,这些库可以帮助开发人员更容易地实现函数式编程的概念。总之,函数式编程是一种强大的编程范式,在JavaScript中应用广泛,值得学习和实践。
自从谷歌发布v8引擎之后,nodejs就应运而生,在2009年,第一版nodejs诞生。
年初突然有了个想法,前端也做了几年了,但是很多知识还很零散,应该系统的把知识归纳起来,于是给自己制定了一个计划,决定花大半年的时间整理一下大前端的知识,把他们都写成文章。这个计划包括页面布局,JavaScript,计算机网络,Vue.js,React.js,Node.js,设计模式,架构,工程化,数据结构和算法,实战项目。 所谓学习的三个阶段:学一遍,做一遍,讲一遍。这个计划就是讲一遍,同时在讲的过程中,对自己的知识进行查漏补缺。 本计划所有文章都托管在GitHub上:github.com/dennis-jian… 下面是已经写作完成的文章列表,标题前加了推荐!!的都是点赞还不错的文章。
Spring WebFlux是Spring 5发布的响应式Web框架,从SpringBoot 2.x开始,默认采用Netty作为非阻塞I/O的Web服务器。
摘要 相信大家对以CoffeeScript、TypeScript为代表的编译到JavaScript的语言已经不陌生。本次分享将介绍 JS 平台语言家族的重要新成员R&B——Reason(Faceboo
JavaScript是一门多范式语言,即可使用OOP(面向对象),也可以使用FP(函数式),由于笔者最近在学习React相关的技术栈,想进一步深入了解其思想,所以学习了一些FP相关的知识点,本文纯属个人的读书笔记,如果有错误,望轻喷且提点。
Node是首个将异步大规模带到应用层面的平台,它从内存运行机制到API设计,都大量使用异步,它的优势在于高性能,但缺点在于异步编程的流程控制其实是有悖于自然语言的线性思维习惯的。
可能大家都听过武侠小说中的内功和招式,商业大佬讲的道与术,一些唱歌选秀评委口中的感情和技巧。
当写过许许多多程序后,接触了那么多编程模式、设计模式、框架、语言、算法、数据结构以后,就会发现编程的本质万变不离其宗就是,操纵一坨数据。当然操纵的方式有许多,存储的方式也五花八门,但是本质不变,就是访问数据(读取以及改变)。
遵循函数范式建立领域模型时,代数数据类型与纯函数是主要的建模元素。代数数据类型中的和类型与积类型可以表达领域概念,纯函数则用于表达领域行为。它们都被定义为不变的原子类型,然后再将这些原子的类型与操作组合起来,满足复杂业务逻辑的需要。这是函数式编程中面向组合子(combinator)的建模方法,它与面向对象的建模方法存在思想上的不同。
在JVM生态下流行的语言有好几种,最出名的应该就是Scala和Kotlin了。最近准备除了Java本身之外在学习一种JVM生态下的语言,Scala和Kotlin都是候选语言。
本文介绍了什么是函数式编程,以及其在 JavaScript 中的运用。作者通过多个例子,包括使用 Ramda 和 Lodash 等函数式编程库,向你展示了如何使用函数式编程的方法来编写更干净、简洁、可读的代码。同时,作者也向你展示了如何使用这些库来提高代码的性能和可维护性。
前面已经写了 7 篇关于 JS 函数式编程、2 篇关于函数组合、2 篇关于 Haskell 入门,想看的话,可以在我的 JS 专栏 中找到它们;
你也许见过很多人对于Python的评价,他们说Python是“脚本语言”和“胶水语言”,在某种程度上,他们说的是对的。但是,如果你学习过Python,你会知道Python也支持面向对象的编程,更有甚者,在Python中所有东西都是对象。
如果您已经从头到尾通读了此书,请花一分钟的时间停下来回顾一下从第 1 章到现在的收获。相当漫长的一段旅程,不是吗?希望您已经收获了大量新知识,并用函数式的方式思考你的程序。
本书主要探索函数式编程[1](FP)的核心思想。在此过程中,作者不会执着于使用大量复杂的概念来进行诠释,这也是本书的特别之处。我们在 JavaScript 中应用的仅仅是一套基本的函数式编程概念的子集。我称之为“轻量级函数式编程(FLP)”。
箭头函数是ES6语法中加入的新特性,而它也是许多开发者对ES6仅有的了解,每当面试里被问到关于“ES6里添加了哪些新特性?”这种问题的时候,几乎总是会拿箭头函数来应付。箭头函数,=>,没有自己的this , arguments , super , new.target ,“书写简便,没有this”在很长一段时间内涵盖了大多数开发者对于箭头函数的全部认知(当然也包括我自己),如果只是为了简化书写,把=>按照function关键字来解析就好了,何必要弄出一个跟普通函数特性不一样的符号呢?答案就是:函数式编程(Functional Programming)。
虽然在大数据领域Java的使用更普及,Python也有后来居上的势头,但Scala一直有着不可动摇的地位。我们熟悉的Spark,Kafka,Flink都是由Scala完成了其核心代码的开发。
Glossary of Modern JavaScript Concepts: Part 1
英文全称是:Functional Reactive Programming,翻译过来就是:函数响应式编程。
在大数据的学习当中,关于编程语言选择的部分,是很多人在学习初期非常关注的。在企业大数据平台开发场景下,Java语言是主流选择,其次涉及到Spark部分,就不得不提到Scala语言。今天的大数据入门分享,我们就具体来讲一讲大数据黄金语言Scala。
对大部分公司来说,招聘技术人员这种事情,管理层就应该放手交给技术团队,只有他们才能够准确地判断应聘者的技术实力。如果你恰巧是应聘者,你也是迟早都要去面试的。不管你是哪边的,都让大哥来教你几招。
本瓜将借助《JavaScript 轻量级函数式编程》一书带领你先透析它的落脚点函数式编程,然后再看看 JS 为什么被称为是 “轻量的”!
对大部分公司来说,招聘技术人员这种事情,管理层就应该放手交给技术团队,只有他们才能够准确地判断应聘者的技术实力。如果你恰巧是应聘者,你也是迟早都要去面试的。不管你是哪边的,都让大哥来教你几招。 大兄弟们,要收藏,也要点赞关注呐。 以人为本 优秀的团队才是决定公司业绩的关键,一家公司要想于逆境之中仍能有所建树,最重要的就是得先培养出一只优秀的团队。 就像 Marcus Lemonis 说的,有三点(3 个 P)最重要: 员工(People),流程(Process),产品(Product)。 在创业初期,你招来
EasyReact 是一款基于响应式编程范式的客户端开发框架,开发者可以使用此框架轻松地解决客户端的异步问题。
0写在前面 前端的技术革新从来没有停止过,但从最近的趋势来看,貌似有一个“新”名词出现,那就是函数式编程(FP,functional programming)。 vue、react这些热门的框架都多多少少有点涉及到函数式编程的领域,甚至已经开始有一些以函数式编程作为主范式的框架出现,比如说cyclejs。 那么,为什么函数式编程会如此重要呢? 或许我们可以先从函数式编程的认识聊起。 1何为函数式编程? 1.1 什么是纯函数? 让我们回想一下初中数学 我们知道一个函数有定义域和值域,对于定义域里面的每
导语 前端的技术革新从来没有停止过,但从最近的趋势来看,貌似有一个“新”名词出现,那就是函数式编程(FP,functional programming)。vue、react这些热门的框架都多多少少有点
函数式编程是一种历史悠久的编程范式。作为演算法,它的历史可以追溯到现代计算机诞生之前的λ演算,本文希望带大家快速了解函数式编程的历史、基础技术、重要特性和实践法则。
在上篇中,我们分析了函数式编程的起源和基本特性,并通过每一个特性的示例来演示这种特性的实际效果。首先,函数式编程起源于数理逻辑,起源于λ演算,这是一种演算法,它定义一些基础的数据结构,然后通过归约和代换来实现更复杂的数据结构,而函数本身也是它的一种数据。其次,我们探讨了很多函数式编程的特性,比如:
HTML 常见标签和属性 文档类型声明 转义字符 网页访问无障碍(只是了解) CSS 常用选择器 样式生效规则(浏览器的默认样式,选择器权重的计算,样式的继承综合作用的结果)。 常用样式 布局 盒模型 水平,垂直居中 布局技术 相对,绝对和固定定位 Float(不推荐。功能弱,还要去浮动) inline-block(兼容旧些的浏览器用) Flex (主流) Grid(和Flex配合,面向未来)(只是了解) 响应式 媒体查询 rem 的使用(配合 JS 动态设置根节点的字体大小更灵活)。 效果 过
TechCrunch在去年一月时曾发布过一篇文章,预测2016年编程方面的主要趋势,但软件开发的世界总是变幻莫测,很难明确预测到会有哪些全新的开发语言、框架以及工具出现。如今已是2016年底,之前的预测实现了多少呢? 最新版JavaScript的变化 2015年6月,JavaScript/ECMAScript 6(即ECMAScript 2015或ES6)发布。根据之前的预测,在2016年JS语言将会获得广泛采用——这一预测基本实现。超过九成的主流浏览器,以及开源的JavaScript运行时Node.js都
早在 1950 年代,随着 Lisp 语言的创建,函数式编程( Functional Programming,简称 FP)就已经开始出现在大家视野。
TechCrunch在去年一月时曾发布过一篇文章,预测2016年编程方面的主要趋势,但软件开发的世界总是变幻莫测,很难明确预测到会有哪些全新的开发语言、框架以及工具出现。如今已是2017年伊始,之前的预测实现了多少呢? 最新版JavaScript的变化 2015年6月,JavaScript/ECMAScript 6(即ECMAScript 2015或ES6)发布。根据之前的预测,在2016年JS语言将会获得广泛采用——这一预测基本实现。超过九成的主流浏览器,以及开源的JavaScript运行时Node.js
我本科学的是国际贸易,乱选的专业。毕业后做了半年外贸,实在不喜欢,然后去做英文编辑了。第二份工作也很无聊,就是写英文软文,发表在国外的行业期刊上,给公司做广告。然后也做英文官网的内容。这是一个很没创意的工作。每天在一堆不利数据里找个别利好数据,包装一下,忽悠人。最重要的是,这份职业里我找不到持续精进的方向,做一年和做三年好像区别不大。 后来学前端也是误打误撞。因为我同时在做英文官网的内容和产品,会和前端打交道。当时公司的前端是学 UI 转过来的,我观察他的工作,以为就是 HTML 写个页面结构,然后 CSS 做个样式,然后用 JS 做点效果就可以了。这个简单啊,我也可以做。然后我就裸辞去学习前端开发了…… 后来发现我错了,但是自己跳的坑,流着泪也要爬出来。接下来我经历了人生中最难熬的一段时间,也经历了人生中第一次大的转变。 我从 2017 年年初开始高强度学习,去年十一假期之后开始我的第一份前端工作,到今天刚好工作一年时间。接下来我将我的学习路径,学习方法,和学习资源整理分享出来,希望可以帮到更多人。
也可以这样解释:声明式代码风格是基于命令式代码风格,声明式说白了就是对命令式的上层封装!
导读:JavaScript的繁荣促生了很多优秀的技术、框架与工具库,这空前的繁荣也给很多人造成了困惑,无所适从。到底何者是值得投入,代表了未来的方向,而何者又是真正适合于当前项目,当前团队的?而本文即
2018 已经结束了,总结自己这一年来就是三个角色的转变:自己从一个学生成为了一个社会人,从一个读者变成了一个自媒体人,从一个在校学习者变成了终身学习者。
在JavaScript的世界中函数式编程已然变成热门的话题了。仅仅在几年之前,极少数的JavaScript程序员听说过函数式编程是什么,但是在过去三年里我看到的每个大型应用的代码库中都使用了大量函数式编程的想法。
领取专属 10元无门槛券
手把手带您无忧上云