
获得徽章 20
- 希望我不是最后一个知道的...
刚才无意间翻了下 CALayer 的 API,发现有个这么个属性 maskedCorners,可以直接使 cornerRadius 的角度值设置在指定的圆角上,换句话说,也就是官方在 CALayer 里为开发者直接提供了指定圆角切割的 API。这也就意味着,如果你的应用最低兼容版本在 iOS 9.0 及以上,你可以直接在 iOS 11.0 及以上的环境下放弃第三方的 UIImage/UIView 圆角切割库了,不用担心离屏渲染,苹果爸爸一步到位!
该枚举表示角度,我加上了备注:
typedef NS_OPTIONS (NSUInteger, CACornerMask)
{
kCALayerMinXMinYCorner = 1U << 0, // 左上角
kCALayerMaxXMinYCorner = 1U << 1,// 右上角
kCALayerMinXMaxYCorner = 1U << 2,// 左下角
kCALayerMaxXMaxYCorner = 1U << 3,// 右下角
};展开215 - “其实,全部软件都有一个相同的目标:帮助其他人。
文字处理软件帮助大家编辑文档,浏览器帮助大家浏览网页。。。服务于动物或植物的软件,其目的还是帮助人类。。。即使你写的是程序库,它们也是为程序员服务的,程序员也是人。。。软件从来都不是用来帮助无生命事物的。软件要帮助的不是计算机,而是人。
软件的目标不是‘赚钱’或者‘炫耀智商’。。。即便赚钱和炫耀智商可以‘帮助’你,但这只是非常狭隘的帮助;相比为帮助别人而设计的,满足其他人需求的软件,仅仅考虑狭隘目标的设计,很可能收获糟糕的软件。
任何情况下,你所赚的钱都直接维系于你的软件能为他人提供多少帮助。。。。在做与软件有关的决策时,指导法则就是判断能提供什么样的帮助。各项需求也可以照这个标准排除先后顺序。哪项需求能为人们提供最大的帮助,就应当赋予最高的优先级。
所以,软件设计科学的目标应该是:
1. 确保软件能提供尽可能多的帮助
2. 确保软件能持续提供尽可能多的帮助
3. 设计出程序员能尽可能容易开发和维护软件系统,这样的系统才能为用户提供尽可能多的帮助,而且能持续提供尽可能多的帮助
-- 来自《简约之美:软件设计之道》”
作者认为软件的目的是服务他人,而且软件是否成功在很大程度上取决于软件本身对人的帮助有多大。
这一点很值得程序员,设计,产品经理思考:
现在这个需求或设计是否真的可以帮助我们的目标客户;如果有,帮助大还是小?如果帮助小,那如何改进可以更好地帮助他们?
现在这个代码库是否真的可以帮助我们的业务方?这些功能真的都是可以解决业务方的问题么?是否有些功能是可有可无的?业务方接过来用是否会觉得不方便?或者同事看了我的之后是否能马上理解我代码的意思,不需要花费太多的时间和精力去理解和修改它们?
另外,作者所说的需要可持续提供帮助这一点也非常好。
比如这个需求将来能否还有可以做得更好的可能?
这段代码或者模块扩展性是否很强?是否容易修改?出现问题的时候我们能否积极响应并修复?
说到底我认为这是一个格局的问题:
你是只为了挣钱,拿到钱就满足了,还是为了真心想帮助他人,解决他人的问题?
你是只为了KPI,完成某个特定任务而已,还是为了真心想帮助同事,帮助公司的客户,让公司越来越好?
格局决定高度,你想在哪个高度呢?展开315 - 评论12
- 一个纯Swift的轻量级、灵活且易于使用的pageView框架—DNSPageView,类似框架很多,而DNSPageView则可以将titleView和contentView分开布局在任意地方,可以纯代码初始化,也可以使用xib或者storyboard初始化,并且提供了常见样式属性进行设置,支持cocoapods导入。
github.com
展开评论12 - 来说一说你对掘金沸点有什么好的建议?
盖楼奖品: 5 枚掘金小册免费码
💡 盖楼规则:总楼层的 2%, 22%, 42%, 62%, 82%,数字四舍五入后的楼层即为中奖楼层,奖品不可重复获得。
截止日期:1月12日结束
21625