第202頁
他發現冉苒正目不轉睛地盯著他打開的後台程序看。
滿屏密密麻麻的代碼,她緩緩滑動著滑鼠,自上而下一排一排地閱讀,速度恆定,像在讀新聞。
程序代碼每一行的信息量截然不同,速度恆定就代表,這是走馬觀花,壓根兒讀不懂。
這不,她越讀,眉頭皺得越緊。
梁煥耷拉著身子靠在門框上,默默看了冉苒一會兒,發梢上的水一滴一滴滴下來,沾濕了肩。
冉苒端坐著,讀得太專心,連他回來了都沒察覺,那副旁若無人的用心勁兒,倒讓他想起了她在自習室學英語的樣子。
都看不懂還這麼認真?他暗自勾唇一笑。
看了一會兒,梁煥輕手輕腳走進臥室,拿出毛巾圍到脖子上,又悄聲朝浴室走,打算去吹頭。
這時,冉苒終於發現了他,「呀」地一聲。
梁煥回頭,隔著道門框同她對視。
「這些都是你寫的?」她神情驚嘆。
「嗯。」他理所當然。
「這是C語言嗎?你以前給我講過一點最基礎的語法,看起來挺像的,但又看不懂。好多的括號,一層一層的,搞不清哪兒是哪兒。」
「這是C#。」
「那是什麼?和C不一樣?」
「不一樣,C#通常用來架構網站之類,基礎語法和C差不多,但編程思維不同,看起來層層括號,是因為這是一種面向對象的程式語言。」
「面向……對象?」外行顯然一頭霧水。
梁煥剛套上脖子的干毛巾迅速被沾濕,見冉苒好奇心濃厚,他乾脆先不去吹頭,擦了兩下便走回到寫字檯邊。
「你真要正兒八經學點編程?」
「嗯,老師說了用得上的。」冉苒點頭
「那起來。」
「啊?」
「起來,給梁老師讓座。」他故作高高在上。
「哦。」學生冉苒乖乖站起來。
梁煥鳩占鵲巢,舒坦地坐進了靠椅里,然後拍拍腿:「坐這。」
冉苒被他一拉,坐到了他腿上。
他就喜歡這感覺,那重量剛剛好,胳膊一環,還給人拉靠到自己胸口上。
「面向對象是相對面向過程而言的,C是面向過程的,C#和C++這些是面向對象的。」
梁老師開始授課,「打個比方,比如我這次搬家,我跟搬家公司的人交代要搬哪些東西,有兩種方法。」
「一種是直接告訴他們要搬的物件名稱,比如書、床上用品、衣服等等,列個清單,一一告知,然後他們就按照清單一樣一樣地搬。」
「還有一種,是我事先把物件都裝進箱子里,給每個箱子命個名,然後不告訴他們要搬的東西是什麼,只告訴他們要搬哪些箱子就可以了。」
「你怎麼看這兩種方法的優劣?」
冉苒思索起來:「如果需要搬的東西少,只有幾樣,好認也好記的話,第一種不用裝箱比較省事。但如果東西很多很雜,就只能第二種了,要不然得列好長的清單,不好交代也不好搬,還容易落東西。」
「嗯——」梁煥點著頭,這丫頭是真悟性高啊,一下就找到了關鍵點。
「其實第一種就類似面向過程,每一個定義,每一個方法都是單獨表達,哪裡需要用就在哪裡寫,一看就知道這程序要幹什麼。C語言就是這樣的模式,簡單易懂,入門容易。」
「但現實中的開發一般需要滿足的功能很多,工程量大,代碼量大,一處一處分散著寫定義和方法會非常混亂,所以一般都採用第二種方法,把定義和方法分類封裝起來,做成一個一個的類,各個類能實現什麼一目了然,需要的時候就去找對應的類。類就是封裝成的箱子,籠統一點,你也可以理解為對象,所以叫面向對象。」
「當需要反覆多次使用某個功能的時候,面向對象也更有優勢。就好比你要把一些貨物運去大洋彼岸,中途要更換不同的運輸方式,要經過汽車、火車、飛機、輪船的替換。如果是散裝,每次更換運輸方式的時候,都需要重新交代一次複雜的清單,然後清點貨物。這種時候,那一定是封裝好省事。」
「哦……」冉苒點著頭。
梁煥長臂一伸,操作滑鼠將工程文件里的一段程序選中:「這裡就是一個類的定義,上下兩端的大括號你可以看成是箱子,括起來的這些就是箱子里的貨物。」
「原來是這樣封裝的。」冉苒探頭仔細看,「你的代碼寫得很整潔,而且處處都寫了詳細的注釋,每個地方是實現什麼功能的寫得很清楚明白,現在你給我講了整體的思路,我好像能看懂什麼意思了。」
「嗯。」梁煥欣然一笑,「你不是說比起搭建,更擅長拆解嗎,讀懂這種程序大概就跟拆箱子差不多吧。」
冉苒又專心地閱讀起來,這次有了頭緒,她看得更起勁。
梁煥等了一會兒,困意來襲,拍拍她:「下回再接著教你,我去吹個頭,然後就睡覺啊。」
冉苒站起來讓他,眼睛卻還死死黏在屏幕上。
小貼士:如果覺得不錯,記得收藏網址 或推薦給朋友哦~拜託啦 (>.<)
<span>: | |
滿屏密密麻麻的代碼,她緩緩滑動著滑鼠,自上而下一排一排地閱讀,速度恆定,像在讀新聞。
程序代碼每一行的信息量截然不同,速度恆定就代表,這是走馬觀花,壓根兒讀不懂。
這不,她越讀,眉頭皺得越緊。
梁煥耷拉著身子靠在門框上,默默看了冉苒一會兒,發梢上的水一滴一滴滴下來,沾濕了肩。
冉苒端坐著,讀得太專心,連他回來了都沒察覺,那副旁若無人的用心勁兒,倒讓他想起了她在自習室學英語的樣子。
都看不懂還這麼認真?他暗自勾唇一笑。
看了一會兒,梁煥輕手輕腳走進臥室,拿出毛巾圍到脖子上,又悄聲朝浴室走,打算去吹頭。
這時,冉苒終於發現了他,「呀」地一聲。
梁煥回頭,隔著道門框同她對視。
「這些都是你寫的?」她神情驚嘆。
「嗯。」他理所當然。
「這是C語言嗎?你以前給我講過一點最基礎的語法,看起來挺像的,但又看不懂。好多的括號,一層一層的,搞不清哪兒是哪兒。」
「這是C#。」
「那是什麼?和C不一樣?」
「不一樣,C#通常用來架構網站之類,基礎語法和C差不多,但編程思維不同,看起來層層括號,是因為這是一種面向對象的程式語言。」
「面向……對象?」外行顯然一頭霧水。
梁煥剛套上脖子的干毛巾迅速被沾濕,見冉苒好奇心濃厚,他乾脆先不去吹頭,擦了兩下便走回到寫字檯邊。
「你真要正兒八經學點編程?」
「嗯,老師說了用得上的。」冉苒點頭
「那起來。」
「啊?」
「起來,給梁老師讓座。」他故作高高在上。
「哦。」學生冉苒乖乖站起來。
梁煥鳩占鵲巢,舒坦地坐進了靠椅里,然後拍拍腿:「坐這。」
冉苒被他一拉,坐到了他腿上。
他就喜歡這感覺,那重量剛剛好,胳膊一環,還給人拉靠到自己胸口上。
「面向對象是相對面向過程而言的,C是面向過程的,C#和C++這些是面向對象的。」
梁老師開始授課,「打個比方,比如我這次搬家,我跟搬家公司的人交代要搬哪些東西,有兩種方法。」
「一種是直接告訴他們要搬的物件名稱,比如書、床上用品、衣服等等,列個清單,一一告知,然後他們就按照清單一樣一樣地搬。」
「還有一種,是我事先把物件都裝進箱子里,給每個箱子命個名,然後不告訴他們要搬的東西是什麼,只告訴他們要搬哪些箱子就可以了。」
「你怎麼看這兩種方法的優劣?」
冉苒思索起來:「如果需要搬的東西少,只有幾樣,好認也好記的話,第一種不用裝箱比較省事。但如果東西很多很雜,就只能第二種了,要不然得列好長的清單,不好交代也不好搬,還容易落東西。」
「嗯——」梁煥點著頭,這丫頭是真悟性高啊,一下就找到了關鍵點。
「其實第一種就類似面向過程,每一個定義,每一個方法都是單獨表達,哪裡需要用就在哪裡寫,一看就知道這程序要幹什麼。C語言就是這樣的模式,簡單易懂,入門容易。」
「但現實中的開發一般需要滿足的功能很多,工程量大,代碼量大,一處一處分散著寫定義和方法會非常混亂,所以一般都採用第二種方法,把定義和方法分類封裝起來,做成一個一個的類,各個類能實現什麼一目了然,需要的時候就去找對應的類。類就是封裝成的箱子,籠統一點,你也可以理解為對象,所以叫面向對象。」
「當需要反覆多次使用某個功能的時候,面向對象也更有優勢。就好比你要把一些貨物運去大洋彼岸,中途要更換不同的運輸方式,要經過汽車、火車、飛機、輪船的替換。如果是散裝,每次更換運輸方式的時候,都需要重新交代一次複雜的清單,然後清點貨物。這種時候,那一定是封裝好省事。」
「哦……」冉苒點著頭。
梁煥長臂一伸,操作滑鼠將工程文件里的一段程序選中:「這裡就是一個類的定義,上下兩端的大括號你可以看成是箱子,括起來的這些就是箱子里的貨物。」
「原來是這樣封裝的。」冉苒探頭仔細看,「你的代碼寫得很整潔,而且處處都寫了詳細的注釋,每個地方是實現什麼功能的寫得很清楚明白,現在你給我講了整體的思路,我好像能看懂什麼意思了。」
「嗯。」梁煥欣然一笑,「你不是說比起搭建,更擅長拆解嗎,讀懂這種程序大概就跟拆箱子差不多吧。」
冉苒又專心地閱讀起來,這次有了頭緒,她看得更起勁。
梁煥等了一會兒,困意來襲,拍拍她:「下回再接著教你,我去吹個頭,然後就睡覺啊。」
冉苒站起來讓他,眼睛卻還死死黏在屏幕上。
小貼士:如果覺得不錯,記得收藏網址 或推薦給朋友哦~拜託啦 (>.<)
<span>: | |