997755.com记录到QCon2017北京站之体会。记录与QCon2017北京站之体会。

要是发侵权,请晓作者删除。scottzg@126.com

997755.com 1
那个荣幸与QCon全球软件开发大会,这里特别感谢咱部门的总经理,也是《互联网广告算法和体系执行》此开之撰稿人王勇睿。因为他自身才生这次参会机会到位这次软件开发大会。
接通下去,我将起以下几点来做这首文章:

  1. 什么是QCon?
  2. 自家在场的专题发言有什么?
  3. 自身当QCon大会上学习及了什么?

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

997755.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.《基于移动的飞工程模式》

演讲人是徐大芮(子之),淘宝无线技术专家。内容根本是怎么根据移动,应用去做快速支付。
要害是为了回应手淘的全速开,比如马老板说淘宝首页来单发作红包,那么即便需立即迅速的去好这需要。而她们出组织单用了几乎独钟头便将以此要求及丝。
当诺针对业务发展快、流量集中、交互复杂的景下(过山车),如何迅速支付成功并打响上线是一个颇值得研究的题材。
据此他们即使通过沙盘配置、插件组装的方法来受研发提速。比如说淘宝的一个页面:
997755.com 3
他俩做了同一效仿模板,然后去承接这个页面,然后经过安排数据,从而形成了迅速支付迭代。在开的过程中如果得以用现有模板,那么漫长直接装即可。在开发进程被,模板会生出差的本,有投机之独门版本控制,而事情实例每个版本都来单独关联的一个模板ID和本子。
然后还开了各种零部件,榜单、投票、评论等等,通过数量配置就能得高效开。
除此以外还有淘宝不期生产的走动画,淘宝这边用AE做成动画,然后用JSON承载,然后经运动端的ViewController上面的相同层Layer或者Player来展示,期间允许对JSON进行第二不善定制开发。
这里还有一个大风趣之工作,有个观众提了一个问题:苹果不容许JSBridge,那马如何兑现不发版的景象下实现创新为?演讲人的应是勿晓。但是他说不顶确定苹果是免容许拉文件更新,还是允许类RN方式的开。如果只是不允拉文件的语,那么可以设想动用RN的方式来搞。

Part4.《基于移动的便捷工程模式》

演讲人是徐大芮(子之),淘宝无线技术专家。内容要是哪些根据移动,应用去做快速开。
根本是为回手淘的高效支付,比如马老板说淘宝首页来单发红包,那么尽管需要马上迅速的失去做到这要求。而她们付出组织就用了几乎独钟头便将这要求上线。
在应针对业务发展快、流量集中、交互复杂的景下(过山车),如何快速支付形成并打响上线是一个怪值得研究的问题。
之所以他们便通过沙盘配置、插件组装的法来叫研发提速。比如说淘宝的一个页面:
997755.com 4
他俩开了千篇一律效模板,然后去承接这个页面,然后通过部署数据,从而成就了飞速开迭代。在付出的经过遭到假如可以采用现有模板,那么旷日持久直接装即可。在开过程中,模板会生不同之本子,有温馨的独自版本控制,而事情实例每个版本都产生单独关联的一个模板ID和版本。
接下来还出了各种零部件,榜单、投票、评论等等,通过数量配置就能成功高效开。
另外还有淘宝不期生产的运动动画,淘宝这边使用AE做成动画,然后用JSON承载,然后经过走端的ViewController上面的如出一辙重叠Layer或者Player来展示,期间允许对JSON进行次软定制开发。
此地还有一个分外有意思之事体,有号观众提了一个题目:苹果不允许JSBridge,那马如何促成无发版的景象下实现创新为?演讲人的回答是无理解。但是他说勿绝确定苹果是勿容许拉文件更新,还是允许类RN方式的开发。如果只是不允许拉文件的话语,那么得考虑采用RN的法来干。

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

997755.com 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交付》

997755.com 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

 

相关文章