首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

以为,前端精髓学会分析与思考,不是js语句

今天在跟同学们讲课,讲到做轮播图时候,脑子里突然蹦出一句话,“学js学前端,学习用程序、用机器思维方式来解决现实当中问题,不是学这几十上百条js语句”。...现在放空脑子想想,前端开发做什么?它并不是一个做网页,虽然这个职位看起来做起来,都是一个做网页。...它在网上形式载体,一眼看上去就是网页。但这些网页是什么?有没有想过,为啥要做成这要,不做成那样?因为它们都受限于各自业务逻辑、交易流程。...,它在眼里一台发动机“剖面图”; // 当我面对一个网站时候,它在眼里就是一整台运行中发动机。...这是眼中,心中前端开发。 前端开发为什么叫前端?就是因为它用肉眼能看到。后端开发为啥叫后端?因为它肉眼看不到。所以前端开发也可以放在可视化开发大范畴里。

1K70

为什么 Docker Kubernetes 用 Go 写不是 C# ?

HahahahahaSoFunny 为什么 Docker Kubernetes 工具用 Go 写不是 C#? 总所周知,现在开发人员使用很多新工具大多是用 Go 写。...为什么不是 C# 呢? .NET C# 现在功能已经很强大了,是不是社区缺少这种文化?如何才能培养一种更加开源文化, 因为很多开发人员对 .NET C# 仍然还抱有偏见。...认为用 C# 编写更多有趣有用开源工具,可以大大改变人们看法。...haho5: 不确定为什么 Docker 用 Go 写, 但是 Kubernetes 确实是 Google 开发, 并且 Golang 也是。...它从 2.0 到现在 10.0 变化非常快,相同代码逻辑可以用太多不同方式编写。 GO 一门简单语言,很受欢迎,因为好代码应该易于阅读理解,以便成千上万开源程序员做出贡献。

1.1K00
您找到你想要的搜索结果了吗?
是的
没有找到

关于现代包管理器深度思考——为什么现在更推荐 pnpm 不是 npmyarn?

接着,从 npm3 开始,包括 yarn,都着手来通过扁平化依赖方式来解决这个问题。相信大家都有这样体验,明明就装个 express,为什么 node_modules里面多了这么多东西? ?...这就是为什么会产生依赖结构不确定问题,也是 lock 文件诞生原因,无论package-lock.json(npm 5.x才出现)还是yarn.lock,都是为了保证 install 之后都产生确定...版本 C, A 当中用还是 C 当中旧版 API,可能就直接报错了。...如果自己业务代码还好,试想一下如果给很多开发者用工具包,那危害就非常严重了。...注意,使用硬链接,不是软链接。如: pnpm link ../..

2.9K20

关注数据不是模型:如何赢得吴恩达首届 Data-centric AI 竞赛

这次竞赛共有489个参赛个人和团队提交了2458个独特数据集。仅仅通过改进数据(不是模型架构,这是硬标准),许多参赛者能够将64.4%基准性能提高20%以上。...在此,很高兴能大家分享如何凭借“数据增强(Data Boosting)”技术获得最佳创新奖。...这场竞赛真正独特之处在于,与传统 AI 竞赛不同,它严格关注如何改进数据不是模型,从个人经验来看,这通常是改进人工智能系统最佳方式。...2 “数据增强”技术解决方案 在进入解决方案关键部分之前,第一件事遵循固定标签删除不良数据常见做法。...最初使用这个电子表格来识别标记错误图像明显不是罗马数字 1-10 图像(例如,在原始训练集中就有一个心脏图像)。 现在我们来看看“数据增强”技术。

65740

为什么说未来10年AI运维天下

不论这个愿望是不是最终能够实现吧,至少转行成本越低越好。 ? 为什么说AI未来趋势,我们怎么做出这个判断?...但是人生产能力有限,一个人一天时间也只有24小时,所以单纯依靠人力生产能力肯定是比较快就到达极限。但是如果驱动机器,驱动计算机去自动化完成工作,那工作效率就高太多了。...当数据积累到一定程度之后,从数据中归纳工作过程就成了生产中效率更高方式——确实,让人直接写一段程序判断出两张人脸是不是来自于同一个人,这简直太复杂了;但是让计算机从大量样本中总结归纳出这样功能一段程序来...很多人对运维这种岗位有误解,总觉得一种技术含量很低工作,其实不然。运维和服务器后端开发岗位其实是分不开,一个高质量运维工程师水平跟一个高级系统架构师水平不相上下。...运维需要掌握知识内容,除了安装LinuxWindows系统各种中间件软件外,还要掌握包括TCP/IP原理各种路由分发、负载均衡设备工作原理,还要掌握包括RAID技术在内各种硬件IO镜像条带化技术

86520

Taro.ai钱昊:C端梦,相机智能定位追踪则是用户梦 | 镁客请讲

“其实,现在天气预报都是数字预报,这其中就需要运用到大量建模、机器学习、自动优化等技术。在大学里学就是这些,在机器学习底层原理方面有一定知识实践积累。”...更巧,钱昊因为在大学期间做了一个活动,被李开复欣赏并被邀请到了谷歌,加入到一个校园类项目团队中。 “就是在那个时候,真正接触到了互联网。...也因此,知道了自己想要是什么,就是从事与互联网科技相关工作。” 然而,等到真正找工作时候,钱昊却阴差阳错去到了百威。...最后 目前Taro.ai三款产品正在Kickstarter众筹,手机与Gopro专用T1众筹价为199美元;单反微单爱好者则可以选择购买TX,众筹价为599美元;如果你已经有稳定器的话,单独追踪模块...“相较于去年VR风口,今年的人工智能行业有实际应用产品落地。除大公司积极布局之外,创业型公司也应早入局。Taro.ai所希冀,就是能够通过自己努力想法,满足C端用户实际需求。”

81600

写下这行代码时,只有上帝知道怎么回事01.烂代码路径依赖02.对于烂代码应采取零容忍03.代码规范重要性04.文档重要性

“ 吐槽一番后,就继续按照前任们写法继续写下去。如果有其他人问为什么要这么写,他们就会把一切责任都归咎于前任。就好像别人写代码就是豆腐渣,自己却无辜纯洁得如同白莲花。...想大多数程序员能力都比不上google工程师吧,google开发人员,入职第一件事就是熟悉他们代码规范,他们代码规范极其严谨,细化到每一个细节,如:命名规范,注释规格,大括号是否换行,缩进用...就如同在正式宴席上,所有人都西装革履,而你却一件大背心,一个大裤衩,趿拉着拖鞋,唱着小苹果入场。 你,觉得这样合适吗? 04.文档重要性 当我写下这一行代码时,只有上帝知道是什么意思。...程序员最痛恨事:"为什么别人不写个文档?", 当要自己写文档时,又觉得:”这东西,哪用写文档,看下代码就知道了“。于是,当下一个人接手代码时,又是一阵吐槽,最终很可能自己重新实现功能。...这种说不清,道不明所谓“道”,无法流程化更像是一种玄机,类似于黑魔法存在。 编程,应该遵循有记录、可重现科学方式,不是靠瞎猜黑魔法方式。 ?

92430

数据结构-树结构

“高度”这个概念,其实就是从下往上度量,比如我们要度量第 10 层楼高度、第 13 层楼高度,起点都是地面。所以,树这种数据结构高度也是一样,从最底层开始计数,并且计数起点 0。...这也是为什么完全二叉树会单独拎出来原因,也是为什么完全二叉树要求最后一层子节点都靠左原因。 当我们讲到堆堆排序时候,你会发现,堆其实就是一种完全二叉树,最常用存储方式就是数组。...二叉查找树其他操作 除了插入、删除、查找操作之外,二叉查找树中还可以支持快速地查找最大节点最小节点、前驱节点后继节点。这些操作就不一一展示了。...从前面的例子、图,以及还有代码来看,不管操作插入、删除还是查找,时间复杂度其实都跟树高度成正比,也就是 O(height)。...二叉查找树在比较平衡情况下,插入、删除、查找操作时间复杂度才是 O(logn),相对散列表,好像并没有什么优势,那我们为什么还要用二叉查找树呢?

1.8K10

MIT 6.828 操作系统工程 lab2 通关指南

这篇自己探索实现 MIT 6.828 lab2 笔记记录,会包含一部分代码注释要求翻译记录,以及踩过坑/个人解决方案 这里实现完整代码仓库,也包含其他笔记等等:https://github.com...虚拟,线性物理地址 在x86术语中,虚拟地址由段选择器段内偏移量组成: 一个线性地址 段转换之后但页面翻译之前得到东西,物理地址转换完全之后得到。...大小PGSIZE倍数,并且vapa都是页面对齐。...我们将在实验3中开始加载运行用户环境(进程)将控制下部布局内容,内核始终保持对上部完全控制。...否则,用户代码错误可能会覆盖内核数据,从而导致崩溃或更微妙故障。用户代码也可能能够窃取其他环境私有数据。请注意,可写权限位(PTE_W)同时影响用户代码内核代码

59310

Hive在DB-Engine排名已经超过Teradata

不明白为什么在比较各种 DB Engine时候,都不拿这张图来说事: ?...(点击查看大图) 至于为什么,原因也有很多,不过对于不是真懂的人,侧面的可以想一想,一个 “好慢”,“太老” , “没前途“ Apache 技术,为什么能长期霸占Hadoop SQL生态圈C位,...当然,MR没前途,这个承认,不是MR没前途,而是HadoopMR没有去实现对接MPI计算模型,所以它没前途,可是万一它哪天实现了呢?那应该还是有前途。 ?...对Hive提出了StingerStingerNext计划,来从里到外改造Hive内核代码,并让他能支持多个不同计算引擎。 ?...但是,这不是Hive终极目标,要说Hive终极目标"数据中台",估计一大堆人都笑了,数据中台Hive有毛关系?

1.7K30

Python面试必须要看15个问题

熟悉基础模块是非常有价值,但是别想破脑袋都背下来,记住Google你工作中良师益友。 如果你不明白代码预期功能,就大胆提问。 坚持KISS原则!保持简单,不过脑子就能懂!...这就是为什么前两个元素01了。 不明白的话就试着运行下面的代码吧: 问题7 “猴子补丁”(monkey patching)指的是什么?这种做法好吗?...argskwargs这两个标识符约定俗成用法,你当然还可以用*bob**billy,但是这样就并不太妥。 下面具体示例: 为什么提这个问题?...这里也涉及到递归生成器(generator)使用。 生成很棒数据类型。你可以只通过构造一个很长列表,然后打印列表内容,就可以取得与print_all_2类似的功能。...举个例子,假设有两个对象o1o2,而且符合o1.x == o2o2.x == o1这两个条件。如果o1o2没有其他代码引用,那么它们就不应该继续存在。但它们引用计数都是1。

1.2K90

源码分析C++string实现

▼ string如何拷贝构造,如何析构,有引用计数概念吗? ▼ stringdata()c_str()函数有什么区别? ▼ std::to_string()如何实现?...,具体分析可以看下代码中添加注释: /*** * _M_construct有很多种不同实现,不同迭代器类型有不同优化实现, * 这里我们只需要关注一种即可,整体思路相同。...* 但其实不是,_M_create第一个参数传递方式引用传递,__capacity会在内部被修改,稍后会分析 */..._M_dispose函数: /** * 如果当前指向本地内存那15个字节,则不需要释放 * 如果不是,则需要使用_M_destroy去释放其指向内存 */ void _M_dispose() {..._M_copy(__r->_M_refdata(), __buf, __len); __try { /** * 这里扩容机制上面介绍相同,这里就不过多介绍

2.2K20

深入理解nginx请求限流模块

如果您更关注稳定性响应时间,您可以设置较小突发请求数量,并使用适当延迟来平滑处理请求。   ...在真实应用环境中,请求到来并不是匀速,而是存在潮汐现象,当一个“突发波峰”来时候,nginx可以通过burst关键字开启对突发请求缓存,采用漏桶算法对进来请求进行平滑处理,不是生硬地直接拒绝...,不是单个worker进程级别的。...; } 3.1.3 limit_req_dry_run指令    该指令设置了一个开关,如果on的话,如果发生了限流事件,只是在error日志中打印日志,不是实际执行限流动作。...,漏桶算法其实没有分配真正漏桶,而是通过一个记录excess计数last时间戳就可以完成了。

55810

图解各种join执行原理

对于一些SQL初学者,写一个简单单表查询那是信手拈来。 但是遇到写多表关联查询可能就懵逼了: 为什么会有多表查询这种“怪物”? 要怎么写? 为什么要这样为难? 这是谁发明?...进而可能会引申出人生终极哲学问题:谁?在哪?在做什么? 有点扯远了,但确实能够体会到一些初学者,对多表关联查询困扰。今天我们就给大家讲解多表关联查询到底怎么一回事。...笛卡尔乘积指在数学中,两个集合XY笛卡尔积,表示为X×Y,第一个对象是X成员第二个对象是Y所有可能有序对其中一个成员。...最开始在数据库中生成了一张笛卡尔积虚表VT1,VT1里面的数量正是两个表(CustomersOrders)数量乘积9条(3 × 3),我们可以使用如下代码获得笛卡尔积: SELECT B.CustomerID...这样汇总后虚表T3中数据如下: 虚表VT3 这样当我们再对表Orders中OrderID计数时,CustomerID为1客户因为没有订单,返回结果将为0,CustomersID为2,3客户都有一个订单

9810

深入剖析 linux GCC 4.4 STL String

我们意识到stringCopy-On-Write引用计数技术可能会导致我们拷贝这个string并没有真正实现数据拷贝。 在做了一些测试研究之后,我们确信了这一点。...根据上图推测,一个空string,没有数据,内部开辟内存应该是83=24字节,sizeof(string)值似乎为84=32字节,因为需要存储四个变量值。实际上并不是这样。...下面我们通过一段程序来验证引用计数在这一过程中变化作用。...第二步:在新地址空间上进行修改,从而避免了对其他对象数据污染 由此可以看出,如果不是通过string提供接口对string对象强制修改的话,会带来潜在不安全性破坏性。...初始化过程中,对于短字符串,会先存放在栈中,待生成_Rep指针后才会将数据拷贝至_Rep中,这样可以避免初始化短字符串时候去申请动态内存空间 string由于使用引用计数Copy-On-Write

1.3K42

PowerBI中命名规范——“没有人比我更懂命名方式……”

觉得可以从以下这几个方面出发: 按照人类正常逻辑能够读懂词语,不是任何类型技术命名或者自创简写命名,尽量写全单词,单词之间用空格。...应该使用正确业务术语,每一个PowerBI报告都是建立在一个一个具体业务之上,报告使用者即用户将了解理解术语,不是仅仅创建一些看似合适名称。...以上这些建议对有些人来说可能会引起争议,尤其那些比较熟悉数据库的人。但实际上,据我观察这么长时间,设计数据集更像是设计一个用户界面,一个前台产品,不是设计一个数据库,一个后台存储工具。...如果这些其他人不明白你创建表、列度量值名称是啥意思,那么他们就无法使用“实时连接”或使用” 在Excel 中分析“从数据集生成PowerBI报表。...即使你组织中唯一构建数据集报表的人,为了你自己使用方便,也为了今后修改、添加删除一些度量值时候你自己能够看懂,使代码尽可能具有可读性。

1.8K20

nginx延迟关闭

既然配置文件中没有显式配置会导致该问题,那么就有可能 Nginx 默认配置导致,因此搜索了一下源代码中与5有关内容,希望能发现一些蛛丝马迹,结果发现了一段如下注释: Therefore we...虽然开启 Keep-Alive 使 TCP_NODELAY 生效后,异常日志消失了,但是心里依然有几个疑问,总觉得这不是导致问题根本原因: Nagle 算法内核层面的,并不是Nginx实施,也就是说累积包过程在内核中完成...,在短连接情况下,Nginx 只有在关闭与客户端连接后才会开始输出日志,不是给客户端发送完数据后就打日志。...(r); return; } ngx_http_close_request(r, 0); } 注意上面并不是 ngx_http_finalize_connection 函数全部,只是贴出了与问题相关代码...另外如果使用长连接,Nignx 在请求结束后不需要关闭连接直接输出日志,那么就不会有这个问题,这也就解释了为什么开启 Keep-Alive 后问题消失。

3.6K20

C语言高效编程与代码优化

来源:公众号(c语言与cpp编程) 在本篇文章中,收集了很多经验方法。应用这些经验方法,可以帮助我们从执行速度内存使用等方面来优化C语言代码。...因此,在代码优化时,我们座右铭应该是确保内存使用执行速度两方面都得到优化。 声明 实际上,在项目中,使用了很多优化ARM编程方法(该项目基于ARM平台),也使用了很多互联网上面的方法。...但并不是所有文章提到方法都能起到很好作用。所以,对有用高效方法进行了总结收集。同时,还修改了其中一些方法,使他们适用于所有的编程环境,不是局限于ARM环境。 哪里需要使用这些方法?...=0; i--){} 这里我们需要记住循环必须终止于0(因此,如果在50到80之间循环,这不会起作用),并且循环计数递减。使用递增循环计数代码不享有这种优化。...循环展开可以带非常可观节省性能,原因代码不用每次循环需要检查增加i值。

3.2K10

【万字长文】C语言高效编程与代码优化,建议收藏!

在本篇文章中,收集了很多经验方法。应用这些经验方法,可以帮助我们从执行速度内存使用等方面来优化C语言代码。...因此,在代码优化时,我们座右铭应该是确保内存使用执行速度两方面都得到优化。 声明 实际上,在项目中,使用了很多优化ARM编程方法(该项目基于ARM平台),也使用了很多互联网上面的方法。...但并不是所有文章提到方法都能起到很好作用。所以,对有用高效方法进行了总结收集。同时,还修改了其中一些方法,使他们适用于所有的编程环境,不是局限于ARM环境。 哪里需要使用这些方法?...=0; i--){} 这里我们需要记住循环必须终止于0(因此,如果在50到80之间循环,这不会起作用),并且循环计数递减。使用递增循环计数代码不享有这种优化。...循环展开可以带非常可观节省性能,原因代码不用每次循环需要检查增加i值。

1.5K20
领券