zoukankan      html  css  js  c++  java
  • 《objective-c基础教程》学习笔记 (一)—— 开发环境配置和简单类型输出

      懒惰是富有最大的敌人,再不前进,我们就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,定义函数的时候要用 * 符号)
     
    由于第一篇的内容比较简单,主要以配置环境和新建项目为主。好了,接下来就直接上代码。
     1 //
     2 //  main.m
     3 //  ch1
     4 //
     5 //  Created by pcbeta on 14-11-14.
     6 //  Copyright (c) 2014年 julian. All rights reserved.
     7 //
     8 
     9 #import <Foundation/Foundation.h>
    10 
    11 BOOL areIntsDifferent (int thing1, int thing2)
    12 {
    13     if (thing1 == thing2)
    14     {
    15         return (NO);
    16     }
    17     else
    18     {
    19         return (YES);
    20     }
    21 } //最基本的判断两个变量是否不同的函数。如果相同,返回NO;如果不同,返回YES
    22 
    23 NSString *boolString(BOOL yesNO)
    24 {
    25     if(yesNO == NO)
    26     {
    27         return (@"NO");
    28     }
    29     else
    30     {
    31         return (@"YES");
    32     }
    33 } //在函数前面要添加 “*”号。表示返回的内容是字符串。
    34 
    35 
    36 int main(int argc, const char * argv[])
    37 {
    38     
    39 //    @autoreleasepool {
    40 //        
    41 //        // insert code here...
    42 //        NSLog(@"Hello, World!");
    43 //        
    44 //    }
    45     
    46     BOOL areTheyDifferent;
    47     int v_thing1 = 5;
    48     int v_thing2 = 5;
    49     //函数调用
    50     areTheyDifferent = areIntsDifferent(v_thing1, v_thing2);
    51     //输出结果
    52     NSLog(@"Are %d and %d different? %@", v_thing1, v_thing2, boolString(areTheyDifferent));
    53     
    54     //定义第三个变量
    55     int v_thing3 = 10;
    56     //重新赋值
    57     areTheyDifferent = areIntsDifferent(v_thing1, v_thing3);
    58     //输出结果
    59     NSLog(@"Are %d and %d different? %@", v_thing1, v_thing3, boolString(areTheyDifferent));
    60     
    61     return 0;
    62 }

    运行结果:

     
  • 相关阅读:
    21.Merge Two Sorted Lists 、23. Merge k Sorted Lists
    34. Find First and Last Position of Element in Sorted Array
    leetcode 20. Valid Parentheses 、32. Longest Valid Parentheses 、301. Remove Invalid Parentheses
    31. Next Permutation
    17. Letter Combinations of a Phone Number
    android 常见分辨率(mdpi、hdpi 、xhdpi、xxhdpi )及屏幕适配注意事项
    oc 异常处理
    oc 类型判断
    oc Delegate
    oc 协议
  • 原文地址:https://www.cnblogs.com/jianglan/p/4122037.html
Copyright © 2011-2022 走看看