当前位置: 首页 > news >正文

金融网站建设报价方案一键登录qq空间

金融网站建设报价方案,一键登录qq空间,网站建设中 动画,wordpress 外链背景图SQLite 近日发表了一篇博文#xff0c;解释了为什么多年来 SQLite 一直坚持用 C 语言来实现#xff0c;以下是正文内容#xff1a; C 语言是最佳选择 从2000年5月29日发布至今#xff0c;SQLite 一直都是用 C 语言实现。C 一直是实现像 SQLite 这类软件库的最佳语言。目前解释了为什么多年来 SQLite 一直坚持用 C 语言来实现以下是正文内容 C 语言是最佳选择 从2000年5月29日发布至今SQLite 一直都是用 C 语言实现。C 一直是实现像 SQLite 这类软件库的最佳语言。目前还没有任何计划要采用另外一门语言对 SQLite 进行重新开发。 为什么 C 语言是实现 SQLite 的最佳选择原因主要体现在这几个方面 性能兼容性低依赖性稳定性1、性能 像 SQLite 这类库要求速度必须要快。SQLite 的速度就很快它比文件系统快 35%详情可以参考这两个示例Internal Versus External BLOBs 和 35% Faster Than The Filesystem。 而 C 语言就能实现快速编写代码。C 语言通常被描述为“可移植性的汇编语言”。它使开发人员能够尽可能靠近底层硬件进行编码同时仍然可以跨平台保持可移植性。 平常我们可能会看到有人描述某种语言“像 C 语言一样快”却不会看到有人说作为通用目的编程时会有一门语言“比 C 语言快”因为这种语言真的不存在。 2、兼容性 几乎所有系统都能调用 C 语言编写的库但其他语言就不尽然。例如用 Java 编写的 Android 应用能够调用 SQLite通过适配器。 如果用 Java 编写 SQLite那么对 Android 来说可能会更方便因为这会使接口更简单。但在 iPhone 上应用程序是用 Objective-C 或 Swift 编写的它们都不能调用用 Java 编写的库。 因此如果用 Java 编写SQLite 将无法在 iPhone 上使用。 3、低依赖性 用 C 语言编写的库对运行时没有很强的依赖。SQLite 的最低配置也只要求 C 库中的这些方法 memcmp()memcpy()memmove()memset()strcmp()strlen()strncmp()在更完整的构建中SQLite 也使用诸如 malloc() 和 free() 之类的库例程以及用于打开读取写入和关闭文件的操作系统接口。 但即便如此依赖的数量也很少。 4、稳定性 C 语言易于理解契合了 SQLite 的要求适合 SQLite 的开发。 为什么 SQLite 不使用面向对象的语言 开发人员可能无法想象用“非面向对象”来开发一个像 SQLite 这样复杂的系统会是什么样子。所以 SQLite 为什么不使用 C 或者 Java 来开发呢 1、用 C 或 Java 编写的库通常只能由以相同语言编写的应用程序使用。 使用 Haskell 或 Java 编写的应用程序很难调用用 C 编写的库。 另一方面用 C 语言编写的库可以从任何编程语言调用。 2、面向对象是设计模式而不是编程语言。 你可以使用任何所需语言包括汇编语言进行面向对象编程。 某些语言例如C 或 Java可以使面向对象更容易但你仍然可以用像 C 这样的语言进行面向对象的编程。 3、面向对象不是唯一有效的设计模式。对象通常是分解问题的好方法。 但不是唯一的方法也不总是分解问题的最佳方法。 有时好的旧程序代码更容易编写更易于维护和理解并且比面向对象的代码更快。 4、SQLite 进行开发时Java 还不是一门成熟的语言C 会成熟一点但当时要找到两种能以 相同方式工作的 C 编译器比较困难。相比之下C 语言是个不错的选择。虽然这种情况现在有所改善但为此对 SQLite 重新开发并没有什么好处。 为什么 SQLite 不使用”安全”语言编写 使用“安全”语言不易发生内存泄露、数组溢出等的安全问题。最近许多人好像对 Rust 和 Go 这样的“安全”语言感兴趣。但 SQLite 为什么不使用呢 1、SQLite 出现后的 10 年时间里所谓的“安全”语言还不存在。虽然 SQLite 可以用 Rust 或者 Go 重新编写但这样可能会引入更多难以修复的 Bug进而会影响编码速度。 2、“安全”编程语言解决简单的问题像内存泄露、数组溢出等。在解决 SQL 计算结果这类的问题上并不如 C 语言好用。 3、“安全”语言可防止安全漏洞但 SQLite 并非一个对安全敏感的库。如果应用运行了不受信任的 SQL那它可能已经存在更大的安全问题而这是“安全”语言无法修复的问题。 4、一些“安全”语言如 Go 语言不喜欢使用 assert()但这是保持 SQLite 可维护性的重要前提。 5、“安全”语言会插入额外的机器分支来执行其他操作。但在正确的代码中这些分支并不会被采用。所以机器代码不能 100% 被测试到可这恰恰是 SQLite 质量检测的重要组成部分。 6、“安全”语言会在内存不足OOM时请求终止而 SQLite 的设计是遇到 OOM 时能重新恢复。目前还不知道如何利用“安全”语言实现这一点。 7、现有的“安全”语言都比较新SQLite 开发员对它们的出现表示赞赏但依然认为 C 语言更适合目前的开发工作。 文章最后表示SQLite 可能会考虑使用 Rust 重新开发但不太可能使用 Go 语言因为它对 assert() 不友好。但其实 Rust 目前的条件并不足以对 SQLite 进行重新开发它还需要继续发展
http://www.zqtcl.cn/news/948585/

相关文章:

  • 成品门户网站源码免费海外网络加速器免费
  • 企业网站怎么建设公司深圳企业招聘信息最新招聘信息
  • 天津网站经营性备案下载网站上的表格 怎么做
  • 胶州企业网站设计十大互联网营销公司
  • 视频解析wordpresswordpress 优化版本
  • 柳州网站建设哪家便宜广东省建设厅三库一平台
  • 云南城市建设官方网站wordpress和织梦哪个好
  • 国外企业招聘网站专门做外贸的网站有哪些
  • 陕西交通建设集团网站营销公司是什么意思
  • 网站建设自建与租用区别杭州建设局网站官网
  • 广告公司企业介绍seo研究中心怎么样
  • 苏州网站建设熊掌岳阳做网站哪家好
  • 深圳网站制作公司报价单宝塔做两个网站6
  • 百度站长工具怎么查排名贵港网站制作
  • 运城个人网站建设学校网站建设目的
  • 住房城乡建设部门门户网站购物网站排名大全
  • 手机网站平台江门网站建设模板
  • 做本地网站需要什么资质百度多长时间收录网站
  • 网站建设公司使用图片侵权使用者有无责任夸克免费空间
  • 网站建设制作鸿运通做网站能用python吗
  • 站长源码之家Wordpress 新建标签
  • 太原网站建设详细策划如何建设网站简答题
  • 乡村生态旅游网站建设方案如何做网站的导航栏
  • wordpress百度百科网站开发 seo
  • 网站主机名wordpress主题修改底部版权
  • 网站官网怎么做龙岩iot开发福建小程序建设
  • 哪个学校设有网站开发专业北京有哪些网站公司
  • 做网站需要的带宽上行还是下行湖南竞网科技有限公司
  • 帝国cms企业门户网站仿站视频教程 网盘互联网金融p2p网站建设
  • 个人网站备案涉及支付宝做二手的网站都有哪些