Swift 如何像 C语言 那样接收入口参数?

 

我们都知道在 Swift 语言当中不再有 main 函数了,可能了解过 C语言或者 Java 语言的同学对这一点赶到深深的不适。总之,取而代之的是 main.swift。

在 Swift 语言当中,编译器不会再去寻找 main 函数作为程序的入口,而是这个“main.swift”文件,根据官方的解释来看,这个[……]

点击跳转以继续阅读

OSX 10.11 EI Capitan 运行 Java SE 8

前几日,最新一届的 WWDC 大会为我们带来了 EL Capitan 这个10.11的最新的 osx 系统,我自然在第一时间就装上了开发者预览版。原因无他啊,就是论坛里网友们说 bug 非常少啊。遥想当年,从10.9升级到10.10的时候,即使到了公测阶段,依然是 bug 满天飞呀!

但这次确实 bug 少之又少,即使找到的一些也不伤大雅,真是叫人惊讶!

不过,这些 bug 里边恐怕有[……]

点击跳转以继续阅读

GoAgentX PAC 失效 的 解决办法

如果你以前安装过 GoagentX ,然后卸载了,后来又重新安装,那可能你会发现即使开启了 pac 模式,其实也是跑着“全局”的状态。

这一点,从 ip138上可以验证。

我尝试使用自己生成的各种 pac,结果干脆连网也上不去了😅

后来从这里看到了一条消息,人家是这样解决的:

“在 GoagentX的配置页面恢复一下出厂配置”

事实证明,果然好使![……]

点击跳转以继续阅读

让 Xcode 也用上 Solarized Dark 颜色主题

貌似这个 Solarized 主题一直都很火,这是一套终端文字颜色配色方案,十分好看,有明暗两种,不过,据我自己猜测,应该暗色的多一些吧……

点击下图跳至官网。⬇️

因为终端普遍还是黑色一点的好看😜

总之,这套颜色主题为很多终端都提供了配置文件可以直接导入,比如说 osx 自带终端,还有 iterm 等等。后来有人觉得,如果在使用 IDE 编程开发时候,代[……]

点击跳转以继续阅读

浅谈 MVC 以及软件开发当中的 SoC

不论你是在学习何种语言,基本上都会遇到一个叫做 MVC 的概念,它是一个程序开发的模式,以“分离展现”作为核心,在层级框架当中有着巨大的影响力。

MVC 是一个简写,三个大写字母分别对应着 Model ViewController

在如今我们创建的应用软件当中,很多情况下又要使用 GUI 图形界面,又要使用 CLI 命令行界面,除此之外,有时候还要应对甚至两者同时使用的情况。[……]

点击跳转以继续阅读

Swift Int Float Double String 类型互转

在 C语言当中,要转换类型似乎并不怎么困难,这次在学习 Swift 的时候却有了困惑。

似乎记得哪个教程当中讲过,但记不清了,这次又找到了,就记录下来:

若要 Int 转换为 Double 或 Float ,则如下

若要转换为 Int,则如下:
[cr[……]

点击跳转以继续阅读

在 Xcode 中直接预览应用 UI

在使用 Xcode 做 app 应用开发的时候,设计一下应用的 UI 界面是家常便饭,但是每次都要运行然后去模拟器里查看输出一件很麻烦的事情,尤其是当需要修改的元素很多、而且需要配适各种屏幕大小的时候——毕竟,现在 iPhone 的产品线不再那么单一了。

所以,一口气运行三四个模拟器这种事情恐怕也就只有你能干得出来了。

其实,Xcode 并不是没有给我们提供更方便的选择——在story[……]

点击跳转以继续阅读

什么是程序语言?

既然要学习编程,那么我们还是至少应该知道自己学习的是个什么东西才好吧?

说起编程,其实最早还是要追到我们的大神 艾伦图灵 小哥那里去。当时图灵发明出了图灵机——这东西很牛逼,不完全体就已经轻轻松松把二战缩短两年这里我们就不展开讲了,主要我们说,这个图灵机,基本上就是最早的电脑啦!

当然,教科书上不都说 冯诺伊曼 是电子计算机之父吗?嗯,我不会告诉你他俩搅基来着……当然,好吧也就是勾搭了[……]

点击跳转以继续阅读

Swift 常用数据类型浅析

现在大部分的高级编程语言,都是从经典的 C 语言演变而来,你在这些编程语言的语法当中,或多或少地都能找到几分 C 语言的影子,这也是为什么很多人依旧推荐,从 C语言来入这个编程语言的门。

可是,C 语言的确足够古老了,很多人都是冲着写一个 APP 来玩的目标学习编程的,你去学 C语言……抱歉,可能一整本书学完了,也不能写出一个美观漂亮的 UI 界面。

不过,话说回来,要学习 Swift[……]

点击跳转以继续阅读

豆瓣 FM 的歌曲列表获取问题

最近开始学习 Swift 了,就好像是“hello world”一样,似乎每一种语言总是有一个“编写豆瓣 FM”的项目教程😶

总之,我也开始用这个手把手教程来熟悉开发流程了,不过,昨天才做到显示播放列表并且显示歌曲封面,今天添加了播放功能就崩溃闪退了!

好吧,即使将新添加的代码注释掉,原来的代码也无法正常运行了。你看,出现了这样的万能报错:
[crayon-6903e[……]

点击跳转以继续阅读

如何在国内使用 gem

如果你想了解 Ruby,或者想在你的电脑上安装几个 Ruby 软件包,你可以很轻松的使用 RubyGems 来一键下载——就好像 Ubuntu 里的 apt-get、类似 redhat 里的 yum 等等。

所以,想要安装 Ruby 软件包,你就需要 gem。不过,除了安装 gem(如果你的电脑是 Linux 或者 osx,很可能已经自带,使用命令“gem -v”来验证)

但是版本可能[……]

点击跳转以继续阅读

Could not load the image referenced from a nib in the bundle running on device

在使用 xcode 做一个程序的时候,我们普遍会使用一些图片来代替掉按钮上生硬的文字,让界面更加美观。

不过,在添加图片的时候,我就遇到了编辑的时候 storyboard 可以显示,但是程序运行的时候却无法显示的问题。

查看记录发现报错:

国内关于 swift 开发的文档和问答实在是太少了,就连教程都是模棱两可——其[……]

点击跳转以继续阅读

严重虚拟机漏洞 Venom 大半云服务受到威胁!

今天下午,我正在敲代码,然后位于西海岸的一家 vps 发来邮件,说服务器要重启更新,而我正好有一个 vps 是在他那里的。一般来说除了硬件及的维护意外,云服务基本上都可以在线的——毕竟,“高可用”是云服务的主打科目。

不过,这次不同,就在今日,新的虚拟机漏洞面世,利用这个漏洞,可以让你分分钟突破虚拟机限制而获取到同一服务器中其他服务器的访问权限!然后利用其他服务器的信息,进而就可以继续深入渗[……]

点击跳转以继续阅读

在 ufw 上开启 nat 伪装和端口转发

可能一直到现在,你都一直不怎么熟练在 Linux 上怎么开启 nat 和端口转发——毕竟这种操作可能也就在部署服务器的时候需要一次。但它的操作实在是太繁琐了,尤其是当我们使用了 ufw 来编辑 iptables 之后,更不能直接编辑 iptables 了,这下到底该如何是好呢?

使用 ufw 来开启nat 伪装和端口转发,你可以先参考这篇文章Ubuntu 下更简单的防火墙 Uncompli[……]

点击跳转以继续阅读

阿里云 Ubuntu 更新镜像源

更新:由于一些原因,不再推荐阿里云的更新源了,给你这个页面,点击进去可以根据版本自动帮你生成中科大的镜像更新源。

为了方便自己做国内 vps 服务器更新配置,一般都需要更改 dns 和更新源,否则一辈子别想打补丁…………总之,以前常用网易源但最近老是抽筋,所以现在推荐阿里云

另,你可以在服务器的终端中输入“lsb_release -a”命令或者查看“/etc/issue”文件[……]

点击跳转以继续阅读

Ubuntu 下更简单的防火墙 Uncomplicated Firewall

我们都知道,Linux 系统当中有一款十分牛逼的防火墙叫做 iptables,它能做的远远超过了防火墙的范畴……不过,一般来讲,我们还是习惯于只把它当做防火墙来用。

不过,如果你只是想对某个端口进行策略,那似乎也并不需要去面对 iptables 那冗长的配置命令。现在,我就来给你介绍另外一款更加简单的防火墙:

Uncomplicated Firewall

一看名字就十分的明确“不复杂防火[……]

点击跳转以继续阅读

再见小流氓,再见 dnspod

作为国内曾今红火一时的 DNS 解析服务商,dnspod 曾在 godaddy 的 ns 刚被认证的那段时间以国内解析速度快服务质量好而被广大主机商推荐,我们这群没脑子的小博主就纷纷转投第三方 ns 解析

其实人家 dnspod 也挺好的,解析速度越来越快,新建一个子域名,从一开始的几分钟到现在的只需要几秒钟就可以生效,真的是让人省了不少心——除了被攻击,嗯,现在还算不错。

————[……]

点击跳转以继续阅读

部署 SNI Proxy 加速网页访问 反代 无需证书

我们都知道可以使用 nginx 反代功能来实现跨境访问外网,不过,这种方式有很多的制约,比如说很难实现登录验证,比如说需要针对转发模块单独做编译,比如说需要你有一个有效的 ssl 签名证书等等。

这次,我们来介绍另外一款神器 SNI Proxy,是用 dnsmasq 配合 sniproxy 可以实现无证书任意网站反代。它使用SNI 技术将 TLS 连接通过 TCP 代理到目标网站,这样就避免了对[……]

点击跳转以继续阅读

编译安装 dnscrypt-wrapper 搭建防污染 DNS 服务器

众所周知,在我朝局域网当中想要获取国外 DNS 信息,必定会遭到关键字污染。为此,有人想到了使用异常端口,比如5353而不使用 DNS 专用端口53——因为目前 Girl Friend Wall 只污染53;也有人想到了使用 TCP 连接请求,因为 DNS 的应答机制参考 DHCP决定了它会接受第一个返回的响应,后边的会被丢弃,而使用 TCP 则强制接受选定的数据包;甚至有人想到了把那些发污染[……]

点击跳转以继续阅读