iOS开发中,需要使用sqlite,所以试图学习,但学习过程中似乎是遇到了一点困难:
在bing.com搜 “swift sqlite”,得到的多是基于某个封装过sqlite的framework(如fmdb),这不是我想要的。我想要的是不用开源的封装,而是直接使用sqlite的API
在github上搜 “swift sqlite”,找到的又多是那些framework的“老窝”。它们都是基于sqlite的API,但太成熟太庞大,只能用来膜拜,不能用来学习(至少不适合现阶段的我)。
翻了好几页,终于找到一个符合预期的sfest 。在其中一个有50行的类中看到了sqlite3_open / sqlite3_prepare_v2 等API的影子。虽然代码不多,但sqlite的使用已可见一斑。现在问题又来了,这几个API的作用是什么,sqlite都有哪些API,以及如何系统掌握sqlite的使用,这些问题在这里又无法得到解决。
于是,转而去找sqlite的官网,希望能在那里得到第一手的学习资料。经过一番折腾,果然没让我失望,找到了这篇让我期待已久,一语破的的好文:An Introduction To The SQLite C/C++ Interface 关于sqlite的“基本疑问”,在该文中已得到解决,我对sqlite的恐惧也即刻消失了。在c++开发时也曾用过sqlite,但那时用的别人封装过的class,未试图去窥探sqlite的样子,自然也未遇到此文。
关于知识:
两个object (connection / prepared statement),6个API(基于两个object,实现数据 *** 作) prepared statement为由text的SQL语句“编译”(通过sqlite3_prepare_v2)出来的“可执行程序”,SQL语句相当于“源码”,执行该程序,就会对数据进行读/写等 *** 作关于过程:
学习新东西,需先清晰确定一个目标,各种努力都指向该目标。因为在学习过程中总是要遇到困难,往往要经过几番“柳暗花明”才能到达到该目标。如果一开始目标就不确定,那很容易在困难重重的过程中放弃目标,毫无收获。 目标最好还是定在“基础性” “本质性”的知识上,否则学习效果总是有“隔层纱”的不确定感觉。比如,如果我以学习fmdb为目标,而不是直奔sqlite API,就有一种浮于表面/隔靴搔痒之嫌。即便会用fmdb完成功能,总觉得是没有什么收获。 英语好一点,会沾光不少。 总结以上是内存溢出为你收集整理的swift sqlite3 学习心得全部内容,希望文章能够帮你解决swift sqlite3 学习心得所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)