Iphone 14小时的培训心得(1)

 

    今天很有幸的以实习生的身份来参加了这个Iphone的培训,怎么说能呢?感觉比较新奇啦,第一次用了MAC的操作系统,(虽然是D版)但是给我感觉界面是相当的华丽~~~(俺可是相当喜欢华丽的东西)可是体验可是不好。

      开那个终端,没有反应。那个终端在linux下面用过,相当的熟悉,可是不知道咋地,死活开不出正常的。还被指责RP有问题,不过幸好“RP有问题”的还有很多的人。之后找了个帅哥帮我调了下,倒腾了半天,也没整正常,之后键盘还没反应了,晕~~~之前还被告知不能重启,不然开不起来~~~~~~~  

     实在没办法,冒着不能再开启的危险,注销了下,然后输入密码进入,一切恢复~~~,可是终端还是不能用~~~

     IPhone 的一个IDE 叫做 Xcode ,怎么说呢? 跟以前用vs的体验差很多啦,习惯上的问题,还有很多快捷键不能用~~,之后查了下,网上有人整理出来,放在那里,虽然没有全部都是试过,不过大部分都能用了,记录在这里方便以后调用~~~

关于xcode  可设
偏好设置 command+,
清空缓存 可设
隐藏xcode command+h
隐藏其它 command+option+h
显示全部 可设
退出xcode command+q

文件相关:
新建项目 command+shift+n
新建文件 command+n
新建空文件 command+control+n
打开 command+o
在新窗口中打开   command+option+o
快速打开 command+shift+d / command+shift+alt+d (不知区别是什么)
清空最近打开文件 可设
清空最近打开项目 可设
Get Info command+i
显示检查器? command+option+i  (效果和Get Info一样,不知区别)
关闭窗口 command+w
关闭所有窗口 command+option+w
关闭当前项目 command+control+w
关闭当前文件 command+shift+w
保存文件 command+s
保存所有文件 command+option+s
另存为 command+shift+s
复本另存为 command+option+shift+s
还原到保存时状态 command+u
创建快照 command+control+s (保存文件快照,以后可进行对比修改情况)
显示快照 可设 (File->Snapshots)
打印 command+p
编辑相关:
撤销 command+z
重复 command+shift+z
剪切 command+x
复制 command+c
粘贴 command+v
粘贴并匹配格式 command+option+shift+v
删除 可设
全选 command+a
复制(Duplicate) 可设
重构 command+shift+j (选中方法名)
转换为objc2.0 可设
=================字体====================
显示字体 command+t
粗体 可设
斜体 可设
下划线 可设
变大字号 可设
变小字号 可设
Kern相关 可设
Ligature相关 可设
Baseline相关 可设
显示颜色 可设
复制样式 command+option+c
粘贴样式 command+option+v
=================文本====================
左对齐 command+{
右对齐 command+}
居中 command+竖线 (不知竖线是哪个,没试出)
Justify                       可设(功能未知)
左缩进 command+[
右缩进 command+]
Show Ruler 可设(功能未知)
Copy Ruler command+control+c
Paste Ruler command+control+v
Balance 可设 (第一次,选中语句,第二次,选中方法体)
重置缩进 可设
=================查找====================
项目中查找 command+shift+F
在项目中查找选定文本 可设
查找 可设
查找替换 command+control+f
查找选定文本 可设
查找下一个 command+g
查找上一个 command+shift+g
隐藏查找栏 可设
替换 可设
替换全部 可设
替换并查找下一个 可设
替换并查找上一个 可设
用选择的查找 command+e
用选择的替换 command+control+e
跳到光标处 command+j
跳到定义 可设
=================排序====================
按名 可设
按类型 可设
========================================
添加书签 command+d
go to line command+l
下一个填充 control+.
填充列表 option+esc
下一个占位符 control+/ (和tab相同)
Edit All in Scope command+control+t (功能未知)
================插入宏=================
c
c++
html
java
objective-c
宏规范
=================拼写====================
显示拼写和语法 command+shift+;
检查拼写 command+;
输入时检查拼写 可设
特殊符号 command+option+t
视图相关:
右上角详情搜索 command+option+f
缩放编辑窗口 command+shift+e
缩放编辑窗口满屏 command+option+shift+e
折叠 command+control+左箭头
屏开 command+control+右箭头
屏开所有 control+u
折叠方法 command+control+上箭头
展开方法 command+control+下箭头
折叠注释块 command+control+shift+上箭头
展开注释块 command+control+shift+下箭头
焦点跟随 command+option+control+f
==============信息提示====================
隐藏问题 command+shift+h
所有问题 可设
仅错误和警告 可设
仅错误 可设
仅Analyzer结果 可设
显示断点 可设
==================文本====================
tab设置 可设
是否自动换行显示 可设
行结束 可设
显示控制字符 command+shift+6
显示空格 可设
==============智能分组====================
所有文件  可设
Targets 可设
Exeutables 可设
书签 command+shift+m
Symbols 可设
搜索结果 可设
===================布局====================
显示导航栏 可设
隐藏状态栏 可设
显示收藏栏 可设
显示页数控制 可设
===========================================
前进 command+option+右箭头
下一文件 command+option+shift+右箭头
返回 command+option+左箭头
上一文件 command+option+shift+左箭头
切换头/源文件 command+option+上箭头
组树中定位 command+option+shift+上箭头
显示工具栏 可设
自定义工具栏 可设
===================项目====================
项目中标签切换 command+数字0
类浏览 command+shift+c
重命名项目 可设
新组 command+option+n
分组 command+option+g
撤销分组 command+option+shift+g
新建智能组 可设
添加项目 command+option+a
添加文件到项目 可设
新Target 可设
升级所有Targets 可设
升级当前Target到ipad 可设
================New Build Phase====================
没做测试不多介绍,只放出内容
New Copy Files Build Phase
New Run Script Build Phase
New Copy Headers Build Phase
New Copy Bundle Resources Build Phase
New Compile Sources Build Phase
New Link Binary With Libraries Build Phase
New Build Java Resources Build Phase
New Build Resource Manager Resources Build Phase
================================================
新的自定义可执行文件 可设
设置当前Target 为空 可设
Set Active Architecture 为空 可设
设置当前sdk 为空 可设
设置Build配置 为空 可设
Set Active Executable 为空 可设
编辑项目设置 可设
编辑当前Target command+option+e
编辑当前可执行文件 command+option+x
===================Build========================
Bulid Results command+shift+b
Bulid command+b
Build and Analyze command+shift+a
Build and Archive 可设
Build and Debug command+enter
Bulid and Run 断点关 command+r
Build and Debug 断点开 command+y
Clean command+shift+k
Clean All Targets 可设
下个Build警告或错误 command+=
前个Build警告或错误 command+shift+=
Compile command+k
Preprocess 可设
Show Assembly Code 可设
Touch 可设
=======================代码导航及编辑================
注释 command+/
文件首行 command+上箭头
文件末 command+下箭头
行首 command+左箭头
行末 command+右箭头
上一单词 option+左箭头
下一单词 option+右箭头
上一拆分单词 control+左箭头
下一拆分单词 control+右箭头
中间显示光标位置 control+l
方法组列表 control+2
删除前一单词 option+delete
删除此行光标前所有内容 control+delete
跨行选取 command+option+鼠标拖动

Run相关:

Debug command+option+enter
Run 断点关 command+option+r
Debug 断点开 command+option+y
Run with Performance Tool (Shark) 可设
Stop command+shift+enter
Attach to Process (Process ID) 可设
Debugger command+option+y
Mini Debugger command+control+左斜上箭头(不知咋按)
Console command+shift+r
Clear Console command+option+control+r
===================Show========================
断点 command+option+b
Expressions 可设
Global Variables 可设
Memory Browsers 可设
Shared Libraries 可设
===================Debugger Display========================
纵布局 可设
横布局 可设
Datatips 可设
Step Controls 可设
Source Only 可设
Source And Disassembly 可设
Disassembly 可设
===================Variables View========================
User Data Formatters
Show Type Column
Print Description to Console
Print Roots to Console
Print Referers to Console
Watch Variable
View Value as
Natural
Hexadecimal
OSType
Decimal
Unsigned Decimal
Octal
Binary
Edit Value
Edit Summary Format
View in Memory Browser
View in Window
View in Expressions Window
===============================================
停用断点 command+control+/
停止objc例外 可设
================Manage Brakpoints=================
当前行插入断点 command+/
Add Symbolic Breakpoint 可设
Add C++ Exception Breakpoint 可设
启用当前行断点 command+option+/
导入断点 可设
导出断点 可设
===============================================
Fix 可设
Pause command+option+p
Step Into command+shift+i
Step Into Instruction command+option+shift+i
Step Over command+shift+o
Setp Over Instruction command+option+shift+o
Setp Out command+shift+t
Next Thread command+option+control+上箭头
Previous Thread command+option+control+下箭头
Sync with Debugger 可设
Stop on Debugger()/DebugStr() 可设
Enable Guard Malloc 可设

Desing相关:
======================Class Model===================
Quick Model
Go to Declaration
Go to Definition
Go to Documentation
Add Comment
======================Data Model===================
Import
Add Model Version
Set Current Version
Add Entity
Add Attribute            command+control+a
Add Fetched Property
Add Relationship command+control+r
Add Fetch Request
Copy Method Declarations to Clipboard
Copy Method Implementations to Clipboard
Copy Obj-C 2.0 Method Declarations to Clipboard
Copy Obj-C 2.0 Method Implementations to Clipboa
======================Mapping Model===================
Update Source Model
Update Destination Model
Add Missing Property Mappings
===================================================
Show Model Browser command+control+b
Collapse Compartments
Expand Compartments
Roll Up Compartments
Roll Down Compartments
======================Diagram=======================
Bring to Front command+control+shift+f
Send to Back command+control+shift+b
Align Top Edges
Align Bottom Edges
Align Left Edges
Align Right Edges
Align Vertical Centers
Align Horizontal Centers
Make Centered Colum
Make Centered Row
Make Same Width
Make Same Height
Size to Fit
Lock command+control+l
Unlock command+shift+control+l
Zoom in command+control++
Zoom Out command+control+-
Zoom to Fit command+control+=
Turn Grid On
Show Grid
Show Page Breaks
Force-Directed Layout command+control+g
Hierarchical Layout command+control+h
Window相关:
最小化 command+m
全部最小化 command+option+m
Zoom
Bring All to Front
Defaults
Organizer command+control+o
Activity
Help相关:
开发文档 command+option+?
快速帮助 command+control+?
Xcode帮助 command+?
Welcome to Xcode
Xcode Quick Start
Xcode Release Notes
Find Documentation for Selected Text
Open man Page

然后谈谈object-c 语言,对于用惯C/c++的我来说,看那个代码可是相当的费劲,满眼都是‘[]’,':','@'这个‘@’还比较好理解,就是TSQL 里面也用用过嘛,就是声明变量的时候用的,不过这里@配合上各种各样的关键字,就会有各种各样的含义了~~~

‘[]'相当于我们C++ 中的的 '.'嘛~~ 就是调用函数时候用的,虽然说直接打 ']',Xcode 会自动的补一个’[‘ ,不过要想出现正确的代码提示还是得打前面的 '[' ~~~

最最令人头大的就是这个 ’:‘了,

例如声明一个函数

-(void)sayHelloTo:(NSString *)anotherStudent words:(NSSttring*)words;

这个函数的函数名居然是 sayHelloTo:words:

函数名居然被分成了若干部分,有几个参数就被分成几个部分,虽然培训的老师说看名字就能知道函数的定义了~~,不过还是不习惯的。而且用用vs 然后又有装va插件的人都知道只要打出一个函数,就会有函数的定义提示出来~~,所以说这样也不算什么优点吧~~

 

object-c 比较致命的地方就是他没有完成才C++的封装性,用了category标签他甚至能访问类的私有成员,虽然有一些曲折的办法来隐藏,但却不是根本之道~~~

 

 

@property用来自动定义set,和get 方法的~~,不用再写set 和get 了貌似会省,但是如果定义了比较复杂的set 和 get 就不行了,还是得自己定义~~ 我用过java 里面set get 可以用Eclipse开发环境自动生成,vs 里面 用 va插件,编写特定的宏也能自动生成, 我想如果在语言上做这些手脚,还不如开发一个功能比较强大的IDE~~

跟java一样它所有的的类都有一个共同的基类NSObject,不过它只能单继承,确实java里面 interface 接口 ~, 他里面类的关键字是 @interface id 可以可以代表所有的除了基本类型(int float ·····)之外的类型~~,这一点可能就是比较好用的地方 就像java 里面的CObject 和C++ 里面的 LPVOID~~~

 

比较让人费解的地方就是他的计数式的管理内存的方式,有的时候是自动的,有的时候我们又要手动的释放~~~,现在还分不清楚哪些要手动释放,哪些可以自动~~

 

 

因为里面的对象都是指针~~,要想用的对象必须先申请~~

对象赋值的时候常用retain ,引用指针的时候先retain 再 release ~~

 

之后就是控件的应用了,控件用的可能都差不多吧,设置属性什么的。比较特别的地方时事件是怎么传递的。

 

MFC里面用的是消息映射,回调函数也行~~,java里面用的是事件监听器~~ QT里面型号和槽~~~这个IPhone里面消息传递有点像回调函数,不过好像他不用事先声明他直接@Selector(XX)然后在定义这个XX 就行了~~

   

 

之后继续学习复杂控件的用法比如tabalview~~~~

感觉这种语言能生存下来,肯定是因为IPhone~~,如果没有Iphone~~~,可能很少的人会去接触他吧~~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值