首页 文章 精选 留言 我的

精选列表

搜索[编写],共10000篇文章
优秀的个人博客,低调大师

iOS-《编写高质量代码》笔记-第七章 设计模式与Cocoa编程

建议45:设计模式是特定环境下的特定问题的解决方案 设计模式是某种特定设计的模板或指导原则。 建议46:MVC模式是一种复合或聚合模式 MVC 是一种高级别的模式,关注的是应用程序的全局架构,并根据各种对象在程序中发挥的作用对其进行分类。 建议47:对象建模在数据库中也广泛使用 看不懂 建议48:类簇可简化框架的公开架构而又不减少功能的丰富性 1.类簇(class cluster)基于抽象工厂设计模式。 2.类簇,可以用于隐藏实现的具体细节,为调用者提供一个简单的接口。 3.类簇也可以有多个基类,如NSArray、NSMutableArray,后者就是继承的前者。对一些“大同小异”的问题,往往会有不错的结果。 这个架构的用户只看到一个公共类,即NSNumber。

优秀的个人博客,低调大师

Bascanka v.1.0.2 纯 C# .Net 10.0 编写的大文本编辑器发布

更新说明 新增 CJK / Unicode 字符支持 - 修复了 CJK(中文、日语、韩语)及其他全角字符的光标定位问题。插入符、选定内容高亮、搜索高亮及所有其他视觉元素现在能正确对齐双宽度字符。 新增 GB2312 编码支持,并在打开文件时自动检测 GB2312 编码。 新增通过标签页右键上下文菜单比较已打开标签页文本的功能。 新增保存大文件时的每标签页进度条,允许用户在文件保存时继续在其他标签页工作。 新增系统主题检测功能。 新增中文界面本地化。 新增塞尔维亚语(西里尔字母)界面本地化。 修复了使用箭头键导航时,代理对(surrogate pairs)需按两次键才能移动的问题,现可作为一个整体单位跳过。 修复了框选/列选模式下,以 Delete 或 Backspace 开始时丢失列模式的问题,现可保持列模式以便继续编辑。 修复了编辑大文件并在文件开头和结尾之间跳转及修改时的性能问题。 扩展了“关于”窗口,包含贡献者和更新说明。 依赖框架版(下载体积小 - 需要 .NET 10 运行时) 单个便携式 EXE 文件(约 2 MB)。如果系统已安装 .NET 10,请使用此版本。 SHA256: 9914AA9150EA6C2AB54EC336ECF8B70B0AB22C653FC0DC88A1FC93BCF34F868C 独立版(无需运行时) 单个便携式 EXE 文件,内含 .NET 10(约 120 MB)。适用于任何受支持的 Windows 计算机,无需安装 .NET。 👉 https://beegoesmoo.co.uk/bascanka/download/Bascanka.v.1.0.2.bin.sc.zip SHA256: 8DA8D58B3BA9F87F8F86080CC7132AC62AC1389E2C2EBF44403F27D9876517DB 所有版本均为便携式 - 无需安装。

优秀的个人博客,低调大师

iOS-《编写高质量代码》笔记-第八章 定制init...和dealloc

建议50:了解对象的alloc 和 init... alloc 分配过程不仅进行对象的内存分配,还初始化对象的两个小而非常重要的属性,即它的isa实例变量和保持数。 建议51:直接访问实例变量的init...方法 父类可能无法正确初始化对象,并返回nil,故要经常检查,确保self不为nil,然后再执行自己的初始化。 建议52:初始化方法必须以init字母开头 如果一个对象没有实现自己的初始化方法,Cocoa就会调用其最近的祖先对象的方法。 建议53:从init...方法得到的对象可能是不想要的 在创建对象时,通常应该在对象使用前检查初始化返回的对象是否为nil。 一旦对象被初始化了,就不应该再进行初始化了,否则,容易产生抛出。 建议54:实现init...方法的唯一性或者指定性并非“不可能” 调用super的初始化方法可以确保继承链上方的类定义的实例变量都率先得到初始化。 建议55:init... 方法有“轻重级别”之分 进行对象的初始化,要注意轻重之分。

优秀的个人博客,低调大师

iOS-《编写高质量代码》笔记-第六章 继承与面向对象设计

建议41:明确isa在继承上的作用 图片发自简书App 我们发现 Class 本身也有一个isa指针,指向的是它的MetaClass。 当我们对一个实例发送消息时(-开头的方法),会在该 instance 对应的类的 methodLists 里查找。 当我们对一个类发送消息时(+开头的方法),会在该类的 MetaClass 的 methodLists 里查找。 参考地址: http://ios.jobbole.com/81657/ http://www.jianshu.com/p/8036f15c91c6 建议42:利用类别和协议实现类似多重继承的机制 OC 可以通过类别(Category)和协议(Protocol)实现类似多重继承的机制,可以很好地实现代码复用和扩展。 1.虽然类别可以访问基类的实例变量,但不能添加变量,如果想要添加变量,可以考虑通过继承创建子类。 2.类别可以重载原始类的方法,但不推荐这么做,这么做的后果是再也不能访问原来的方法。如果确实要重载,正确的选择是创建子类。 3.和普通接口有所区别的是,在类别中实现文件中可以不必实现所有声明的方法,只要你不去调用它。 协议并不是真正的类,它只是声明方法,不能添加数据。协议就是一系列不属于任何类的方法列表,其中声明的方法可以被任何类实现。这种模式一般称为代理模式。 建议43:类别和类扩展是类继承的延续性拓展 类扩展可以给原有的类增加新的属性和方法。类扩展常用来定义类的私有变量和方法。如果类别是为类增加外部方法的话,那么类扩展就是用做类的内部拓展。 类别关注的重心是代码设计,把不同功能的方法分离开。 类别具有替换特性,也就是说,如果类别方法与类内某个方法具有同样的方法签名,那么类别里的方法将会替换类的原有方法。zs-可以利用这个实现热更新修复bug. 建议44:继承基类的实现行为勿忘调用super 如果打算补充基类实现的行为,请调用super. 如果打算替换基类实现的行为,就不要调用super.

资源下载

更多资源
优质分享App

优质分享App

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册