近十年來,中國互聯網的發展有目共睹,網民數量更是超越美國成為世界第一,在中國互聯網的發展歷程中,一直以來默默地為中國站長提供動力的CMS廠商作出的貢獻尤其巨大,而與之成反比的是CMS廠商的生存狀態依然令人擔憂,由于國內站長對于免費和開源的CMS尤為熱衷,用戶的版權意識低加之用戶誤將開源認為就是免費的,使得一些獲得資本注入的CMS廠商無法達到預期的目標,導致PHPCMS創始人淡淡風和DEDECMS創始人IT柏拉圖相繼離職事件,亦是2009年CMS行業最大的新聞,在筆者與部分CMS創始人的交流中,感受更多的是他們只是成功的技術狂熱者,還不算真正的商人,CMS行業之路對他們還任重道遠。CMS行業在ASP與PHP語言爭霸賽中,勝出的PHP用戶量遙遙領先,而被干掉的ASP正逐漸的退出歷史舞臺,在筆者和部分CMS創始人的交流中,CMS行業的語言爭霸賽已經悄然從ASP與PHP之爭升級至NET與JAVA之爭上了,不管是昔日的ASP霸主還是PHP得霸主,都在著手這場沒有硝煙的戰斗了,我們期待著,并祝福著,祝福國產軟件越來越強大。以下是筆者在與部分CMS創始人交流后,對開源CMS做一個2009年總結排名,供大家分享:一、帝國CMS其實帝國CMS、DEDECMS和PHPCMS都是PHPCMS行業的領先者,如果要明確的分出誰是第一,已經非常難了,但隨著PHPCMS和DEDECMS的創始人相繼離開,我暫且將帝國CMS排在了第一,而在PHPCMS行業里頭,系統最穩定的也是帝國CMS。預測:2009年淡淡風與IT柏拉圖的相繼離開,2010年或將是帝國進一步擴大用戶量的一年,多年的CMS巨頭爭霸格局或將在2010年得到實質性的改變。二、DEDECMSDEDECMS在免費使用的策略上將用戶量做到了最大,同時DEDECMS也是媒體曝光率最高的一家CMS,但IT柏拉圖離開后,DEDECMS官網不僅也改版了,運營策略也改版了,在未來的日子里,DEDECMS將著重于商業系統解決方案方向發展,這對于使用慣了免費系統的個人站長來說并不是件好事,DEDECMS離開IT柏拉圖后,其用戶量如何鞏固將是一個比較棘手的問題,而在商業系統發展上,DEDECMS如何如何解決系統的安全問題,不再重蹈2008年發布V5正式版被黑的舊轍,亦是比較值得關注的問題。三、PHPCMS在淡淡風黯然離去時,很多的站長都在問失去了鐘勝輝的PHPCMS還有多少價值?PHPCMS失去了一位團隊導師和精神領袖后,PHPCMS的未來自然成為站長圈的熱門話題,而不久后鐘勝輝再創CMSTOP的消息發布后,更將PHPCMS推到了一個尷尬極點,很多用戶選擇PHPCMS的人更支持的是鐘勝輝,如果這些用戶再被鐘勝輝成功帶走,PHPCMS的三甲地位亦將岌岌可危。四、PHP168PHP168和PHPCMS有著相似的成長歷程,卻有著不同的命運歸屬,兩年前,PHP168從KU6出來,PHPCMS進入KU6,兩年后,PHPCMS創始人選擇了離開,PHP168卻在列隊歡迎從PHPCMS走出來的用戶,僅僅兩年的時間,PHP168從可憐的幾個核心開發團隊發展成最有活力的技術團隊之一,2010年將是PHP168沖向PHPCMS行業前三甲的絕好機會,我們拭目以待。五、動易動易是中國CMS行業的領跑者,中國的站長估計無人不知動易,動易系統模塊很多,功能非常強大,但在ASP與PHP相爭中,動易因DLL的限制和系統的穩定性要差,使得免費版差不多成雞肋,加之PHP系CMS的迅猛雄起,不僅使得動易的用戶量迅速下降,而且放眼過去,一大批曾經風光無限的ASPCMS(如創力、喬客、新云等)用戶量迅速下降,從某種意義上說,這不是CMS廠商的錯,客觀原因還是在于微軟對ASP的放棄,而動易在ASP.NET的轉型,讓動易重拾往日的光輝,我們一直期待著動易能將NET的動易系統開源,而不是拿一個放棄更新的版本來開源。六、風訊在我的印象中,風訊和動易一直是一對不解的冤家,風訊給我的感覺就是動易做啥他就做啥,名氣也很大,但沒有動易大,用戶量也很多、但沒有動易多,不過風訊確實很牛,系統功能很強大,自由度高,在系統開源方面的口碑比動易要好。七、科訊科訊應該是國內ASP開源CMS最強的了,在今天ASPCMS系統中科訊能有如此用戶量,可見其系統的強大和易用,科訊走的路線是大而全,我們在互聯網上能看到的網站,似乎用科訊都能開發的出來,但其命運終究逃不過微軟對ASP的放棄。八、JEECMSJava能成為全球語言應用第一,主要是Java走了開源路線,而國內JAVACMS發展緩慢,主要原因是Java入門門檻高、Java開源CMS少、Java虛擬主機費用高,所以推廣起來非常之難,在這之前看過關于JEECMS的介紹文章,筆者始終認為JEECMS不可能發展成個人站長常用建站系統,主要Java開源系統少之又少,產品部夠豐富,靠單打獨斗很難成氣候;但在筆者最近的深入的了解后,觀念也得到了改變,主要是比較認同JEECMS的產品布局比較豐富(CMS、論壇、商城、博客、下載、圖片等),更主要是JEECMS已經縱深到了虛擬主機業務這一塊,提供與PHP虛擬主機平價的廉價虛擬主機,無疑是推動用戶量的最有效途徑。九、JTBC_CMS在整個CMS行業里,JTBC提供的技術版本是最牛的,JTBC提供ASP版、PHP版和.NET版下載,這樣給用戶的選擇余地比較大,并且采取了“語言/代碼/程序”兩兩分離的技術模式,納入了模塊安裝文件的概念,全面的使用了模板包與語言包結構,極大的提升了二次開發的便利,但是JTBC從2004年做到現在,用戶量依然還很小。十、ROYcms!NTROYcms!NT是國內極少見的一家非商業性組織提供的開源CMS,沒有授權服務,只靠捐贈資助生存,在中國,這樣的團隊生存非常艱難,因為國內還沒有形成對軟件作者的捐贈氣氛,所以,ROYcms!NT先行者,我們沒有理由不支持他們。
公司主營業務:成都做網站、網站設計、移動網站開發等業務。幫助企業客戶真正實現互聯網宣傳,提高企業的競爭能力。成都創新互聯是一支青春激揚、勤奮敬業、活力青春激揚、勤奮敬業、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰,讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。成都創新互聯推出措美免費做網站回饋大家。
工作室介紹
一、易動工作室(★★★)
近幾年來工作室先后完成了多個校級、企業級的優秀項目: 智能煙感報警器 、紅外屏自動檢測系統、CAN快速柜驅動、國家基金系統、科技成果轉移轉化平臺,同時上線了多個小程序、上市公司訂單系統。
1、方向
前端:HTML、CSS、JavaScript等進行開發
后臺:基于Java語言進行開發
2、流程
線下面試+任務作品考核
3、建議
掌握C語言,學習選擇方向的對應語言,掌握基礎語法
二、守夜人工作室(★★★)
完成了歷屆廣工女生節線上許愿(工作室傳統特色項目),廣工云社區宿舍系統,一系列小程序(預約、商城、出行等),申菱公司宣傳頁,廣州酒家中秋游戲,Tour4U響應式頁面,椰子姑娘(微信端 web app), 南方電網數據可視化 ,上市集團東莞玉蘭有限公司網簽系統,廣州逸成教育網站公司重構
1、方向
前端:HTML、CSS、JavaScript等進行開發
后臺:基于Java語言進行開發
2、流程
筆試+第一輪面試+第二輪面試+第一輪考核+第二輪考核
3、建議
掌握C語言,學習選擇方向的對應語言,了解一些基礎框架的名字(方便面試吹)
三、維生數工作室(★★★)
一個專注于互聯網產品的工作室,以互聯的思維看世界。工作室已完成廣工大校醫院網站、廣州光明乳業官網、WEGDUT、水密碼、CRM明鏡研究咨詢、 華南師大教育發展聯盟 等項目
1、方向
前端:HTML、CSS、JavaScript等進行開發
后臺:基于Java語言進行開發
2、流程
面試+第一輪考核+第二輪考核
3、建議
熟悉并掌握C語言,學習選擇方向的對應語言,掌握基礎語法
四、研發中心工作室(★★★★)
研發中心全名計算機研發工程中心,成立于2001年,沉淀20年精華,不可否認的老牌團隊,金牌團隊??纯此膶煟鹤婕t老師,工學博士,主持國家自然基金1項,是廣東工業大學教授級高級工程師;聽聽他們的口號“走 BAT 路,讓別人無路可走”。實力不遑一讓!
1、方向
前端:HTML、CSS、JavaScript等進行開發
后臺:基于Java語言進行開發
Android:基于Java進行主流app的開發
大數據:數據挖掘(基于Python和一些常用庫)
2、流程
筆試+面試+考核
3、建議
熟悉并掌握C語言,學習選擇方向的對應語言,了解一些基礎框架的名字
五、小A(★★★★★)
小A工作室,雖然名字中帶有“小”字,其實一點也不小。豐富的組織構建包括前端、后臺、管理組、算法組、機械組、電控組,又有繁多的研發項目以及成熟項目的再改造再升級,還有眾多獎項,更有許多 外出交流機會 ,足跡有到南北。小A叫得親切,但其實我不小。
1、方向
前端:HTML、CSS、JavaScript等進行開發
后臺:基于Java語言進行開發
算法:人工智能算法設計(自然語言處理、計算機視覺)
2、流程
筆試+面試+考核
3、建議
熟悉并掌握C語言,學習選擇方向的對應語言,掌握基礎語法
六、C.A.T工作室(★★★★)
作為工作室中的年輕潛力股,成立的五年時間里卻成功與 中國南方電網 、廣東省玉蘭集團、廣州傳數科技有限公司等公司建立了合作關系,曾參與廣東玉蘭集團有限公司的B2B訂單系統、與羊城通合作的智能塑料回收箱等多個項目的研發,并獲得優厚的項目補貼。
1、方向
前端:HTML、CSS、JavaScript等進行開發
后臺:基于Java語言進行開發
2、流程
筆試+第一輪面試+第二輪面試+第一輪考核+第二輪考核
3、建議
掌握C語言,學習選擇方向的對應語言,了解一些基礎框架的名字(方便面試吹)
七、TopView工作室(★★★★★)
成立于2005年的TopView工作室也算是 老大哥 了,十六年發展與沉淀,同樣擁有著豐富的組織架構,同樣有著豐富的項目研發成果,然而使人眼前一亮的確實師兄師姐們清一色的就業去向,字節跳動,騰訊,還有保研的師兄師姐們。
1、方向
前端:HTML、CSS、JavaScript等進行開發
后臺:基于Java語言進行開發
Android移動端:基于Java語言進行開發
IOS移動端:Objective—C
機器學習:Python和相關算法
2、流程
筆試(C語言及相關方向)+第一輪面試(性格)+第二輪面試(知識儲備)+第一輪考核+第二輪考核
3、建議
掌握C語言,學習選擇方向的對應語言并熟悉基礎語法,了解一些基礎框架的名字
八、QG工作室(★★★★★)
創立至今已有15年歷史的QG工作室想必大家耳熟能詳,擁有豐富的組織架構的同時,每年獲得的各類創新性項目獎項更是繁多,優秀的科研成績、SCI論文的發表、國際級獎項以及軟著多項都在宣揚著QG的強大,18年時便已被評為全國僅有50支的“ 小平科技創新團隊 ”。
1、方向
前端:HTML、CSS、JavaScript等進行開發
后臺:基于Java/Go語言進行開發
Android移動端:基于Java語言進行開發
嵌入式:ARM+Linux,c語言開發為主
數據挖掘:Python和相關算法
圖形組:計算機圖形學,VR/AR,Unity3D
2、流程
面試+訓練營+考核
3、建議
掌握C語言,學習數據結構,學習選擇方向的對應語言并熟悉基礎語法
九、Panda工作室(★★★)
已完成項目有樂貝塔系統,廣州市科普基地運營監測平臺,廣東省工業軟件協會等。工作室除了有大量的項目外, 項目分成也很大 。
1、方向
前端:HTML、CSS、JavaScript等進行開發
后臺:基于Java/Go語言進行開發
2、流程
面試+訓練營+考核
3、建議
掌握C語言,學習數據結構,學習選擇方向的對應語言并熟悉基礎語法
#include stdio.h
#include conio.h
#include bios.h
#include dos.h
#include malloc.h
#define NULL 0
#define LEN sizeof(struct mcd)
struct data /*聲明一個日期的結構體類型*/
{
int year;
int month;
int day;
};
struct mcd /*聲明有關商品信息的結構體類型*/
{
int code; /*編 號*/
char name[12]; /*品 名*/
long price; /*單 價*/
int num; /*數 量*/
char place[20]; /*產 地*/
struct data putdate; /*入庫時間*/
struct data selldate; /*銷售時間*/
struct mcd * next; /*運用指針處理鏈表*/
};
int n; /*記錄鏈表有幾條數據*/
struct mcd *head; /*聲明鏈表頭的指針*/
creat() /*輸入商品信息的函數*/
{
struct mcd *p1,*p2;
n=0;
p1=p2=(struct mcd *)malloc(LEN); /*開辟一個新單元存放信息*/
head=p1;
loop: {
clrscr();
printf("商品錄入系統\n");
printf("錄入號:%d\n",n+1);
printf("編 碼:");
scanf("%d",p1-code);
printf("品 名:");
scanf("%s",p1-name);
printf("單 價:");
scanf("%ld",p1-price);
printf("數 量:");
scanf("%d",p1-num);
printf("產 地:");
scanf("%s",p1-place);
printf("入庫時間:");
scanf("%d-%d-%d",p1-putdate.year,p1-putdate.month,p1-putdate.day);
}
while(p1-num!=0)
{
n=n+1;
if(n==1)head=p1;
else p2-next=p1;
p2=p1;
p1=(struct mcd *)malloc(LEN);
goto loop;
}
p2-next=NULL;
main();
}
print() /*輸出數據列表的函數*/
{
int m=0;
struct mcd *p;
clrscr();
printf("編 號||品 名||單 價||數 量|| 產 地 ||入 庫 時 間\n");
p=head;
if(head!=NULL)
do
{
printf("%-10d%-14s%-12ld%-10d%-22s%-4d-%-2d-%-2d\n",p-code,p-name,p-price,p-num,p-place,p-putdate.year,p-putdate.month,p-putdate.day);
p=p-next;
m=m+1;
if(m%23==0){gotoxy(10,25);printf("按任意鍵繼續.");getch();}
}while(p!=NULL);
getch();
main();
}
sell()
{
int code,m=3,ch;
long sum=0;
struct mcd *p1;
struct date today;
getdate(today);
clrscr();
printf("商品銷售系統\n");
printf("編 號||||品 名|||| 產 地 ||||單 價(元)||||出 售 時 間\n");
loop:
do{
gotoxy(23,25);
printf("按任意鍵繼續,F2結帳,ESC鍵退出");
ch=bioskey(0);
}while(0);
switch(ch)
{
case 15360:{
if(sum==0)
{
gotoxy(1,m);printf("還沒有購買商品!");
getch();
sell();
break;
}
else {
gotoxy(1,m);
printf("------------------------------------------------------------------------------");
gotoxy(47,m+1);
printf("總價: %-12ld元",sum);
getch();
main();
break;
}
}
case 283:{main();break;}
default:
{
gotoxy(23,25);
printf("請輸入商品編碼,會顯示商品信息");
gotoxy(1,m);
scanf("%d",code);
if(head==NULL)
{
printf("你還沒有進貨.");
getch();
main();
break;
}
p1=head;
while(code!=p1-codep1-next!=NULL)
{p1=p1-next;}
if(code==p1-code)
{
gotoxy(13,m);
printf("%-16s%-24s%-16ld%4d-%2d-%2d",p1-name,p1-place,p1-price,today.da_year,today.da_mon,today.da_day);
m=m+1;
p1-num=p1-num-1;
sum=sum+p1-price;
}
}
goto loop;
}
}
go()
{
int ch;
clrscr();
printf("請問你要進行什么操作?\n1,插入;2,刪除;3,什么也不做;\n");
loop:
do{
ch=bioskey(0);
}while(0);
switch(ch)
{
case 561:insert();break;
case 818:del();break;
case 1075:main();break;
case 283:break;
default:{gotoxy(1,3);printf("請按數字鍵選擇!");goto loop;}
}
getch();
main();
}
insert()
{
struct mcd *p0,*p1,*p2;
p0=p1=p2=(struct mcd*)malloc(LEN);
p1=head;
clrscr();
printf("請輸入要插入的商品的信息:\n");
printf("編 碼:");
scanf("%d",p0-code);
printf("品 名:");
scanf("%s",p0-name);
printf("單 價:");
scanf("%ld",p0-price);
printf("數 量:");
scanf("%d",p0-num);
printf("產 地:");
scanf("%s",p0-place);
printf("入庫時間:");
scanf("%d-%d-%d",p0-putdate.year,p0-putdate.month,p0-putdate.day);
if(head==NULL)
{
head=p0;
p0-next=NULL;
}
else
{
while((p0-codep1-code)(p1-next!=NULL))
{
p2=p1;
p1=p1-next;
}
if(p0-code=p1-code)
{
if(head==p1)head=p0;
else p2-next=p0;
p0-next=p1;
}
else
{
p1-next=p0;p0-next=NULL;
}
}
n=n+1;
print();
}
del()
{
int code;
struct mcd *p1,*p2;
clrscr();
printf("請輸入要刪除商品的編號:");
scanf("%d",code);
if(head==NULL)
{
printf("你還沒有進貨.");
getch();
main();
}
p1=head;
while(code!=p1-codep1-next!=NULL)
{
p2=p1;
p1=p1-next;
}
if(code==p1-code)
{
if(code==head)head=p1-next;
else p2-next=p1-next;
n=n-1;
print();
}
else
{
printf("找不到這條商品信息.");
getch();
print();
}
}
main()
{
do{
clrscr();
printf(" . : : \n");
printf(" '. :'''''''': : : :'''':'''':\n");
printf(" '. : : :'''''' :'''''' : : :\n");
printf(" ................ : : :', :', ''''':''''': : :\n");
printf(" '. .' : : : ', : ', : :....:....:\n");
printf(" '. .' : : ,' ,' : : : :\n");
printf(" '.' : : ', : : : :\n");
printf(".........:........... :........: : ', : :....:....:\n");
printf(" ............... :''''''''''''''': '''':'''' : \n");
printf(" : , , : :'''''': :'''''': ,' : : \n");
printf(" : , , : : : : : :''''''''': : ,' : \n");
printf(" : , , : : : : : : : : ,' ....:.... \n");
printf(" :, :''''''': : : : : : : : :,' : \n");
printf(" : : : : : : : : :'''''''''' ,' : \n");
printf(" : : : : : : : : :.......... ,' : \n");
printf(" : :.......: : : : : : : : ' : \n");
printf(" : : : : : : : : ......:.....\n");
printf(" : ..: :......: :......: :.........: \n");
gotoxy(60,19);
printf("趙飛宇制造 V1.0");
gotoxy(10,21);
printf("1,銷售系統;2,進貨系統;3,查看列表;4,插入刪除;5,銷售盈虧;6,幫助文檔");
gotoxy(32,24);
printf("按ESC鍵退出");
key();
}while(0);
}
key()
{
int ch;
loop:
do{
ch=bioskey(0);
}while(0);
switch(ch)
{
case 561:sell();break;
case 818:creat();break;
case 1075:print();break;
case 1332:go();break;
case 283:break;
default:
{
gotoxy(30,22);
printf("請按數字鍵選擇!");
goto loop;
}
}
}
這可太多了,google對技術非常開放,使用了很多常用的開放式編程語言。C++、Java、python是它的搜索引擎的主要編程語言。
現在Go語言是google新產品的主要編程語言,很多在線服務都是Go語言編寫的。
針對它旗下的Android操作系統和相關產品采用的是C結合Linux系統以及Java語言。
主要原因是PHP程序員大多在接私活很忙吶!很難接私活的JAVA、C#程序員才會在論壇,qq群起哄。
在工作中,很多公司隨著業務的增加與需求多樣性,有些企業就是要求用PHP開發,所以很多開發公司都是跟著市場走,主流的編程語言java與PHP碰面,多數情況下java程序員都不喜歡PHP程序員。
PHP號稱世界上最好的編程語言,在java程序員覺得PHP能開發的,java同樣能開發,而且比PHP還好,所以不認為PHP是世界上最好的編程語言,java才是世界最好的編程語言。
java面向對象在編程語言中支持是最好的,雖然PHP也是支持面向對象,但是在真正的大型項目中,多數人都會選擇java編程開發。
java在多線程高并發實戰效果是最好的,我們也知道PHP也是可以實現多線程高并發功能,但是這些都是針對中小型網站,像大型商城在線購物系統,java可以完美實現并滿足目前多人在線下單數量功能。
java編程語言復雜,需要大量學習精力,PHP編程語言簡單,在開發中不需要太多配置環境。
其實每種編程語言都有它本身的優勢與價值所在,當你正真領悟一種編程語言,你才知道這種語言的正真用處。