有时我想知道一个很酷的软件是如何制作的,或者是一个新的花式网络服务背后的精彩架构;但该软件不是开源的,Web服务没有公共文档。
您是否有任何技术可以发现有关如何制作软件的一些提示?
有可能吗?
您是否知道某个网站发布软件/网络服务使用的架构/技术?
修改
找到了适用于Windows软件的this
答案 0 :(得分:1)
检查响应标头。它可能会说操作系统和Web服务器之类的东西。
Cache-Control private
Content-Type text/plain; charset=utf-8
Content-Encoding gzip
Vary Accept-Encoding
Server Microsoft-IIS/7.5
Date Sun, 25 Apr 2010 12:24:05 GMT
Content-Length 40
检查网址格式。它可能会说服务器技术(.aspx .php .do(java))等等。
www.a.com/Stuff.aspx
检查相同的请求是否可以响应两个不同的HttpAccept标头。可能是铁轨。检查www.a.com/public/images/rails.png
是否存在。等等......你可以做很多事情。
答案 1 :(得分:1)
阅读有关热门网站架构的最佳网站绝对是高可扩展性。它有lots of stories covering different aspects of architecture,而不仅仅是可扩展性。它涵盖了通常的嫌疑人 - eBay,Facebook,Google - 还有一些比较模糊的网站,比如我们自己的StackOverflow。这些文章通常结合了公共领域内任何内容的摘要以及知情分析。该网站还包括对网站建筑师的采访。
答案 2 :(得分:1)
如果您使用的是Mac,则可以使用F-Script来检查cocoa应用程序的视图层次结构。不仅让你看到它是如何组合在一起的,它还允许你用它进行调整。
同样在Mac上,Apple Instruments可让您监控应用程序正在进行的所有系统调用。我用它来了解iPhoto加载缩略图(因为我正在制作缩略图查看器)。
答案 3 :(得分:0)
您可以通过观察了解一定数量,但如果它是一个封闭的源Web服务,那么最好的信息来源将是该软件的原始作者。这可能是:
无法保证,但如果您真正对自己的工作感兴趣,那么人们往往会非常有帮助。
祝你好运。答案 4 :(得分:0)
访问他们的顶级网站并搜索名为“职业”,“工作”,“我们雇用”的链接,并尝试根据他们正在寻找的工程师类型做出结论。它适合我; - )