当你做架构设计时,必然会面临技术选型的抉择,不同的技术方案,架构也可能完全不同。有哪些技术选型需要做决策呢?比如,App是纯原生开发,还是Web App,抑或Hybrid App?iOS开发,语言上是选择Objective-C还是Swift?架构模式用MVC,还是MVP,或者MVVM?下面根据我的一些经验对某些方面做点总结分享。
Hello 各位朋友好久不见😂,好久没有更新公众号了,为什么没有更新,是因为我最近一段时间都在写 iOS 应用,终于在前几天完成了自己的第一个 iOS 产品的开发工作,大概在明年一月初的时候这个 App 会上线,一款非常有意思的应用,你们可以期待一下。 正好通过这次尝试开发 iOS 的机会,写一篇文章分享一下开发 iOS 的体验,如果你和我一样之前是一名 Android 工程师,那么希望我的经历可以帮到你。 正如标题所说:Android 工程师开发 iOS 是怎样的体验?这篇文章我会为大家对比我在 Andr
我们会对在发现应用响应慢的时候做一些优化,但是现实效果都不怎么满意。正如它所显示的,最慢的部分是在我们应用中上传文件的时候。然而是否还有加快上传文件速度的可能呢?
性能对 iOS 应用的开发尤其重要,如果你的应用失去反应或者很慢,失望的用户会在App Store写满差评。然而由于iOS设备的限制,有时搞好性能是一件难事。开发过程中你会有很多需要注意的事项,也很容易在做出选择时忘记考虑性能影响。本文针对不同阶段开发者提出了25个性能优化建议
ARC(Automatic ReferenceCounting, 自动引用计数)和iOS5一起发布,它避免了最常见的也就是经常是由于我们忘记释放内存所造成的内存泄露。它自动为你管理retain和release的过程,所以你就不必去手动干预了。忘掉代码段结尾的release简直像记得吃饭一样简单。而ARC会自动在底层为你做这些工作。除了帮你避免内存泄露,ARC还可以帮你提高性能,它能保证释放掉不再需要的对象的内存。
用ARC管理内存 ARC(Automatic ReferenceCounting, 自动引用计数)和iOS5一起发布,它避免了最常见的也就是经常是由于我们忘记释放内存所造成的内存泄露。它自动为你管理retain和release的过程,所以你就不必去手动干预了。忘掉代码段结尾的release简直像记得吃饭一样简单。而ARC会自动在底层为你做这些工作。除了帮你避免内存泄露,ARC还可以帮你提高性能,它能保证释放掉不再需要的对象的内存。 在正确的地方使用 reuseIdentifier 一个开发中常见的错误就是没
我们在平时项目做功能的时候,经常会遇到崩溃的情况。如果是我们在开发测试阶段,我们可以找到原因修复。但是遇到已经上线,出现这种问题。要么使用JSPatch进行热修复,但是使用热修复修复苦只有写的人知道。
网络相关 网络连接 AFNetworking - ASI不升级以后,最多人用的网络连接开源库,iOS的网络编程之AFNetworking使用,iOS的开发下载文件速度计算 , AFNetworking 3.0迁移指南 , AFNetworking2.0源码解析<一> ,AFNetworking2.0源码解析<二>,AFNetworking源码解析<三>,AFNetworking源码解析<四>。 Alamofire.swift - Alamofire是AFNetworking的作者mattt
原因是这会使系统用一个最优的方式渲染这些views。这个简单的属性在IB或者代码里都可以设定。
在互联网时代,人们将信息与服务搬到了网络上,后来进入了移动互联网时代,人们又将互联网搬进了你我的生活中。智能手机是移动互联网的载体,如今,我们一刻也离不开智能手机,假如遗失了手机或者断开了网络,那对于个人来说不亚于一场灾难。
你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 Issues 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 Issues 提出。
我们都知道,面试可能会让人感到压力山大——不管你是第一次参加面试的新手,还是已经有几年开发经验做背书的业内人士,面试都会带来压力。
厨子今年的演讲很不给力。不过既然是软件开发者大会嘛,焦点自然应该放在软件功能上。 所以我看了下今年的Session401,也就是Swift4.2新特性介绍,做了下笔记,希望能对你有用。 多说一句,Swift越来越好用了,希望开发者能尽快拥抱Swfit。
五一假期,春招基本上已经结束了,剩下少量面试和少量流程中。虽然还没有最终决定,不过也还是决定来开个帖子,写一些总结。
面经包含:携程、阿里、京东、腾讯 十一假期,秋招基本上已经结束了,剩下少量面试和少量流程中。虽然还没有最终决定,不过也还是决定来开个帖子,写一些总结回馈一下牛客。 楼主是今年春招的时候开始接触的牛客,主要是看看面经和一些最新消息。真题做的很少,很水=。=,惭愧惭愧。然后秋招的时候由于实习比较忙,所以基本上就只投了秋招正式批,内推要么没投,要么踩线投,直接没了音信…… 楼主iOS开发(已经属于小众团体了),主要用的Swift语言(我就没发现有和我一样的)。下面上一些面经,希望能够对大家有那么一点点帮助。
距离 iPhone 横空出世已经过去了 9 个年头,iOS 的版本号也跨入了两位数。在我们回顾过去四五年 iOS 系统的发展的时候,不免感叹变化速度之快,迭代周期之短。iOS 7 翻天覆地的全新设计,iOS 8 中 Size Classes 的出现,应用扩展,以及 Cloud Kit 的加入,iOS 9 里的分屏多任务特性等等。Apple 近年都是在 WWDC 发布新的系统和软件,然后在秋季和冬季 (或者来年春季) 召开硬件产品的发布会。WWDC 上每一项软件的更新其实都预示了相应的硬件的方向,相信今年也不会例外。
转自|百度百家 微信|baidu_baijia 和百家一起熬夜看WWDC,在会议开场前,现场已人头攒动。 开场的是BillBoard 上大热的单曲《Uptown Funk》 发布会将公布全新的操作
有些朋友可能并不了解cdn,其实cdn就是内容分发网络,它可以帮助用户就近获取想要的内容,在用户访问时提高网站的反应速度。现在很多朋友都想为自己的服务器设置cdn,但是具体怎么操作,大家可能并不太了解。如果大家想知道cdn怎么设置,可以参考一下下面的内容。按照步骤一步步操作,大家一定可以成功设置好cdn。
1. 那些被遗漏的objective-c保留字:http://blog.devtang.com/blog/2013/04/29/the-missing-objc-keywords/ 2. 使用crashlytics来保存应用崩溃信息:http://blog.devtang.com/blog/2013/07/24/use-crashlytics/ 3. iOS开发工具篇,AppStore统计工具:http://blog.devtang.com/blog/2013/06/16/ios-dev-tool
本 Session 讲了为了让你的应用包体积更小,运行更快,启动速度更快,我们对 Swift 和 Objective-C 运行时做了怎样的优化。同时通过本 Session 你将发现如何通过高效的协议检查,更小的消息发送,以及优化后的 ARC 机制,来提高你的 App 性能。
大学毕业,兴致勃勃成为一代塞班开发,放眼班上其他人什么Java,前端Web,PHP还有一些转型的。顿时感觉自己特有优越感。当时也不论薪资几何,就是特别高兴,因为大学学的东西还不足以独当一面,每天都是精神百倍,每天都会精进自己的技术。
iOS 优化将是一个专题,其中会包括包体积优化(瘦身)、启动时间优化、UI 优化等等。那么这个专题的开篇就从瘦身开始吧。
使用 Mac 开发也有几个年头了,积累了一些效率工具和开发工具,今天整理了一下并分享给大家,工具几乎都是开源免费的,也期待大家有更多好的工具推荐给我,我补充上去。
其实生活当中的很多人都已经开始去使用各种交流设备,而这款产品的质量与价格之间成正比。在购买时人们需要结合个人的需求,不能图便宜。如果总是一味的节约资金,那么极有可能会影响到人们的使用体验,如果信号确实不好,网速很慢,这时候该怎么把图片存到cdn?
包大小优化是项目开发中不可避免会遇到的,网上关于包大小优化的文章很多,每篇文章说的都不尽相同,笔者曾经根据网上的文章做过包大小优化,但效果不尽人意;因此笔者想根据已有的文章、知识结合自己的理解、实践,做一份总结梳理,整理自己的包大小优化逻辑,不光要知道怎么做可以让包大小变化,还要知道为什么这么做能产生效果,所以就有了这篇文章。
不知道大家有没有看过 WWDC 2015 的视频,其中有一个编号为 408 的视频解释了这个问题,下面是视频链接:Protocol-Oriented Programming in Swift。
我是一个初创公司的软件工程师。曾经有段时间在谷歌工作,做谷歌财经图表和Multiple inboxes,并主管谷歌地图的业务。最近,我开了一家叫Spring的购物公司。同时,我也是一个创业者,在空余时间里我喜欢做一些副业。
在做文档图像的OCR时,经常会遇到水印的问题,会导致文字检测与识别很容易出错,因此,去水印的功能非常有必要。我们在实现去水印的过程中,经历了几个版本,今天做一个回顾:
看起来还不错,而且是正版软件哦~换了张壁纸,壁纸是系统自带的,笔者不是很喜欢纯纯的紫色。截图工具使用的是Ubuntu系统自带的截图工具。
最近一段时间比较闲,所以顺便尝试去了解一些新东西,虽然不做开发好多年,但最始终还是觉得做开发(coding)来的最轻松,也最拿手,做项目经理真的很烦,看来我还是不合适干项目经理。 前一段时间在Silverlight 2出来的时候我们公司就有个家伙用Siverlight做了个项目,吹嘘了一下说开发有多快,用户体验有多好,搞得公司里火了一段时间,后来又有项目组也开始用silverlight 开发产品,但很不顺利,效果很差,第一个项目组把项目做成功的原因是这哥们技术真的不错,肯专研,可惜后来离职了,而其他项目
一: Swift 网络数据请求与处理最常用第三方 又有时间出来装天才了,还是在学swift,从中又发现一些问题,这两天上网找博客看问题弄的真的心都累。博客一篇写出来,好多就直接照抄,就没有实质性的把问题解决了,只是在发表的博客数量上 + 1 !!真心没意思。。 看看在Swift中是在怎样请求数据,解析数据加载图片这些的,也使我们最基本最常见的用法了,先说说这几个三方库: 第一个: Alamofire (它的原作者就是AFNetworking的原作者,这个就不多说了,你要知道AFNet
接触Cocos2d-x ---- 最近由于公司项目的需要,自己开始接触Cocos,开始做一些简单的轻量级的游戏,以前没有接触过这一块的东西,也是借助这个机会学习一下游戏的开发,由于以前自己接触的全都是iOS和Android移动端App的开发,所以这整个Cocos的学习总结的文章会在真个过程中贯穿对比自己相对熟悉的iOS和Android对比学习,要是也有和我自己情况类似的朋友,接下来总结的这整个Cocos系列的文章也许可以帮助到你,有不足的地方也希望指正,我们一同进步。 刚开始的时
在我们iOS开发中UITableView几乎是所有App都会使用的一个UI控件,因为业务的需要,我们常常会注册多种Cell,然后在
当我有一个想法,并且这个想法很有意思,正好戳中我技能的盲区时,我便有一种强大的要将其实验一番的冲动。自从上周做一个「前端中的后端」的想法出炉后,这周我几乎寝食难安,随时随地都在想这件事,所以后来干脆撸起袖子开干,毕竟 Linus 大神告诫我们:
问: 有一台闲置的 服务器,搭点什么服务比较有意思呢? Huginn ,主要用来价格监控和 RSS 订阅 有没有一种爬虫服务,只需要我指定网站和规则,就可以定时爬数据,并且可以提供我指定格式的 json api 的,本人比较喜欢看自然科学相关的文章,经常看环球科学的网站,加上我是做 iOS 开发的,所以我想用 swift 做一个 app 方便看文章。本来是想自己做全栈的,包括设计和前后端(前后端全用 swift),但是由于我对爬虫方面的知识不太了解,我想先完成 app,后期再用 Perfect 自己学习写爬
前段时间无意中发现了看知乎,一个知乎答案和用户的精选站。网站开发者是知乎用户苏莉安,他写了个爬虫从知乎抓取数据,而且还提供了 API 文档。我大致看了下文档,感觉写个 iOS 客户端应该也挺不错的,于是就开始写了。
已经有机器人可以打扫卫生了,有的机器人可以驾驶汽车穿越全国,还有的可以向你露出微笑,可以在你晚上回家时为你提醒错过的消息。现在,谷歌取得了一项专利,想制造出具有各样性格的机器人。你想要什么样性格,就有
完整项目 GSD_WeiXin 高仿微信 v2ex - v2ex的客户端,新闻,论坛。 V2ex-Swift - 用Swift写的V2EX客户端。 iBBS-Swift - “新手开源一个用Swift(2.0)写的论坛客户端”。BBS 服务端。 wikipedia-ios - 维基百科-ios客户端。 jetstream-ios - 一款Uber的MVC框架,它同时提供了多用户实时通讯支持,一旦启动JetStream后端服务,通过WebSocket协议可以分钟建立多用户实时通讯应用。
在我大一的时候,曾看过李开复老师的一篇著名的文章——《算法为魂》。这篇文章对我影响深远,甚至说改变了我的人生选择都不为过。
React Native 作为一款跨端框架,有一个最让人头疼的问题,那就是版本更新。尤其是遇到大版本更新,JavaScript、iOS 和 Android 三端的配置构建文件都有非常大的变动,有时候三者的配置文件又互相耦合在一起,往往牵一发而动全身。
选自Hackernoon 机器之心编译 作者:Alex Wulff 参与:侯韵楚、李泽南 随着 WWDC 大会上 iOS 11 的发布,苹果终于推出了原生机器学习和机器视觉框架,由此开启了许多崭新的可能性,使所有性质的应用程序和游戏有望取得显著进步,本文作者 Alex Wulff 将对在 iOS 11 中加入机器学习模型的方法进行简要介绍。 机器学习解决方案在云端的应用已有一些时日,但这类系统需要不间断的网络连接,并且很明显,它通常在 iOS 上会存在显著延迟,也为敏感数据带来了安全隐患。一些第三方的 Sw
了解Apple如何为WWDC18构建精选演示,并获得使用ARKit,SceneKit和Swift制作自己的多人游戏的技巧。
Dev Club 是一个交流移动开发技术,结交朋友,扩展人脉的社群,成员都是经过审核的移动开发工程师。每周都会举行嘉宾分享,话题讨论等活动。 本期,我们邀请了腾讯WXG iOS开发工程师——bang 陈振焯,为大家分享《JSPatch成长之路》。 ---- 分享内容简介: JSPatch 是 iOS 上的动态更新框架,只需要引入小小的引擎文件,就可以用 JS 调用和替换任意 OC 方法。目前被普遍用于实时修复 bug,已有超过2500个 APP 接入,本次分享介绍 JSPatch 发展过程中遇到的问题和解决
不想看前面的屁话,要直接上代码的,请跳到「iOS App端如何实现和RPC服务器通信」章节
背景: 现在越来越多的公司会尝试用 Swift 做 native 的开发了,很多之前习惯用 Objective-C 的开发,有新项目启动的时候,也会想说用 Swift 试试。如果从 2020年编程语言排行榜 上看的话,Swift的热度也领先 Objective-C 10个身位了。而我们现在公司所做的项目,也是用 Swift 开发的,虽然说之前有些 OC 基础,写起 Swift 功能也是能实现,但是代码不是很优雅,不够 'Swift Style'。 熟练度不够的话,很多 Swift 的高级写法还得去翻文档才知道什么意思,所以就打算从0单排一个Swift的项目,而微博正好有 开放API , 所以这里就选择它了。
Swift 是在 WWDC 2014 上发布的。Apple 的大部分示例代码项目现在都是用 Swift 编写的。但是 Apple 在 iOS 10.1 和 macOS 10.12.1 中使用 Swift 吗?
老师是在之前的品优购的案例中补充的,但是我就重新做一个简单的网页吧,方便看一些:
背景: 双非渣一本,2017级大三计算机科班,算法:剑指offer 68题刷了一遍,leetcode 60题。网络、操作系统啥的 跟着书本学习然后Google查了些资料,然后大学期间做过一些有关iOS开发的实践项目。
作者 | Ron Avitzur 译者 | 刘雅梦 策划 | Tina 疫情期间,作者花了 18 月的时间,将图形计算器(Graphing Calculator)从 C++/ObjC 移植到了 Swift 上,将代码量缩减为原来的 30%,并且没有明显的功能或性能损失。 图形计算器(Graphing Calculator)始于 1985 年,是为了 128K Macintosh 用 C 语言编写的,当时它仅有 16 位整数、黑白 Quickdraw 以及不带 MMU、FPU 和 GPU 的 8MH
领取专属 10元无门槛券
手把手带您无忧上云