Fork me on GitHub
乔羽的技术博客


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 搜索

Swift3 迁移至 Swift4遇到的问题

发表于 2017-09-29 | 更新于 2018-09-27 | 分类于 开发 | 阅读次数: | 字数:373 | 阅读时长:1min

1.The use of Swift 3 @objc inference in Swift 4 mode is deprecated.警告

选择Target->Build Settings,搜索Swift3,在Swift3 @objc Inference中,把On改为Off或者Defalut。

阅读全文 »

Mac下通过Anaconda安装Tensorflow

发表于 2017-08-28 | 更新于 2018-09-27 | 分类于 教程 | 阅读次数: | 字数:665 | 阅读时长:2min

Mac下通过Anaconda安装Tensorflow

Anaconda是一个基于python的科学计算平台,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。这个平台里包含有python,scala,numpy等绝大部分主流的用于科学计算的包。

阅读全文 »

自定义弹出视图

发表于 2017-07-26 | 更新于 2018-09-27 | 分类于 开发 | 阅读次数: | 字数:877 | 阅读时长:4min

自定义弹出视图

工作中经常会遇到弹出视图的需求,通常还会要求有一些动效,之前使用OC写代码的时候,使用的是STModal,现在使用Swift,就决定自己来写一个。目前仅仅是写了一个弹出视图的控制器,还非常的简陋,后期再来添加自定义Alert视图等功能。

很多地方参考了STModal,当然也做了一些修改和优化。

STModal 自定义弹出视图-OC

GJModal 自定义弹出视图-Swift

阅读全文 »

Git简介

发表于 2017-07-23 | 更新于 2018-09-27 | 分类于 开发 | 阅读次数: | 字数:1k | 阅读时长:3min

Git原理及特性

每个项目都有一个git目录,它是Git用来保存元数据和对象数据库的地方。该目录非常重要,每次克隆镜像仓库的时候,实际拷贝的就是这个目录里面的数据。

从项目中取出某个版本的所有文件和目录,用以开始后续工作的叫做工作目录。这些文件 实际上都是从git目录中的压缩对象数据库中提取出来的,接下来就可以在工作目录中对 这些文件进行编辑。

所谓的暂存区域只不过是个简单的文件,一般都放在 git 目录中。有时候人们会把这个文件叫做索引文件,不过标准说法还是叫暂存区域。

阅读全文 »

Git常用命令

发表于 2017-07-22 | 更新于 2018-09-27 | 分类于 开发 | 阅读次数: | 字数:2.2k | 阅读时长:8min

Git命令

git init

从当前目录初始化

git clone

从现有仓库克隆

git status

检查当前文件状态

git add

这是个多功能命令,根据目标文件的状态不同,此命令的效果也不同:

  • 可以用它开始跟踪新文件,
  • 或者把已跟踪的文件放到暂存区,
  • 还能用于合并时把有冲突的文件标记为已解决状态等
阅读全文 »

Swift 编程规范

发表于 2017-07-19 | 更新于 2018-09-27 | 分类于 开发 | 阅读次数: | 字数:3.6k | 阅读时长:15min

代码格式

1.使用空格而不是制表符Tab缩进

不要在工程里使用Tab键,使用空格来进行缩进。在Xcode > Preferences > Text Editing将Tab和自动缩进都设置为4个空格。

2.每行最多80个字符

在Xcode > Preferences > Text Editing > Page guide at column:中将最大行长设置为80,过长的一行代码将会导致可读性问题。

3.确保每个文件结尾都有空白行
阅读全文 »

Objective-C 编程规范

发表于 2017-07-19 | 更新于 2018-09-27 | 分类于 开发 | 阅读次数: | 字数:8.1k | 阅读时长:32min

概要

Objective-C是一门面向对象的动态编程语言,主要用于编写iOS和Mac应用程序。关于Objective-C的编码规范,苹果已经有很好的总结:

  • Apple Coding Guidelines for Cocoa

本文主要整合了对上述文档的翻译、作者自己的编程经验和其他的相关资料,为公司总结出一份通用的编码规范。

阅读全文 »

把时间当作朋友 | 读书笔记

发表于 2017-06-15 | 更新于 2018-09-27 | 阅读次数: | 字数:13.6k | 阅读时长:45min

把时间当作朋友

困境

“没时间了”是时间恐慌患者脑子里唯一反复闪现的一句话。他们总是在最后时刻来临的时候,才恍然发现自己还有很多事情没有准备好,于是不遗余力的寻找捷径。巨大的压力,极度的恐慌,使患者身上综合了一切矛盾:他们既勤奋又懒惰,既聪明又愚蠢,既勇敢又懦弱。

所谓的时间管理其实是虚假的概念,是不可能完成的任务。时间不会服从任何人的管理,他只会自顾自的流逝。

问题出在我们自己身上。

我们无法管理时间,我们能够管理的,只有自己。

人们很难接受与已有知识和经验相左的信息或观念。

阅读全文 »

无限Banner轮播图

发表于 2017-05-28 | 更新于 2018-09-27 | 分类于 开发 | 阅读次数: | 字数:183 | 阅读时长:1min

GJImageCarouselView

自己写的Banner轮播图,自动循环,无限轮播。可以设置时间间隔、占位图。可以使用本地图片,也可以加载URL。

Demo工程中用到了喵神的kingfisher,一个非常好用的图片下载、缓存的框架,灵感取自于SDWebImage。

阅读全文 »

NPY文件快速指南

发表于 2017-05-14 | 更新于 2018-09-27 | 分类于 开发 | 阅读次数: | 字数:281 | 阅读时长:1min

NPY文件快速指南

  • NumPy 专用的二进制格式保存数据,它们会自动处理元素类型和形状等信息
  • 如果想将多个数组保存到一个文件中,可以使用savez()
  • savez()的第一个参数是文件名,其后的参数都是需要保存的数组,也可以使用关键字参数为数组起名
  • 非关键字参数传递的数组会自动起名为 arr_0、arr_1、…。
  • savez()输出的是一个扩展名为 npz 的压缩文件,其中每个文件都是一个save()保存的 npy 文件,文件名和数组名相同
  • load()自动识别 npz 文件,并且返回一个类似于字典的对象,可以通过数组名作为键获取数组的内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import numpy as np

a = np.arange(0,12)
a.shape = 3,4
print(a)

np.save("a.npy", a)
c = np.load("a.npy")
print(c)

a = np.array([[1,2,3], [4,5,6]])
b = np.arange(0, 1.0, 0.1)
c = np.sin(b)
np.savez("result.npz", a, b, sin_array = c)
r = np.load("result.npz")
print(r["arr_0"])
print(r["arr_1"])
print(r["sin_array"])
1234
乔羽 / FightingJoey

乔羽 / FightingJoey

Efforts to become the person I want to be.

36 日志
2 分类
9 标签
RSS
GitHub 简书 掘金 微博
我的朋友
  • 败寇路飞
© 2015 — 2020 乔羽 / FightingJoey
本站访客数: