68. JDBC操作MySQL数据库

对于熟悉PHP的人来说,最熟悉的莫过于PDO(PHP Data Object)这个词了。而且Web后端更多的时候也确实是存取数据,反而对代码性能和封装没太大的讲究。虽然偶尔会有人问我,你觉得一个人,代码写的漂亮,特别好;另一个人代码写的一般,你更倾向于哪一种?我说,如果非要选一种,那肯定是写的漂亮又好的还稳定的。但事实上,并不是这么回事。对很多人来说,二者并不是统一的。

有段时间我还学过Python,但是对于Python操作MySQL数据库相当的泄气,以至于后来我就放弃这门语言了。说实话,这门语言比PHP还有实用的多,而且也是一种新潮的趋势,越来越多的人开始使用这门语言。而且这门语言本身的能力也比PHP要强大的多,可以做很多PHP做不了的事情。

这几天在疯狂的苦学Java,由于之前学过一段时间的Go,觉得差别不是很大,相对来说还是挺容易的。终于学到操作数据库这一节,这应该是对于使用动态语言的人来说,最为期待的一幕了。在动态语言的世界里,数据库相关的操作,占据了业务的大多数,也占据了代码量相当的一部分。觉得静态语言会不会也很难,当然Go使用MySQL数据库是相当的简单,但是Go的DB包不是特别的好用,不过已经非常完美了。

让我感到惊讶的是,Java操作MySQL也是如此的简单,得益于jar包的便利,加入一个扩展是如此的方便和快捷。

Read More

67. 指针和多维数组

数组用于储存相同类型的数据。C把数组看作是派生类型,因为数组是建立在其他类型的基础上。也就是说,无法简单地声明一个数组。在声明数组时必须说明其元素的类型,如int类型的数组、float类型的数组,或其他类型的数组。所谓的其他类型也可以是数组类型,这种情况下,创建的是数组的数组(或称为二维数组)。

通常编写一个函数来处理数组,这样在特定的函数中解决特定的问题,有助于实现程序的模块化。在把数组名作为实际参数时,传递给函数的不是整个数组,而是数组的地址(因此,函数对应的形式参数是指针)。为了处理数组,函数必须知道从何处开始读取数据和要处理多少个数组元素。数组地址提供了“地址”,“元素个数”可以内置在函数中或作为单独的参数传递。第2种方法更普遍,因为这样做可以让同一个函数处理不同大小的数组。

对于传统的C数组,必须用常量表达式指明数组的大小,所以数组大小在编译时就已确定。C99/C11新增了变长数组,可以用变量表示数组大小。这意味着变长数组的大小延迟到程序运行时才确定。

Read More