技术支持
每个法式员都应该实验的项目
一年前,我揭晓了“每个法式员都应该实验的项目”一文。文中列出了每个法式员都应该去实验的项目,包罗一个文本编辑器、太空入侵者游戏、一个 BASIC 编译器、一个小型的操作系统、一个电子表格和一个视频游戏控制台模拟器。
这篇文章在网上爆红,一个月内浏览量凌驾 10 万次。现在,我要加入更多“现代”的项目:光线追踪器键值存储Web APIWeb浏览器股票生意业务机械人光线追踪者它是 3D 图形!在揭晓前一篇文章后,我收到许多评论,建议加入光线追踪器。我同意了他们的建议。
事实上,这是我在 2009 年学习 C#时最先实验的一个项目。如果你无法马上明白所有与数学相关的工具或术语,请不要担忧,你可以循序渐进,努力取得进步。
网上有许多关于光线追踪器的资源优势,在学习历程中,你会获得强烈的视觉感受。光线跟踪器可以生成一些很是悦目的图像,只需要 300 行代码!首先,你可能需要支持种种反射、光线和纹理,或者你开始意识到原来渲染一张图片需要几分钟,所以你开始优化。
你可以使用线程并行化光线追踪器、淘汰交集的数量,或者使用分析器来跟踪分配了几多工具并找出瓶颈。创意!我不想再去做另一个优化到半路的光线追踪器,也不想追求超现实的折射效果。相反,我特意降低了分辨率,这样就可以做出实时动画。
一个带有下落粒子旋转圆环的动图可以让你在推特上获得不少点赞。我认为独立游戏可以走这条路,缔造出奇特的艺术气势派头。
请期待我的 8 位复古视频游戏!更多资料:系列书籍之“Ray Tracing In One Weekend”《盘算机图形法式设计入门》盘算机图形入门用Python开发光线跟踪器Go光线追踪器优化用JavaScript实现实时的光线追踪条理困绕盒结构光线追踪宝石光线追踪器挑战实时渲染键值存储 Web API键值存储实际上就是一个字典。向它提供一个键,它就返回一个值。
你可以添加新键、删除键或更新值。实际上,这就是一个 NoSQL 数据库!不外你可以更进一步,将其作为 Web API,这样你未来的所有 Web 应用法式都可以使用你的数据库服务。我真的很喜欢这个项目,因为用它来建立最基本的“数据库”真的很容易。
你可以从使用任何一门编程语言所提供的字典数据结构开始,并在这个基础之上添加一个 Web API。除此之外,你还可以添加更多的内容:性能优化、宁静性和多用户、原子事务、数据类型、批处置惩罚操作、持久性、故障恢复,以及跨多个服务器运行能力。很快,你就会拥有像 Redis 或 Amazon DynamoDB 那样价值 10 亿美元的产物。
说真的,打开你的代码编辑器,并使用你最喜欢的编程语言实验一下。为了获得差别的体验,我用 Go 和 Racket 试过了,并从中获得了许多启发。在一些小型的测试中,我的 Go 版本的性能已经足够好了。
更多资料:键值数据库B树数据结构原子性如何使用Go构建一个键值存储Badger:超快的Go键值数据库如果你想深入相识数据库,可以看看这本《自己动手设计数据库》Web 浏览器第一次面试一个软件开发岗位时,面试官问我:“当你在浏览器上输入 Yelp.com 并按回车键时,都发生了什么”?我回覆得欠好,没有通过面试。于是,我开始相识万物运作原理的旅程。
我发现最有趣的是浏览器如何将 HTML 和 CSS 转换成渲染好的 Web 页面。这是一个很常见的面试题,但我却因为太无知没有回覆好。
有一个很是棒的资源,它为许多问题提供了谜底。想要设计出一些足以击垮 Safari 或 Brave 的杀手级用户界面?不要抱太大希望了。在你到达谁人目的之前,另有许多事情要做!不如让我们来缩小一下规模,假设你有一个 HTTP 库和一个 HTML 剖析器,你必须实现自己的渲染器。
你不能使用 WebBrowser 或 WebKit 之类的工具。你会怎么做?我的建议是从建立一个基于文本的 Web 浏览器开始。
实际上,你也可以忽略所有的花样化问题,忽略所有的 JavaScript 和 CSS。你要做的是使用给定的 URL 执行 HTTP GET,剖析 HTML,找到需要显示的文本,并将其显示在屏幕上。你要做的就是这些。
获得纯文本之后,你就可以添加其他功效了。你可以添加标签、历史、退却和前进按钮,等等。
但到了某个时候,你可能想要的不只是文本……那么祝你们好运。渲染网页视觉元素可能是我永远不会去实验的事情,或许要等到我有用不完的时间。一步一步来,每次只关注一个 HTML 标志和属性。
如果你想实验这么做,请让我知道是如何举行的。更多资料:Browsh:一个基于文本的浏览器HTML尺度Mozilla的HTTP文档让我们来构建一个浏览器引擎Web浏览器工程股票生意业务机械人现在,你有时机构建一些理论上可以让你变得富有的工具:股票生意业务机械人!构建一个基础的生意业务机械人是很是简朴的,你可以添加无穷无尽的功效。你甚至不需要相识任何与投资有关的知识。
在这个历程中,你至少可以学到如何使用差别的 Web API、如那边理数据,并应用现有或建立自己的生意业务计谋。你可以使用大量的历史数据来测试它。
这样还不够?那就用上机械学习或搭建一个Twitch流,让生疏人来控制你的钱。这是一个基础的生意业务机械人开发门路。首先,找出几家你感兴趣的大公司(如苹果、特斯拉和 Target)。
第二,确定何时买进、何时卖出。例如,如果当前价钱到达 52 周低点就买入,如果到达 52 周高点就卖出。
(千万不要把这个计谋用在实际当中,这个计谋其实是个愚蠢的。
本文关键词:每个,法式,员,都,应该,实验,的,项目,一,年前,鸭脖yabo平台网站
本文来源:鸭脖yabo平台-www.91yanshang.com