我的iOS之路2
第一篇果然没人看呢...好吧...那就当笔记做吧...第一篇主要写的是生成了一个helloworld,可能也是和别人撞了,所以有点厌烦,连名字都改掉吧
好,开始写第二篇
之前做第一个应用程序的时候没有解释任何代码,只是照着写就是了,现在,我们得学一些关于objective-c的东西了
首先我们知道objective-c 是一个面向对象的语言,而C语言是一个面向过程的语言,为什么我们要用objective-c来写iOS程序呢,为什么不用C其实学了这些天我感觉objective-c==c+objective类库,其实就是一种类似c的新语法,然后应用这些已被封装好的类库来实现我们所需要的功能,我们知道苹果对自己的程序员是很照顾的,我在学习的过程中一直觉得是站在巨人的肩膀上进行编程,现在让我们看一下我们在使用objective-c过程中使用了那些内容.
首先说类
学过c#的一定是知道类的,类在我看来是面向对象思想中比较重要的一块内容了,因为他相当于我们面向对象的一个对象,而我们发现在objective-c中所有的对象(我看到过的)都是指针,也许没学过C的会觉得指针很痛苦,我会讲我的博客内容尽量按照c#的语法来讲,既然难懂,那就让我们直接创建一个类吧.我们可以使用终端,来创建一个.m文件

创建了第一个.m文件后,我们在这里写这个类

好,让我们生成了这个类,然后让我们来解释一下为什么这样做,在图片右边的是系统自带的终端,类似window的cmd其实我觉得可能也就我不熟这玩意儿,很多人应该都还是很清楚的,这个样式类似适应UNIX系统一样,文件需要靠代码来生成,具体怎么搞我这里就不做赘述了
我们要讲的是我们生成的这个类,我们生成了一个博客这样一个类,所以在@interface....@end之间我们定义了一个blog这样的类,在objective-c我还没看到那个类是不需要继承父类的,所以他的父类类型我们就先继承NSObject,而这个NSObject类是来自于apple自带提供的Foundation框架,这也就是我们在使用终端连接我们的.m文件的时候需要写-framework Foundation的原因,因为们的框架要应用系统所带的框架,而不是自己写的,当然这也是我们在头部写#import <Foundation/Foudation.h>的原因,而且我发现了一个诀窍,其实对于系统他又很多的框架的,在应用没个框架的时候我们发现,头部我们都是写这个框架的#import <名称/名称.h>,什么意思呢,我们找几个系统的框架
这即使系统框架的目录了,我们会发现,所有的框架都是.Framework结尾的,然后我们会发现几个重要框架,比如Cocoa.framework,Quartz.framework这些重要的框架,而我们如果要加载他只要使用他的名字加上他的名字.h这样的方式就行了,比如我要调用Quartz.framework,我只要写#import <Quartz/Quartz.h>就可以调用他了,而且#import比#include有一个优点,他会自动帮你查看是否有重复调用,以前我们使用#include来加载头文件的时候我们可能会调用多次同一个头文件,而现在#import就帮我们自动解决了这个烦恼...是不是觉得调用头文件变得方便了很多呢...
然后让我们来看类,类是什么,类就是一个对象集合,不多说了直接贴图

看完上面的图是不是觉得东西都清楚了很多...就先讲这么点,反正没人看就当做笔记了
我的iOS之路2的更多相关文章
- 那些年做过的 .NET Web 项目和 iOS 之路的一些思考
从2010年3月份出来工作到2015年初,做过的大大小小的 .NET Web 项目如下: (1)售楼系统产品 「Role: Team Member」 (2)中弘合同管理系统 「Role: ...
- iOS GCD NSOperation NSThread等多线程各种举例详解(拷贝)
2年多的iOS之路匆匆而过,期间也拜读来不少大神的博客,近来突然为自己一直做伸手党感到羞耻,是时候回馈社会.回想当年自己还是小白的时候,照着一些iOS多线程教程学,也只是照抄,只知其然.不知其所以然. ...
- 从零开始学IOS开发
从今天开始开一个坑,由于业务变动,要开始学习IOS开发进行IOS app开发,其实鄙人本身就是一只菜鸟加大学狗,有过两年的C#,ASP.NET MVC,微信公众平台开发经验,一只在继续努力着,从大三下 ...
- Appium移动自动化测试之—基于java的iOS环境搭建
本文仅供参考,同时感谢帮助我搭建环境的同事 操作系统的名称:Mac OS X操作系统的版本:10.12.6 接下来我们开始踏上搭建Appium+java+ios之路,本文只说个大概,毕竟本机已经装过了 ...
- Appium的iOS环境搭建
操作系统的名称:Mac OS X操作系统的版本:10.13.3 xcode 版本:9.2 java 版本:java8_161 appium destop版本:1.7.3 接下来我们开始踏上搭建Appi ...
- 谈谈入门iOS的经验吧
前言 近期忙完项目比較闲,想写一篇博客来分享一些自学iOS的心得体会,希望对迷茫的你有所帮助.博主非科班出身,一些计算机术语上的不专业欢迎大家指正. 我是学微电子的.大四的时候找了一家深圳的专业对口的 ...
- fir.im Weekly - 进击的 Swift
最近 Swift 开源了,众开发者们欢呼雀跃.感谢开源,这是最好的时代.本期 fir.im Weekly 准备了一些关于 Swift 的"新鲜"干货分享,也包括一些优秀的 GitH ...
- 纪录我的iOS学习之路
学习资料的网址 田伟宇(Casa Taloyum)有几篇介绍iOS架构的文章,一级棒!原博客链接. iOS应用架构谈 开篇 iOS应用架构谈 view层的组织和调用方案 iOS应用架构谈 网络层设计方 ...
- ReactNative新手学习之路04 组件化开发轮播图swiper支持安卓和IOS
react native 新手之路04 组件化开发轮播图swiper支持安卓和IOS npm install react-native-carousel --save git 地址Properties ...
随机推荐
- ubuntu远程桌面连接windows系统(转)
现在用ubuntu系统,公司买了个windows的服务器,需要给配置一套环境,来回跑很麻烦,就想windows下可以的远程桌面,linux应该也有. 现在自己的ubuntu13.10,无法进入桌面的& ...
- PTA Insert or Merge
According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and gr ...
- MySQL 数据库常用命令
1.MySQL常用命令 create database name; 创建数据库 use databasename; 选择数据库 drop database name 直接删除数据库,不提醒 show ...
- 字节b换算kb/mb/gb/tb/pb
public static string HumanReadableFilesize(double size) { string[] units = new string[] { "B&qu ...
- Xcode导航栏不显示模拟器选择框ToolBar
不显示ToolBar的小伙伴可能就是下面的样子: 全屏后就可以看到ToolBar,像下面这样: 刚开始还以为是模拟器没装,还傻不拉几的去下载模拟器,后来才发现,只要下面的操作即可显示 点击" ...
- C#获取程序集自动增加的版本号和编译时间
1. 首先找到文件AssemblyInfo.cs, 路径如下: 2. 修改版本的格式,修改后,程序每次编译,程序集的版本号都会自增. 修改前: [assembly: AssemblyVersion(& ...
- js基础到精通全面教程--JS教程
适合阅读范围:对JavaScript一无所知-离精通只差一步之遥的人 基础知识:HTML JavaScript就这么回事1:基础知识 1 创建脚本块 1: <script language=”J ...
- sublime插件@sublimelinter安装使用
sublimelinter插件是一款sublime编辑器的代码校验插件,支持多种语言,对于前端来说主要包含css和js校验. 要是用这款插件 1)安装node,然后在全局安装jshint(npm in ...
- 2-6 Working with Lambdas
在C++中使用匿名函数,格式如下:[] () {}; Using a Lambda to Print array Values #include <algorithm> #include ...
- vim的撤销和恢复操作以及匹配当前单词操作
今天顺便看了一下vim的一点命令,记录一下 1.撤销上一次操作和恢复上一次操作: u → undo <C-r> → redo 2.搜索上一个单词和下一个单词 * 和 #: 匹配光标当前所在 ...