#前后端的那些事(1/3)

前后端的那些事(1/3)

一入前端深似海

前端水太深,江湖中流传着一句话:"一入前端深似海",这句话足以说明前端的复杂性。因为要靠编程吃饭,我们热爱它,所以不应该畏难,应该多接触一些技术如 HTML5, CSS, JS, bootstrap, jquery, ajax, less, sass, gulp, grunt, webpack, nodejs, npm, bower(装作惊恐状)。

前端开发这几年出现了很多前后端分离的框架做的相当优秀如很很火遍大江南北,大街小巷的 vue.js, angular.js,这些都需要学习也很值得学习。

因为有了更好的硬件,所以为我们软件开发提供了无限的可能。当然硬件本就和软件相辅相成。

其实 iOS & Android 也是前端开发,只不过是在手机上,完全通过 JSON 数据传输进行数据交互的软件罢了。

开发 iOS 必需要要用 mac OS 系统,而不是 windows,当然如果真的想学可以去 远景论坛 上 看看如何装个黑苹果(就是普通的 windows 笔记本来跑 mac OS,这里并不建议用虚拟机,个中缘由,就是太卡了)。

学习 iOSmacOS 开发需要安装 Xcode, 并且要使用苹果的开发语言 Objective-C or Swift,语言本身并不难,大多数主流的编程语言很类似,所以如果有经验的话其实学习起来很容易,你知道什么叫做 MVCMVVM,代理设计模式,单例设计模式,观察者设计模式等数十种设计模式。。。 这种思想你理解了,就像那句话“世界上本没有路,走的人多了,也变成了路 (也变没有了路,想到这句话,大笑)”。从 OC 最基础的 MVC 模式开始,到使用 Swift 复杂的函数式编程,函数式编程为未来的苹果 App 更增添了无限的可能,从此函数可以作为一等公民,作为参数进行传递运算,这是多么的美好!

Androidgoogle 开源的项目,它的出现让手机行业掀起了腥风血雨,当然 Android 肯定要和 iOS 做比拼,这是毋庸置疑的。Android 本身很好,它吸收了开源所有的精髓,一步步进步。也很值得学习。学习之前要了解 AndroidiOS 有什么不同------

iOS 系统运行在 unix 上的,unix 系统本身是一部追求极简的哲学。有太多的学问和艺术追求,这里不多说。因为 unixapple 本身的闭源生态,所已让苹果的设计 变得是那么的独特。

Android 是运行在 Linux 内核上的,但是和苹果不同,在 AndroidLinux 中间还有一样东西,那就是 java 的虚拟机,安卓的开发语言是 java,而 java 具有其他面向对象语言无法睥睨的跨平台性,所以安卓借助其力量扶摇直上九万里。但其后也导致了 甲骨文公司状告 google 侵权 java 语言,打了很长时间的官司。

这样仔细想一想,虽然 google 可以开发手机应用了,但是比 apple 多了一层虚拟机,也就意味着更多的内存消耗。也就是为啥2-3个 G 的内存还不如苹果 1G 内存来的流畅(当然这其中也和苹果主线程优先处理用户 UI 有关)。还有就是 iOS 的沙盒文件管理机制,让苹果可以更彻底的隔离 App,一个应用崩坏,不会影响其他。当然凡事都有利弊,这样也造成了苹果文件管理一直不是特别方便,真是成也苹果败也苹果。

你可能感兴趣的:(#前后端的那些事(1/3))