NineYao 2013-01-12
[size=medium][/size]第一次主动有写博客的冲动啊。。。我承认自己是个特别水的人,昨天晚上和蔡蔡说起一些结构性的东西,我说我觉得好多理论我真的是渣爆了,h总(尼玛居然是敏感词)说位运算的时候我第一反应就是看天花板,额,位运算,bmp画图板保存里的东西,原理嘛不记得了,当时的追求只是实现了,然后还有链表,结点等等数据结构,说起来都知道,但是挖掘都不够深。。。虽然当时做的哈夫曼压缩自认为做的特别快而且压缩效率还高,而且貌似哈夫曼压缩我是真的用心自己想了好久的算法,可是时间一长我还是不记得了。。。挠头挠头挠头。。。。
难得有兴致,让我多扯点再开始主题吧。。。
昨天雨齐要搭安卓的环境,h总说“熊哥那个水平太低层了,给你找个真正的安卓高手”,然后就把雨齐推给我了。。。然后我就瞬间受宠若惊了有木有!!!高手担当不起,但是我终于有了一种。。。啊啊啊。。。当年左哥帮我搭环境,如今我终于可以帮别人搭环境了的感觉!!!说实话我觉得搭环境的过程和最后写安卓代码的过程没太大联系,但是搭了两次安卓环境之后,尤其是配sdk的那个过程我还真的记忆深刻,所以装摸做样地拿过雨齐的电脑,顺手一搞就搞定了那个其实非常简单的问题。。。忽然存在感倍儿涨啊有木有。。。
好吧我开始说进入正题的前奏。其实我在决定来蓝杰的时候就一直在思考市场问题,当时没有任何调研的状态下认为ios的市场前景会非常之好,好吧,作为一个商学院的人,一定要为自己未来发展考虑一下前景的。。。2012年的3月,是我用iphone的第四个月,而刚好那时候,老爸单位给配了一个ipad。。。从高中毕业就是一个,额,怎么说呢,叶公好龙级别的手机爱好者,对手机和电脑要求特别高。家里并不是富二代的条件,但是当时高考完我自己给自己挣了一台“n97mini”,好吧,其实是我给表妹补课一暑假然后二姨奖励我的礼物。那个年代还是诺基亚王朝,那个年代n97mini还是机皇,那个年代iphone3gs刚刚出吧,价格还在4500+。。。我在iphone专柜短暂徘徊了一下觉得玩不起,于是选择了炒的火热的塞班s60v5平台,两个月之后比较不幸的是我的手机因公牺牲。。。因为去搞班级活动的一些物资我一个人走在陌生的五一大道然后手机就那么莫名其妙地丢了,在陌生地街口惊慌无措的感觉我至今记得。记忆很深。那手机3070买的还是找了熟人。。。我觉得我真无能。。。然后过年妈妈重新帮我买手机,为了弥补n97mini没用够的遗憾同时忘记伤心事,我选择了它的姐妹c6,用了1年,对塞班的平台恶心到不行,卡死了真心。然后一直酝酿自己攒钱换iphone4,没告诉我妈。2011年12月的时候,我的手机再次因公牺牲,这次是在给团学会办点事情的时候。我平静的跟我的leader(尼玛某词又敏感了)说我手机丢了,leader惊慌失措,我说没事,咱先把事儿办完再说。leader当时就倒地不起了。理所当然地自己先斩后奏地买了台iphone48g,当然基本上钱都是我自己攒的。跟我妈说的时候,她的反映居然是“你回家来买iphone4多好,我前两天才看到联通的合约,可好了。。”我当时的表情只能用囧字形容,我自己攒了好久的钱啊。。。于是开始感受ios时代,一直很小心地保护着手机所以现在它寿命超过了一年,可是却一点都没有腻的感觉。。。我从国产的山寨机系统,后来玩塞班,再后来也买了台比较差的华为安卓2.3做我安卓的开发测试机,也玩过朋友的三星安卓4.3,也摸过别人的windowsphone,可是我最终还是选择当一个脑残果粉,ios是我接触过的最好用的系统,我就不想再黑安卓了。。。我玩的手机其实也不算太少吧?但除了那台c6其他都差不多是我自己挣的攒的哎,家教如今已经到了200一节课的level。。所以不要说我败家。。。然后一直在酝酿买一台macpro的事儿,本来这个学期自己攒了5000准备换iphone5或者是mac,结果一抽风买了2000+的衣服/鞋子/咖啡机等等等等的东西然后又去北京和武汉旅游了一圈,没了。。。可是从北京回来我更加坚定了对ios开发的兴趣,所以犹豫了几天给我妈打了个电话,败了一台macpro,还是i7的处理器。。。心里不能再愧疚了。。。
昨天见到了大名鼎鼎的韬圣,过来帮我配环境,韬圣说让我用xcode3做开发,因为xcode4太新,教程很少,而且没法写ios6以外的软件。。。写出来的软件不向下兼容啊,真机没法测试,于是我用了一下午,在developer.apple.com注册developer帐号,下载xcode3.2和sdk的合集包,4.14g啊,电脑在下载,我就看公司ios开发的书。。。
说点有用的吧。。
都知道ios开发是基于objective-c语言,是基于c语言的一种开发语言呗。但是又不太一样,因为我们都知道,c语言是一种面向过程语言,面向过程语言对更广泛的开发来说是不利的,而objective-c呢,在c语言的基础之上又实现了面向对象的功能。也就是说,我可以把objective-c看成是c和java的合集吧,这么强大的玩意,瞬间兴趣倍儿涨啊。我们在手机ios或者电脑macos系统上使用的cocoa程序又分别包含两个框架
macos系统:包含Foundation和ApplicationKit框架,ios操作系统包括Foundation和UIKit框架。所以说嘛,既然都又Foundation框架,那可想而知这一定是个基础框架咯。它主要包含一些基础类还有一些基本数据类型。ApplicationKit/UIKit框架其实是姐妹框架,或者说我把它理解为相当于java里的Swing框架这样的进阶框架,实现一些画图,按钮等等的类。这些是我的理解,一家之言啊。。。不对就求喷。。。
另外呢,关于开发工具,我们都知道的xcode4是相当于eclipse的编程工具,而还有一个ui设计工具叫interfacebuilder,是用来做ui的可视化操作,这个相当于开发安卓时候的可视化界面操作。sdk什么的不用管它内置有什么,只要下下来,安上去,能运行,模拟器能走就成。
然后看完这些了,我发现韬圣让我下载的东西载下载到59%的时候莫名其妙重新下载,泪奔,好吧,重下,宿舍的网络虽然快一些,但是有bug啊,隔一段时间不操作它就会断,一晚上啊!!我每个小时醒一次碰一下电脑保证网不断,然后早晨眼巴巴地看着那个数字离100%越来越近,越来越开心的时候,它载99.9%的时候出现一个红叉,然后自动开始从零下载。。。。尼玛!!!!!!此刻的心情真是难以形容,我怒了,不就是是xcode3么,我不要了还不行么,然后在appstore下了xcode4,当然很顺利地下完了。
然后我确实也发现公司的书,网上的教程大多数没有这种最新版本的xcode4,公司的书上是xcode3,而这个工具3和4之间差了很远,所以我只能自己摸索。所幸的是苹果真的是一个非常之人性化的公司,xcode4这个软件里已经集成了ios开发所需的sdk,而且它把interfacebuilder也集成在里面了,真心省了很多配置的步骤。
之后就是上手操作了,本来以为写一个helloworld应该很简单的,但是却发现真心折腾人的擦,书上的是xcode3,不仅软件界面不一样,连生成的工程文件夹都不一样,里面的文件部署也发生了改变,我根本找不到书上或者网上所说的xib或者nib文件,那我怎么打开interfacebuilder呢????摸索了很久之后发现新版xcode生成的MainStoryboard.storyboard文件其实也就相当于原来的nib或者xib结尾的文件,点开它就能进行可视化编辑了。。。。然后又摸索着加上去按钮,加上去label,做了一个helloworld程序。模拟器走的很成功。问题是这时候真机又出现问题了。。。没法在真机运行,我原来以为是韬圣说的软件不能向下兼容,软件版本高,硬件版本低,所以走不起,但是发现xcode版本和ios软件版本没啥联系的啊,我自己是可以在buildsetting中更改所写软件的版本的啊,就像安卓里自己可以设置写2.2,2.3还是4.3的版本一样,跟eclipse版本没太大关系,不是一对一的。。。所以呢我就不担心新版xcode写不了ios低版本软件这个问题了。但是真机没法调试什么情况啊。。。后来查了一下才发现原来苹果的真机调试也是需要开发者idp的,99刀一年啊!!!!就只是做个调试都不行啊尼玛。。。我不发布软件都不行啊尼玛。。。。网上有很多越过idp的真机调试方法第一步是手机越狱,晚点再研究吧,还好之前自己给手机玩过越狱,不爽就又越回来了,因为我有个比较蛋疼的毛病,不喜欢用盗版,就像越狱我也只是为了学习越狱的过程,总觉得盗版的东西或者破解的东西心里不那么舒服,估计是摩羯座不懂变通的臭毛病吧。。。我还是倾向于自己挣一个idp,是啊不就600多么,我自己带个三节课就挣回来了。。。
另外,既然是商学院的人,也不能太盲目自大的判断市场呗~虽然心里有一定的市场定位,觉得ios开发成本这么高(正儿八经想自己玩,得有一台iphone一台ipad一台imac吧!!!这是差不多2w啊!!!),有心思学的好多狠不下心花这个钱,花得起这个钱的都去泡妹子了,所以精通objective-c并且熟悉ios/macox开发流程的人肯定没多少,我是说精通啊!泛泛而通的不算。然后就和360的屈屈大哥聊了一下,他说近两年各大公司对能写ios的人的需求还是很多,然后和apple零售商也聊了一下,他也写ios软件市场还是蛮缺人的,再加上我作为一个苹果脑残粉的主观臆断,我要坚定地走ios这条路!!!
更多地技术以后再写~现在有了个小小的起步,就让我开心一下吧。。。