我就是这样的一个人,23岁才突发奇想:其实我可以学学编程。我并非计算机专业出身,也可以说我的工作跟编程扯不上半毛钱的关系,甚至连电脑都很少接触。可能有人会问:那你学编程有什么用呢?是啊,有什么用?...书到用时方恨少,我们总是在不经意间就放任了自己,在这个极具功利的社会背景下,我们学一门知识之前总会习惯性的问上一句: 有什么用?是啊,有什么用?...我不知道学习编程对于我有什么用,或许这一辈子都接触不到相关的工作,或许编程于我只是一个符号,一个程序,一串代码。但是,我知道我得保持一个积极学习新知识的心态,我得锻炼自己接受新事物的能力。...今天的我们是昨天造就的,而明天的我们会成为什么样的人,完全取决于今天我们都干了些什么!所以,不要问有什么用?人生前期越嫌麻烦,越懒得学,后来就越可能错过让你心动的人和事,错过风景。...最后,用凯鲁亚克的《在路上》来结束今天的文章,也希望与你一起共勉:“我要再和生活死磕几年。要么我就毁灭,要么我就铸就辉煌。如果有一天,你发现我在平庸面前低了头,那么请向我开炮。”
当时我第一次看到这些解释时,不禁倒吸了口冷气,这不会是在说我自己的吧,回想起工作后的这几年,总觉得自己都啥都会了,就好像自己站在愚昧之山而完全不自知。 而把我从愚昧之山推下绝望之谷的,就是写作。...通过这半年来的技术输出,写作让我跌入达克效应的绝望之谷,差点起不来。...就拿我自己写公众号来说,有时候为了写一篇文章,由于知识的欠缺,我需要查阅十几篇资料,还要组织语言,排版,有时能写到深夜一两点。...通过写作,我发现自己对很多知识的掌握并没有自己想像的那么好,于是我就不断的给自己输入,订阅更多优秀的公众号,知识星球,得到专栏,极客专栏,不断地给自己充电。...大佬们都认同一个观点:“利他的事情,长期下去一定会利已”,我也深以为然。我写的公众号目前并没有取得任何成就,看得人也少得可怜,但是读者在慢慢增加,后台交流的人也渐渐增。
为了趁热打铁,我决定提前三天放出原定本周日Release的文章。希望能及时让大家了解一下Kotlin。...那我们接下来看一看Kotlin的特点,当然这也是我改用Kotlin的重要原因。...{ System.out.println(((Character)chars[10]).hashCode()); } } } 在Kotlin中空指针异常得到了很好的解决...除此之外,Kotlin也可以编译成Javascript。最近使用Kotlin写了一段抓取proxy的代码,实现起来非常快捷。甚至比纯JavaScript实现起来要快很多。...这个时间和体验对应编程中的,我想应该是高效率和高可读性,可维护性的代码。 现在好了,有了Google的支持,Kotlin转Android相信在不久的将来就会全面展开。
image 前言 为什么要学习JavaScript语法,没有理由,因为工作需要,也为了成为全栈,那现在还是好好努力学习吧!...对于javascript也可以有另一种说法,那就是嵌入式语言,我在学习javascript的时候学的基本语法就那么几个,相信你也会很快掌握并了解,但是如果不去反复 使用,我也保证你也会忘记的吧!...对于JavaScript适用于大型的应用程序中,在学习JavaScript中我们知道的是JavaScript用于浏览器中,对于服务器的要求,那么就要做实际项目了。...现在学习JavaScript也是很好的选择,听说,或者更像是预言JavaScript也可以做各种程序,不限平台。学习JavaScript的语法特性简单易懂,就是在调用外部api的时候要多多下苦工就行。...❤️ 我的目标是——每天不断更 我是简书的达叔小生。
为了趁热打铁,我决定提前三天放出原定本周日Release的文章。希望能及时让大家了解一下Kotlin。...因为在Java中我们不得不写很多防御性的代码,比如这样 在Kotlin中空指针异常得到了很好的解决。 在类型上的处理,即在类型后面加上?...利用Kotlin中的高阶函数的功能,我们能更好的解决这个问题 当然这上面的例子中我们也同时使用了方法扩展这个特性。 Kotlin支持了Streams API和方法引用,这样函数式编程更加方便。...除此之外,Kotlin也可以编译成Javascript。最近使用Kotlin写了一段抓取proxy的代码,实现起来非常快捷。甚至比纯JavaScript实现起来要快很多。...这个时间和体验对应编程中的,我想应该是高效率和高可读性,可维护性的代码。 现在好了,有了Google的支持,Kotlin转Android相信在不久的将来就会全面展开。
console.log(value)} ) // Hi // Jimmy 创建一个 observable 实例后,当它调用 .subscribe,会将 .next(params) 的信息传到 value 并执行这个...为什么这么写 那它为什么要长成这个样子呢?Why? 我就写这样,它不香?...function fn1(){ console.log('Hi') console.log('Jimmy') return false } fn1() 为什么要改写为类似这样:...我敲,这 Stream 不就是 Observable 吗!cb 不就是 observer!doHandle 不就是 subscribe!!...我是掘金安东尼,输出暴露输入,技术洞见生活,下次见~~
随着一个接一个短信的到来,笔者再看了两眼,发现每次发送的消息中的份额部分不尽相同,一个念头冒了出来,这个基金一直以来是定投的,莫非是 每一次定投就发送一条短信!...OMG,我这定投已经2年多了,这得发多少条短信啊。。。 接下来的1分钟多钟里面,就看见笔者手机在不停地闪动着新消息提醒。...笔者只想说,这个是明细信息是个好用意,但是得考虑长期定投的客户的问题。不然这几十条短信就是对用户的DDOS攻击啊。 lu,因为这个bug我要取消定投!
相对于后端的先慢后快,前端是先快后慢,易学难精 选择前端,当然也是因为我算法这方面水平太次了 随意搜索一下“如何才能成为优秀的前端开发工程师”,就能发现前端要学的东西是不可估量的 也正是因为这样,我喜欢挑战
但倘若你 把父类Actress中desc()函数前面的vitural去掉,这个代码最终将调用父类的函数desc(),而非子类的desc()!...输出: height:168 weight:50 age:20 height:168 weight:50 age:20 这是为什么呢?...指针实际指向的还是子类对象的内存空间,可是为什么不能调用到子类的desc()?这个就是我在第一部分说过的:类的数据(成员变量)和操作(成员函数)其实是分离的。...有个命令可以输出对象的内存布局(不同编译器内存布局未必相同,但基本类似): clang -cc1 -fdump-record-layouts -stdlib=libc++ actress.cpp 可以得到...但同时我也埋下了新的坑没有填: 虚表中的前两个条目是做什么用的? 它俩其实是为多重继承服务的。 第一个条目存储的offset,是一种被称为thunk的技术(或者说技巧)。
问题 由于 JavaScript 的动态特性,一个对象可以具有非常不同的对象嵌套结构。...这就是为什么我喜欢可选链的原因。 2.1 数组项 可选链能还可以做更多的事。你可以在同一表达式中自由使用多个可选链运算符。甚至可以用它安全地访问数组项! 下一个任务编写一个返回电影主角姓名的函数。...使用可选链,这个任务就很容易解决: function getLeadingActor(movie) { return movie.actors?.[0]?....我为什么喜欢它? 我喜欢可选链运算符,因为它允许轻松地从嵌套对象中访问属性。它可以防止编写针对访问者链中每个属性访问器上的空值进行验证的样板代码。...当可选链与空值合并运算符结合使用时,可以得到更好的结果,从而更轻松地处理默认值。 你还知道哪些可选链的好案例?请在下面的评论中描述它!
我们在使用 java 中使用线程 Thread 的时候,在 run(){ } 里面的如果要传递参数给函数,一般,编译系统都会提示我们,要将这个参数尽可能地设置为 final,即常量,一旦定义就不能再被修改的...但是,我在服务器里检测的时候,发现总是只上传了一张图片,就是说我把同一张图片,上传了几次!!...然后我就开始打印 log 了,分别打印 u、和 bitmap.toString(),发现,在进入 线程之前,都是正常的,即不同。按道理我传递的也是不同的才对。...想了下,我觉得是线程搞的鬼了,它在执行函数内的代码时,还来不及执行完, for 循环已经进行完毕,那么 对应的 参数也就跟着变了,但是等 函数内代码再去内存中取这个数的时候,就取到了 后面的。 ...于是乎,把会变得,要传的参数,全改为 final,问题解决。
作为分布式实施的基础,跨进程通信的技术也是五花八门,为什么Core WebApi越来越火,被众多大牛们一直推荐?小编这就为你一一解答!...然而,这个在Core WebApi得到了转变,和Asp.NetCore管道的统一,让大家开发和学习成本都降低了,再加上跨平台的优势,和全新中间件模式加成,毫不客气地说,CoreWebApi已经成为当下服务的首选
那我们来分析一下,当前端需求变化,涉及到改动旧需求时,会有以下这些情况: 「做加法:」 产品需求增加,页面需要增加功能,数据也就相应的要增加显示,那么REST接口也需要做增加,这种无可厚非。...但一般来说,开发新接口往往是后端开发人员会选择的方案,因为这个方案对现有系统的影响最低,不会有额外的风险。 修改旧接口删除冗余数据的方案往往开发人员不会选择,这是为什么呢?...如果能这样做的话,那么后端程序猿小哥可能要开心死了,前端妹子也不用那么苦口婆心地劝说后端小哥哥了。 所以GraphQL隆重出世了!那么问题来了!...我用动图来分别演示下REST和GraphQL是怎么样的一个过程。...是什么让我放弃了restful api?了解清楚后我全面拥抱GraphQL GraphQL执行逻辑 有人会问: 使用了GraphQL就要完全抛弃REST了吗? GraphQL需要直接对接数据库吗?
对此我深有体会,最近我刚换了新的数据科学工作。 为什么有那么多的数据科学家在找新工作呢? 在回答这个问题之前,我想声明的是我仍然是一名数据科学家。...当中具体有很多原因,在此我不能一一列举,这里只举出我所遇到的情况。 每家公司情况不同,不能一概而言。...之后公司因为没有及时得到数据的价值而感到失望,所有这些又会导致数据科学家对工作的不满。...02 决策至上原则 我曾经早上6点起来研究支持向量机。当时我想:“这真的很难,但至少会给我未来的雇主带来价值。“ 但如果我有时光机的话,我会回到过去打消这个念头。...这意味着你必须不断做领导层安排的工作,比如从数据库中获取数字,在适当的时间交给相关人员,做简单的项目,以便得到上级的好评。在我的上一份工作中,我做了大量这类工作。
对此我深有体会,最近我刚换了新的数据科学工作。 为什么有那么多的数据科学家在找新工作呢? 在回答这个问题之前,我想声明的是我仍然是一名数据科学家。...当中具体有很多原因,在此我不能一一列举,这里只举出我所遇到的情况。 每家公司情况不同,不能一概而言。...之后公司因为没有及时得到数据的价值而感到失望,所有这些又会导致数据科学家对工作的不满。...决策至上原则 我曾经早上6点起来研究支持向量机。当时我想:“这真的很难,但至少会给我未来的雇主带来价值。“ 但如果我有时光机的话,我会回到过去打消这个念头。 ?...这意味着你必须不断做领导层安排的工作,比如从数据库中获取数字,在适当的时间交给相关人员,做简单的项目,以便得到上级的好评。在我的上一份工作中,我做了大量这类工作。
JavaScript 的特性极大地改变了你的编码方式。从 ES2015 开始,对我代码影响最多的功能是解构、箭头函数、类和模块系统。...问题 由于 JavaScript 的动态特性,对象可以有区别很大的嵌套对象结构。...如果没有这个预防措施,在访问movieSmall 对象 director 的时候,JavaScript 会抛出错误 TypeError: Cannot read property 'name' of undefined...新版本的getDirector()看起来要短得多: function getDirector(movie) { return movie.director?....为什么我喜欢它? 我喜欢 optional chaining 运算符,因为它允许从嵌套对象轻松访问属性。它可以减少通过编写样板文件来验证来自访问器链的每个属性访问器上无效值的工作。
作为替代,我用 JavaScript 编写了所有的 CSS。 我知道你在想什么:“为什么有人会用 JavaScript 编写 CSS 呢?!” 这篇文章我就来解答这个问题。...为什么我喜欢 CSS-in-JS? 主要是 CSS-in-JS 增强了我的信心。我可以在不产生任何意外后果的情况下,添加、更改和删除 CSS。我对组件样式的更改不会影响其他任何内容。...尤其是我所在的团队从中获取了很大的信心。我不能指望所有团队成员,特别是初级成员,对 CSS 有着百科全书般的理解。最重要的是,截止日期还可能会影响质量。...所有库都支持 auto-prefixing,JavaScript 原生提供了大多数其他功能,如 mixins(函数)和变量。...如果你使用 JavaScript 框架来构建包含组件的 Web 应用程序,那么 CSS-in-JS 可能非常适合。特别是你所在团队中每个人都理解基本的 JavaScript。
; 这个函数表达式体现了 ES 2015 的最大亮点——箭头函数(Arrow function),精简可爱,简直迷死人。第一次看到它时,我的内心戏是:“憋说话,吻我”!...即使是免费的 Babel(JavaScript编译器),也无法阻挡我对函数声明的喜爱。...——那么简单的函数竟然要 3 行!那些多余的字符怎么看都扎眼! 如今你们内心戏大概是: ? 我对箭头函数绝对是真爱,但要声明一个顶级函数时,我仍用“土气”的函数声明。 为什么呢?...都退后,我要开始装逼了 Fair warning:接下来我要放大招了——下文“行话”连篇,但你只要明白在声明之前不能使用常数就好。...若想了解 JavaScript 最新标准 ES 2015 及其各种新功能新亮点,我可以提供免费的入门指南。
我将个中的基本含义提取了出来,以节省您的时间。 我为什么要在乎区块链? 区块链技术可能会取代掉你现有的工作!不过不是那个意思,而是您的角色可能会转变为带有其它责任的角色。...通过优化(或替换)认证-提交-撤销-反对(Auth-Post-Reversals-Exceptions)的对账过程可以获得显著的效率,这个过程被称为每日nightmare级的极慢处理过程(nightly...其次,问题不在于如何利用这项技术来取代现有的系统,而是要考虑该如何实现超越传统的替代品。理论上,我们可以利用区块链技术支付每笔交易的联邦和州的税金类似于我们如何支付销售/县/市税。...让这个有前景的技术发展,也许它可能会提高我们社会的繁荣程度。 我一直希望在这里听到您的心声,请随时联系我们,让我们探索该如何互相帮助并思考可能性!...Peck, IEEE Spectrum :《区块链:他们是如何工作的,他们为什么会改变世界》 Naval Ravikant 推特:在区块链网络上的风暴 技术: 来自UC Berkeley的Max Fang
即使是我最心爱的软件项目 Plan 9 也有一些令人痛心的缺陷!对于某些项目,我忍不住想吐槽,但我是出于对它们的喜爱,恨铁不成钢,希望它们能够通过自己的努力赢得大家的尊重。...我曾在我的博客和其他地方多次吐槽 Go,但我也经常在私下里赞美 Go。今天,我想来好好地夸一夸 Go,因为虽然我经常吐槽它,但 Go 仍然是我使用过的最好的编程语言之一,而且我对这门语言充满了敬意。...1 语言魅力 我最欣赏 Go 的地方在于,它能长期保持简单性、稳定性和健壮性。我觉得这些特质比软件设计的其他目标更为重要。...我认为他们最大的成就在于,整个 Go 生态系统的质量都非常高。...总的来说,虽然我经常吐槽 Go,但我还是非常欣赏 Go。我认为 Go 是有史以来最好的编程语言之一。