笔录与QCon2017北京站的体验。记录到QCon2017北京站之体会。

若是发生侵权,请告诉作者删除。scottzg@126.com

图片 1
异常好看与QCon全球软件开发大会,这里特别感谢咱单位的总经理,也是《互联网广告算法和网实施》此开之撰稿人王勇睿。因为他本身才起这次参会机会到这次软件开发大会。
接通下去,我将自以下几点来创作这首文章:

  1. 什么是QCon?
  2. 自家与的专题发言有安?
  3. 自身以QCon大会上上及了什么?

如果产生侵权,请告知作者删除。scottzg@126.com

图片 2
大荣幸与QCon全球软件开发大会,这里特别感谢咱机关的总经理,也是《互联网广告算法和系统实行》此开的作者王勇睿。因为他自身才生这次参会机会到位这次软件开发大会。
联网下,我以从以下几点来写作这篇稿子:

  1. 什么是QCon?
  2. 自身到的专题演讲有怎样?
  3. 本身以QCon大会上学习到了啊?
1.什么是QCon?

QCon是由于InfoQ主办的大千世界一流技术盛会,每年以伦敦、北京、东京、纽约、圣保罗、上海、旧金山举行。自2017年3月份篇不成办以来,已出超过万叫做高级技术人员参加了QCon大会。QCon内容来实践并面向社区,演讲嘉宾因热点话题,面向5年以上工作经历的艺团队主管、架构师、工程总监、高级开发人员分享技术创新和特等实践。
北京QCon2017凡当江山议会着力举办,时间也:2017年4月16日—18日。

1.什么是QCon?

QCon是由InfoQ主办的环球顶级技术盛会,每年在伦敦、北京、东京、纽约、圣保罗、上海、旧金山做。自2017年3月份首不成举办以来,已产生越万称为高级技术人员参加过QCon大会。QCon内容出自实践并面向社区,演讲嘉宾基于热点话题,面向5年以上工作经验的技艺团队负责人、架构师、工程总监、高级开发人员分享技术创新和最佳实践。
国都QCon2017是于国家会议中心设立,时间吗:2017年4月16日—18日。

2.本人到的专题研究有什么样?

由时日由,我是终极一上失去的QCon。早上8:30自床,然后坐地铁到了国议会中心。然后开了参会学习。以下是参会内容:

2.自我到场的专题研究有怎么样?

鉴于时日由,我是终极一天去之QCon。早上8:30起床,然后坐地铁到了江山议会着力。然后开了参会学习。以下是参会内容:

Part 1.《Software Performance Analytics: Past,Present and Future》

演讲人是Kingsum,来自阿里,是阿里巴巴基建服务首席专家。主要介绍的凡软件性能分析:过去,现在以及前景。
想必是友好英文差的故,他发言的过程被时时出现各种英文,所以有些时候从不放太懂。(学习英文很重点)
外牵线了一个吓的次第,但是生瞬间几沾会影响或者制约其功能:

  • Software doesn’t scale
  • Hardware is too slow
  • Tuning software doesn’t work
  • Tuning software in the data center is difficult
    斯Part就这样多了,讲的极致高深,表示并未听懂。
Part 1.《Software Performance Analytics: Past,Present and Future》

演讲人是Kingsum,来自阿里,是阿里巴巴基建服务首席专家。主要介绍的是软件性能分析:过去,现在同前景。
或是和谐英文差的缘由,他演讲的长河中常常出现各种英文,所以部分上没听太明了。(学习英文很重大)
他介绍了一个好之主次,但是发生瞬间几乎碰见面潜移默化要制约该作用:

  • Software doesn’t scale
  • Hardware is too slow
  • Tuning software doesn’t work
  • Tuning software in the data center is difficult
    斯Part就这么多矣,讲的极高深,表示并未听懂。
Part 2.《代码未写,漏洞就出–谈谈设计不当造成的安题材》

演讲人是叫旸(TK先生),他是腾讯玄武实验室总监。主要介绍了:

  • 筹不当导致的尾巴。
    规划分为单点设计以及多点耦合。举个例子来说,单点设计虽是才计划一个效果,多触及耦合就是多独作用组合在一起去贯彻有新的效果。也许一个效益的筹划是无问题之,也非见面面世错误,但是若多个没问题之意义结合成一个新的机能,由于耦合也许就是会见冒出漏洞。
    不怕以类似购物类的系,支付体系与交易系统本身他们是从未有过外破绽可言之。但是当我们以他们组成使用的时段就是便于出问题。比如我们当市的时候手动将市金额改写,100冠变更成为1正,支付系统未会见校验钱数,只会告知用户是否出成功,所以当市的时光,交易系统收到了开支系统返回的打响便见面唤起用户购买商品成功。这样的话你虽就此1初次购买了100首届之货品。比较靠谱的方法就是是在付出体系成功之后回来给交易系统成功再次加上支出金额。这样就是可知免这个漏洞了。
  • 心想事成不当造成的纰漏。
    推选个例子,对比两个字符串相等的法,在比对应位的字符是否等于时,我们恐怕这样来判断:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public bool isEqual(String s1,String s2) {
    if (s1.length != s2.length) {
    return false;
    }
    for(int i=0;i<s1.length;i++) {
    if (s1[i] != s2[i]) {
    return false;
    }
    }
    return true;
    }

此以对照s1[i]与s2[i]未顶的上(类代码,也许不能够运行),攻击者可能会见以for循环做政工,比如黑客通过某种攻击被代码返回true,那么就是终于少只非等于的字符串也会见回去true,但是这之中来某些咱们会忽视,那便是日维度。一般的话,如果比两只字符串最缓慢只需要1s,但是吃黑客攻击的代码由于需要开展破解攻击,所以吃的辰也会长一点,所以只要我们的代码在落实的进程中考虑到时刻,那么代码就会又健全,不轻攻破。
TK先生也证明了立或多或少:时间是很容易被忽视的维度。

  • 使用不当导致的纰漏。
    此TK老师还介绍了他们因此扫描器做试验,扫描的之初衷就是是吃开发及读取数据方便,但是它有些上可举行啊一个外接键盘。将决定电脑的吩咐装载在二维码或条形码里面,然后通过扫码器就能够支配电脑。甚至也得以应用激光灯,通过激光灯远程照射让扫描器识别,进而决定电脑。
    另外还有运营商的“短信保管箱”、”自助换卡”等作用,由于涉及不当也于出同样段落中间下吃取消。这里的缺失信保管箱就是营业商将短信同步到云里面,然后就是用户手机不再身边也足以经登录云查看短信。但是业界公认手机验证码作为安全认证,如果用户的亏信存储云密码被盗,那么用户之欠信安全认证也即失了意向。
    中还说了一些漏洞问题,比如badbarcode问题、badtunnel问题等等。
    一致句话总结:是故圣人不治就患病治病不患,不看都乱治不乱。
Part 2.《代码未写,漏洞就出–谈谈设计不当造成的平安问题》

演讲人是于旸(TK先生),他是腾讯玄武实验室总监。主要介绍了:

  • 设计不当导致的漏洞。
    统筹分为单点设计与多点耦合。举个例子来说,单点设计虽是不过计划一个作用,多沾耦合就是大抵单职能组合在一起去实现有新的效益。也许一个效能的设计是从未问题之,也未会见出现错误,但是只要多只无问题之效用做成一个新的功用,由于耦合也许就算见面起纰漏。
    即便用类似购物类的体系,支付系统跟交易系统本身他们是尚未任何漏洞可言的。但是当我们用她们成以的时候就容易发生问题。比如我们以贸易的时节手动将交易金额改写,100首届变更化1首届,支付体系不见面校验钱数,只见面报告用户是否出成功,所以当市的时,交易系统收到了开销体系返回的成就是会见提醒用户买商品成功。这样的话你就是因故1头购置了100元的货物。比较靠谱的法子尽管是于付出系统成功后回到给交易系统成功更添加支出金额。这样尽管能够幸免这漏洞了。
  • 实现不当造成的尾巴。
    选个例证,对比两单字符串相等的道,在自查自纠对应位的字符是否当时,我们恐怕这样来判定:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public bool isEqual(String s1,String s2) {
    if (s1.length != s2.length) {
    return false;
    }
    for(int i=0;i<s1.length;i++) {
    if (s1[i] != s2[i]) {
    return false;
    }
    }
    return true;
    }

这里在对待s1[i]与s2[i]切莫顶的下(类代码,也许不能够运作),攻击者可能会见以for循环做工作,比如黑客通过某种攻击为代码返回true,那么就是终于少独无顶的字符串也会回true,但是这其中有几许我们见面忽视,那即便是时空维度。一般的话,如果对比两独字符串最缓慢只待1s,但是于黑客攻击的代码由于要开展破解攻击,所以吃的时空也会长一点,所以如果我们的代码在促成之进程中考虑到日,那么代码就见面又结实,不轻攻破。
TK先生吗验证了这或多或少:时间是非常容易被忽略的维度。

  • 使用不当导致的尾巴。
    此TK老师还介绍了他们因此扫描器做实验,扫描的之初衷就是是深受开发及读取数据方便,但是她有上可开为一个外接键盘。将控制电脑的一声令下装载在二维码或条形码里面,然后通过扫码器就能决定电脑。甚至为足以利用激光灯,通过激光灯远程照射让扫描器识别,进而决定电脑。
    除此以外还有运营商的“短信保管箱”、”自助换卡”等职能,由于涉及不当也当盛产同样段子之间下于收回。这里的短缺信保管箱就是运营商将短信同步到云里面,然后便用户手机不再身边为足以透过登录云查看短信。但是业界公认手机验证码作为安全证明,如果用户之欠信存储云密码被盗,那么用户的差信安全证明也便去了意。
    中间还说了有些破绽问题,比如badbarcode问题、badtunnel问题等等。
    平句话总结:是故圣人不看都患治疗不患,不看病就乱治不乱。
Part3.《软件开发之禅》

演讲人是蔡超,Amzaon(中国)技术集团的上位架构师。主要介绍了以下几点:

  • 诚如与神似
    此间根本谈了MVC。其实还有多别样的架构:MVVM、MVP等等,其实他们的真相都是MVC的衍生。我们若于动的进程遭到窥见其本来面目之事物,也要发现那个差距。
  • 机械和转移
    此处自己闻最多之是黑板模式,所谓黑板模式,就是以被的多种不同数据处理逻辑相互影响和旅完成多少解析处理,就类似多位不同之学者以同一黑板上交流思想,每个转件都好赢得别的大家写以黑板上的音信,同时为可以为此自己之解析去创新黑板上的消息,从而影响外学者。比较突出的以就是数据库:数据库充当黑板,不同之动共享数据库中之音,并且可以创新数据信息。是极其常见的兑现方式。
  • 优势及劣势
    一个初的技术出现后,它恐怕会见吃大家带来便利,进而去化解那些本都知道技术无法缓解之问题。但是咱必将要是了解:使用新技巧之而一定要考虑到新技巧所带来的问题。只有以该研究下,然后以那个所带的另外题材解决,这样才可尝尝去用,以免在后头的历程遭到遇到题目再度错过思缓解方式。要平衡下中的抵触。
  • 数以及范
  • 简单和容易

咱俩相见题目之时光,想到的未是因此什么牛逼的法子去化解,而是由问题之自家去开研究,从极度简便易行的艺开始,一定要找到最简易、最实用、最实用的章程去化解。
每当我们学习或看之时光,我们应当当读书的时先咨询一下好:我套的物一旦化解的题目是呀?
当我们上了后,要惦记想学过之后是否解决了俺们相见的问题。
一言以蔽之这会分享听下来后,给自己之感到就是是肯定要是发现东西之真面目,用极端简便易行、最可行、最实用的道去化解问题,而不是多绕弯路。

Part3.《软件开发之禅》

演讲人是蔡超,Amzaon(中国)技术集团的首席架构师。主要介绍了以下几点:

  • 相似与神似
    此最主要讲了MVC。其实还有好多其他的架构:MVVM、MVP等等,其实他们的实质都是MVC的衍生。我们设以行使的经过中发现那个实质之东西,也使发现其区别。
  • 机械和转变
    此自己听见最多的凡黑板模式,所谓黑板模式,就是采用被的多种不同数据处理逻辑相互影响和联合好多少解析处理,就恍如多位不同之大家以同黑板上交流思想,每个转件都可以收获别的大家写于黑板上之消息,同时为足以用好之辨析去创新黑板上的信,从而影响其它学者。比较典型的动就是数据库:数据库充当黑板,不同之采取共享数据库中之音讯,并且可以创新数据信息。是最广泛的落实方式。
  • 优势和劣势
    一个初的技能出现之后,它可能会见让大家带来方便,进而去化解那些本已清楚技术无法化解之题目。但是咱得要是懂得:使用新技巧的又一定要考虑到新技巧所带的题目。只有将那研究之后,然后拿其所带动的其它题目迎刃而解,这样才得品尝去用,以免在后的历程被碰到问题重新错过想解决方式。要平衡下着之龃龉。
  • 数和模型
  • 简而言之与易

咱俩相遇题目的时候,想到的免是故什么牛逼的艺术去解决,而是打问题之自去开研究,从最简易的艺开始,一定要找到最好简便、最有效、最实用的法子去化解。
每当我们读要看的时节,我们应有以上学之时节先问一下协调:我套的东西只要缓解之题材是什么?
当我们上学了事后,要想想模仿过以后是不是解决了咱相遇的题材。
总的说来这会分享听下来以后,给自家之感觉就是必然要是发现东西的本质,用最好简单易行、最管用、最实用的主意去解决问题,而不是多绕弯路。

Part4.《基于移动的迅猛工程模式》

演讲人是徐大芮(子之),淘宝无线技术专家。内容根本是哪些根据移动,应用去做快速开。
重大是为了回应手淘的长足开,比如马老板说淘宝首页来单发作红包,那么尽管需及时高效的去做到这个需要。而他们出团队特用了几单小时就是以此需要及丝。
以诺本着事情发展快、流量集中、交互复杂的图景下(过山车),如何迅速支付成功并成上线是一个不行值得研究之题材。
就此她们便经过沙盘配置、插件组装的方法来受研发提速。比如说淘宝之一个页面:
图片 3
她俩做了相同学模板,然后去承接这个页面,然后经过配备数据,从而形成了便捷支付迭代。在开之长河被设可以运用现有模板,那么漫长直接装即可。在付出进程遭到,模板会出异的本,有和好之单独版本控制,而工作实例每个版本都有单独关联的一个模板ID和本子。
然后还开了各种零件,榜单、投票、评论等等,通过数据配置就能成就快速支付。
另外还有淘宝不定期推出的走动画,淘宝这边使用AE做成动画,然后据此JSON承载,然后经运动端的ViewController上面的一律层Layer或者Player来展示,期间允许对JSON进行第二涂鸦定制开发。
此地还有一个生有趣之事情,有各类观众提了一个问题:苹果不容许JSBridge,那马如何兑现不发版的景下促成创新也?演讲人的对是无晓。但是他说不绝确定苹果是勿同意拉文件更新,还是同意类RN方式的开。如果只是不允许拉文件之言语,那么得考虑采用RN的方式来将。

Part4.《基于移动的霎时工程模式》

演讲人是徐大芮(子之),淘宝无线技术专家。内容根本是如何根据移动,应用去做快速支付。
一言九鼎是为着回手淘的高速支付,比如马老板说淘宝首页来只发红包,那么即便需要立即迅速的失好这需要。而她们开发组织只是用了几乎单小时即用以此要求及丝。
于应本着工作发展快、流量集中、交互复杂的图景下(过山车),如何迅速支付形成并遂上线是一个大值得研究的题材。
因此她们就透过沙盘配置、插件组装的道来为研发提速。比如说淘宝的一个页面:
图片 4
他们做了平仿模板,然后去承接这个页面,然后经过配备数据,从而就了快捷开迭代。在出的历程被一旦可以应用现有模板,那么旷日持久直接装即可。在支付过程遭到,模板会发生两样之版,有协调的单身版本控制,而工作实例每个版本都发出独立关联的一个模板ID和本子。
然后还支付了各种零部件,榜单、投票、评论等等,通过数量配置就可知不负众望高效开。
除此以外还有淘宝不期生产的位移动画,淘宝这边用AE做成动画,然后用JSON承载,然后经移动端的ViewController上面的一样叠Layer或者Player来展示,期间允许对JSON进行次不好定制开发。
这里还有一个特别风趣之事情,有个观众提了一个问题:苹果不允JSBridge,那马如何兑现非发版的状况下实现创新也?演讲人的回复是无知道。但是他说非极端确定苹果是未允许拉文件更新,还是允许类RN方式的开销。如果只是不同意拉文件的口舌,那么可考虑使用RN的道来将。

Part5.《3×3:提速移动App交付》

图片 5
演讲人是发源LinkedIn的软件开发工程师胡克秋。主要介绍了哪些迅速发版。
介绍了LinkedIn发版,说是一健全发一样蹩脚,我看了瞬间领英iOS更新记录,没有那累,也许是会支持一宏观发一样不成吧。
她俩运动开是特意的一个移动平台组,里面没有任何的出品、UI什么的。当其他产生求的早晚,就会见拿人口派到指定的机关付出。从当下的30只活动工程师到今日之超越300个走工程师,从原先的的跨越一个月交给一次App到如今之3×3迅速开。
所谓3×3火速开,就是:
如出一辙龙公布3涂鸦。
代码提交至发表<3独小时
新兴通过打听他们的1天颁三坏实际上是每天发布3只可用的本,这些本子会时刻将过来下。
他俩的iOS客户端了以Swift开发。因此于经历Swift2.2—Swift3.0升级的长河遭到,8只人于支付项目室从上午9:00至晚上10:00做提升。总共用了一个礼拜的流年才用Swift2.2升任至了Swift3.0。
关于代码提交,他们就出一个子,然后以开过程遭到,他们有个小求:就是在有限量的时日外召开代码提交,如果跨越了是deadline,那么漫长无克交到代码。这样保证了代码在某个时间点的安宁。
有关测试,他们还生个DogFood,也就是兼备企业职工要去采用他们之新型版本,然后他们见面采集Crash信息,然后开展修复。
还附带介绍了几只开源之框架:

  1. LayoutTest-iOS
  2. bluepill
    发生趣味的同校可以活动下载查看。
    还有一些:他们的iOS开发做UITest和UnitTest,关于测试,他们举行的那个足,而且一般QA写测试场景,开发写测试用例。而且他派克挺好控制写测试用例的年月再10%横。
    上述就是自个儿于QCon上参加的专题演讲。
Part5.《3×3:提速移动App交付》

图片 6
演讲人是缘于LinkedIn的软件开发工程师胡克秋。主要介绍了争迅速发版。
介绍了LinkedIn发版,说是一周到发一样次等,我看了一晃领英iOS更新记录,没有那累,也许是能够支持一到家发一样坏吧。
她们运动开是专门的一个倒平台组,里面没有任何的活、UI什么的。当其他产生需要的时节,就会见将人派到指定的单位开。从当下的30个走工程师到现之逾越300单运动工程师,从原来的的超过一个月交给一次App到现行之3×3快捷开。
所谓3×3快支付,就是:
如出一辙龙公布3不成。
代码提交至发表<3单小时
新兴透过问询他们的1天宣布三软实际上是每天发布3单可用的版本,这些本子会时刻将过来下。
他们的iOS客户端了采用Swift开发。因此于更Swift2.2—Swift3.0升级的历程遭到,8个人以开项目室从上午9:00及晚上10:00召开提升。总共用了一个礼拜的日才将Swift2.2升格至了Swift3.0。
关于代码提交,他们只是生一个支,然后以开发过程遭到,他们来个小求:就是当起限量的日子外做代码提交,如果超过了这deadline,那么漫长无克交到代码。这样保证了代码在某某时间点的安定团结。
有关测试,他们还产生个DogFood,也便是有公司职工要去动他们之时版本,然后他们见面征集Crash信息,然后开展修复。
还附带介绍了几个开源之框架:

  1. LayoutTest-iOS
  2. bluepill
    来趣味之同室可以活动下载查看。
    还有一些:他们的iOS开发做UITest和UnitTest,关于测试,他们举行的杀足,而且一般QA写测试场景,开发写测试用例。而且他派克挺好控制写测试用例的时又10%横。
    上述就是自以QCon上参加的专题演讲。
3. 自家于QCon大会上读到了呀?

以下是针对性自我学到之东西进行的一部分粗略总结:

  1. 编程不仅仅只是写代码那么简单,还有多考虑其安全性。另外当计划的时候吗要是提早考虑、考虑周全
  2. 于是极端得力最实用、最简便的不二法门去解决问题。
  3. 新技巧的出部分时候自然要先行对那开展学习和多地方的询问。如何应本着新技巧或者引发的问题?如果解决?
  4. 每户的iOS开发还是起因此UITest和UnitTest。
  5. 由此模块和组件化的计开开发,提升开发效率。
  6. 习好英语不行重大。
  7. 使模块化和组件化的方式提高开支效率。(个人认为只限于比较大型的档次,小品种就算大材小用了)
3. 我于QCon大会上上到了哟?

以下是指向自己学到的事物进行的片段简约总结:

  1. 编程不仅仅只是写代码那么粗略,还有多着想其安全性。另外当筹划之时节呢要提前考虑、考虑全面
  2. 因而最好灵最实用、最简易的方法去化解问题。
  3. 乍技巧之发出部分时候自然要是事先对那进展上与多面的了解。如何应针对新技巧恐怕引发的题材?如果解决?
  4. 居家的iOS开发都是发生因此UITest和UnitTest。
  5. 通过模块和组件化的措施做开发,提升开发效率。
  6. 念好英语不行重点。
  7. 采取模块化和组件化的方法增强支付效率。(个人觉得就限于比较大型的品类,小类即大材小用了)
注:

1.比方发生侵权,请告诉作者删除。scottzg@126.com

2.转载请标明来源:http://www.cnblogs.com/zhanggui/p/6744941.html

3.更多只是参见这里:http://2017.qconbeijing.com/schedule

 

注:

1.要发生侵权,请告知作者删除。scottzg@126.com

2.转载请标明源于:http://www.cnblogs.com/zhanggui/p/6744941.html

3.再次多而是参见这里:http://2017.qconbeijing.com/schedule