编程语言相关技术专家
能力说明:
掌握封装、继承和多态设计Java类的方法,能够设计较复杂的Java类结构;能够使用泛型与集合的概念与方法,创建泛型类,使用ArrayList,TreeSet,TreeMap等对象掌握Java I/O原理从控制台读取和写入数据,能够使用BufferedReader,BufferedWriter文件创建输出、输入对象。
暂时未有相关云产品技术能力~
阿里云技能认证
详细说明“硬件部署架构最终还是由代码的架构来决定。” 这段时间一直在尝试将已有应用系统进行基于云环境的移植和改造,发现拿老系统改造,难度还是很大的。 再一个,没有详细运维数据的支撑,很难做好服务器配置的规划。
《从架构的角度看,如何写好代码?》这篇文章是一线开发人员实践的经验总结,文字很通俗,应该是基于Java语言环境,但我认为也是符合多数PHP项目团队的所处实践阶段的。 “业余选手,越想从水里浮起来,就越想把头抬起来,身体反而沉下去。
最近看到一种理论:只工作不上班,就是远程工作,不用呆坐在办公室里毫无激情,而可以选择自己喜欢的环境或姿势,比如去星巴克或公园。 希望有生之年能创建一个这样的团队环境,至少要去一个这样的环境。
基于PHP是世界上最好的编程语言这个真理,我一直认为Hack才是程序员要学的下一门编程语言。 但今天看到InfoQ放出的新闻:“Google或许会将Swift编程语言纳入Android平台并作为首要开发语言”,瞬间觉得下一个值得投入的方向要换成Swift了。
钉钉是阿里的一款企业应用APP,里面提供了混合微应用的SDK,这其实最好的一种APP架构模式。微信公众号浏览器JSSDK也提供了类似功能特性,在在交互性上没有钉钉深入。 http://ddtalk.github.io/blog/2015/12/29/navbar/ 由JS定义应用“窗口”的交互界面和菜单,实现最大化灵活度。
卖桃君重新整理了Linus的相关故事,在此摘选对自己有触动的内容。 关于生命的意义,李纳斯的解释是,有三件事具有生命的意义。它们是你生活当中所有事情的动机。第一是生存,第二是社会秩序,第三是娱乐。生活中所有的事情都是按这个顺序发展的,娱乐之后便一无所有。
那些年追过的FreeBSD分支,有debian系的kFreeBSD,arch系的archBSD现在叫pacBSD,gentoo系的gentooBSD;但基本上在虚拟机环境很难成功安装http://www.cnblogs.com/x3d/p/3763422.html,所以连持续尝试的机会不多。
前两天看到一句话: "软件架构实际上包括:代码架构,以及承载代码运行的硬件部署架构。实际上,硬件部署架构最终还是由代码的架构来决定。" 云时代的开发模式与10年前的开发模式已经有了很大不同,但很多小作坊小厂都还是基于10年前的代码结构在做开发,何谈基于云的架构。
Git在做merge时经常碰到冲突的问题,多数情况都是用IDE中集成的“解决冲突”工具解决了,但有时不能依赖IDE时,就得回过头来去搞清楚Git的一些基础操作了。 mergetool. 其实还是不用命令行的对比工具自虐的,Linux下一般推荐kdiff3和meld这两个可视化合并工具,我选了meld...
PHP Stream Wrapper 原文:http://blog.sina.com.cn/s/blog_502c8cc40100k40e.html ,主要是基于SAE环境讲述相应的应用场景,本文经过一定的整理和少量补充。
又重新在VBox中安装Debian其它镜像两次,依然在安装桌面软件包时挂掉。。。
很多人花了钱去“北大”培训PHP后得到了一份理想的工作,这两天回想起我当初走上编程也是花了钱的 - 100块人民币。 那只是无意中看到学校里计算机中心的一个关于网页制作的培训课程宣传单,然后瞬间起意,报了这个班,从此走上了不归路;后面不断选修了一些计算机相关的课程,一发不可收拾了起来。
命名空间提供了一种从逻辑上组织类的方式,防止命名冲突。 几种常见语言 C++ 命名空间是可以嵌套的 嵌套的命名空间是指定义在其他命名空间中的命名空间。嵌套的命名空间是一个嵌套的作用域,内层命名空间声明的名字将隐藏外层命名空间声明的同名成员: int x = 20; namespace outer ...
快递查询服务能做到这个程度,真是牛掰到极点了。 尊敬的快递100客户: 快递100推送服务已增加QQ推送功能,请尽快让贵司的技术人员升级您的程序: 请在订阅报文中增加以下字段和值,我们会免费会向贵司的买家的QQ号推送物流跟踪信息,本功能不再另外收费: 我们正在规划在后续的版本中增加如单独为贵司开通QQ公众号、通过贵司的公众号来推送物流踪信息、加上贵司的链接或广告等内容,以实际的通知为准。
当在VirtualBox中尝试安装Debian 8.3.0 三次都失败后 - 每次卡在安装软件这一步,我决定不再迷信Debian软件包质量高这件事。
项目地址:https://github.com/web3d/TPUnit ThinkPHP PHPUnit框架集成,基于TP3.2,建议PHP 5.4以上环境。 单元测试应该是提高PHP编码质量的解决之道,但应该没有多少PHP团队在用单元测试改善开发过程,更不用提TDD开发方法。
这段文字其实只是标题党。 目前PHP猿的薪资水平普遍较高,但其实绝大多数PHP猿都不是科班出身,你问一个什么是OOP的问题可能都说不清楚。 在团队中,除了费力的去普及编程语言的基础知识,要想提高开发质量,应该还是要使用Facebook的HHVM、Hack这样的强类型语言。
项目地址:https://github.com/brianlmoon/GearmanManager PHP环境要求 PHP 5.5.9 POSIX extension Process Control extension pecl/gearman or Net_Gearman 使用GearmanManager的理由 运行Gearman的Worker是项比较让人讨厌的任务。
混迹江湖已有不少年头,缺人气。 在创业公司做,做不出创业的气氛来。搞技术的人其实好像并不在乎是否创业公司,只在意工资是否发得出,有没有事情做,公司本身能否成功与自己无关。 有多少人考虑过,如何成就团队的同时成就自己? 创业公司一般门槛低,容易得到一份Offer,但往往进去后就迷失掉,忘记了所处的人生阶段,忘记如何最大化的利用“公”的资源积累自己当前阶段所需的东西,而停留在拿一份工资出一份力的思维状态。
无意中看到Yii2提供的高级应用模板,里面将入口文件与环境相关配置项放到独立的目录下的相应文件中。这应该算是一种比较理想的应用配置管理方案了。 以前整理过一种思路:http://www.cnblogs.com/x3d/p/3956925.html Yii2提出的方案比这个更往前进化了。
以yii2为例 打包文件过程比较简单,但打包好以后简单测试yii命令,一直报错: PHP Fatal error: Uncaught yii\base\InvalidParamException: The directory does not exist: phar:///Users/jimmy/PHP/Library/yii2-advanced/yii2.
项目地址: https://github.com/web3d/DingtalkSDK.git 钉钉官方有些简单的demo,但封装得有些粗糙。 开发的过程中,做了一个有点小意思的工具:json数据转换为PHP 实体类。
最近一两年都在尝试远离QQ邮箱,而尽量用较早注册的163邮箱,原因是我以为已经不需要读QQ邮箱中邮件订阅的心灵鸡汤。 起初一年下来,感受是根本TMD的戒不掉啊戒不掉! 我不抽烟,不爱酒,但隔三差五需要喝点鸡汤。
几个环节都让人无暇思考其真实性,直到我刚好去查看了邮箱帐号,发现根本没有这个帐号,才反应过来。
原文:http://php.net/manual/en/migration70.new-features.php 1.标量参数类型声明 现在支持字符串(string)、整型(int)、浮点数(float)、及布尔型(bool)参数声明,以前只支持类名、接口、数组及Callable 两种风格:强制转换...
一门语言用到深处,就避免不了要对数据的类型进行准确判断,并针对其类型做正确处理。 抛开在Web前端环境不谈,从一门独立编程语言的角度来看js,你就会感受到对js中数据类型的理解有多么重要。 禁止直接多级访问对象属性,必须一级一级访问;如abc.
问题在哪 在计算机术语中,Profile其实是很难用中文对应的词汇来翻译的一个单词。 在X3D国际标准中,就出现了Profile。它把软件产品对X3D的功能实现范围和相应支持程度做了预先的约定,分为Core Profile、Interchange Profile、Interactive Profile、Immersive Profile、Full Profile等多种。
对于搞技术的来说,总觉得自己接触的实践过的才有得写。 但作为一个普通人,日常会产生很多想法和灵感,记录下来后,就可以在适当的时候,将其完善为一篇文字。而不需要像技术那样,先实践了或先实现了,才想写出来。
Git目前的代码分支管理模型中,比较主要的有Git-Flow、Github Pull Request。大家日常或多或少都在用着。 在不想安装Gitlab这种重量级的环境的情况下,如果是利用git一步步搭建团队的GIT服务的话,比较麻烦,而且维护更麻烦。
OpenCart是一套老牌的开源自由B2C电商系统,最近watch了其托管在在github上的项目,发现还是很活跃的,每天都有人反馈bug。 初步的看一下,它是支持在后台管理多个店铺的,而且可以同一个商品在不同店铺有不同的价格;店铺之间可以绑定不同的域名。
跳转到支付页面后,支付宝的收银台提示: 支付存在钓鱼风险 错误吗:AE130001040 找到了相应页面:https://cshall.alipay.com/enterprise/help_detail.
在老的 PHP 系统中使用 PHP 5.3以后的库 所谓老的系统,是指没有使用PHP 5.3以上命名空间(namespace)特性编码的系统。 但是,只要你的系统运行在 PHP 5.3及以上的环境,在你的老系统中,是可以使用这些基于新特性如命名空间编码的库或代码的。
原文已经找不到出处,重新整理格式,仅作个人收藏! 标签(Tag)可以针对某一时间点的版本做标记,常用于版本发布。 列出tag $ git tag # 在控制台打印出当前仓库的所有tag $ git tag -l ‘v0.1.*’ # 搜索符合模式的Tag 打tag git tag分为两种类型:轻量tag和附注tag。
整个2015年,如果要给自己打上一个标签的话,那应该就是 API。 在各个不同的系统中定制各种 API 框架。 在做商城对接各种电商 ERP 的 API 开发中,我采用的是兼容SHOPEX 的 API 接口,因为各种 ERP 基本都支持。
初创公司,往往很长时间内都是处于基础功能开发、而业务没有良性增长的阶段;如果不幸一直在这样的公司混,很容易迷失掉。 技术到底能否创造价值?创造的价值如何分配? 写程序本身是一件很有创造力的事情!可是我想做产品!但是我不知道要做什么产品! 附图一张: 图片来源:http://www.
基于Typecho CMS框架开发大中型应用 大中型应用暂且定义为:大于等于3个数据表的应用!汗吧! Typecho原本是一款博客系统,其框架体系有别于市面上一般意义MVC框架,主体代码以自创的Widget为基类,整体非常简洁。
在博客园的排名,从当初的2万左右升到6000左右以后,几乎就没有大的变化了,尽管没有仔细研究过博客园的排名机制,但排在我前面的这6000人确实实实在在的。
一、配置 PHPUnit截至2015-10-16,稳定版已更新至5.0.6,要求使用PHP v5.6及以上的环境才能使用。 PHPUnit的4.8系列要求在PHP v5.3.3以上环境使用。 Netbeans从Sun被Oracle收购后,更新越来越慢。
多数程序猿加入创业公司,一是门槛低,只要你能做点东西就可以加入;二是被需要,没有程序员做不出东西。 程序猿加入后,等待他的现实,就是没有方向的产品方向、低下的工作效率、毫无尊严的岗位、毫无发展空间的职业,用一个字来概括:悲惨、无助。
工作中,外部的客户及内部其他同事包括老板的反馈往往容易让人有沮丧感。 为什么会沮丧?也许是个人自尊心,也许是个人追求吧。 这种沮丧感,就意味着比较长的时间内的迷失。 就在刚才,内心忽然产生一种想法,做好自己就够,确保自己快乐,别人快不快乐我不管,也无需管。
曾经有一年,将《星球大战》反反复复看了很多遍,里面有一个很重要的理论:人生需要导师。一部电影只反映了人生的一个阶段,好的导师能引导你在这个阶段成长。 我经常挂在嘴边的一句话就是:作为一个成年人,面对这个问题,你应该具备这样的思维能力。
利用sae做的io wrapper接口,对dokuwiki做了基于sae的分布式storage存储改造,能正常安装和运行,但速度太慢,基本没什么用。 定义一个常量: define('SAESTORE_PREFIX', 'saestor://wiki/'); 在要写入权限的 conf 和 data 处,全部构造成以SAESTORE_PREFIX 为根目录的格式。
简单的理解,BearycChat是一种IM,是一种能聚合各种MS系统消息的东西,是团队协作过程中消息流转的利器。 我是工具控,所以不折腾不舒服。 废话不说,上码: /path_to_zentao/module/action/ext/model/logHistory.php
Elixir官网:http://elixir-lang.org/ Elixir是一种函数式动态语言,用于构建可伸缩、易维护的应用程序。 Elixir是基于Erlang VM的,其广为人知的特点是运行低延时、分布式、可容错的系统,并成功用于Web开发与嵌入式软件领域。
以下文字中的渐进式开发是否指迭代式开发 渐进式开发的魅力 现在称作敏捷开发的开发方式不仅是大部分软件项目,也是很多不同类型的产品开发的最佳做法。 构成敏捷开发的依旧是拉动式原则,而不是推动式原则。 在敏捷或者迭代的软件开发中,拉动来自于项目期间不断的反馈—从每日构建的测试和可用性实验室的结果,内部的“阿尔法”测试员(吃自己的“狗粮”),以及外部的其他测试员。
目前freebsd pkg包管理体系的repo源多了一些,速度快了很多。 仓库中目前的版本为3.14,安装gnome3很简单。 pkg install xorg gnome3 echo "exec /usr/local/bin/gnome-session" > ~/.xinitrc vi /etc/rc.conf hald_enable="YES" dbus_enable="YES" gdm_enable="YES" 就搞定了。
http://pkg.freebsd.org/ 在这个页面上可以看到: pkg0.bme.freebsd.org pkg0.nyi.freebsd.org pkg0.twn.freebsd.org pkg0.ydx.freebsd.org 可以在/etc/pkg/FreeBSD.conf中修改服务器地址成你想尝试的地址。
原文: http://www.cnblogs.com/Irving/p/4134629.html web:http://oauth.net/2/ rfc: http://tools.ietf.org/html/rfc6749 doc:http://oauth.net/documentation/ code:http://oauth.net/code/ 什么是OAuth2.0 OAuth2.0是一个开放协议,允许用户让第三方应用以安全且标准的方式获取该用户在某一网站、移动或桌面应用上存储的私密的资源(如用户个人信息、照片、视频、联系人列表),而无需将用户名和密码提供给第三方应用。
最近Oracle又在和Google撕的厉害,才知道还有这么Kotlin在Android像Swift在Mac的地位一说。 Kotlin是一门与Swift类似的静态类型JVM语言,由JetBrains设计开发并开源。
开发工具包括浏览器都是极占内存的,没有个8G根本不行啊。 怎一个慢字了得? 补记: 放弃谷歌浏览器是正道