版权声明:本文为博主原创文章,未经博主同意不得转载。博主微信:lofocus https://blog.csdn.net/cuibo1123/article/details/28261795

学oc吧,学完预计也就淘汰了。

学swift吧,短时间内普及几率太低,即便学完了,大部分老项目还是用oc..

不学oc吧,放眼望去如今全是oc,swift全然没实用武之地。

不学swift吧,说不上那天这玩意火了。现学现卖恐怕来不及,即便靠oc苟延残喘的活着,质量和薪水预计也一定不咋地,毕竟我们都有一个当大牛的梦。。

看苹果态度和swift能力,个人认为oc一定会淘汰。
可是:短期内应该会共存!

不可能全部项目立马swift重写,维护就要求一定会oc。
并且swift人才和大项目经验缺乏,非常多公司应该不会立马就上。
我个人可能会大项目继续objective-c,小项目用swift试水。

oc和swift并存,这就给iOS入门者怎样选择Swift和objective-c带来了一个巨大的问题。

对于新手,建议把主要精力放在Swift上,能够慢慢学,1年之内迫切须要使用swift的可能性应该不是非常大。

可是oc3~5年内彻底淘汰的可能性应该也非常小,团队合作,项目维护,甚至是新项目开发非常长一段时间内都会用的上,所以oc技术也至少要达到能维护的程度,技术底层和实现细节能够不深究了。

以上时间线纯属个人预期,不同公司对新技术的兴趣不同,所以各位还要谨慎考虑。

#wwdc2014#

iOS入门怎样选择Swift和objective-c的更多相关文章

  1. IOS入门之Swift语言(一)

    经过不断的努力,小哥也买了台苹果设备,终于可以开始我的IOS之旅了,说来确实令人苦恼,为了学习IOS我这着贫农阶级,省了几个月的零花钱,外加向亲朋好友求救,最终痛下心扉,卖了台MAC pro128G版 ...

  2. Swift技术之如何在iOS 8下使用Swift设计一个自定义的输入法 (主要是NSLayoutConstraint 的使用)

    当前位置: > Swift新手入门 > Swift技术之如何在iOS 8下使用Swift设计一个自定义的输入法 时间:2014-09-10 16:49来源:未知 作者:啊成 举报 点击:5 ...

  3. IOS 入门开发之创建标题栏UINavigationBar的使用(二)

    IOS 入门开发之创建标题栏UINavigationBar的使用 http://xys289187120.blog.51cto.com/3361352/685746     IOS 开发有关界面的东西 ...

  4. 如何在 iOS 8 中使用 Swift 实现本地通知(上)

    当你的应用在后台运行时,可以简单地使用本地通知把信息呈现给用户.它可以允许你显示 提醒.播放提示音和数字角标(badge).本地通知可以被以下的事件触发:计划好的时间点或者用户进入和离开某个地理区域. ...

  5. Swift入门Hello World! Swift.

    苹果公司推出新的开发语言Swift,随着关于趋势,外观和OC什么是不一样的地方. 前提条件:已安装Xcode6-Beta(这个过程是不表) 1.打开Xcode6-Beta,第二选择Create a n ...

  6. IOS 入门开发之创建标题栏UINavigationBar的使用

    转自:http://xys289187120.blog.51cto.com/3361352/685746 IOS 入门开发之创建标题栏UINavigationBar的使用     IOS 开发有关界面 ...

  7. iOS开发项目实战——Swift实现ScrollView滚动栏功能

    手机作为一个小屏设备,须要显示的信息往往无法在一个屏幕上显示,此时就须要使用到滚动栏,当然除了像TableView这样能够自带滚动功能的. 假设一个界面上View较多,那就必须要使用到ScrollVi ...

  8. iOS Swift-简单值(The Swift Programming Language)

    iOS Swift-简单值(The Swift Programming Language) 常量的声明:let 在不指定类型的情况下声明的类型和所初始化的类型相同. //没有指定类型,但是初始化的值为 ...

  9. Swift调用Objective C的FrameWork

    很多Github的库经过很多年的发展,源码都是OC写的,,所以,用Swift调用OC的库就是开发中难免遇到的的一个问题,本文以AFNetworking为例,讲解如何跨语言调用. 第一步 创建一个空的工 ...

随机推荐

  1. jQuery ajax中serialize()方法增加其他参数

    表单提交 使用jQuery.ajax()进行表单提交时,需要传递参数,最直接的方法便是使用Form的serializa()将表单序列化,前提只是将Form表单中的name属性与数据库的字段名保持一致便 ...

  2. #pragma init_seg

    先进后出原则,最先初始化的最后析构! 1.C++中全局对象.变量的构造函数调用顺序是跟声明有一定关系的,即在同一个文件中先声明的先调用.对于不同文件中的全局对象.变量,它们的构造函数调用顺序是未定义的 ...

  3. fastcgi模式下设置php最大执行时间

    php在执行中常见错误: The FastCGI process exceeded configured request timeout: FastCGI process exceeded confi ...

  4. windows下dump文件调试

    dump调试:在系统中异常或者崩溃的时候,来生成dump文件,然后用调试器来调试.这样就可以在生产环境中的dmp文件,拷贝到自己的开发机器上,调试就可以找到错误的位置,配合程序调试符号pdb文件,直接 ...

  5. codeforces水题100道 第十二题 Codeforces Beta Round #91 (Div. 2 Only) A. Lucky Division (brute force)

    题目链接:http://www.codeforces.com/problemset/problem/122/A题意:判断一个数是否能被一个lucky number整除,一个lucky number是一 ...

  6. 【Java并发编程二】同步容器和并发容器

    一.同步容器 在Java中,同步容器包括两个部分,一个是vector和HashTable,查看vector.HashTable的实现代码,可以看到这些容器实现线程安全的方式就是将它们的状态封装起来,并 ...

  7. Clock skewdetected. Your build may be incomplete.

    解决方法: find . -type f | xargs -n touch make clean make

  8. 删除RHSA文件方法

    DEL /F /A /Q \\?\%1RD /S /Q \\?\%1新建一个批处理文件,包含上面两行代码,然后将要删除的文件拖放进里面就OK!

  9. jQuery事件处理(三)

    继续了解jQuery对浏览器兼容的处理 1.keyHooks对键盘按键的封装 keyHooks: { // 一些键盘相关的属性 props: "char charCode key keyCo ...

  10. Visual Studio 2015打开ASP.NET MVC的View提示"Object reference not set to an instance of an object"错误的解决方案

    使用Visual Studio 2013打开没有问题,但Visual Studio 2015打开cshtml就会提示"Object reference not set to an insta ...