注释基因坐标和基因列表— python方法
React Native测试驱动开发(第3部分)
Go基础编程—控制流,数组和切片(第2部分)
史诗说明一切
使用Docker容器在任何地方运行Azure函数
在Javascript应用中设置ESLint和StyleLint
更新polyfill服务。
更新polyfill服务。

三星有一个网络浏览器。 该网络浏览器的V5最近发布了: 宣布三星Internet 5.0 你们中有些人可能知道,我们已经在测试下一个主要版本的Samsung Internet的公开测试版。 我们… medium.com 是时候更新Polyfill服务了,以便使用v5的人不会收到他们不需要的polyfill。 首先,查看需要什么填充料。 1.打开Chrome的检查器 粘贴到您的网址栏中: chrome:// inspect 2.单击打开的选项卡上的检查: 3.打开polyfill.io目标测试 粘贴到网址栏中:https://polyfill.io/test/director?mode=targeted 这将在设备上运行所有目标测试,因此我们可以看到已提供了哪些填充料。 这些对应于v4所需的Polyfill,比我们需要的更多。 您可以通过在控制台中输入global_test_results来探索结果。 Array.from 数组 Array.prototype。@@ iterator Array.prototype.contains Array.prototype.entries Array.prototype.fill Array.prototype.find Array.prototype.findIndex Array.prototype.includes Array.prototype.keys Array.prototype.values DOMTokenList.prototype。@@ iterator 之后的元素原型 Element.prototype.append 元素原型 Element.prototype.prepend Element.prototype.replaceWith Event.hashchange 交叉口观察者 国际 NodeList.prototype。@@ iterator Number.isInteger 对象分配 String.prototype.contains 符号 Symbol.hasInstance Symbol.isConcatSpread 符号迭代器 符号匹配 符号替换 符号搜索 符号种 […]

Patna-濒临崩溃的首都
Patna-濒临崩溃的首都

巴特纳快死了。 可能不是今年或明年。 这座城市甚至可能要持续到2020年,我听说这是千禧一代希望的一年。 但是时钟在滴答作响,指针朝崩溃的方向移动。 它发生在伟大的古代城市和一些现代城市。 玛雅的蒂卡尔市(Tikal)在存在一千年后,由于战争而在9世纪瓦解。 吴哥窟是一个繁荣的大都市,拥有75万人口,后来跌落到大季风。 在美国的底特律市,这里是汽车装配线的所在地,直到这些行业被日式汽车淘汰,当地人无法生存。 巴特那对荣耀并不陌生。 作为公元前五世纪居住的帕特里普特拉(Patliputra),它已将学习和艺术视为马加达帝国的首都而繁荣。 独立后,这座城市一直被一些伟大的名人誉为故乡,一直是政治和行政影响力的源泉。 但是那些日子是历史。 巴特那(Patna)濒临死亡。 在我告诉你为什么之前,让我告诉你我为什么在乎。 我在城市度过了前18年的生活。 我的父母一辈子都住在这里,祖父母在首都至少见过三个冬天。 这个城市造就了他们,现在正在毒化他们。 如果您拒绝与时俱进,那么您将被历史所掩盖。 2013年,当我第一次搬出去在IIT Guwahati攻读本科课程时,人群才刚刚开始涌入。如果您在Dakbungalow过境点附近的navmi上蹦蹦跳跳,偶尔会遇到交通拥堵。 在帕特纳交界处和Mahavir寺周围有散乱的行人和自动黄包车游荡,人行道上大多排着乞g寻找施舍,而烟草商人则晕倒在红色的墙壁上。 它很脏,但大多数都适合居住。 从那时到现在,人口似乎增加了三倍,在道路上行驶的车辆数量也增加了四倍。 几天前,当我将装有行李的手推车从巴特那机场的到达机翼中推出时,有一些政客在我前面几码处离开。 很快,数十辆SUV和Royal Enfield摩托车劫持了机场很小的停车场。 盛大的游行和游行,像秃ul一样在草地上聚集着一片狗仔队,事后看来,这只适合这个城市所在的州。 我父亲花了15分钟的时间才把我们的车从停车场上挪开,甚至连他三十年的驾驶经验也无法使出口处的店员安心,当店员伸出手时,父亲对我父亲有些残酷的北印度语虐待。手臂撞到汽车的后视玻璃上。 颇具讽刺意味的是,我正好在手机上发布了一个Instagram故事,说当时“不多,但它在家里”。 半透明的背景是对首都的鸟瞰图,但是却没有您期望的绿化或摩天大楼。 关于开发和基础架构的讨论很多,但我只能看到混乱。 跨越国道的几条天桥,以及将主要火车移至城市郊区的新车站,都不是划时代的措施,它们是政府的恼怒的最后一口气,在即将来临的人口潮中将淹没。 因为Patna正在成长,但并没有在扩张。 您会指出Gola Road和Shaguna More的新住房开发,但是它们也散发出短期措施的气味。 这里有一种惯性和近视,他们的结合确保了《无聊的路》永远被阻塞,库尔吉看到人行道上出现了快餐摊,并且曾经宏伟的甘地·迈丹(Gandhi Maidan)沦为唯一的空地在崩溃的首都。 我曾在许多印度和外国城市生活,并曾去其他几个地方短暂访问过。 首尔是公共交通的案例研究,而温哥华则示范了如何发展城市以适应其行业需求。 在艾哈迈达巴德,我赞扬政府在萨巴马蒂市上建立了一个新的乡镇,从而使旧镇的负担减轻了一半。 海德拉巴从班加罗尔的书中吸取教训,已投资于IT并正在重新发现自己。 对于所有有关交通的抱怨,后者仍然在其出租车聚合器迷宫中提供了逃生通道。 即使是我度过了四年的古瓦哈提(Guwahati),也发现我的生活与Patna非常相似,但也令他感到混乱。 但是,巴特那(Patna)坚决拒绝改变以适应不断变化的民众。 尽管看起来轻浮,但城市缺乏娱乐选择就是一个很好的例子。 星期五,当我的家人要求我为备受赞誉的传记剧《 Sanju》预定几张周日的电影票时,我处于困境中–座位有限,因为这座城市只有一个多功能厅。 诚然,第一个周末的人流量很大,但这令人惊讶,因为直到几年前我还没有看到帕特纳人对电影的热情。 无论如何,我设法在Cinepolis(位于Kurji附近的P&M购物中心)预订了一些门票,我们准备参加这次演出。 第二个令人震惊的东西来到了商场入口。 在持续了将近二十分钟的令人痛心的惨剧中,两车道道路的整个侧面都被挡住了,因为在商场入口处有一辆汽车,而且警卫们也没有足够的心思让它进入。 很快,自动人力车,电子人力车(这似乎是混乱中的一个新增加),以及数十辆摩托车挤在大门口,要求麻烦的驾驶员行驶。 作为我自己的业余驾驶员,我可以认出另一个人,当我花了好几次车子才最终使汽车爬上坡道时,我对他很感激。 也许他在此过程中刷过一个骑自行车的人,因为下一秒钟他的窗户上有一个大胡子绅士,告诉他在一个美好的一天找到他是多么幸运,否则会带来可怕的后果。 […]

蓬松的鸟是如何制成的
蓬松的鸟是如何制成的

2013年发布了一款游戏,第二年席卷全球。 越南年轻人叫董阮(Nong Nguyen)发行了一款游戏,后来因过度使用和游戏上瘾的罪恶感而从App Store中删除。 那场比赛是《飞扬的小鸟》。 今天,我将通知您如何制作。 现在,这只是一种实现方式,我无法深入探讨任何细节,只有这样,您才能在应用商店中进行简短的发布。 将以下步骤视为一个模板,适合任何想开始并了解编程和动画背后的理论的人使用。 我从事专业代码的编写已经接近一年了,因此我的相对知识是有限的,但希望我能传达此程序的主要方面。 我将简要讨论所涉及的工具,然后继续讨论使用称为面向对象程序设计的编码样式生成基本物理和游戏引擎的概念。 工具化 我将使用的语言称为JavaScript,它是一种在浏览器中运行的动态,高级,弱类型,基于原型的,多范式解释的编程语言,是目前在浏览器中本机运行的唯一语言。 对于简单的死语言来说,这是很多术语,而且确实是一种有趣的学习第一语言。 我还将使用一个名为P5.js的库,该库是用JavaScript编写的库,该库是Proccess的浏览器实现,该库的目的是使艺术家,设计师,初学者和教育者更容易访问编码。 (触摸什么是库)。 由于JS的特性,所有逻辑都可以在浏览器中运行,它可以在CodePen或JSFiddle等网站上实现,从而为人们提供了运行基于浏览器的语言的环境。 这是编程中入门和入门的最低障碍。 流程 最初,我们必须编写代码来创建画布或运行我们的程序(或使用P5表示“草图”)。 该库向我们介绍了设置和抽签概念。 通过设置,我们可以在绘制循环中创建要使用的东西,这些循环将在草图的整个生命周期中继续运行。 幸运的是,这在P5.js中非常容易,P5.js使用非常简单的语法来提供丰富的功能。 编程语言通常旨在表达创建功能所需的操作顺序。 对于方程式的人来说,这和在下面的机器一样。 JS的语法允许使用面向对象编程的概念,这是另一个话题。 简单来说,我们将用代码创建游戏所需的东西。 我们需要一只鸟和烟斗。 而已。 然后,我们需要对鸟和管道做出行为。 让我们整理创建Flappy Bird Game的步骤: 创建一个画布,添加一只鸟和许多管道。 向小鸟添加x和y位置,以使其在绘制循环中显示和更新。 添加力,重力,升力,阻力。 使管道出现在画布上的随机点。 添加功能以对按下的空格键做出反应。 这是游戏动作: 请参阅CodePen上的Adam Harpur(@ harps116)的Pen Crappy Bird。 Flappy Bird游戏使用一系列行为对用户输入做出反应的对象。 当按下空格键时,输入只是简单地增加了升力,鸟会检查它与管道的y位置以查看是否被击中。 在这种情况下,它将管道变成红色。 点子的x位置也逐渐减小,给人以鸟正在向前移动的印象。 学习如何编写代码的秘诀是首先询问某事如何完成其​​工作,然后编写执行该工作的步骤。 像P5.js这样的库使探索想法变得轻松而愉快,我建议您查看他们的网站以获取更多信息。

使用VS Code进行Ruby开发
使用VS Code进行Ruby开发

在我的《 Ruby入门》一文中,我谈到了Ruby编程的基础。 您可以在在线浏览器IDE中尝试使用ruby。 但是,如果您想使用Ruby开发一些重要的东西,那么您将需要设置本地开发环境。 从我在互联网上观察到的结果来看,JetBrains的RubyMine似乎是最受认可的Ruby最佳IDE(价格为89.00美元)。 如果您只是刚开始使用一种新语言,那么就不太可能投资。 因此,让我们探索使用Visual Studio Code的替代方法,它也可以很好地工作。 安装Visual Studio代码 Visual Studio Code是Microsoft的开源代码编辑器。 它是完全免费的,并且非常可定制。 安装VS Code轻而易举。 转到VS Code主页,并下载您所使用的操作系统(Windows,OS X和Linux)的安装程序,然后按照安装向导完成安装。 安装Ruby 查阅Ruby网站上的官方Ruby安装指南。 如果您是OS X或Linux用户,我建议您使用rbenv 。 Windows用户可以通过下载Windows的Ruby安装程序来安装Ruby。 我是OS X用户,Ruby已预装在OS X中。但是,我建议ruby开发人员使用rbenv来管理您的开发环境,因为它不会与系统安装的Ruby运行时版本混淆。 假设您已经安装了自制软件 。 在终端中运行以下命令以安装rbenv : 酿造安装rbenv 然后,退出Terminal并重新打开以使rbenv生效。 您可以运行rbenv -v来验证rbenv是否已成功安装。 然后,我们可以通过运行以下命令来安装Ruby 2.4.1(我写的是最新版本): rbenv安装2.4.1 设置用于Ruby开发的Visual Studio代码 在打开VS Code之前,我们需要通过运行以下命令安装带有Gem的Ruby调试器: gem安装ruby-debug-ide -v 0.6.0 默认情况下,Visual Studio不包含Ruby的调试配置,我们需要安装Ruby调试配置的扩展。 打开您的VS代码。 转到扩展标签并搜索“ Ruby” 安装Ruby扩展。 现在,您应该可以在VS Code中调试Ruby代码了。 […]

框架和恐惧驱动开发的暴政
框架和恐惧驱动开发的暴政

构架。 在技​​术行业中,这是一个两极分化的术语。 对于某些人来说,它代表着“更聪明,更努力”的精神。 然而,对于其他人来说,它代表着隐喻的象牙塔的“盲目信仰”。 不管您的立场如何,框架在这个行业中都是现实的,已经对开发人员寻求生产力产生了帮助和伤害。 本文代表了我的沉思/告白,一个正在恢复的“框架迷”,以及我的意识到,也许我曾经听说过的轶事在我继续我的技术之旅时是正确的:“您使用库,但是框架使用您。” 良好的意图,一般来说 这并不是说框架是为邪恶目的故意创建的。 在大多数情况下,他们的创作者对开发者怀有最佳的意愿。 由于技术发展如此迅速,因此框架通常充当开发人员将熟悉的技能应用于新平台的桥梁。 在实际示例中,这可以从您选择的平台中MVC框架的泛滥中看出。 大规模采用的一个重要关键是熟悉感。 你可以拥有一切 最熟悉的是便利。 当您从一个刚起步的平台开始时(例如,2009/10的Node),就会有很多“自费其力”的麻烦。 任何有逻辑的人都会问为什么我们需要重新发明轮子。 框架提供了这种便利,为开发人员提供了他们可能需要的所有工具,然后提供了一些工具。 最重要的是,我们开始专注于构建产品,而不是基础架构。 有人看着你的背不是很好吗? 相信我们,我们最清楚 然后,发生一些奇怪的事情。 开发人员开始考虑框架创建者的大祭司。 信托资产是通过为社区提供出色工具的善意建立的。 这本身不是问题。 当开发人员颠覆自己来之不易的技术基础,转而使用心爱的框架来使用他们喜欢的框架时,就会出现问题。 奇怪的想法进入了一个原本有逻辑的人的大脑。 该框架负责所有事务,为什么我需要注意? 为什么我什至需要担心“低级”事物的“精神负担”? 开发者去进化 甚至没有意识到它,成群的开发人员就变得依赖于框架,这与对恶习的迷一样。 理性的思想让位于任性的服从。 您会听到令人担忧的陈述,例如“ [框架x]的人比我们更聪明,他们会弄清楚”或“如果不按[框架x]的方式来做,那是不对的。”务实的理想变得僵化和教条主义价值出现。 我们经常开玩笑说开发人员卷入了宗教战争,就您在技术辩论中看到的热情而言,这与事实并非遥不可及。 恐惧驱动的发展 像任何良好的“宗教”一样,迈出了一步,恐惧有时被用来增强框架的忠诚度。 任何框架的关键卖点是消除烦恼。 “不要担心[技术纪律],让[框架]照顾我们的路。” 倒数可用于灌输恐惧,有时您会听到框架的传福音者。 停止使用[框架],并注意您的后顾之忧。 “您知道[技术纪律],以及如何防范[对技术纪律的攻击]吗?”开发人员不仅变得卑鄙无礼,而且变得不理智,他们也变得恐惧。 这并不是要消除这些担忧中的任何一种,因为根据您的问题域,有些担忧是合法的。 关键是不要让这些担忧成为开发人员决策过程的主要驱动力。 思考更好的前进之路 因此,如果走框架路线整头猪通常不是一个好主意,那有什么选择呢? 我们如何获得: 与熟悉的模式保持一定程度的一致性 维护良好的基础 扩展基础任何部分的能力 不被“锁定”到特定的意见或模式 充分考虑“低级”思想而不会造成精神负担 一种和平的感觉,知道您选择了什么 数字上的力量 我们看到了如何在这种“快乐的媒介”中有效摆脱框架的当前示例。 您可以组成一系列专门构建的库,它们遵循相似的模式,并且基本上可以彼此“结合”,而不是一个整体。 […]

编码:如何解决bubbleSort和quickSort
编码:如何解决bubbleSort和quickSort

让我们先解决气泡排序。 泡泡排序 冒泡排序是一种相对简单的算法,它遍历数组并交换元素,直到到达数组末尾为止,然后重复此过程,直到对整个数组进行排序为止。 冒泡排序的时间复杂度为O(N²),而最佳情况是O(N)-从一开始就对数组进行排序。 在代码方面,它很容易实现。 让我们逐步解决它。 首先,我们可能要创建一个新数组,以免修改参数。 接下来,如前所述,我们要在数组上重复迭代,直到对整个数组进行排序为止。 实现此目的的方式有两种:(1)创建一个名为“ sorted”的布尔变量,该变量在false时触发while循环,而在true时停止while循环– while循环内部将是for循环数组,并可以根据是否发生交换来更改sorted的值,或者(2)创建两个for循环,当没有交换(即对数组进行排序)时,这些循环会退出循环。 让我们尝试第一种方法,因为我们可以学习如何打开和关闭已排序的变量。 这是我们可以开始实施的基本结构。 我们有一个while循环,只要sorted为false,它就会运行,而里面的for循环会遍历需要检查索引i的元素是否大于索引i + 1的所有数组,在这种情况下需要交换位置发生。 让我们看看目前为止! 当索引i的第一个元素大于索引i + 1的第二个元素时,我们交换它们在结果数组中的位置。 可能会出现问题–一旦没有first> second的实例,我们如何停止while循环? 好吧,让我们考虑一下。 如果至少发生了一次交换,我们需要确保再次遍历该数组,因为我们不确定交换数组本身是否已排序。 因此,最好的做法是在while循环内将sorted的初始值设置为true,并在发生交换时将其设置为false。 如果没有发生交换,则sorted为true,我们将退出while循环以返回已排序的结果数组。 甜! 让我们在代码中实现它。 太棒了! 我们有一个对数组进行排序的有效解决方案。 但是,在这里,我们可以通过在每次for循环完全运行时将for循环的结束范围减1,从而稍微改善时间复杂度。 这是因为当我们在整个数组上执行第一个交换操作时,我们知道最后一个元素将是最大的。 第二个交换操作,倒数第二个元素将是第二个; 因此,我们可以创建一个称为swap的计数器变量,该变量对已运行的for循环数进行计数,并用该计数减去for循环的结束范围。 最终代码如下所示: 从技术上讲,我们可以将交换操作重构为辅助方法: 这样我们的解决方案看起来像: 但是代码行之间的差异根本不大,因此您可以自己决定! 甜。 现在让我们继续解决快速排序算法。 快速排序 快速排序算法是一种高效的排序算法,尽管在最坏情况下的时间复杂度为O(N²),例如气泡排序,但其平均时间复杂度为O(NlogN),使其可与合并排序(我们稍后将解决)相媲美。一般排序算法。 那么该算法如何工作? 它首先将随机元素设置为枢轴值,所有其他元素都将基于该枢轴值进行比较。 此后,我们将拥有两组元素-一组包含所有小于或等于枢轴值的元素,另一组包含更大的元素。 有关实现快速排序集分区的其他教程,从两端开始交换,因为指针相互收敛,但是我发现它们不必要地缠绕。 我们可以简单地做的就是递归两组元素(比如说数组“ left”和“ right”),直到对整个数组进行排序。 我们可以从以下结构开始: 让我们分析一下到目前为止已实现的内容。 首先,我们将枢轴设置为中间元素。 然后,我们遍历数组(除了数据透视表),然后填充左右数组。 甜! 接下来,我们应该做的是:递归。 […]

危险的Javascript字母-简介
危险的Javascript字母-简介

其中Neil Gaiman和Kurt Vonnegut帮助我继续编写Javascript。 再见蓝色星期一 。 那是我的“ hello world”版本。 我在铁场完成的几乎所有练习中都使用了它。 你问什么是铁堆场? 这是一个3个月的全职沉浸式编程训练营,我刚刚完成了一个前端工程课程。 现在我需要一份工作,这就是为什么我要写这份工作。 如今,编程训练营很常见,愿意投资雇用训练营毕业生的雇主数量正在稳步增加。 但是,虽然经验丰富的程序员可以凭简历进入她的门,但我们的训练营毕业生必须证明我们的技能和学习其他方法的能力。 几周前 ,我问了一堆前Iron Yard学生,他们做了什么以吸引潜在雇主的注意,而不仅仅是申请工作。 他们几乎都说他们做了以下事情: 每天写代码 关于编写代码的博客 联网的 如果您像我这个队列中80%的学生一样,包括我自己,那么您将理解为什么2.和3.都是噩梦。 我们性格内向。 我们还在努力争取冒名顶替综合症。 我们大多数人认为我们不会写。 但是,在这里,我们被告知必须在网上和全世界都公开露面,挥舞手臂说:“嘿! 嘿! 看着我! 我知道东西! 我有话要说!” 精细。 好的。 我可以 …在我的两个文学英雄的帮助下。 我的计划是编码字母。 每天,我都会根据特定字母编写一个小型JavaScript程序。 例如,我的第一个项目可能涉及遍历A rray。 在任何可能的机会上,我都会使用“再见残酷的星期一”。 之后,我将在博客中进行介绍。 然后,雇主将阅读它并为他们感到高兴,因为他们将知道他们找到了一个喜欢使用代码,学习迅速且是一个相当好的作家的初级开发人员。