成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

妙想javascript,妙想列出了一個(gè)算式180+305405她解決的是什么問(wèn)題

javascript 已知加密方法,求解密函數(shù)。

JavaScript加密解密7種方法

創(chuàng)新互聯(lián)公司長(zhǎng)期為千余家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為繁峙企業(yè)提供專業(yè)的成都網(wǎng)站建設(shè)、網(wǎng)站制作,繁峙網(wǎng)站改版等技術(shù)服務(wù)。擁有十年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

作者:不詳 來(lái)源:DOT技術(shù)信息網(wǎng) 日期:2007-11-27 11:30:05

--------------------------------------------------------------------------------

本文一共介紹了七種javascript加密方法:

在做網(wǎng)頁(yè)時(shí)(其實(shí)是網(wǎng)頁(yè)木馬呵呵),最讓人煩惱的是自己辛辛苦苦寫(xiě)出來(lái)的客戶端IE運(yùn)行的javascript代碼常常被別人輕易的拷貝,實(shí)在讓自己的心里有點(diǎn)不是滋味,要知道自己寫(xiě)點(diǎn)東西也挺累的......^*^

但我們也應(yīng)該清楚地認(rèn)識(shí)到因?yàn)閖avascript代碼是在IE中解釋執(zhí)行,要想絕對(duì)的保密是不可能的,我們要做的就是盡可能的增大拷貝者復(fù)制的難度,讓他知難而退(但愿~!~),下面我結(jié)合自己這幾年來(lái)的實(shí)踐,及個(gè)人研究的心得,和大家一起來(lái)探討一下網(wǎng)頁(yè)中javascript代碼的加密解密技術(shù)。

以加密下面的javascript代碼為例:

SCRIPT LANGUAGE="javascript"

alert("《我愛(ài)一起》");

/SCRIPT

一:最簡(jiǎn)單的加密解密

大家對(duì)于javascript函數(shù)escape()和unescape()想必是比較了解啦(很多網(wǎng)頁(yè)加密在用它們),分別是編碼和解碼字符串,比如例子代碼用escape()函數(shù)加密后變?yōu)槿缦赂袷剑?/p>

alert%28%22%u9ED1%u5BA2%u9632%u7EBF%22%29%3B

如何?還看的懂嗎?當(dāng)然其中的ASCII字符"alert"并沒(méi)有被加密,如果愿意我們可以寫(xiě)點(diǎn)javascript代碼重新把它加密如下:

%61%6C%65%72%74%28%22%u9ED1%u5BA2%u9632%u7EBF%22%29%3B

呵呵!如何?這次是完全都加密了!

當(dāng)然,這樣加密后的代碼是不能直接運(yùn)行的,幸好還有eval(codeString)可用,這個(gè)函數(shù)的作用就是檢查javascript代碼并執(zhí)行,必選項(xiàng) codeString 參數(shù)是包含有效 javascript 代碼的字符串值,加上上面的解碼unescape(),加密后的結(jié)果如下:

SCRIPT LANGUAGE="javascript"

var code=unescape("%61%6C%65%72%74%28%22%u9ED1%u5BA2%u9632%u7EBF%22%29%3B");

eval(code)

/SCRIPT

是不是很簡(jiǎn)單?不要高興,解密也就同樣的簡(jiǎn)單,解密代碼都擺給別人啦(unescape())!呵呵

二:轉(zhuǎn)義字符""的妙用

大家可能對(duì)轉(zhuǎn)義字符""不太熟悉,但對(duì)于javascript提供了一些特殊字符如:n (換行)、 r (回車)、' (單引號(hào))等應(yīng)該是有所了解的吧?其實(shí)""后面還可以跟八進(jìn)制或十六進(jìn)制的數(shù)字,如字符"a"則可以表示為:"141"或"x61"(注意是小寫(xiě)字符"x"),至于雙字節(jié)字符如漢字"黑"則僅能用十六進(jìn)制表示為"u9ED1"(注意是小寫(xiě)字符"u"),其中字符"u"表示是雙字節(jié)字符,根據(jù)這個(gè)原理例子代碼則可以表示為:

八進(jìn)制轉(zhuǎn)義字符串如下:

SCRIPT LANGUAGE="javascript"

eval("1411541451621645042u9ED1u5BA2u9632u7EBF425173")

/SCRIPT

十六進(jìn)制轉(zhuǎn)義字符串如下:

SCRIPT LANGUAGE="javascript"

eval("x61x6Cx65x72x74x28x22u9ED1u5BA2u9632u7EBFx22x29x3B")

/SCRIPT

這次沒(méi)有了解碼函數(shù),因?yàn)閖avascript執(zhí)行時(shí)會(huì)自行轉(zhuǎn)換,同樣解碼也是很簡(jiǎn)單如下:

SCRIPT LANGUAGE="javascript"

alert("x61x6Cx65x72x74x28x22u9ED1u5BA2u9632u7EBFx22x29x3B")

/SCRIPT

就會(huì)彈出對(duì)話框告訴你解密后的結(jié)果!

三:使用Microsoft出品的腳本編碼器Script Encoder來(lái)進(jìn)行編碼

工具的使用就不多介紹啦!我是直接使用javascript調(diào)用控件Scripting.Encoder完成的編碼!代碼如下:

SCRIPT LANGUAGE="javascript"

var Senc=new ActiveXObject("Scripting.Encoder");

var code='SCRIPT LANGUAGE="javascript"rnalert("《我愛(ài)一起》");rn/SCRIPT';

var Encode=Senc.EncodeScriptFile(".htm",code,0,"");

alert(Encode);

/SCRIPT

編碼后的結(jié)果如下:

SCRIPT LANGUAGE="JScript.Encode"#@~^FgAAAA==@#@lsDD`J黑客防線r#p@#@FgMAAA==^#~@/SCRIPT

夠難看懂得吧?但相應(yīng)的解密工具早已出來(lái),而且連解密網(wǎng)頁(yè)都有!因?yàn)槠浣饷芫W(wǎng)頁(yè)代碼過(guò)多,我就不多說(shuō)拉!給大家介紹一下我獨(dú)創(chuàng)的解密代碼,如下:

SCRIPT LANGUAGE="JScript.Encode"

function decode()

alert(decode.toString());

/SCRIPT

咋樣?夠簡(jiǎn)單吧?它是原理是:編碼后的代碼運(yùn)行前IE會(huì)先對(duì)其進(jìn)行解碼,如果我們先把加密的代碼放入一個(gè)自定義函數(shù)如上面的decode()中,然后對(duì)自定義函數(shù)decode調(diào)用toString()方法,得到的將是解碼后的代碼!

如果你覺(jué)得這樣編碼得到的代碼LANGUAGE屬性是JScript.Encode,很容易讓人識(shí)破,那么還有一個(gè)幾乎不為人知的window對(duì)象的方法execScript(),其原形為:

window.execScript( sExpression, sLanguage )

參數(shù):

sExpression: 必選項(xiàng)。字符串(String)。要被執(zhí)行的代碼。

sLanguage : 必選項(xiàng)。字符串(String)。指定執(zhí)行的代碼的語(yǔ)言。默認(rèn)值為 Microsoft JScript

使用時(shí),前面的"window"可以省略不寫(xiě)!

利用它我們可以很好的運(yùn)行編碼后的javascript代碼,如下:

SCRIPT LANGUAGE="javascript"

execScript("#@~^FgAAAA==@#@lsDD`J我愛(ài)一起r#p@#@FgMAAA==^#~@","JScript.Encode")

/SCRIPT

你可以利用方法二對(duì)其中的""號(hào)內(nèi)的字符串再進(jìn)行編碼,使得"JScript.Encode"以及編碼特征碼"#@~^"不出現(xiàn),效果會(huì)更好!

四:任意添加NUL空字符(十六進(jìn)制00H)

一次偶然的實(shí)驗(yàn),使我發(fā)現(xiàn)在HTML網(wǎng)頁(yè)中任意位置添加任意個(gè)數(shù)的"空字符",IE照樣會(huì)正常顯示其中的內(nèi)容,并正常執(zhí)行其中的javascript 代碼,而添加的"空字符"我們?cè)谟靡话愕木庉嬈鞑榭磿r(shí),會(huì)顯示形如空格或黑塊,使得原碼很難看懂,如用記事本查看則"空字符"會(huì)變成"空格",利用這個(gè)原理加密結(jié)果如下:(其中顯示的"空格"代表"空字符")

S C RI P T L ANG U A G E =" J a v a S c r i p t "

a l er t (" 我 愛(ài) 一 起") ;

/ SC R I P T

如何?是不是顯得亂七八糟的?如果不知道方法的人很難想到要去掉里面的"空字符"(00H)的!

五:無(wú)用內(nèi)容混亂以及換行空格TAB大法

在javascript代碼中我們可以加入大量的無(wú)用字符串或數(shù)字,以及無(wú)用代碼和注釋內(nèi)容等等,使真正的有用代碼埋沒(méi)在其中,并把有用的代碼中能加入換行、空格、TAB的地方加入大量換行、空格、TAB,并可以把正常的字符串用""來(lái)進(jìn)行換行,這樣就會(huì)使得代碼難以看懂!如我加密后的形式如下:

SCRIPT LANGUAGE="javascript"

"xajgxsadffgds";1234567890

625623216;var $=0;alert//@$%%*()((^%^

//cctv function//

(//hhsaasajx xc

/*

asjgdsgu*/

"我愛(ài)一起"http://ashjgfgf

/*

@#%$^%$96667r45fggbhytjty

*/

//window

)

;"#@$#%@#432hu";212351436

/SCRIPT

至少如果我看到這樣的代碼是不會(huì)有心思去分析它的,你哪?

六:自寫(xiě)解密函數(shù)法

這個(gè)方法和一、二差不多,只不過(guò)是自己寫(xiě)個(gè)函數(shù)對(duì)代碼進(jìn)行解密,很多VBS病毒使用這種方法對(duì)自身進(jìn)行加密,來(lái)防止特征碼掃描!下面是我寫(xiě)的一個(gè)簡(jiǎn)單的加密解密函數(shù),加密代碼如下(詳細(xì)參照文件"加密.htm"):

SCRIPT LANGUAGE="javascript"

function compile(code)

{

var c=String.fromCharCode(code.charCodeAt(0)+code.length);

for(var i=1;icode.length;i++)

alert(escape(c));

}

compile('alert("《我愛(ài)一起》");')

/SCRIPT

運(yùn)行得到加密結(jié)果為:

o%CD%D1%D7%E6%9CJ%u9EF3%uFA73%uF1D4%u14F1%u7EE1Kd

相應(yīng)的加密后解密的代碼如下:

SCRIPT LANGUAGE="javascript"

function uncompile(code)

{

code=unescape(code);

var c=String.fromCharCode(code.charCodeAt(0)-code.length);

for(var i=1;icode.length;i++)

return c;

}

eval(uncompile("o%CD%D1%D7%E6%9CJ%u9EF3%uFA73%uF1D4%u14F1%u7EE1Kd"));

/SCRIPT

七:錯(cuò)誤的利用

利用try{}catch(e){}結(jié)構(gòu)對(duì)代碼進(jìn)行測(cè)試解密,雖然這個(gè)想法很好(呵呵,夸夸自己),因?yàn)閷?shí)用性不大,我僅給個(gè)例子

SCRIPT LANGUAGE="javascript"

var a='alert("《我愛(ài)一起》");';

var c="";

for(var i=0;ia.length;i++)

alert(c);

//上面的是加密代碼,當(dāng)然如果真正使用這個(gè)方法時(shí),不會(huì)把加密寫(xiě)上的

//現(xiàn)在變量c就是加密后的代碼

//下面的函數(shù)t()先假設(shè)初始密碼為0,解密執(zhí)行,

//遇到錯(cuò)誤則把密碼加1,然后接著解密執(zhí)行,直到正確運(yùn)行

var d=c; //保存加密后的代碼

var b=0; //假定初始密碼為0

t();

function t()catch(e){

c="";

for(var i=0;id.length;i++)

b+=1;

t();

//setTimeout("t()",0);

}

}

/SCRIPT

如何快速的學(xué)好java?

好的學(xué)習(xí)方法對(duì)于你的學(xué)習(xí)至關(guān)重要,對(duì)于每一個(gè)剛開(kāi)始學(xué)習(xí)Java的程序員新人來(lái)說(shuō),都希望有一種快速學(xué)習(xí)的方法,漫無(wú)目的和長(zhǎng)時(shí)間的學(xué)習(xí)很容易消耗你的信息,最后學(xué)的混亂,也沒(méi)有實(shí)質(zhì)性的收獲,以至于學(xué)習(xí)到最后越來(lái)越焦慮。

初學(xué)者想要快速學(xué)習(xí)Java技術(shù)的心情大家都可以理解,但是有一句話:欲速則不達(dá)。盲目的追求快并不能達(dá)到理想的學(xué)習(xí)效果,問(wèn)題來(lái)了,那么作為Java新人如何快速的學(xué)習(xí)Java編程呢?

新人學(xué)習(xí)進(jìn)步非常緩慢,是因?yàn)楹芏嗟腏ava難題自己都沒(méi)有辦法解決,身邊沒(méi)有懂技術(shù)的人,所以只能一直在網(wǎng)上苦苦查找答案,就算你找到了解答,但是也不一定能夠保證是對(duì)的。

初學(xué)者如何快速學(xué)Java?

方法1:Java初學(xué)者可以加入一個(gè)比較好的Java學(xué)習(xí)交流群,或者論壇,群不需要加的太多,在群中提出問(wèn)題,有時(shí)候其他人的只言片語(yǔ)也可以幫助你走出困境。多與技術(shù)好的人交流溝通,你的技術(shù)才能變得更好。比如我的這個(gè)技術(shù)交流群

我創(chuàng)建的Java自學(xué)交流裙,前面輸入是:926中間是:452最后連起來(lái):303,需要java最新錄制視頻教程及學(xué)習(xí)路線,開(kāi)發(fā)工具,jar包。源碼等都可以找我,有遇見(jiàn)任何問(wèn)題都可以隨時(shí)來(lái)交流,只有不斷的碰撞和交流,我們才能發(fā)現(xiàn)解決自己的問(wèn)題,以此取長(zhǎng)補(bǔ)短。

方法2:對(duì)于初學(xué)者來(lái)說(shuō)快速學(xué)Java,還有一個(gè)有效的辦法就是收集有用代碼和工具,一些代碼是可以重復(fù)使用的,隨著你Java代碼的練習(xí)越來(lái)越多,你對(duì)Java代碼編寫(xiě)越來(lái)越得心應(yīng)手,你就會(huì)發(fā)現(xiàn)你之前搜集的有用的代碼和工具,大大節(jié)省了你敲代碼的時(shí)間,比如工具類的:StringUtils(字符串工具),DBUtils(數(shù)據(jù)庫(kù)工具)等等。

方法3:養(yǎng)成良好的記錄筆記的習(xí)慣,因?yàn)樵诳焖賹W(xué)習(xí)Java的過(guò)程中,記錄顯得尤為重要,比如在Java學(xué)習(xí)中,把你碰到的問(wèn)題,或者突然間的奇思妙想記錄下來(lái),不時(shí)翻翻,你會(huì)很清楚你一路以來(lái)的學(xué)習(xí)歷程是怎樣的。

它不僅是你Java學(xué)習(xí)的成長(zhǎng)日記,更是鼓勵(lì)支持你堅(jiān)持學(xué)Java的好法寶,還可以成為你Java學(xué)習(xí)的動(dòng)力源泉。

好的學(xué)習(xí)方法再加上良好的習(xí)慣,你會(huì)發(fā)現(xiàn)學(xué)習(xí)Java也不是一件多么困難的事情。當(dāng)然,以上這些方法適用于那些有足夠時(shí)間學(xué)習(xí),或者是有較強(qiáng)自控力的人,如果你面臨的就業(yè),面臨著經(jīng)濟(jì)問(wèn)題,很難有一顆平常心去好好學(xué)習(xí)。

總之,學(xué)好Java技術(shù)才你才能享受生活帶來(lái)的樂(lè)趣,為了你的夢(mèng)想,努力學(xué)習(xí)吧。

有哪些適合java初學(xué)者的項(xiàng)目?

20個(gè)當(dāng)時(shí)初學(xué)時(shí)的Java 練手項(xiàng)目,結(jié)尾提供項(xiàng)目源碼。

需要可以群文件自行下載

請(qǐng)點(diǎn)擊輸入圖片描述

JavaScript 為什么不要使用 eval

作者:王欣彤

來(lái)源:知乎

著作權(quán)歸作者所有,轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)。

不推薦使用eval的原因有很多,

1、eval 太神秘了,以至于很多人用錯(cuò)。所以不推薦使用。

這并不是eval 不好而是因?yàn)槿菀妆挥缅e(cuò)。這并不是eval 不好而是因?yàn)槿菀妆挥缅e(cuò)。

eval只是一個(gè)普通的函數(shù),只不過(guò)他有一個(gè)快速通道通向編譯器,可以將string變成可執(zhí)行的代碼。有類似功能的還有Function ,

setInterval 和 setTimeout。

2、 eval不容易調(diào)試。用chromeDev等調(diào)試工具無(wú)法打斷點(diǎn)調(diào)試,所以麻煩的東西也是不推薦使用的…

3、說(shuō)到性能問(wèn)題,在舊的瀏覽器中如果你使用了eval,性能會(huì)下降10倍。在現(xiàn)代瀏覽器中有兩種編譯模式:fast path和slow path。fast path是編譯那些穩(wěn)定和可預(yù)測(cè)(stable and predictable)的代碼。而明顯的,eval不可預(yù)測(cè),所以將會(huì)使用slow path ,所以會(huì)慢。

還有一個(gè)是,在使用類似于Closure Compiler等壓縮(混淆)代碼時(shí),使用eval會(huì)報(bào)錯(cuò)。

(又慢又報(bào)錯(cuò),我還推薦嗎?)

4、關(guān)于安全性,我們經(jīng)常聽(tīng)到eval是魔鬼,他會(huì)引起XSS攻擊,實(shí)際上,如果我們對(duì)信息源有足夠的把握時(shí),eval并不會(huì)引起很大的安全問(wèn)題。而且不光是eval,其他方式也可能引起安全問(wèn)題。比如:

莫名其妙給你注入一個(gè)script src=""標(biāo)簽,或者一段來(lái)歷不明的JSON-P請(qǐng)求,再或者就是Ajax請(qǐng)求中的eval代碼…

所以啊,只要你的信息源不安全,你的代碼就不安全。不單單是因?yàn)閑val引起的。

你用eval的時(shí)候會(huì)在意XSS的問(wèn)題,你越在意就越出問(wèn)題,出的多了,eval就成噩夢(mèng)了。

5、效率問(wèn)題是程序邏輯問(wèn)題。對(duì)于一些有執(zhí)行字符串代碼需求的程序中,不用eval而用其他方式模擬反而會(huì)帶來(lái)更大的開(kāi)銷。

本人想學(xué)習(xí)編程,需要哪些入門書(shū)籍

C語(yǔ)言、C++、或者java

具體怎樣學(xué)編程 :

1.明確學(xué)習(xí)目的

學(xué)習(xí)編程對(duì)大多數(shù)IT業(yè)人員來(lái)說(shuō)都是非常有用的。學(xué)編程,做一名編程人員,從個(gè)人角度講,可以解決在軟件使用中所遇到的問(wèn)題,改進(jìn)現(xiàn)有軟件,可以為自己找到一份理想的工作添加重要得砝碼,有利于在求職道路上謀得一個(gè)好的職位;從國(guó)家的角度,可以為中國(guó)的軟件產(chǎn)業(yè)做出應(yīng)有的貢獻(xiàn),一名優(yōu)秀的程序員永遠(yuǎn)是被爭(zhēng)奪的對(duì)象。學(xué)習(xí)編程還能鍛煉思維,使我們的邏輯思維更加嚴(yán)密;能夠不斷享受到創(chuàng)新的樂(lè)趣,將一直有機(jī)會(huì)走在高科技的前沿,因?yàn)槌绦蛟O(shè)計(jì)本身是一種創(chuàng)造性的工作。知識(shí)經(jīng)濟(jì)時(shí)代給我們帶來(lái)了無(wú)限的機(jī)會(huì),要想真正掌握計(jì)算機(jī)技術(shù),并在IT行業(yè)里干出一番事業(yè)來(lái),有所作為,具有一定的編程能力是一個(gè)基本條件和要求。

2.打好基礎(chǔ)

學(xué)編程要具備一定的基礎(chǔ),總結(jié)之有以下幾方面:

(1)數(shù)學(xué)基礎(chǔ) 從計(jì)算機(jī)發(fā)展和應(yīng)用的歷史來(lái)看計(jì)算機(jī)的數(shù)學(xué)模型和體系結(jié)構(gòu)等都是有數(shù)學(xué)家提出的,最早的計(jì)算機(jī)也是為數(shù)值計(jì)算而設(shè)計(jì)的。因此,要學(xué)好計(jì)算機(jī)就要有一定的數(shù)學(xué)基礎(chǔ),出學(xué)者有高中水平就差不多了。

(2)邏輯思維能力的培養(yǎng)學(xué)程序設(shè)計(jì)要有一定的邏輯思維能力,“邏思力”的培養(yǎng)要長(zhǎng)時(shí)間的實(shí)踐鍛煉。要想成為一名優(yōu)秀的程序員,最重要的是掌握編程思想。要做到這一點(diǎn)必須在反復(fù)的實(shí)踐、觀察、分析、比較、總結(jié)中逐漸地積累。因此在學(xué)習(xí)編程過(guò)程中,我們不必等到什么都完全明白了才去動(dòng)手實(shí)踐,只要明白了大概,就要敢于自己動(dòng)手去體驗(yàn)。誰(shuí)都有第一次。有些問(wèn)題只有通過(guò)實(shí)踐后才能明白,也只有實(shí)踐才能把老師和書(shū)上的知識(shí)變成自己的,高手都是這樣成材的。

(3)選擇一種合適的入門語(yǔ)言 面對(duì)各種各樣的語(yǔ)言,應(yīng)按什么樣的順序?qū)W呢?程序設(shè)計(jì)工具不外乎如下幾類: 1)本地開(kāi)發(fā)應(yīng)用軟件開(kāi)發(fā)的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;數(shù)據(jù)庫(kù)開(kāi)發(fā)工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。 2)跨平臺(tái)開(kāi)發(fā)開(kāi)發(fā)工具如 Java 等。 3)網(wǎng)絡(luò)開(kāi)發(fā)對(duì)客戶端開(kāi)發(fā)工具如:Java Script 等;對(duì)服務(wù)器開(kāi)發(fā)工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的環(huán)境下幾種開(kāi)發(fā)工具中 VB 法簡(jiǎn)單并容易理解,界面設(shè)計(jì)是可設(shè)化的,易學(xué)、易用。選 VB 作為入門的方向?qū)Τ鰧W(xué)者是較為適合的。

3. 注意理解一些重要概念

一本程序設(shè)計(jì)的書(shū)看到的無(wú)非就是變量、函數(shù)、條件語(yǔ)句、循環(huán)語(yǔ)句等概念,但要真正能進(jìn)行編程應(yīng)用,需要深入理解這些概念,在理解的基礎(chǔ)上應(yīng)用,不要只簡(jiǎn)單地學(xué)習(xí)語(yǔ)法、結(jié)構(gòu),而要吃透針對(duì)這些語(yǔ)法、結(jié)構(gòu)的應(yīng)用例子,做到舉一反三,觸類旁通。

4.掌握編程思想

學(xué)習(xí)一門語(yǔ)言或開(kāi)發(fā)工具,語(yǔ)法結(jié)構(gòu)、功能調(diào)用是次要的,最主要是學(xué)習(xí)它的思想。例如學(xué)習(xí) VC 就要學(xué)習(xí) Windows 的內(nèi)在機(jī)理、什么是線程......;學(xué)習(xí) COM 就要知道 VTALBE 、類廠、接口、idl......,關(guān)鍵是學(xué)一種思想,有了思想,那么我們就可以觸類旁通。

5.多實(shí)踐、多交流

掌握編程思想必須在編程實(shí)際工作中去實(shí)踐和體會(huì)。編程起步階段要經(jīng)常自己動(dòng)手設(shè)計(jì)程序,具體設(shè)計(jì)時(shí)不要拘泥于固定的思維方式,遇到問(wèn)題要多想幾種解決的方案。這就要多交流,各人的思維方式不同、角度各異,各有高招,通過(guò)交流可不斷吸收別人的長(zhǎng)處,豐富編程實(shí)踐,幫助自己提高水平。親自動(dòng)手進(jìn)行程序設(shè)計(jì)是創(chuàng)造性思維應(yīng)用的體現(xiàn),也是培養(yǎng)邏輯思維的好方法。

6.養(yǎng)成良好的編程習(xí)慣

編程入門不難,但入門后不斷學(xué)習(xí)是十分重要的,相對(duì)來(lái)說(shuō)較為漫長(zhǎng)。在此期間要注意養(yǎng)成一些良好的編程習(xí)慣。編程風(fēng)格的好壞很大程度影響程序質(zhì)量。良好的編程風(fēng)格可以使程序結(jié)構(gòu)清晰合理,且使程序代碼便于維護(hù)。如代碼的縮進(jìn)編排、變量命令規(guī)則的一致性、代碼的注釋等。

7.上網(wǎng)學(xué)編程

在網(wǎng)上可以學(xué)到很多不同的編程思想、方法、經(jīng)驗(yàn)和技巧,有大量的工具和作品及相關(guān)的輔導(dǎo)材料供下載。例如網(wǎng)站“編程課堂”()主要以 VB 和 Delph;教學(xué)和交流為主,提供大量實(shí)用技巧;網(wǎng)站“現(xiàn)在時(shí)編程學(xué)園”()是專門介紹C、VC、VB、Delphi 等的綜合編程網(wǎng)站;網(wǎng)站“ VB 編程樂(lè)園 ”()提供內(nèi)容豐富而且實(shí)用的編程技術(shù)文章、精選控件、源代碼下載、計(jì)算機(jī)考試、相關(guān)軟件以及編程書(shū)籍推薦等等。

8.加強(qiáng)計(jì)算機(jī)理論知識(shí)的再學(xué)習(xí)

學(xué)編程是符合“理論→實(shí)踐→再理論→再實(shí)踐”的一個(gè)認(rèn)識(shí)過(guò)程。一開(kāi)始要具有一定的計(jì)算機(jī)理論基礎(chǔ)知識(shí),包括編程所需的數(shù)學(xué)基礎(chǔ)知識(shí),具備了入門的條件,就可以開(kāi)始編程的實(shí)踐,從實(shí)踐中可以發(fā)現(xiàn)問(wèn)題需要加強(qiáng)計(jì)算機(jī)理論知識(shí)的再學(xué)習(xí)。程序人人皆可編,但當(dāng)你發(fā)現(xiàn)編到一定程度很難再提高的時(shí)候,就要回頭來(lái)學(xué)習(xí)一些計(jì)算機(jī)科學(xué)和數(shù)學(xué)基礎(chǔ)理論。學(xué)過(guò)之后,很多以前遇到的問(wèn)題都會(huì)迎刃而解,使人有豁然開(kāi)朗之感。因此在學(xué)習(xí)編程的過(guò)程中要不斷地針對(duì)應(yīng)用中的困惑和問(wèn)題深入學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)、算法、計(jì)算機(jī)原理、編譯原理、操作系統(tǒng)原理、軟件工程等計(jì)算機(jī)科學(xué)的理論基礎(chǔ)和數(shù)理邏輯、代數(shù)系統(tǒng)、圖論、離散數(shù)學(xué)等數(shù)學(xué)理論基礎(chǔ)知識(shí)。這樣經(jīng)過(guò)不斷的學(xué)習(xí),再努力地實(shí)踐,編程水平一定會(huì)不斷提高到一個(gè)新高度。

在百度知道里搜索 變形金剛 搜索結(jié)果居然會(huì)變形.這是通過(guò)什么技術(shù)實(shí)現(xiàn)的.求解.

7月20日消息,就在備受關(guān)注的《變形金剛3》在中國(guó)首映前一天,中文互動(dòng)問(wèn)答平臺(tái)百度知道上一個(gè)趣味和應(yīng)景“變形金剛”彩蛋被網(wǎng)友發(fā)現(xiàn),并引發(fā)圍觀。

用戶只要在百度知道檢索“變形金剛”或“變形金剛3”,搜索結(jié)果中原本的文字鏈接就會(huì)組合成一個(gè)變形金剛出現(xiàn)在頁(yè)面的右邊,并且該“變形金剛”還會(huì)動(dòng)態(tài)走向頁(yè)面中間,伴隨其腳步的停止,頁(yè)面也會(huì)隨之震動(dòng)。

變形金剛在百度知道搜索自動(dòng)變形_百度知道變形金剛3玩轉(zhuǎn)變形

大量網(wǎng)友被這種新鮮的惡搞形式所吸引,紛紛前往圍觀。百度知道“變形”這一新鮮創(chuàng)意,也進(jìn)一步激發(fā)起“剛粉”的觀影熱情。

騰訊科技獲悉,這個(gè)創(chuàng)意并來(lái)團(tuán)隊(duì)合作,而是由百度一位“剛粉”工程師獨(dú)立完成,他利用自己的周末業(yè)余時(shí)間,用整整1天時(shí)間完成開(kāi)發(fā)這個(gè)代碼版“變形金剛”產(chǎn)品。

創(chuàng)意由百度“剛粉”工程師一日完成

據(jù)了解,工程師文化濃郁的百度公司內(nèi)部一向尊重自由獨(dú)立的思考,鼓勵(lì)各種奇思妙想的誕生和實(shí)現(xiàn)。這種寬松的氛圍孕育了貼吧、知道等產(chǎn)品,也培育了大量充滿奇思妙想工程師。黃方榮就是百度數(shù)千年輕工程師中的普通一員。

生于1978年、從事Web前端研發(fā)的黃方榮是典型的“變形金剛”粉絲。他說(shuō),“變形金剛”承載了他很多難忘的童年記憶。在《變形金剛3》上映之際,“做一個(gè)酷的東西,獻(xiàn)給自己,獻(xiàn)給兒子,也獻(xiàn)給那些同為‘剛粉’的朋友們”成為黃方榮近期閑暇之余想得最多的問(wèn)題。

做個(gè)什么樣的產(chǎn)品才能讓所有人眼前一亮?擅長(zhǎng)JavaScript開(kāi)發(fā)的黃方榮突發(fā)奇想:不如用JavaScript代碼寫(xiě)一段代碼,讓搜索結(jié)果化身為“變形金剛”。

很多人都知道,一些用ASCII字符展現(xiàn)的圖片畫(huà)面能實(shí)現(xiàn)動(dòng)態(tài)呈現(xiàn)。黃方榮的創(chuàng)意與此類似。他計(jì)劃首先將變形金剛的動(dòng)作進(jìn)行分解,再將飽滿的動(dòng)作形象轉(zhuǎn)化成可以在技術(shù)上控制的點(diǎn)陣,最后用JavaScript代碼來(lái)實(shí)現(xiàn)。

想起來(lái)簡(jiǎn)單,實(shí)際卻很費(fèi)神。整個(gè)開(kāi)發(fā),黃方榮手繪了40多張草圖,描了不計(jì)其數(shù)的點(diǎn)陣,這保障了最終變形金剛變身的時(shí)候,動(dòng)態(tài)效果更加逼真。而在代碼實(shí)現(xiàn)之后,更麻煩的調(diào)試過(guò)程開(kāi)始了,他需要不斷調(diào)整點(diǎn)陣和代碼,讓恰當(dāng)?shù)淖址谇‘?dāng)?shù)臅r(shí)間出現(xiàn)在恰當(dāng)?shù)奈恢蒙?。整整忙碌了一天,黃方榮終于完美實(shí)現(xiàn)了自己的創(chuàng)意。

創(chuàng)意獲百度副總裁親口贊賞?僅三天上線

用技術(shù)改變這個(gè)世界、改變億萬(wàn)人的生活,這是每一位百度工程師的夢(mèng)想。黃方榮自然個(gè)人也相信:在日常繁雜的工作中,每一個(gè)新的想法,對(duì)產(chǎn)品的改進(jìn),都可能產(chǎn)生“蝴蝶效應(yīng)”,影響數(shù)億人的體驗(yàn)。

7月18日,黃方榮上班就在百度hi群里把自己周末的成果分享給了技術(shù)部門的同事,負(fù)責(zé)技術(shù)的百度副總裁王夢(mèng)秋立即回復(fù)了一句話:“創(chuàng)意很酷,上線實(shí)現(xiàn)吧”。三天之后,黃方榮完成了機(jī)器人呈現(xiàn)效果的優(yōu)化。

從7月20日下午開(kāi)始,來(lái)自全國(guó)各地的網(wǎng)友紛紛圍觀百度這一創(chuàng)意,當(dāng)看到往常普通的搜索結(jié)果突然“走動(dòng)”起來(lái),甚至完成“機(jī)器人變形”,許多網(wǎng)友在微博上表達(dá)了驚嘆。一些網(wǎng)友用“太炫”、“太意外”、“太激動(dòng)”等詞匯表達(dá)驚奇感受。

還有“剛粉”表示:“沒(méi)想到在網(wǎng)頁(yè)上,用編程可以讓搜索結(jié)果組成變形金剛,會(huì)走動(dòng)、會(huì)跺腳。最神奇的是連帶著屏幕都能一起震動(dòng),非常好玩?!?/p>

分享題目:妙想javascript,妙想列出了一個(gè)算式180+305405她解決的是什么問(wèn)題
分享路徑:http://jinyejixie.com/article32/dsedopc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)、關(guān)鍵詞優(yōu)化、網(wǎng)站建設(shè)、網(wǎng)站營(yíng)銷搜索引擎優(yōu)化、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名
峨眉山市| 隆德县| 万宁市| 柳江县| 甘洛县| 崇州市| 清丰县| 全南县| 巴林左旗| 余姚市| 陈巴尔虎旗| 迭部县| 双柏县| 颍上县| 西和县| 新昌县| 临漳县| 津市市| 涞源县| 利川市| 庆阳市| 青岛市| 花莲县| 灵丘县| 浙江省| 淄博市| 聊城市| 开封县| 张家界市| 肥乡县| 中超| 湘西| 榆中县| 且末县| 股票| 静乐县| 门源| 井陉县| 昌吉市| 江北区| 朝阳县|