msg7086
2015-01-23 02:55:08 +08:00
咦 提醒系统挂了么没收到你的at提醒。
既然起床了那就用电脑回复你了。
这么说吧,写Java你得非常完整地实现各种设计模式,非常仔细地处理异常,等等。
这是一种臃肿式的开发,对于设计超大型系统(例如银行系统)非常好,因为这些系统不在乎钱的问题,可以招1000个码农来开发一个系统,每个人只要在设计模式的保护下负责自己的一小部分就行了。
而Ruby,或者说RoR,则是提倡灵活性。花点时间写一个测试,再花点时间编码,然后让自动化测试来保证程序的正常运行。同样一个网站可能只要10个人来做就行了。
Ruby被人称道的地方也是为人诟病的地方,就是他的灵活性。你永远不知道一个Ruby程序员做一件事情会用什么样的代码来做,甚至是你从来没想过的方法。我之前就遇到过一个栗子,你有时间的话不妨试一下。
用C/C++/Java/C#/Python等语言实现以下功能。再用Ruby实现一遍。
给定一个二维的字符数组(或者相同功能的容器),从左上角按逆时针连接字符串输入。
比如
spiral_print([
['a','b','c','d'],
['e','f','g','h'],
['i','j','k','l']
]) # -> 'aeijklhdcbfg'
spiral_print([
['a','b','c','d']
]) # -> 'abcd'
string spiral_print(vector<vector<int>> matrix);