编程语言相关技术专家
能力说明:
掌握封装、继承和多态设计Java类的方法,能够设计较复杂的Java类结构;能够使用泛型与集合的概念与方法,创建泛型类,使用ArrayList,TreeSet,TreeMap等对象掌握Java I/O原理从控制台读取和写入数据,能够使用BufferedReader,BufferedWriter文件创建输出、输入对象。
暂时未有相关云产品技术能力~
阿里云技能认证
详细说明我基本上属于半成品专业户,去看我的github就知道。 下午又撸了一个weblog rpc client库,而这又一次证明了一个有技术但没有产品能力的程序员是没有卵用的。 因为当做好了库的雏形,但与具体的系统结合时,已经习惯等待产品经理去调研需求、设定产品流程,而自己的思维也停顿在这,不愿再往前想。
今天做了一件有些风险的事情 - 将Incutio XML-RPC库基于PHP的命名空间改写了一下,但vendor还继续用了Incutio\ 。其实这很可能触犯了原作品的许可协议或是著作权之类。 整个过程,还有几个感受: 1. 代码重用的基本思想 代码重用,分团队内和团队外,我们提取出来的可重用代码可能与其它团队在功能上会有部分重复,所以代码的耦合度需尽可能低,保证总有那么一部分代码是可以重复使用的。
程序员按项目性质大致有三种:写Demo的、写Proto的、写成品的;按项目开发周期大致有:写开头的、写中间的、写结尾的。 Demo是样品,主要是表面上初步实现,临时忽悠客户用的,不一定要求继续演化; Proto是原型,主要是从概念上实现,可能包含了对于底层框架的选型,能逐步演化为成品;在一些场景中Demo和Proto的意义接近; 成品即完整实现的产品,满足用户实际业务场景。
Netbeans 8.2在这个国庆期间终于发布了,其与PHP相关的新特性主要有: 支持PHP 7 详见前面翻译的一篇文章:Netbeans 8.2将支持PHP 7 编辑器功能增强 文档好像没有明确说明,我也还没有发现。
一直懵懵懂懂对人格这个词比较感兴趣,还读过所谓“九型人格”的书籍,但对人格的定义却不甚了解。但最近看了豆瓣上关于多重人格的一篇文章:https://www.douban.com/note/582954643/ 后,人格这个词就一直在脑海里出现,并且深深的为自己的人格担心起来,数一数,好像也有一二三四五六七八中人格了啊。
如标题一样,本文并最终没有结论,只是问号。 业余时间看过很多系统代码,就和我们在工作中接触前任的代码一样,总是觉得有很多要吐槽的地方,这是程序员的通病,其间忽略了最重要的东西 - 产品的本质。好的产品并不只是依赖技术,当然好的技术提升产品体验、加速产品迭代,但很多时候不是决定性因素。
电脑一直莫名的随机卡死,各种软件都出现了一些崩溃和不稳定的情况。 Siri就是个笑话,启用后就开始索引本地硬盘,不管你有没有正在工作;直到你启动Siri,会暂停一下,然后就算是你开在哪不动,过两分钟,后台又开始索引,不管你在干嘛。
家庭是爱和包容的空间,但公司是追逐利益的场所,所谓的价值观背后应该都是一个字“钱”。 这次的抢月饼事件,其实关你我毛事,以一只蝼蚁的角度,也完全没有评价的资格。 只是毕竟职场这么多年,难免感同身受罢了。
题目:“1 + 1 等于几” 数学运算 用你擅长的语言基于MVC模式实现 这个,敢吗? 这是我面试别人时最常用的一个话题,多数程序员咋一听往往都是一脸懵逼:有这个必要吗? 我只能很严肃的告知:肯定有,需求总是不断变化,良好的设计可以让后期的变更更方便! 代码写多了,如果你的风格只是一成不变,套路,未免有点失败。
学Kotlin其实要看:http://kotlinlang.org/docs/kotlin-docs.pdf 在线版是不完整的!!!少了一些章节,会有点难看懂后面的文档。 我选择了WordPress里的错误消息管理类wp-error.php为对象,没有依赖其他具体场景和类,所以比较适合移植和对比。
可以先看看代码对比,精华都在代码里: 基于类的方式改写: http://git.oschina.net/web3d/DeCMF/commit/58f915b9d24ab5ffe40adf4ad4ed769fdb6ebe6e 原来的函数形式: http://git.oschina.net/web3d/DeCMF/commit/228983fb76b7bd6b69e6116d984ebfe7454d4b8d 这个项目是为了演示OOP编程实践而建立的,基于OneThink CM框架。
关于爱,每个人都有不同的态度和想法。也许有一天,我们突然发现,自己所爱的原本就是一个幻像中的人,我们想爱的其实只是梦里自我的虚无。 “爱无能”一词是同名书籍作者镜子于2001年创造的词语。 自我价值不足是导致爱无能的最根本原因。
yii的应用模板中,index.php中 前面会有这两句
用php进行静态类型编程,估计是我的一个心结。 依次有几篇文章都记录了我的一些探索: 通过指定函数/方法形参类型提高PHP代码可靠性 http://www.cnblogs.com/x3d/p/4285787.html 用Yii框架中的collections体验PHP类型化编程 http://www.cnblogs.com/x3d/p/php-typed-programming.html 从PHP 7 开始,PHP支持函数和方法的参数及返回值的标量类型标注,逐渐走出了这一步。
在PHP后端和客户端数据交互的过程中,JSON数据中有时格式不定,一会儿是数组,一会儿是对象,弄得客户端开发人员要崩溃的感觉。 因此,前后端相关人员先对PHP的json_encode函数原理有必要的了解是最重要的一个环节。
理想主义与现实主义,哪一种心态好? 本质上,这么多年来,我都是理想主义,内心总有很多幻想,想要干票大的;但其实一路走下来,当你选择了什么样的路线和付出,你就注定有什么结果。 今天看到一个理论:选择大于努力,但大多数人没有那个运气选到好的,所以,大多数还得靠努力。
设计思想中有两种极端:大而全、小而美。 一般我们常用的库是小而美,用的框架是大而全。从Symfony实现Component式开发开始,框架的组件化逐渐成为趋势。我们可以任意的组合各种Compoent来形成自己的PHP框架,比如B团队出的Db及ORM引擎、B团队出的缓存引擎、E团队出的Route映射引擎、C团队出的DI、D团队出的MVC、X团队的单元测试工具。
不是没有事情,是写出来也无济于事
2016年6月22日,第一款开源免费的完整支持PHP 7版本的IDE - PDT 4终于发布。原本我是期望Netbeans 8.2的,但PDT 4.0 发布,就等不及了。 PDT团队很高兴的宣布PDT新版本 - 4.0发布: 这是一个大版本的发布,它做了巨大的性能改进。
今天面试了一个Web前端,自称发展遇到瓶颈,才想要换工作。 我问了几个问题,他都回答不出来。然后告诉他,这就是你的瓶颈:只重实践,没有系统的理论知识作为支撑。 结局就是:反过来说我不应该问他这些理论知识,我这样根本招不到人。 所谓瓶颈......大家评评理吧!
推荐一个跨平台模块化App框架 -Small。 Small,做最轻巧的跨平台插件化框架。 功能 完美内置 所有插件支持内置于宿主包中 高度透明 插件编码、布局编写方式与独立应用开发无异 插件代码调试与整包开发无异 极致剪裁 对插件分离所有一切能分离的公共代码、资源 无缝链接 通过设定URI,宿主、本地化应用插件、本地化web插件、在线网页,以及任何自定义的插件之间能够相互调起与传递参数 跨平台 目前已支持Android、iOS以及html5插件。
这里首先有一个问题要考虑的是,这类方法是否要被测试? 理论上,这类方法都会被其它public类型的方法调用,只要对那些public的方法做充分的测试,就可以保证这些方法的可靠性,就没有必要再测了。好像是有道理的。
只能叫初试,前面虽然做了一些PHPUnit与团队所用框架的整合,但在整个团队还没有人可以主动推动这个事情,而作为Leader最重要的一种能力应该是“让正确的事情发生”,所以今天开始着手对现有代码的Model进行单元测试用例和代码的编写。
Kotlin中,一切皆对象;PHP则并非一切皆对象,甚至不需要对象的存在即可完成系统功能开发,我们现在可以接触到的旧的系统都可以说明这一点。 基本数据类型 数值型 类型 位长 双精度浮点型Double 64 浮点型Float 32 长整型Long 64 整型Int 32 短...
基础知识 Kotlin简单的说是Java语言的改良版本,是一种静态类型编程语言,可运行于JVM、Andoid或JavaScript环境,于2016年2月15日发布1.0正式版。Kotlin定位于一门通用性编程语言,可用于服务端、移动端和桌面编程。
这是我尝试给自己一个目标去学会一门新语言的方法。正在创作中,敬请期待! 提纲 第一小时 概念 第二小时 基础 第三小时 函数 第四小时 类与对象 第五小时 类与对象二 第六小时 DSL 第七小时 工程化
搞开发的人,包括我自己,有时缺少了对于价值的判断能力。 昨天看了一篇关于联想和华为的文章,有些感触。里面提到一个观点,联想是产品驱动,华为是技术驱动,导致了多年后两家公司的巨大反差,华为的市值是联想的N多倍。
我做过的很多系统中,都避免不了一套逻辑,根据人员所在级别去判断相应权限,而不是所属角色对应的权限。 这其实好像是一种典型的景德镇特色。 所以处理起来,都得建立一套部门层级的节点,然后遍历查找等等,曾经还看到过比较专业的《左右值编码来存储无限分级树形结构的数据库表设计》之类的文章。
hhvm是php的第三方运行环境,由facebook出品,基于该运行环境,它还提供了一种编程语言hack - PHP的静态类型版。 折腾了一天后,包括各种编译、配置、FQ,后面终于忍不住搜了一下 http://dl.hhvm.com mirrors ,终于找到了答案。
钱是我现在挂在嘴边说得最多的一个词。
SB的世界你们不懂
在一个“情怀”已经泛滥的年代里,任何拿着“情怀”出来说事的人都不太受待见。犀利者会吐槽:“我早已看穿了一切”。 但你是否想过,如果这世界所有的公司和管理者都来和你谈处理器、谈屏幕大小、谈钱、谈股票、谈下午茶…一切真的还值得吗? 其实,真正优秀的leader,才会和你“谈情怀”。
如今,有一种BaaS服务(后端即服务)的模式,即无需编程即可生成后端应用及相应API。 Drupal这套CMS下,有一款插件Services,可以在线直接自定义各种格式如json、xmlrpc、webservice等的API接口,并且具有版本化管理的功能,牛之极。
真有这么一本书。 主要介绍系统软件的运行机制和原理,涉及在Windows和Linux两个系统平台上,一个应用程序在编译、链接和运行时刻所发生的各种事项,包括:代码指令是如何保存的,库文件如何与应用程序代码静态链接,应用程序如何被装载到内存中并开始运行,动态链接如何实现,C/C++运行库的工作原理,以及操作系统提供的系统服务是如何被调用的。
DCloud与APICloud这两家目前应该说是市场占有率和人气较高的国内团队;国内还有一些其他的方案如AppCan、exMobi之类的,但可能是商业运作手法上Big不够,近两年的名气不太大,但各自其实有相当的用户基数。
人真的能做到吗?
2元/月 纯净邮箱支付成功通知信 因为这个邮箱算起来是我的第一个邮箱,注册年份是2003年,在我从2002年开始接触互联网的生涯中,算是很重要的东西了。 网易邮箱中,无处不在的广告,真是让人烦不胜烦。
Arch Linux上Gnome桌面截图欣赏: 相比而言,Debian的壁纸一直好像格调不够啊:
前端做出点效果来很容易,也方便体现价值,但往往代码耦合度很高,维护起来让人烦躁。 就连用得最广泛的前端框架Bootstrap都与Web标准的思想相背离。前阵子白宫网站部门不是公开表示不用bootstrap吗。
有很多因为爱好自学或者职业培训走上编程之路的开发人员,我也是其中一员-前者,编程之路很漫长,要学的东西远远不止起步时所学的那一点东西,需要披荆斩棘,补充很多基础知识,同时要跟上新的技术趋势,无比苦逼。 有时间停下来时,就会有气馁的感觉。
基础类型 PHP中主要的基础类型可以在Hack中进行显式类型标注。包含: bool int float string array resource
在typechecker的配合下,Hack语言的类型化能力是Hack其他功能特性的基石。开发Hack语言的主要动机也正是为代码提供显式类型标注以便对代码进行类型一致性和潜在错误分析。 这是用于对比Hack特性的一个实例,用传统PHP形式编写:
Hack最基础的特性就是类型标注。PHP5已经开始支持对象的类型化,PHP7也提供了标量类型化声明。Hack提供了全面的类型标注支持,与其typecher配合使用,还可以实现快速、前置静态类型验证。 什么是类型标注? 类型标准允许给类属性、方法/函数参数、方法/函数返回值及代码其它组件添加显示类型,如int。
Hack语言主要有三大看点:类型化、异步、集合。 Hack最基础的特性就是类型标注。PHP5已经开始支持对象的类型化,PHP7也提供了标量类型化声明。Hack提供了全面的类型标注支持,与其typecher配合使用,还可以实现快速、前置静态类型验证。
漫漫人生路,一步一个脚印,脚印被甩在身后,恍惚间却又好像失去了所有的风景。是人世间所有的情,不同的路,拼凑了自己的一生。 不是每个人都能实现自己的理想,但是我们都希望自己的理想被别人认可,这样你就会觉得自己做点梦是有价值的,被人认可的价值。
我不知道我在工作或生活中是否有标榜过什么,但有时跟那些标榜过自己是这样那样的一种人接触的时候,总是有些感触。 你会标榜自己吗? 比如贤惠,漂亮,善良,真诚。 为什么喝咖啡就可以标榜自己是文明人? 自我标榜 基本解释: 标榜:吹嘘,夸耀。
基于“PHP是世界上最好的语言”这一理论前提,Hack是PHP的静态类型版,所以至少应该也是一门好的语言吧。
在尘世中沉浸得越久,越无法集中精力去做好一件事。 缺乏学习!
命名空间其实只是一个形式,最终目的是重构代码,但这个过程想要一蹴而就是不可能的。 一开始给了一个伪命题:基于ThinkPHP的重构(不要问为什么)。经过一段的实践,发现这是一个大错特错的思维方式,其中遇到的坑在此略过不表。
其实自己去设计一套框架或系统的特性时,是很难做到这一点的;只是在评判别人的劳动成果时,有可以指手画脚的基础,才有所界定。 这也是新手要坚持很长一段时间去阅读优秀源代码的原因。 在巨人的肩膀上,才能看得更远。