很荣幸参与QCon环球软件开发大会,因为她自己才有本次参会机会参预这一次软件开发大会

如有侵权,请告诉小编删除。scottzg@126.com

图片 1
很荣幸参预QCon全世界软件开发大会,那里尤其谢谢我们部门的总老板,也是《互连网广告算法和系统举行》此书的撰稿人王勇睿。因为他自家才有本次参会机会到位这一次软件开发大会。
接下去,我将从以下几点来写作那篇小说:

  1. 什么是QCon?
  2. 本人在场的专题解说有何?
  3. 自个儿在QCon大会上读书到了什么?

如有侵权,请告知小编删除。scottzg@126.com

图片 2
很美观参预QCon全球软件开发大会,那里特别感激我们机关的总COO,也是《网络广告算法和连串举办》此书的小编王勇睿。因为他自我才有这一次参会机会参加这次软件开发大会。
接下去,我将从以下几点来创作这篇小说:

  1. 什么是QCon?
  2. 本身加入的专题演讲有怎么样?
  3. 自家在QCon大会上学习到了何等?
1.什么是QCon?

QCon是由InfoQ主办的环球一级技术盛会,每年在London、北京、日本首都、London、阿姆斯特丹、日本首都、墨尔本进行。自二〇一七年十一月份首次进行以来,已有当先万名高级技术人士加入过QCon大会。QCon内容出自实践并面向社区,演讲嘉宾依照热点话题,面向5年以上工作经验的技术团队管事人、架构师、工程主管、高级开发人士分享技术创新和极品实践。
京城QCon2017是在江山议会着力设立,时间为:二零一七年二月16日—18日。

1.什么是QCon?

QCon是由InfoQ主办的五洲一级技术盛会,每年在London、上海、日本东京、London、孟买、巴黎、广州进行。自二零一七年十二月份首次举行以来,已有超越万名高级技术人员参预过QCon大会。QCon内容出自实践并面向社区,演说嘉宾依照热点话题,面向5年以上工作经验的技能团队管事人、架构师、工程总经理、高级开发人士分享技术创新和最佳实践。
首都QCon2017是在国家会议着力设置,时间为:二零一七年五月16日—18日。

2.自我插手的专题研讨有何样?

是因为时日原因,我是终极一天去的QCon。中午8:30起床,然后坐大巴到了国家会议中央。然后开首了参会学习。以下是参会内容:

2.自身在场的专题商量有啥样?

鉴于岁月原因,我是最终一天去的QCon。深夜8:30起床,然后坐大巴到了国家会议中央。然后开首了参会学习。以下是参会内容:

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

演说人是Kingsum,来自阿里,是阿里巴巴(Alibaba)基建服务首席专家。主要介绍的是软件品质分析:过去,现在和未来。
恐怕是和谐英文差的原由,他发言的进度中平时出现各类英文,所以有的时候没有听太懂。(学习英文很重点)
他介绍了一个好的次序,可是有弹指间几点会潜移默化仍然制约其效果:

  • 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,来自阿里,是Alibaba基建服务首席专家。主要介绍的是软件质量分析:过去,未来和前程。
唯恐是上下一心英文差的原故,他解说的进度中日常出现各类英文,所以部分时候从不听太懂。(学习英文很重大)
他牵线了一个好的程序,不过有弹指间几点会潜移默化依然制约其成效:

  • 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.《基于移动的火速工程格局》

讲演人是徐大芮(子之),Taobao有线技术专家。内容重点是何许根据移动,应用去做快捷支付。
要害是为着应对手淘的便捷支付,比如马CEO说Taobao首页来个发红包,那么就要求及时神速的去做到那几个要求。而她们支付团队只有用了多少个时辰就将此要求上线。
在应对业务发展快、流量集中、交互复杂的图景下(过山车),怎么着飞快支付达成并打响上线是一个很值得切磋的题材。
因此他们就通过沙盘配置、插件组装的办法来让研发提速。比如说天猫的一个页面:
图片 3
他俩做了一套模板,然后去承接这么些页面,然后通过配备数据,从而成就了火速支付迭代。在开发的进度中若是可以动用现有模板,那么久直接装载即可。在付出进度中,模板会有例外的本子,有和好的单身版本控制,而事情实例每种版本都有单独关联的一个模板ID和本子。
然后还支付了各类零部件,榜单、投票、评论等等,通过数量配置就能不辱职分快捷支付。
除此以外还有天猫商城不定期推出的移位动画,天猫商城那边使用AE做成动画,然后用JSON承载,然后通过运动端的ViewController上面的一层Layer可能Player来展现,期间允许对JSON进行二次定制开发。
此间还有一个很有趣的事务,有位粉丝提了一个题目:苹果不容许JSBridge,那马何以兑现不发版的景色下达成立异呢?演说人的回应是不知晓。可是她说不太确定苹果是不容许拉文件更新,仍然同意类似RN模式的支付。假若只是不允许拉文件的话,那么可以考虑接纳RN的格局来搞。

Part4.《基于移动的连忙工程形式》

演说人是徐大芮(子之),天猫有线技术专家。内容紧假如怎么样依据移动,应用去做快捷支付。
首若是为着回应手淘的便捷支付,比如马COO说天猫商城首页来个发红包,那么就需求马上飞快的去达成这一个须求。而她们开发公司单独用了多少个时辰就将此须求上线。
在应对业务发展快、流量集中、交互复杂的气象下(过山车),怎样神速支付完毕并打响上线是一个很值得切磋的难题。
故此他们就经过沙盘配置、插件组装的主意来让研发提速。比如说Tmall的一个页面:
图片 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开发。由此在经验斯维夫特2.2—斯威夫特3.0升级的长河中,8个人在支付项目室从早晨9:00到早晨10:00做升高。总共用了一个礼拜的日子才将斯维夫特2.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客户端完全使用斯维夫特开发。因而在经历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

 

相关文章