NSJSONSerialization解析json数据

在iOS编程中对json数据解析最基础的就是NSJSONSerialization。它是在iOS5之后开始支持的,并且无需额外导入任何包。 NSJSONSerialization中定义获取一个json对象有两种方式: //根据NSData获取json对象,如果是合法的json格式,返回一个NSDictionary对象 + (nullable id)JSONObjectWithData:(NSData *)data options:(NSJSONReadingOptions)opt error:(NSError **)error; //根据json输入流获取一个json对象,参数stream需要提前打开并且配置 + (nullable id)JSONObjectWithStream:(NSInputStream *)stream options:(NSJSONReadingOptions)opt error:(NSError **)error; 当获取到json对象后,就可以使用NSDictionary来进行操作了。

iOS

iOS首次启动用户引导

作为一个开发者,我们必须要考虑当用户下载过我们的应用户是否能正确使用。当然,大部分第一次使用时都不可能完全知道如何进行操作。这时,我们就要考虑是否要添加一个简短的教程来提示用户如何使用。然而,这个教程通常情况下只需要显示一次就够了,所以我们只让第一次启动显示。        需求时分析好了,可是,要怎么实现呢?在iOS上能够实现数据持久化的也就几种:NSUserDefault、plist文件、SQLite、对象归档和Core Data。我个人认为最简单的就是NSUserDefault了,这里也就以NSUserDefault为例。 代码实现        首先,当第一次启动时,使用UIScrowView做一个三个屏幕宽度的滑动区域,可以通过左右滑动进行切换,党话到最后一屏时,会出现一个按钮跳过引导 当点击按钮后进入应用的正常界面。以后再次启动时,直接进入应用的主界面,不再显示之前的引导步骤。 AppDelegate.m

Ghost

零费用搭建一个漂亮的博客

这篇博客是为了给喜欢简单、非计算机专业的同学一个搭建博客的方法,按照这个方法搭建博客完全可以不用花一分钱,而且搭建出来的博客又很美观,主题什么的完全可以自己搞。 提前准备 一个邮箱 Google Chrome浏览器         没错,你的确没有看错,仅仅需要一个邮箱和一个Chrome浏览器。 搭建博客         OpenShift是红帽推出的容器,提供免费版,免费版可以创建三个应用,用来搭建免费博客用也是极好的。         使用浏览器打开OpenShift注册页面,注册账号。如果你的浏览器无法显示验证码的话,就换一个浏览器,火狐、Opera总有一个可以:         注册之后到邮箱里激活你的账号,激活后就可以创建第一个应用了:         之后你会跳转到一个选择应用的页面,哇,真是太多了,简直眼花缭乱。在众多应用中,现在你可以选择两个,一个是WordPress,另一个就是今天要说的Ghost。

Ghost

傻瓜式搭建Ghost博客平台

很多同学想写博客,但总觉得搭建博客很麻烦,因此也就作罢。所以,在新年之际,我就送出一个新年礼物,教大家如何快速搭建一个博客平台。 环境: Centos 6.5 64bit Ghost 0.7.0 MySQL Node.js Nginx 更新yum源:         因为很多国内防火墙的原因,官方源可能无法访问,所以我们首先设置使用阿里的yum源: //先备份原有的镜像文件,以免出错后可以恢复 mv /etc/yum.repos.d/CentOS-Base.repo

Git

必须掌握的Git基础之二

上篇博客已经讲过了创建版本库和上传第一个版本库,下面简单回顾几个命令: git init //初始化版本库 git add . //添加至暂存区 git commit -m "message" //将修改提交至版本库 git push //推送至远程仓库         上个博客只是最简单的命令,这次博客继续深入。 分支与合并         Git是分布式的版本控制系统,对分支的支持十分完善,尽管SVN也支持分支,但是与Git相比堪比鸡肋。         首先,应当明确的是,当我们创建一个版本库时,默认会创建一个master分支(主分支),这个分支一般用来发布应用,应该是稳定的版本。平时大家可以创建自己的分支,

版本控制

必须掌握的Git之基础一

Git的优点在上一篇博客中已经写过了,而且在上一篇博客中也已经写了如何在GitHub上创建第一个版本仓库。在后续的博客中,将继续以把代码托管在GitHub上为例。         上篇博客写的是在GitHub上创建仓库然后clone到本地,这次讲解如何在本地创建仓库然后push到远程仓库。首先,要了解一个概念,在你自己电脑上的仓库叫做本地仓库,也就是你的工作仓库;GitHub上的仓库就是远程仓库。 本地创建仓库         创建本地仓库有多种方法,下边一一介绍: 使用Git Bash创建:         首先新建一个文件夹(或者是你已有的项目),然后使用Git Bash 跳转到该目录下,执行 git init 即可。下面以桌面上新建一个gittest仓库为例: cd Desktop/ mkdir gittest cd gittest/ git

为什么我选Git而不是CVS

这学期集中时间老师要让大家使用版本控制系统,以便于小组成员协同开发。这确实是一个好消息,毕竟将来在工作中这也是一项必须的技能,所以大家都应该熟练掌握至少一个版本控制系统的使用方法。        老师向大家推荐的是CVS,并且也向大家介绍了CVS的使用方法,所以我就不再推荐了,我推荐Git,也给大家多提供一种选择。而且,由于CVS是集中式的版本控制系统,所以有以下缺点: 需要额外准备一台电脑作为服务器,十分不方便; 技术博客少。这一点通过Google就能够发现Git搜到的词条比CVS的词条多出三分之一。顺便说一点,我觉得没有一个完善的技术博客作指导的话,在实践的两周中很多同学会在版本控制上浪费很多时间; 必须联网才能工作。因为是集中式的,所以所有代码都保存在服务器上,开工之前必须联网同步,修改完成后也必须联网将更新同步到服务器;        相比之下,Git的优势就很明显了: Git是分布式的版本控制系统,在每个人电脑上都是一个完整的版本,免去了仓库丢失的麻烦; 多分支。小组内每个同学都可以常见自己的分支,在自己的分支上进行修改后确保代码正确无误后提交主分支合并。

Git

GitHub冲突解决

好久没写博客了,这几天一定要把前一段时间学到的东西写下来(感觉都快要转前端了。。。)。如有错误,还望尽快指出哟^_^.         前一段时间跟老师做一个项目,因为是四个人的小团队,想避免来回拷代码的麻烦,我就说服大家用Git进行版本控制。我也承认,Git有Git的缺点,但SVN也有SVN的缺点,要是Git一点长处都没有的话GitHub也不会这么受欢迎。(题外话:感觉做技术也要时刻保持激情,不能一直固守着自己会的东西不放,一定要学习接受自己不会的,尤其是新事物、新技术。一些公司内部的技术员没有一点活力,新招人也按以前标准找,依旧没活力,首先对企业文化就不利,自然对高端人才也就不可能具有新引力,慢慢的就形成了恶性循环。)         有些人拒绝用Git是因为害怕版本冲突,我觉得这种恐惧心理就不对。作为分布式的版本控制系统,在多人协同开发时,想要做到零冲突基本上是不现实的,因为很难避免多个人修改同一个文件。当冲突发生后,很多习惯用SVN的程序员会觉得解决版本冲突是件很头疼的事,

VPS

通过GitHub学生认证获取VPS(虚拟专用服务器)等资源

最近一段,几个同学向我咨询如何获得免费的VPS资源,谈到这个问题,我始终认为一分价钱一分货。当然,像GitHub + DigitalOcean对学生优惠的就除外了。其实,在GitHub教育优惠中,除了DigitalOcean外还有其他很多资源,我用过的就有GitHub的私有库、NameCheap的.me域名等等。大家可以到GitHub Education上看一下优惠包内容。下面就说说怎么才能接到这个馅饼。 注册edu邮箱     财大的学生可以到河南财经政法大学电子邮箱系统进行注册。点击链接进入电子邮箱系统登录界面: 点击“学生注册”按钮进入注册界面,按照提示进行注册,看到系统提示成功即可: 注册GitHub账号     GitHub是啥?不知道?那还不快Google!Google用不了!? 那就百度呗。。。     额,跑远了~_~|。回到正题,

Git

GitHub使用教程(一)

Git是一个分布式版本控制软件,由Linux系统创始人Linus Torvalds于2005年创作并发布。最初的目的是为了更好地管理Linux内核的开发和设计,后来被用做版本控制和协同开发。经过十年的发展,充分证明了Git的优越性。     现在有很多代码托管平台都使用Git,大家可以使用这些托管平台的代码库,也可以搭建自己的Git服务器。当然,在托管平台中,最大最受开发者喜欢的就是GitHub了。下面就介绍一下GitHub的使用方法。(之所以写这篇博文,也是我在使用GitHub时遇到了很多问题,有时候也是找了好久才解决,所以就想把自己的经历写下来) 创建本地仓库:     打开终端,创建一个名为Test1的文件夹,并进入Test1文件夹中,创建一个空的仓库。(按顺序执行下面三条命令即可,记得省略$符号,当然还要提前在电脑上安装git,下同) $ mkdir Test1 $ cd Test1 $ git

开源者

关于发起成立郑州开源者线下组织及沙龙活动

前言:     今年五月份有幸参加了“开源者行游学”北京站的活动。在活动中也有幸认识了很多大牛,也在这次活动中学到了很多学校学不到的知识。最重要的是,我发现大神们都经常参加线下沙龙进行技术交流和分享,可是我却从来没听说过郑州有这样的活动。后来多方打听也没打听到郑州有这样的活动,可能也存在小规模的交流活动,但是应该来说没有形成影响力,更没有像北京、上海、武汉等地线下组织定期的线下交流。所以,从北京回来就一直想要组织一下,让郑州的开源爱好者以及其他的IT工作者,甚至计算机类的学生也能经常参加线下交流活动。 目的和宗旨:     我想要发起成立郑州开源者线下组织的目的和宗旨就是: 交流,分享,共赢     交流:就是开源爱好者和技术大牛们在一起交流一下技术,聚聚餐,喝喝茶,扩展一下人脉。

用一种思想来彻底解决尔雅选修课独占资源问题

想法来源: 选过尔雅课的同学可能都知道,只要一放尔雅,电脑基本上就不能干别的了,你一动它就停。当然,有童鞋说可以用某豹小窗口来看,但我不认为这是一个彻底的方法,鞋面来讲一种从根源解决的方法。 想法实践: 其实,我想到这个方法也是突发奇想得到的。 首先,我们来分析一下尔雅平台的工作原理。尔雅平台之所以会在你鼠标点击其他区域时停止,就是因为系统会判断你电脑当前的焦点。如果你的焦点丧失,尔雅平台就会停止播放。就这么简单呢,只要明白了这个道理,想办法就简单了。 我想的办法是使用虚拟机,为什么要这么做呢? 因为,虚拟机和你的物理机有两个可以说基本上是完全独立的系统,他们都有各自的焦点,当你只在虚拟机里播放尔雅视频时,只要你在不丧失焦点的情况系将虚拟机后台运行,你就完全可以在你物理机系统上做任何事情。 任他尔雅平台的维护人员怎么修复bug、怎么屏蔽,这一个方法都能使用。 当然,

游学

参加开源者行游学感悟(北京站)

首先,非常感谢GitCafe和开源社以及其他企业提供的机会,让我有幸参加了这次开源者行游学活动。 通过这次活动,让我认识到了很多技术很牛的同学。和他们在一起,学到了很多技术方面的东西,同时也学到了很多社区管理的经验,更重要的是也扩展了自己的人脉和眼界,也对开源有了更深的理解。同时,活动中的技术分享环节和创业分享环节,对仍然身处校园的我们来说,更是开阔了视野。通过各个公司的CTO们的技术分享和回答,我们从中吸取了很多技术方面的知识,解决了很多疑惑。还有各位CEO们的创业分享,跟我们分享了初创团队的管理经验,让我们对创业有了更多的认识(创业不易,且创且珍惜呀)。 最重要的还是和队友们的一起Ideathon,大家一起围绕一个题目大开脑洞,尽可能去想一些不可思议的事。当然,最重要的是和队友们的合作,大家意见如何统一,如何一起实现一个目标,如何说服队友采纳自己的建议这才是最重要的。在这个活动中,锻炼了自己的创新能力、领导能力和团队协作能力,

邮箱配置

教你如何使用手机和电脑自带邮箱登陆我的企业邮箱(@terrynie.com)

前言 首先,感谢大家对我的支持,感谢大家能够使用我提供的邮箱服务。在以后的日子里,我会尽最大努力去维护这个企业邮箱。当然,只要您是活跃用户,您就可以一直使用我为您提供的免费VIP邮箱服务。 设备 iPhone Android Mac iPhone/Android 使用阿里云邮客户端登陆 iPhone: 首先,打开您的iPhone,并进入设置: 找到“邮件、通讯录、日历”选项,进入: 选择添加账户: 选择其他: 选择"添加邮件账户": 在这里天上你在我这里获取的邮箱账号和密码,