--http://blog.sina.com.cn/s/blog_7711e5c20101e1bb.html
数据金矿:蕴含巨大商机能在数据之间发现联系并将其转化为商业机会的公司,能从数据中挖掘出真正的商业价值,进而进行企业的数据化运营,帮助消费者进行理性的购物决策,是数据平台公司与移动互联网公司产品的使命。
记得二年前我在¨中国电子商务之¨断桥¨¨博文中谈到¨对我们从事互联网中国企业而言,决不要再只做美式模式的传真打印复印机了!要学¨指点江山,激扬文字¨的中囯伟人毛泽东哪样,一切从实践出发,实事求是,调查研究中国之国情!就象中国航天¨天宫神八¨太空对接成功一样!将我们这座¨电商神八大桥¨ 安全快速建设起来!而且有一种¨傻瓜机¨简单方便操作模式,快速普及到核心用户中小企业家的团队中¨而今还是美国企业先实现了APP网站移动化¨傻瓜机¨简方便操作模式,
随着智能手机及APP应用程序的普及,越来越多的企业和个人意识到APP的营销价值,出于对技术的敬畏,很多企业下意识认为开发APP是一个有难度的技术活,所以就算有心想开发一个企业自己的APP来对企业或者产品做宣传、交易,也担心APP的后续的技术支持、内容管理、维护等问题。
现在是打消这种疑虑的时候了。国外的营销工作者和技术开发者开发了许多能帮助企业创建简单APP应用的工具,通过这些工具,就算是一个对程序一窍不通的普通网民都可以很容易的创建一个企业的APP程序,并可以对程序进行应用更新维护,开展营销等活动。
下面给大家介绍几款傻瓜式的APP开发工具:
Bizness Apps
Bizness Apps为中小企业提供了一个快速制作手机App的平台。它目前支持iOS(iPhone、 iPad)及Android平台上的本机App制作。用户完全不需要具备任何编程知识,只要进行按钮勾选及拖拽,就能完成大部分设计工作。建立App时,首先选择你的App类型。Bizness Apps为每种类型提供了相应的模板,包含了该类型大部分的常见功能,用户只需要进一步在选单中选取你的App需要的功能即可完成本机App的设计。在 App完成后,Bizness Apps会帮你把App上传到他们在iOS和Android应用商店的帐号。当然,你也可以申请帐号自己上传。选择iOS或Android之一,Bizness Apps收费为每个平台39美元。如果选择同时支持两个平台,总共仅需59美元。这个价格对于中小企业来说实在很有吸引力,只需要一比颇小的投入,就能利用App进行品牌营销。
同时,Bizness Apps公司还发布了其HTML5的手机App制作平台,中小企业们只要额外支付每月10美元的费用,就可以同时拥有本机应用和HTML5的Web应用。HTML5的手机App最大的好处无疑在于其跨平台特性,客户只要制作基于HTML5的App就可以实现对所有智能机平台的支持。
作为HTML5平台发布的一部分,Bizness Apps还建立了一个QR码模块,帮助中小企业进行手机App推广。消费者只要用手机扫一遍QR码,就能快速定位到对应平台的App。
Bizness Apps简明的操作、强大的功能以及美观的UI,吸引了众多中小企业使用他们的服务。自去年10月正式上线以来,其增长势头异常迅猛,已经完成了超过1000个App,覆盖10 多种语言,20多个国家。
二、DevmyApp
一款傻瓜式的iOS应用程序开发软件。有了该应用,您就可以创建、设计和开发自己的iOS应用程序,同时还可避免为一些经常出现的功能模块重复编写代码。
DevmyApp的主要特色功能有:
- 视图和过渡:创建视图并为其增加动画过渡效果。
- 共享 应用:启动外部原生应用,如Safari、电话或短信等。 - 动画:创建基本的动画。
- 网页视图:创建网页视图用自定义的控制方式导航互联网。
- 地图视图:创建可在混合地图和卫星地图之间切换的地图并可提示用户位置。 - 滚动文字:创建在屏幕上滚动的标签。
- 摇晃 API:创建摇晃iDevice时执行的操作。
- 应用内程序:启动消息或邮件等原生应用并在应用内使用。 - 提醒视图:创建自定义提醒视图。
- 旋转模式:当您转动iDevice时使应用支持横屏模式。 - 振动:使特定操作触发振动。
每项特色功能都带有说明并可预览应用内集成的实际例子的效果,而且还可预览代码和通过邮件发送代码。代码中包含注释和解释,您可对其进行修改满足您应用程序的需要。 对于想要通过强大的功能增强创意的iOS开发人员和iOS平台开发新手,该应用都是必备应用。
注意:
- 要开发iOS程序,您需要有一台Mac系统的电脑。
若要理解和运用该应用中包含的代码,您需有一定编程知识(特别是Objective-C语言)。
三、appsgeyser
使用AppsGeyser就可以让任何人都可以做应用程序的开发。当然,这个程序并不能让你创建下一个愤怒的小鸟或者Foursquare。不过你仅仅想基于Web内容建立一个非常简单的应用程序的话,AppsGeyser将会是你最佳的选择。AppsGeyser其实非常容易。它仅仅有三个选项:首先,你可以任意输入一个移动网站网址,即可生成一个应用;第二,输入任何网页小工具的 HTML代码,便可直接转化为Android应用;第三,通过工具抓取网页上的版块生成应用。一旦你的工作完成后,你可以将其上传到Android Market上(但你事先要有一个出版商帐号)或者供你自己使用这个程序上个月才可以使用,但其联合创始人Vasily Salomatov称用户已经用AppsGeyser创建了1000个应用程序。
以上这些自动化APP制作工具的开发成功验证了一个道理!与人方便,与已成功方便!这些厂商因此开发不仅方便了中小企业信息化移动平台成功同时也赢得长期的群用户深度共赢利益捆绑!而今向中国市场进驻!可谓挣得头彩赚得盆满钵满。
这只能说明简单的道理就是成功模式!成功的模式往往就是简单的!我们现在的所有发现和创新只是挖掘发现早就存在于我们身边不为人知的新的规律和秩序所以道理就是简单的很!商业模式是一个系统,分为几个方面。第一是用户模式,就是要回答谁是自己的用户,给他们提供什么样价值的东西。第二是产品模式,简单地说,就是你要做什么,不做什么。第三是市场模式。就是你要如何定位,用什么样的手段去推广。第四是收入模式,怎么把用户价值转换成商业价值.因此从一切以用户需求为中心的市场利益捆绑价值观,决定了上述所有模式的核心还是要面对用户的实现需求之核心,所以不去中小企业圈中深入调查研究,急所急,补其短,帮其行!这种互联网产品牌的商业模式是空中阁楼,
所以我们一直坚持开发方便广大用户网购,网乐,网学;网交友;云办公,云管理;云营销!云社交;云物联!云住宅;云小区;云智盒;云快递;智能化自动化简便使用化为开发宗旨!以LBSO2ORQ技术模式,从人与人交友的二点聚合基础单元为中心开始!以位置 LBS,线上线下O2O虚实互融为通道,二维码为钥匙,用语音、图片及多媒体为互动工具,打造一个本地化的社区生活服务商务网,并且以PC为纽矩,以手机移动平台为用户贴身好管家;用威客之力聚天下之力,从点评开始分享天下之美!关心武汉地铁商圈经济;关心武汉地铁新生活!成为武汉社区生活服务的新视窗,全心全意为本地人民生活、工作、娱乐服务!为此我们将不断地完善提高网站的人性化、细微化、互动性、多媒化、地图流化、娱游性、电商为C2C2D2B易自合、客户价值最大化、PC与手机无缝链接化而努力探求,在人民服务网本地化生活服务LBSO2O电商O之方向,社交空间域边界的划分的,和社交SNS域的强弱关系利用,寻觅六度网络空洞之LBS桥的位置的过程中产生了一点心得来与朋友分享!下面三点观点准备为app开发所循;可决定社交域如电商o2o方向;请多指点!
1, 决策树ID3算法,2聚类算法,3.可控自动化(IoC)框架
1。决策树ID3(C++实现)
数据挖掘课上面老师介绍了下决策树ID3算法,我抽空余时间把这个算法用C++实现了一遍。决策树算法是非常常用的分类算法,是逼近离散目标函数的方法,学习得到的函数以决策树的形式表示。其基本思路是不断选取产生信息 ...
数据挖掘课上面老师介绍了下决策树ID3算法,我抽空余时间把这个算法用C++实现了一遍。
决策树算法是非常常用的分类算法,是逼近离散目标函数的方法,学习得到的函数以决策树的形式表示。其基本思路是不断选取产生信息增益最大的属性来划分样例集和,构造决策树。信息增益定义为结点与其子结点的信息熵之差。信息熵是香农提出的,用于描述信息不纯度(不稳定性),其计算公式是
i为子集合中不同性(而二元分类即正样例和负样例)的样例的比例。这样信息收益可以定义为样本按照某属性划分时造成熵减少的期望,可以区分训练样本中正负样本的能力,其计算公司是
我实现该算法针对的样例集合如下
该表记录了在不同气候条件下是否去打球的情况,要求根据该表用程序输出决策树
C++代码如下,程序中有详细注释
#include
#include
#include
#include
#include
#include
using namespace std;
#define MAXLEN 6//输入每行的数据个数
//多叉树的实现
//1 广义表
//2 父指针表示法,适于经常找父结点的应用
//3 子女链表示法,适于经常找子结点的应用
//4 左长子,右兄弟表示法,实现比较麻烦
//5 每个结点的所有孩子用vector保存
//教训:数据结构的设计很重要,本算法采用5比较合适,同时
//注意维护剩余样例和剩余属性信息,建树时横向遍历考循环属性的值,
//纵向遍历靠递归调用
vector > state;//实例集
vector item(MAXLEN);//对应一行实例集
vector attribute_row;//保存首行即属性行数据
string end("end");//输入结束
string yes("yes");
string no("no");
string blank("");
map< string > > map_attribute_values;//存储属性对应的所有的值
int tree_size = 0;
struct Node{//决策树节点
string attribute;//属性值
string arrived_value;//到达的属性值
vector childs;//所有的孩子
Node(){
attribute = blank;
arrived_value = blank;
}
};
Node * root;
//根据数据实例计算属性与值组成的map
void ComputeMapFrom2DVector(){
unsigned int i,j,k;
bool exited = false;
vector values;
for(i = 1; i < MAXLEN-1; i++){//按照列遍历
for (j = 1; j < state.size(); j++){
for (k = 0; k < values.size(); k++){
if(!values[k].compare(state[j][i])) exited = true;
}
if(!exited){
values.push_back(state[j][i]);//注意Vector的插入都是从前面插入的,注意更新it,始终指向vector头
}
exited = false;
}
map_attribute_values[state[0][i]] = values;
values.erase(values.begin(), values.end());
}
}
//根据具体属性和值来计算熵
double ComputeEntropy(vector > remain_state, string attribute, string value,bool ifparent){
vector count (2,0);
unsigned int i,j;
bool done_flag = false;//哨兵值
for(j = 1; j < MAXLEN; j++){
if(done_flag) break;
if(!attribute_row[j].compare(attribute)){
for(i = 1; i < remain_state.size(); i++){
if((!ifparent&&!remain_state[i][j].compare(value)) || ifparent){//ifparent记录是否算父节点
if(!remain_state[i][MAXLEN - 1].compare(yes)){
count[0]++;
}
else count[1]++;
}
}
done_flag = true;
} }
if(count[0] == 0 || count[1] == 0 ) return 0;//全部是正实例或者负实例
//具体计算熵根据[+count[0],-count[1]],log2为底通过换底公式换成自然数底数
double sum = count[0] + count[1];
double entropy = -count[0]/sum*log(count[0]/sum)/log(2.0) - count[1]/sum*log(count[1]/sum)/log(2.0);
return entropy;
}
//计算按照属性attribute划分当前剩余实例的信息增益
double ComputeGain(vector > remain_state, string attribute){
unsigned int j,k,m;
//首先求不做划分时的熵
double parent_entropy = ComputeEntropy(remain_state, attribute, blank, true);
double children_entropy = 0;
//然后求做划分后各个值的熵
vector values = map_attribute_values[attribute];
vector ratio;
vector count_values;
int tempint;
for(m = 0; m < values.size(); m++){
tempint = 0;
for(k = 1; k < MAXLEN - 1; k++){
if(!attribute_row[k].compare(attribute)){
for(j = 1; j < remain_state.size(); j++){
if(!remain_state[j][k].compare(values[m])){
tempint++;
}
}
}
}
count_values.push_back(tempint);
}
for(j = 0; j < values.size(); j++){
ratio.push_back((double)count_values[j] / (double)(remain_state.size()-1));
}
double temp_entropy;
for(j = 0; j < values.size(); j++){
temp_entropy = ComputeEntropy(remain_state, attribute, values[j], false);
children_entropy += ratio[j] * temp_entropy;
}
return (parent_entropy - children_entropy);
2。聚类分析
什么是聚类分析?
聚类 (Clustering) 就是将数据对象分组成为多个类或者簇 (Cluster),它的目标是:在同一个簇中的对象之间具有较高的相似度,而不同簇中的对象差别较大。所以,在很多应用中,一个簇中的数据对象可以被作为一个整体来对待,从而减少计算量或者提高计算质量。
其实聚类是一个人们日常生活的常见行为,即所谓“物以类聚,人以群分”,核心的思想也就是聚类。人们总是不断地改进下意识中的聚类模式来学习如何区分各个事物和人。同时,聚类分析已经广泛的应用在许多应用中,包括模式识别,数据分析,图像处理以及市场研究。通过聚类,人们能意识到密集和稀疏的区域,发现全局的分布模式,以及数据属性之间的有趣的相互关系。
聚类同时也在 Web 应用中起到越来越重要的作用。最被广泛使用的既是对 Web 上的文档进行分类,组织信息的发布,给用户一个有效分类的内容浏览系统(门户网站),同时可以加入时间因素,进而发现各个类内容的信息发展,最近被大家关注的主题和话题,或者分析一段时间内人们对什么样的内容比较感兴趣,这些有趣的应用都得建立在聚类的基础之上。作为一个数据挖掘的功能,聚类分析能作为独立的工具来获得数据分布的情况,观察每个簇的特点,集中对特定的某些簇做进一步的分析,此外,聚类分析还可以作为其他算法的预处理步骤,简化计算量,提高分析效率,这也是我们在这里介绍聚类分析的目的。
3。Google 的 Android 框架 自动化(IoC)框架
Google 的 Android 框架
于 2007 年 11 月,Google 推出的 Android 应用框架,其适用于「手机+网路」
的新市场上。除了它是一个新的应用之外,更珍贵的是其程序代码采开放策略,让
大家能一窥其全貌,给予软件开发者很好的学习机会。
框架介于应用程序与系统程序之间,能大量地重复使用(Reuse) ,并可不断修正之,因而提升了应用程序之弹性,也能提升系统程序之弹性
~礼记.学记~~良弓來自好的框架(箕)。优良的应用程序來自美好的应用框架。
☆一群抽象类别,类别内有函數,函數内有指令,但有些函數内的指令从缺,预留给应用程序员补充之。应用框架它在软件设计上之角色,框架之主角──抽象類别上,說明抽象類别之特性,分析「抽象」与「具体」類别之间的双向沟通方法。Android应用框架中最令人着迷之处是:框架裡的函數,能呼叫应用程序的函數。框架介于应用程序与系统程序之间,能大量地重复使用(Reuse) ,并可 不断修正之,因而提升了应用程序之弹性,也能提升系统程序之弹性。它本身也 可分为兩个层级,
可以用图形表示为
这是框架与一般類别库(或链接库)的极重要区别。使用一般链接库时,程式中的函數呼叫了现成的库存函數,但库存函數不能反过來,呼叫您所写的函數。由于库存函數设计在先,而您写程序在后﹔所以,您的函數呼叫库存函數,这种晚辈呼叫前辈的传统沟通情形,是您已非常熟悉的了。
应用框架除了能进行传统沟通外,还提供新潮方法:前辈呼叫晚辈。虽然前辈(应用框架)诞生时,晚辈(应用程序)尚未诞生﹔但是前辈有时候可预知晚辈中的函數,就可呼叫它。这种功能,具有下述效果:
框架能事先定义许多「预设」(Default)函數。预设(default) 函數就是依惯例而设定之函數。惯例是自动化科技的基本观念,也是应用框架的重要机制。例如,搭计程車时,您只要告诉计程車司机:「到士林夜市」,司机会依照其经验习惯而选取路线,让您舒适抵达夜市。更重要的是,您可特别指示司机,他会按照您(即应用程序)的意思而「修正」其惯例。
应用程序员的主要工作是:设计函數供框架來呼叫。这些函數可 修正或取代框架中的函數。
如果程序中的函數已修正或取代预设函數,框架就呼叫程序中的 函數﹔反之则呼叫预设函數。
这些这些效果正满足当令流行的「事件驱动」(Event-Driven)软件的需要
所示 认識反向沟通
---- 又称为反向控制(IoC)
通常框架都是设计在先,而应用程序则设计在后,这种前辈拥有主导权,进而「控制」后辈之情形,就通称为「反向控制」。顾名思义,IoC(Inversion of Control)就是「反向控制」之意思。而它是相对于「正向控制」一词,所以在本节裡,将先介绍「正向控制(沟通)」之涵意,就能迅速理解「反向沟通」之意义了。
IoC 观念和机制源自于 OO 语言(如 C++、Java 等)的類别继承体系,例如 Java 语言中,父類别(Superclass)的函數可以主动呼叫子類别(Subclass)之函數,这就是 最传统的 IoC 机制,称为「继承体系 IoC」。后來,人们常将许多相关的父類别聚集起來成为框架,逐渐地,延伸为:应用框架主动呼叫应用程序之情形,就称为 IoC 。 或 者 說 : 会 主 动 呼 叫 应 用 程式 之 框 架 , 就 称 为 IoC 框架,主控者是框架,而不是应用程序前面說过,传统的链接库及類别库只提供正向沟通,而应用框架则提供正向和反向兼具的双向沟通。本节针对应用框架的双向沟通,做进一步的阐述双向沟通机制让框架成为主控者,而应用程序只是配角而已。首先框架裡的函數内容,通常扮演「预设函數」的角色,表达了惯例之行为。惯例是自动化科技的基本观念,也是软件设计的重要观念。拿汽車自动排挡做例子吧﹗自动排挡的优点是:汽車会「自动地」依照速度而换挡,亦即会依惯例來维持汽車的平稳。这还不够,若由司机驾驶更佳﹗例如您只要告诉计程車司机:「到士林夜市」,司机会依照其经验习惯而选取路线,让您舒适抵达夜市。更重要的是,您可特别指示司机,他会按照您的意思而「修正」其惯例。因之惯例的重要特色为:
应用框架魅力的泉源:反向沟通
让使用者更加轻松愉快。例如上述汽車的三个层次是:
汽車
司机
乘客
因为汽車会自动依惯例换挡,司机就轻松多了。也因为司机会依惯例选择理想的路线,乘客不必操心。
● 惯例是可修正的。
惯例只适合一般狀况,若遇特殊狀况发生,应立即修正之。例如波音 747
客机会依照惯例起降,但遭遇特殊狀况(如碰到一大群鸽子),飞行员会立即修正之。这飞行员的判断凌驾于惯例之上,达到修正之目的。在计算机软件上,也具有三个层次:
计算机硬件
操作系统
应用程序
操作系统包含了各式各样的惯例函數,自动化地指挥硬件,其降低了应用程序之负担。Linux/Windows 等操作系统已有所改进了。在事件驱动观念中,操作系统会不断与应用程序沟通,不断修正其惯例,裨对外界的事件提供迅速反应与服务。如下图:
无之(抽象)以为用
~~老子.道德经:有之以为利,无之以为用~~
框架的「无用之用」效果
小树的用途少,人们不理睬它、不砍伐它、才有机会长成有用之巨木,此为「无用」之用﹗老子說过:「人皆知有用之用,而莫知无用之用」,这与框架观念是一致的。
數千年前,老子提出了这「有、无」哲理,从无为狀态中创造出有为的积极效果。像房子的中间、门、窗皆是空的,才能供人们进出、居住与透透空气。其积极效果是﹕日后依新环境的条件而加以调整、充实,创造出多样化的用途。例如畚箕的中间是空、虚的,才能装泥土、垃圾等各式各样的东西。此外,畚箕的空无,创造了畚箕的重复使用性(Reusability),装完了泥土,倒掉之后,还可拿來装垃圾等,不断重复使用之,一直到坏掉为止。
不仅上述的树木、房子、畚箕等东西深含虚无之用哲理,在人们的精神修养上也常見同样哲理。例如古之贤者常教导年轻人应该「虚」怀若谷,才能不断虚心求教,不断吸收新知識,不断充实与成长,成为有用之人。反之,志得意满的年轻人,常不愿虚心吸收新知識,常在不知不觉中变为新环境中的古典人物,为不断变化的潮流所淘汰。
应用框架中的主角──抽象類别,并非具体的類别,不能用來诞生对象,看似无用的东西。可是它可衍生出无數个具体子類别,可诞生出无數种对象來﹗抽象類别中的「抽象(abstract)」函數常是空虚的让抽象類别能虚怀若谷,让应用程式师不断充实它,其子孙類别就个个精明能干﹗抽象類别发挥无用之用的效果,应用框架则更进一步地发挥这种效果。人们易于得意骄傲,不易虚怀若谷。同样地,易于创造具体類别,而不易创造出抽象類别。不过,当您懂得藉由眼前的「无用」來换取长远的「有用」时,创造与使用抽象類别就易如反掌了。
![]()
易,老子日;三易,1容易,抽象众多事物的共性优化为其属性,简之一二四八相!2,变易,事物永远是变化中不断用变数修定函数预定值而达个性化外衍化具体化的,但其继承属性不变!3。不易;由于事物变量的可反向定义的多样化及多变量互交积变量函数多爻化让事物发展变化不易判断确定;但可以从它们变化惯性中找出其自动化框架及变化规律!这就是中国的网商智能化UI框架及自动化机器手的运算逻辑!
waterfu65
<iframe中 类型=“文/ JavaScript的”> 的document.getElementById(的“forum_embed”)。SRC = “https://groups.google.com/forum/embed/?place=forum/ 论坛名称 “+ “&showsearch =真showpopout =真parenturl =“+ encodeURIComponent方法(window.location.href) </ SCRIPT>
---
您收到此邮件是因为您订阅了 Google 网上论坛的“TLFS天地人和w线下之未来奇观”论坛。
要退订此论坛并停止接收此论坛的电子邮件,请发送电子邮件到 TLFSrmfuwu+...@googlegroups.com。
要向此网上论坛发帖,请发送电子邮件至 TLFSr...@googlegroups.com。
通过以下网址访问此论坛:http://groups.google.com/group/TLFSrmfuwu。
要在网络上查看此讨论,请访问 https://groups.google.com/d/msgid/TLFSrmfuwu/c5ce02a5-ab13-422c-bd1f-fb649cc80842%40googlegroups.com。
要查看更多选项,请访问 https://groups.google.com/groups/opt_out。