懒惰是富有最大的敌人,再不前进,我们就out了。最近工作比较轻松,不是很忙。于是想晚上下班回家学习点新东西。看着苹果大军的一天天壮大,心里也是痒痒的。于是就想先系统的学习下Objective-C,为之后学习ios编程开发提前打好基础,做好准备。
  大家学习Objective-C的主要目的都是为了能更好的进行IOS项目的开发。那么,Objective-C的学习开发要什么条件呢?要么就是用Linx系统下编写Objective-C,然后下载sdk,设置好运行环境。具体操作网上应该有教程。还有最理想的状态就是在苹果系统上开发了。
  用苹果系统的话,一般都是用苹果电脑开发。但是苹果机子价格昂贵,让屌丝们都望尘莫及,无形中提高了门槛。但是,是不是PC机就不能进行苹果开发,就不能学习Objective-C了呢。当然不是,我们完全可以通过在windows系统中安装一个苹果系统的虚拟机(不过这个对电脑的配置要求比较高,一般至少要给虚拟机分配4G内存才能跑起来)。或者是格出盘来进行安装苹果系统,也就是我们说的黑苹果。
具体安装的方法网上一搜一大堆,这里就不介绍了。我用的是在电脑中安装虚拟机开发。因为之前安装过黑苹果,由于那个驱动要一个个找,太费劲,而且想用下windows系统还的关机进另一个系统,不是很方便。
  本系列博文是个人在一边学习《Objective-C基础教程》这本书,一边自己写代码,并将心得体会记录下来和大家一起分享。相信此类博文发表的已经很多了,由于也是初学者,很多讲的不对的地方,大家发现了请狠狠的批评斧正。写本系列的初衷就是记录下学习的历程,和大家一起学习和进步。
  好了,言归正传,下面就开始和我一起踏上Objective-C开发之旅吧。
 
前期准备
1. vmware10 安装 Mac OS X 10.9 虚拟机 
(打mac补丁,然后下载了虚拟机镜像包,用懒人安装法。直接替换新建的虚拟机文件,配置后搞定。)
 
2. 安装vmware tools,设置共享文件夹
(使得虚拟机和主机可以来回切换、设置分辨率,能共享文件。具体操作请教度娘)
 
3. 下载 xcode 5.1.1dmg 镜像。
(安装即可,前期准备就绪)
 
    新建项目尝试
1. 新建 command tools -> 选择类型选择 “Foundation”, 如图:
 
 
即可用命令行写objective - c代码。
默认有个main.m 文件,有个Hello world 的函数。可以尝试下如何调试,设置断点等。
下面贴上基本常用的快捷键,供参考:
 
基本类型的使用
布尔类型(BOOL,返回值为:YES和NO)
字符串类型(NSString,定义函数的时候要用 * 符号)
 
由于第一篇的内容比较简单,主要以配置环境和新建项目为主。好了,接下来就直接上代码。
 //
// main.m
// ch1
//
// Created by pcbeta on 14-11-14.
// Copyright (c) 2014年 julian. All rights reserved.
// #import <Foundation/Foundation.h> BOOL areIntsDifferent (int thing1, int thing2)
{
if (thing1 == thing2)
{
return (NO);
}
else
{
return (YES);
}
} //最基本的判断两个变量是否不同的函数。如果相同,返回NO;如果不同,返回YES NSString *boolString(BOOL yesNO)
{
if(yesNO == NO)
{
return (@"NO");
}
else
{
return (@"YES");
}
} //在函数前面要添加 “*”号。表示返回的内容是字符串。 int main(int argc, const char * argv[])
{ // @autoreleasepool {
//
// // insert code here...
// NSLog(@"Hello, World!");
//
// } BOOL areTheyDifferent;
int v_thing1 = ;
int v_thing2 = ;
//函数调用
areTheyDifferent = areIntsDifferent(v_thing1, v_thing2);
//输出结果
NSLog(@"Are %d and %d different? %@", v_thing1, v_thing2, boolString(areTheyDifferent)); //定义第三个变量
int v_thing3 = ;
//重新赋值
areTheyDifferent = areIntsDifferent(v_thing1, v_thing3);
//输出结果
NSLog(@"Are %d and %d different? %@", v_thing1, v_thing3, boolString(areTheyDifferent)); return ;
}

运行结果:

 

《objective-c基础教程》学习笔记 (一)—— 开发环境配置和简单类型输出的更多相关文章

  1. Django:学习笔记(1)——开发环境配置

    Django:学习笔记(1)——开发环境配置 Django的安装与配置 安装Django 首先,我们可以执行python -m django --version命令,查看是否已安装django. 如果 ...

  2. Android学习笔记1——开发环境配置

    一.JDK配置 Android是基于Java进行开发的,首先需要在电脑上配置JDK(Java Development Kit).在http://www.androiddevtools.cn/下载对应系 ...

  3. Django学习笔记 (一) 开发环境配置

    Django是一个开放源代码的Web应用框架,由Python写成. 采用了MVC的软件设计模式,即模型M,视图V和控制器C. 1. Python安装 下载地址: http://www.python.o ...

  4. Python基础教程学习笔记:第一章 基础知识

    Python基础教程 第二版 学习笔记 1.python的每一个语句的后面可以添加分号也可以不添加分号:在一行有多条语句的时候,必须使用分号加以区分 2.查看Python版本号,在Dos窗口中输入“p ...

  5. 《嵌入式Linux基础教程学习笔记一》

    常用书目下载地址:http://www.cnblogs.com/pengdonglin137/p/3688029.html 第二章 1.进程上下文和中断上下文(Page20) 当应用程序执行系统调用, ...

  6. Cocos2dx 学习笔记整理----开发环境搭建

    最近在学习cocos2dx,预备将学习过程整理成笔记. 需要的工具和环境整理一下: 使用的版本 cocos2dx目前已经出到了v3.1.1,学习和项目的话还是用2.2.3为宜,毕竟不大想做小白鼠,并且 ...

  7. Flink学习笔记:Flink开发环境搭建

    本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...

  8. Qt学习笔记-1 开发环境建立

    关于Qt在这里不做过多介绍,吸引我的地方是有几点: 1.用C++开发语言: 2.多平台(wWindows.MAC.Linux.Android等): 3.界面所见几所得.其他的可以百度上了解: 从本文开 ...

  9. Webpack4 学习笔记八 开发环境和生产环境配置

    webpack resolve属性 webpack 区分开发环境和生产环境 webpack resolve属性 该选项的作用是设置模块如何被解析. resolve.alias: 设置别名, 在vue中 ...

随机推荐

  1. netbeans连接数据库SQLserver2008

    数据库设置 第一步:配置SQL,打开SQL server 2008文件下的配置工具里的SQL server配置管理器 设置MSSQLSERVER协议中,开启TCP/IP,端口设置为1433 在SQL ...

  2. spring cloud: 升级到spring boot 2.x/Finchley.RELEASE遇到的坑

    spring boot2.x已经出来好一阵了,而且spring cloud 的最新Release版本Finchley.RELEASE,默认集成的就是spring boot 2.x,这几天将一个旧项目尝 ...

  3. EasyUI学习总结(三)——easyloader源码分析(转载)

    声明:这一篇文章是转载过来的,转载地址忘记了,原作者如果看到了,希望能够告知一声,我好加上去! easyloader模块是用来加载jquery easyui的js和css文件的,而且它可以分析模块的依 ...

  4. ADSL理解

    ADSL技术提供的上行和下行带宽不对称,因此称为非对称数字用户线路. ADSL技术采用频分复用技术把普通的电话线分成了电话.上行和下行三个相对独立的信道,从而避免了相互之间的干扰.用户可以边打电话边上 ...

  5. [Python] 抓取时光网的电影列表并生成网页

    抓取时光网的电影列表并生成网页 源码 https://github.com/YouXianMing/BeautifulSoup4-WebCralwer 分析 利用BeautifulSoup进行分析网页 ...

  6. Java代码质量改进之:使用ThreadLocal维护线程内部变量

    在上文中,<Java代码质量改进之:同步对象的选择>,我们提出了一个场景:火车站有3个售票窗口,同时在售一趟列车的100个座位.我们通过锁定一个靠谱的同步对象,完成了上面的功能. 现在,让 ...

  7. Linux终端记录神器

    我们在调试程序的时候,免不了要去抓一些 log ,然后进行分析.如果 log 量不是很大的话,那很简单,只需简单的复制粘贴就好.但是如果做一些压力测试,产生大量 log ,而且系统内存又比较小(比如嵌 ...

  8. Android性能优化-线程性能优化

    原文链接:Better Performance through Threading 线程的性能 熟练使用Android上的线程可以帮助你提高应用程序的性能. 本篇文章讨论了使用线程的几个方面:使用UI ...

  9. tmux 共享窗口大小

    http://www.cnblogs.com/bamanzi/p/tmux-share-windows-between-sessions.html

  10. List stream 对象 属性去重

    单值去重不写了,记录对象去重 随手一个对象: @Data @AllArgsConstructor public class Milk { private Integer key; private St ...