程序设计其实对程序开发者来说十分重要,但是在工作中往往我们却忽略了这一块,因为我们所用的都是现有的模式.一个设计模式的好坏,往往能够体现出程序的专业性,还有整个项目的可持续性.这就是为什么有些公司,在经历了若干年后忽然重写整套代码的原因,因为他们会发现在越来越多的需求的情况下,以前那些设计模式完全不能满足了,或者说程序的复杂度和维护成本实在太高.最近我又看到了一个公司的项目设计,文档中写的还算优秀,可是整体的框架设计总觉得还有差强人意.那么我们又该怎样来设计我们的程序,怎么减少维护代码的成本,怎…
任何事情都有三个阶段,分析.制作.质检的过程.在程序中就分为设计.编码.调试(测试)三个阶段,其中设计最为重要,设计的不好会导致编码和调试重复,甚至最后又回到了设计的过程.为了不会重复返工,所以设计的时候需要考了全面,否则会导致资源上的浪费和占用,甚至造成资源不足而终止.就像任何一个投资项目一样,设计的不好,往往会导致人力资源的浪费,如果在项目进程中达不到预期的效果,这个项目生命周期就会缩短. 1.项目管理器设计 为什么要使用到项目管理器?如果这点都不明确,那么这样的功能需求是无效的,也就是说不…
每天对着不同的计划,多多少少有一种无形的压力.特别是对技术不好的我来说,过程中遇到的问题实在不少,时常纠结良久.时间慢慢流逝,最后虽然感觉有些不足,但是也不至于差强人意.商业版的PF核心已经升级到1.0.5版本,增添和完善了许多功能.核心主要完善了网络模块.脚本模块.文件模块.引擎模块.缓存模块等等,并制作了基本的场景插件和AI插件.未来的PF将支持更多的功能,将安装和使用更加的自动化,执行一个脚本就能完成许多不必要的步骤.所以未来的脚本工具是一个必须完成的功能,在此我们将迎来一个个热爱开源项目…
PF由于各种因素迟迟不能更新,此次更新主要是更新了以往和上个版本出现的内存问题,该版本较为稳定,如果有用到的朋友请更新至此版本. PF 1.0.4 修复1.0.0.3更新后产生的内存问题,可能导致网络数据错误 全面修复PF核心的内存问题 优化部分代码风格 PF商业版核心人员招募 开篇语 我们没有大神,只有解决问题的人. 我们没有强悍的技术,只有一颗向往简单的心. 我们没有惊人的理论,只有一堆不可思议的妄想. 我们不需要复杂,只需要够简洁. 我们不需要固定的思维,只需要你能想得到. 核心成员资格需…
有些东西总是姗姗来迟,就好比这新年的钟声,我们盼望着新年同时也不太旧的一年过去.每当这个时候,我们都会总结一下在过去的一年中我们收获了什么,再计划新的一年我们要实现什么.PF并不是一个十分优秀的框架,可以说这只是出于作者们对自己技术的总结.本次版本比我计划的要晚,一方面是因为新年的原因,另一方面又是工作的原因,诚然这些都只不过是为推卸责任的借口,而这责任却是对自己的.再多的话语,只能留待来年,本次更新比较匆忙,希望有用到的朋友可以反馈BUG到issue上,让我能及时跟进.同时祝大家在新的一年:幸…
网络流是什么?为什么网络流中需要存在缓存数据?为什么PF中要采用缓存网络数据的机制?带着这几个疑问,让我们好好详细的了解一下在网络数据交互中我们容易忽视以及薄弱的一块.该部分为PF现有的网络流模型,但是在这里只讲解最本质的概念,而没有详细说明代码,如果有兴趣的不妨先看了这部分再去看下代码,一切或许会豁然开朗. 网络流 如果你不知道计算机中流数据模型的定义,那么你就可以试想一下河流,有着固定起点和终点的河流.将流水从某一个地方送向另一个地方的通道,我们现实中一般叫做渠道,这种渠道在计算机之间就是网…
atitit.商业版 源码保护 与 java本地原生代码转换 的方案总结 1. 为什么虚拟机语言容易被反编译 1 2. 源码泄露的问题问题 1 3. Excelsior JET 1 4. gcj.的流程 2 5. classloader方案,,还凑后 2 6. 制作伪exe,其实和上一种做法是一样的,只不过做成exe,调用系统的java.exe来运行它,这样的工具有nativeJ,exe4j等 3 7. 其他 3 1. 为什么虚拟机语言容易被反编译 ,但虚拟机的中间语言由于带了大量的"元数据&q…
在我们的日常开发中,我们往往会遇到这种情况,当我们换了一个开发环境时很可能会重新利用一套新的框架进行开发.由于不同框架有着不同的接口,所以我们不得不花时间再次熟悉这些接口,这将造成开发时间上的重复,而对于一个程序来说又经历了一段重复造轮子的过程.在游戏开发领域,我介入的时间并不太长,大约三年时间.抱着对于游戏的热爱和激情,在这几年时间里也是一个苦苦摸索的过程.我们国人有着这么一个通病,那就是所谓的“闭关自守”,我发现有些开发者是拥有了一套代码之后便利用这套代码可以玩转整个游戏界.我能了解这些朋友…
流风ASP.NET框架商业版-工作流1.0简介 工作流简介 在流风ASP.NET框架商业版1.0推出后,就有集成工作流的想法,但是由于工作繁忙和其他事情的耽搁,时隔半年之久工作流1.0的版本才姗姗来迟,采用sliverlight开发了流程设计器,能够实现基本的工作流程的控制,并集成邮件和短信通知的功能,还有诸多不完善的地方,在以后版本中会根据大家的意见完善不足之处,以下将1.0的版本做一个大概的介绍 流程设计器简介 在线流程设计器采用sliverlight开发,如下图,流程控件分为[开始],[活…
JDK中设计模式 本文主要是归纳了JDK中所包含的设计模式,包括作用和其设计类图.首先来个总结,具体的某个模式可以一个一个慢慢写,希望能对研究JDK和设计模式有所帮助.一.设计模式是什么(1)反复出现问题的解决方案(2)增强软件的灵活性(3)适应软件不断变化二.学习JDK中设计模式的好处(1)借鉴优秀代码的设计,有助于提高代码设计能力(2)JDK的设计中体现了大多数设计模式,是学习设计模式的较好的方式(3)可以更加深入的了解JDK三.类间关系继承.委托.依赖.聚合.组合​四.介绍方式(1)作用:…
企业级分布式应用服务EDAS _Dubbo商业版_微服务PaaS平台_分布式框架 - 阿里云https://www.aliyun.com/product/edas?source_type=yqzb_edas_20190110 在创业公司,不懂运维的程序员如何兼顾公司的运维工作-云栖社区-阿里云https://yq.aliyun.com/articles/684954?spm=5176.7946893.1288487.2.14b575baQO3gly…
IntelliJ IDEA是广受Java开发者喜爱的工具,其商业版的价格十分昂贵,如下图: 现在有机会免费获取IntelliJ IDEA的正版License,您是否心动呢?我把自己成功申请License的步骤记录下来,咱们一起行动吧. 申请资格要求 本次申请必须的唯一要求,就是您要有自己的开源项目,至于项目的具体内容并没有明确的规定,我这里用的是自己开源在GitHub上的项目,地址是:https://github.com/zq2599/blog_demos 这个项目并不是类似Spring这类的完…
什么是单例设计模式? 单例设计模式就是一种控制实例化对象个数的设计模式. 为什么要使用单例设计模式? 使用单例设计模式可以节省内存空间,提高性能.因为很多情况下,有些类是不需要重复产生对象的. 如果重复产生对象的话,会导致大量的内存空间被占用,性能降低. 例如:在程序启动中,加载已保存的数据信息.这些数据信息是由一个单例对象统一读取,其他程序只需要通过这个单例对象获取加载的数据信息即可. 单例设计模式分为饿汉式和懒汉式.饿汉式是在系统加载类的时候就会自动提供类的实例化对象如Computer co…
首先在这里庆祝香港回归祖国的怀抱25周年,想起那年还是一个小学生戴着红领巾和胸章激动不已,实现祖国的统一是每个中华儿女从小的梦想!趁着这欢庆的日子,突然想要写些什么,其实最近也在做一些事,由于工作繁忙加上自身的懒惰,因此对于自己所维护的这个框架感觉有些疏远.但我还是没有忘记8年前,当初实现这个框架的激情和梦想,在这里我用一个具体的例子来看看PF框架到底能做些什么. 例子 这次的选择是以一个实际运营的项目做测试,其实我在以前的文章中也提到过这个应用,也许大家都并不陌生,它就是现在还比较火爆的剑侠3…
上次介绍了一下plain framework的基础相关资料,今天该框架正式开源发布.项目的地址托管于github上,我相信大多数朋友都应该知道.今天要介绍的是该框架的目录基本结构,以及分别在linux以及windows平台上安装的例子.为了让初学或者技术不是太扎实的朋友也能快速上手,我在这里一步步从开发环境的搭建讲述到第一个比较完整的示例(网关服务器),每一步都是今日从空白的系统开始及时操作,由简入深,如果大家不太明白请到交流群询问. 更新日志 2015年1月10日 更新lnmp安装脚本,兼容最…
创建ASP.NET Core MVC应用程序(3)-基于Entity Framework Core(Code First)创建MySQL数据库表 创建数据模型类(POCO类) 在Models文件夹下添加一个User类: namespace MyFirstApp.Models { public class User { public int ID { get; set; } public string Name { get; set; } public string Email { get; se…
系列文章 [Head First设计模式]山西面馆中的设计模式——装饰者模式 [Head First设计模式]山西面馆中的设计模式——观察者模式 [Head First设计模式]山西面馆中的设计模式——建造者模式 引言 今天是冬至,去饺子馆吃饺子,看他们店里面的水饺种类挺多,在等待中,在想是不是可以用设计模式模拟一下,生产饺子的过程,正好最近也在看工厂模式,也就现学现卖了.当然,实现的方式很多,只是一个例子而已.祝大家冬至,多多吃水饺..... 对象创建的问题? 我们应该面向接口编程而不是面向实…
由于个别因素,该框架的文档没有及时的更新到博客上,但是离线的文档已经完成.本次更新对框架来说显得比较重要,因为在文档的编写过程中经过再次的阅读代码修复了不少错误,最主要的是统一了整个框架的标准风格.对于在跨平台的编译上本次会为大家特别解说一下,因为有些朋友可能对C的标准不熟悉之下走了许多的弯路.再次感谢对该框架有兴趣的朋友们的支持与理解,同时也希望有梦想的同仁能够加入. 一.版本更新 1. 核心更新 本次的框架核心更新时间为2014年10月29日10点,核心修复了一些严重错误以及统一了整体代码的…
代码风格 介绍 介绍 框架自身采用了google的C++风格,作者也鼓励在你的应用中使用此风格,有关此风格你可以查阅相关资料了解.下面是一段plain framework中的代码,以便大家参考: 你可以在此处下载到本项目使用的 风格指南: 链接:http://pan.baidu.com/s/1bneYgI7 密码:0ox1 base/global.h /** * PLAIN FRAMEWORK ( https://github.com/viticm/plainframework ) * $Id…
模块 总述 基础 数据库 引擎 事件 文件 网络 性能 脚本 系统 工具 总述 上图为plain framework(简称简约框架)所有的模块,包括基础.数据库.引擎.事件.文件.网络.性能.脚本.系统.工具模块,各个模块的详细介绍请看以下的独立说明. 基础模块 基础模块提供了基本的操作,包括时间.容器.字符串.日志.输入/输出流. 数据库模块 数据库模块提供了基本的数据操作接口,提供了查询以及结果集获取的方法. 引擎模块 引擎模块作为整个框架的核心,具有举足轻重的地位,我们的应用也是在引擎的扩…
简介 简介 能做什么? LINUX WINDOWS 简介 简约框架(plain framework)是一款基于C/C++开发的,跨平台(windows/linux)应用的基础框架,开发者可以利用此框架快速的开发出需要的系统应用,如通信服务器,游戏服务器/客户端等的核心. 能做什么? 框架集成了数据库的操作.脚本的操作(lua).线程的操作.网络的封装,丰富的的接口使得能够满足绝大多数的应用开发.该框架主要针对网络应用,特别是游戏开发(服务端/客户端). 你也可以扩展框架以便实现更多的功能. 如果…
<程序员面试金典(第5版)>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382252 内容简介 本书作者Gayle Laakmann McDowell是著名的软件从业者,曾担任谷歌资深面试官和招聘委员会成员,深谙世界顶尖科技公司的面试之道,与数百名求职者有过"交锋",洞悉面试成败的关键所在. 本书融萃了作者在世界顶尖科技公司长期从事相关工作所积累的面试经验,涉及与面试相关的每个环节--大到剖析面试流程.详解经典的技…
1个 影城行业 微信小程序(多商户.多平台版), 影业连锁 多商户.多平台版微信小程序.(基于多平台版,支持在业务上 可给 每个单独影城 分发定制单独的小程序版本) 资讯QQ: 876635409   (由于咨询用户太多,请备注:[影城 多平台版本]) 基于 多平台版本 架构,可以为每家影城/商户  分别定制 微信小程序. 实现微信小程序  多商户.多平台版本 的控制和分发.(一般要做到这种程度,其它公司至少需要4个月实现) 已经实现 影城行业 业务架构: 影城集团连锁.影城.影厅及座位.院线…
1. IntelliJ IDEA 2018商业版-安装 首先去官网http://www.jetbrains.com/idea/download/#section=windows下载Ultimate版(注意不是community版)下载并安装.一定要记得安装路径! 2.  下载一个 JetbrainsCrack-2.8-release-enc.jar 破解补丁地址:http://idea.lanyus.com/ 将 JetbrainsCrack-2.8-release-enc.jar 放在已安装 …
写在前面: 学习过程中不仅要熟练掌握技能,理论的消化吸收也必不可少.虽然个人更倾向于学习技术类的东西(短时间的精力投入很快就能看到成效...),但看了很多前辈的经验总结后才知道理论性的东西是绝对不能忽视的,毕竟理论对实践有着重要的指导意义.而了解“设计”相关的东西,会对“实现”产生潜移默化的影响,虽然不能在短时间内看到让人欣喜的变化,但可能有一天回过头来一想“哦~,原来我这个不错的小习惯是当年在那本书上学到的啊” 一.什么是设计模式? 绕了一圈之后让我们又回到这个话题吧(看书之前问自己一遍,看完…
C# winform程序免安装.net framework在XP/win7/win10环境运行!   前文: 首先感谢群里的大神宇内流云 提供的anyexec for windows版本. 经过本人搭建虚拟机在xp环境 使用anyexec运行winfrom程序后,测试通过,如下是用的xp运行winfrom程序的部分截图 下面是n年前入坑C#写的winform...玩毒奶粉用的,勿喷. .net framework 4.5环境的winform程序 不过要注意的是,exe引用的自己写的dll需要放在…
php设计模式课程---1.什么是设计模式 一.总结 一句话总结:经典场景的经典解决方法. 经典场景的经典解决方法 1.设计模式使用的通俗场景有哪些? 比如:拍电影时,常用设计模式 感情狗血剧:误会模式,某男和女同事,巧合手抓到一起,女朋友在窗外恰好看到. 杀人恐怖片:被坏人追杀,被害者跑到电梯里,电梯关到还有一道小缝隙时,坏人的匕首插进电梯缝隙关不上了. 2.为什么出现设计模式? 模式是因为语言不够灵活,不能适应复杂的场景,而想出的办法. 3.为什么java中的设计模式比php中的多? jav…
在C#语言的WinForm窗体程序中,有时候我们需要切换WinForm窗体程序项目的.NET Framework版本号,例如从.NET Framework 4.5版本切换到.NET Framework 4.0版本等,从高版本切换到低版本需要注意兼容性,有可能高版本中的有些语法以及封装方法在低版本中无法找到而导致程序错误. 下面以Visual Studio 2017中的Winform项目切换.Net Framework版本号为例,具体操作如下: (1)选中Winform项目的项目根文件,然后右键,…
前情概要 8月13日,Docker 公司更新了网站服务协议,条款申明,禁止禁运国家和被列入「美国实体清单」的组织和个人使用带有该服务协议链接的 Docker 网站和所有相关网站.这一更新协议迅速引起了业内的广泛关注与讨论,一时间有关“ Docker 被禁止使用”的讨论此起彼伏. 实际受限的产品与服务是什么? 结合1.1.1.2 和 2.5 条款,可以明确的是: Docker 公司禁止被列入“美国实体清单”名单中的企业使用 docker.inc 网站提供的Docker 商业版 Docker-EE…
昨天阿三正式发布了 Windows 11,版本号竟然是 22000.194,也就是 9 月 16 日的 测试版 22000.194,仅仅是文件改了个名,特别是消费者版本 hash 校验都是一致的. Windows 11 仍然是麦德龙风格和现代风格分裂设计,控制面板仍然没有改进完成,和设置还是跳来跳去. 只是继承了乔布斯遗志修改了 Dock(任务栏) 居中, Lanchpad 风格开始菜单,圆角窗体...... 请访问原文链接:https://sysin.org/blog/windows-11/,…