一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

程序員應(yīng)該知道簡單就是美

工程師人生 ? 來源:工程師吳畏 ? 2018-12-28 15:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我們經(jīng)常會聽到這樣一句話——簡單就是美,或者是這句話的各種變體,而且這句話不限于行業(yè),不僅僅是在軟件業(yè),在各種涉及到設(shè)計藝術(shù)的領(lǐng)域,很多大師級的任務(wù)都會告訴我們,簡單就是美。

在這里我當(dāng)然只想針對軟件開發(fā)相關(guān)的內(nèi)容來談,其實我們要解決的問題就是——到底要多簡單呢?

對于UI設(shè)計——不需培訓(xùn)直接能使用

還記得曾經(jīng)看過的基本講述交互設(shè)計知識的幾本書,其中都提到了,最簡單也是最美的界面設(shè)計,就是用戶直接就明白怎么用,而不需要長期的培訓(xùn),對于這一點我深以為然,并且努力把這一點貫徹到自己所做的系統(tǒng)中。曾經(jīng)記得自己幫朋友寫了一個簡單的庫存管理系統(tǒng),界面上沒有菜單,只有幾個必要的按鈕,采用的是Office 2007的ribbon樣式,并且精心挑選了幾個意義鮮明的圖標(biāo)。朋友使用的時候,就告訴我,這個東西比他之前用過的財務(wù)軟件好多了,那個東西培訓(xùn)了兩個月還是不會使用,而且其中有太多用不到的字段,雖然不需要填寫,但是看起來也比較別扭。而我這個東西,當(dāng)時特意就沒告訴他如何使用,只是說,很簡單,看看就會了。達(dá)到的效果也很讓我自己滿意,真的是看看就會用了,哈哈。

其實想想成功的產(chǎn)品,比方說最近大賣的ipod、iphone、ipad等一系列蘋果的東西,每一種的設(shè)計都是超級簡單,沒有過于復(fù)雜的界面和操作,這種美不用我說,已經(jīng)得到了無數(shù)人的認(rèn)可。

復(fù)雜的界面真的非??简炄?,曾經(jīng)見過最復(fù)雜的界面還是出現(xiàn)在對日項目中,同樣最復(fù)雜的報表也在對日項目中,日本人對于基礎(chǔ)知識的培訓(xùn)和學(xué)習(xí),以及對復(fù)雜情況的耐心和毅力的確值得我們學(xué)習(xí),如果讓我整天面對那樣復(fù)雜的界面,我可能早就崩潰了。(比方說,一個界面上放40個以上的控件,并且填寫一個表單需要滾三屏,都是很可怕的)

我只能說,我是個懶人,不喜歡復(fù)雜的東西,解決問題喜歡用簡單的方法,各種東西的使用我也愿意選擇簡單的。

其實,對于設(shè)計界面的人來說,或者說叫做交互設(shè)計師來說,設(shè)計最簡單的界面,讓用戶能夠盡快地上手使用,并且所有的使用習(xí)慣都與用戶的傳統(tǒng)習(xí)慣相符,本身就是對客戶的一種尊重,另外,在市場上,一個產(chǎn)品是否能夠取得成功,往往界面設(shè)計的好壞會起到非常重要的作用,因為簡單易用的界面,會讓人真正感受到其中的美,并贏得更多的用戶。

上面我們所說的是最終用戶所要面對的東西,而對于我們這些程序員整天所要面對的代碼,又應(yīng)該如何呢?我覺得代碼的簡單就在于——直接能看懂

我們在工作中,不可避免地會需要維護別人的代碼,而我們自己編寫的代碼也經(jīng)常會由別人來review和維護,那么代碼的簡單之美就非常重要了。

想要直接看懂代碼,我覺得必不可少的有幾點:

簡短——每個方法都應(yīng)該盡可能地短,有人提倡每個方法不超過四行,暫時我覺得還達(dá)不到那個標(biāo)準(zhǔn),不過我們至少可以達(dá)到的是,每個方法只做一件事。曾經(jīng)見過非??膳碌拇a是有超過五層的if嵌套,而且每個嵌套里面的處理代碼都無法顯示在一屏之內(nèi),我直接就崩潰了,哈哈。

命名準(zhǔn)確——這個應(yīng)該是最有利于在維護的時候理解代碼的了。業(yè)界中提倡的自解釋代碼也正是如此,如果變量、方法、類等等的名稱都能夠準(zhǔn)確地表達(dá)出它的意義,那么閱讀代碼就和閱讀說明書一樣,自然所有的工作就都變得簡單了。

恰當(dāng)?shù)淖⑨尅谀承r候,注釋還是非常必要的,甚至對于自解釋代碼,有時還是有必要用注釋來說明一下,畢竟其中還有計算機語言無法說明的業(yè)務(wù)邏輯在里面。當(dāng)然,注釋不應(yīng)該是越多越好,某些項目中規(guī)定一定要有30%的注釋量,還是有些值得商榷的。

最后想說說關(guān)于數(shù)據(jù)庫的設(shè)計,我覺得這其中也必須應(yīng)該貫徹簡單就是美的原則,我們應(yīng)該達(dá)到的標(biāo)準(zhǔn)是——直接能理解。

好的數(shù)據(jù)庫設(shè)計對于系統(tǒng)的開發(fā)和維護都是非常重要的,特別是對于一些MIS、ERP、MRP等管理軟件,數(shù)據(jù)庫的設(shè)計在系統(tǒng)的架構(gòu)中會起到舉足輕重的作用。

我想應(yīng)該把握下面的幾個原則:

表中字段不要太多——每個表的字段數(shù)應(yīng)該控制在30個之內(nèi)吧,這個標(biāo)準(zhǔn)可能會因項目而異,只是一個基本的概念。想象一下吧,當(dāng)在項目中遇到一個數(shù)據(jù)表的定義中有超過100個字段的時候,是不是感覺到很難處理呢?我在工作的過程中遇到過多次,這種大而全的表往往就是問題的多發(fā)地段。

名稱合理——有些項目中,為了預(yù)防,往往會使用一些備用字段,或者放一些不一定代表什么意義的字段,它們的的名稱可能就是一個字母帶數(shù)字,比方說a1 a2 a3……這種字段真的是維護者的噩夢,它們可能在不同的情況下代表不同的意義,那樣我們不僅僅需要一份數(shù)據(jù)庫說明書,還需要針對每個字段在不同情況下的說明書。如果能夠避免這種情況,每個名稱都清晰地代表自身的意義,那么難度就會大大降低。

其實這里的原則和編碼的原則基本是相通的,畢竟暫時我還是以程序員的角度來看待這個問題的。

總之,簡單就是美,就是美啊就是美,你是不是也這么認(rèn)為的呢?:)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 程序員
    +關(guān)注

    關(guān)注

    4

    文章

    954

    瀏覽量

    30404
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    程序設(shè)計與數(shù)據(jù)結(jié)構(gòu)

    的地址)出發(fā),采用推導(dǎo)的方式,深入淺出的分析了廣大C程序員學(xué)習(xí)和開發(fā)中遇到的難點。 2. 從方法論的高度對C語言在數(shù)據(jù)結(jié)構(gòu)和算法方面的應(yīng)用進行了深入講解和闡述。 3. 講解了絕大多數(shù)C程序員開發(fā)
    發(fā)表于 05-13 16:45

    計算機網(wǎng)絡(luò)排錯思路總結(jié)

    明人不說暗話,這篇文章我們來聊一個非常有用,同時也是程序員必備的技能,那就是網(wǎng)絡(luò)排錯思路大總結(jié)。
    的頭像 發(fā)表于 04-01 17:32 ?370次閱讀
    計算機網(wǎng)絡(luò)排錯思路總結(jié)

    零基礎(chǔ)入門:如何在樹莓派上編寫和運行Python程序?

    是一種非常有用的編程語言,其語法易于閱讀,允許程序員使用比匯編、C或Java等語言更少的代碼行。Python編程語言最初實際上是作為Linux的腳本語言而開發(fā)的。Py
    的頭像 發(fā)表于 03-25 09:27 ?724次閱讀
    零基礎(chǔ)入門:如何在樹莓派上編寫和運行Python<b class='flag-5'>程序</b>?

    阿里云升級通義靈碼AI程序員,全面上線

    近日,阿里云宣布其備受矚目的通義靈碼AI程序員已正式全面上線,為開發(fā)者帶來更為強大和便捷的編程輔助工具。 此次上線的通義靈碼AI程序員,在功能上實現(xiàn)了全面升級?,F(xiàn)在,它支持VS Code
    的頭像 發(fā)表于 01-09 11:16 ?710次閱讀

    TMS320C6000程序員指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000程序員指南.pdf》資料免費下載
    發(fā)表于 12-24 17:19 ?0次下載
    TMS320C6000<b class='flag-5'>程序員</b>指南

    TMS320C55x DSP CPU程序員參考補充

    電子發(fā)燒友網(wǎng)站提供《TMS320C55x DSP CPU程序員參考補充.pdf》資料免費下載
    發(fā)表于 12-21 11:36 ?3次下載
    TMS320C55x DSP CPU<b class='flag-5'>程序員</b>參考補充

    UCD3138A64/UCD3138128程序員手冊

    電子發(fā)燒友網(wǎng)站提供《UCD3138A64/UCD3138128程序員手冊.pdf》資料免費下載
    發(fā)表于 12-09 14:42 ?0次下載
    UCD3138A64/UCD3138128<b class='flag-5'>程序員</b>手冊

    機械革命發(fā)布CODE AI程序員

    近日,英特爾新質(zhì)生產(chǎn)力技術(shù)生態(tài)大會在成都舉行,機械革命作為重要參展商帶來了多款明星產(chǎn)品引爆全場!其中更是在AI PC軟件生態(tài)產(chǎn)品發(fā)布分論壇上,Intel、智譜、機械革命三方聯(lián)合發(fā)布了專為程序員設(shè)計的CODE AI程序員本,成為本次大會的一大亮點。
    的頭像 發(fā)表于 11-30 10:34 ?1102次閱讀

    Linux驅(qū)動程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動程序程序員指南.pdf》資料免費下載
    發(fā)表于 11-22 15:53 ?0次下載
    Linux驅(qū)動<b class='flag-5'>程序</b><b class='flag-5'>程序員</b>指南

    AI編程工具會不會搶程序員飯碗

    AI編程工具可輔助編程,減少手動編碼,提升效率,對程序員有積極影響也有挑戰(zhàn)。程序員需深化技能、拓寬知識應(yīng)對。長遠(yuǎn)看,AI與人類程序員將共生共榮。
    的頭像 發(fā)表于 11-08 10:17 ?527次閱讀

    軟通動力子公司鴻湖萬聯(lián)助陣鴻蒙1024程序員節(jié)成功舉辦

    10月24日,在武漢、成都、深圳等地政府指導(dǎo)下,鴻蒙生態(tài)服務(wù)公司舉辦了一場面向廣大開發(fā)者的盛會——鴻蒙1024程序員節(jié)暨鴻蒙原生應(yīng)用交流會。軟通動力子公司鴻湖萬聯(lián)作為開源鴻蒙生態(tài)的重要參與者和貢獻(xiàn)者
    的頭像 發(fā)表于 10-29 15:49 ?749次閱讀
    軟通動力子公司鴻湖萬聯(lián)助陣鴻蒙1024<b class='flag-5'>程序員</b>節(jié)成功舉辦

    第五屆長沙·中國1024程序員節(jié)開幕

    據(jù)官方媒體報道,10月24日;? 第五屆長沙·中國1024程序員節(jié)在湖南湘江新區(qū)開幕;本次中國1024程序員節(jié)以“智能應(yīng)用新生態(tài)”為主題。設(shè)置有岳麓對話、技術(shù)英雄會、主題峰會及賽事、展覽等活動,一場
    的頭像 發(fā)表于 10-25 15:42 ?494次閱讀

    90后程序員的職業(yè)成長漫談

    作者:京東零售 盧楠 前言: 我在京東工作已經(jīng)來到第8個年頭,從2016年的實習(xí)生到如今負(fù)責(zé)部門整體架構(gòu),這段職業(yè)旅程中充滿了感悟。 簡單回顧我的個人成長里程碑:2017年正式加入京東后,從一名新人
    的頭像 發(fā)表于 10-15 15:24 ?547次閱讀
    90后<b class='flag-5'>程序員</b>的職業(yè)成長漫談

    技術(shù)干貨驛站 ▏深入理解C語言:掌握程序結(jié)構(gòu)知識

    在計算機編程的世界中,C語言被廣泛認(rèn)可為一門強大而高效的編程語言,其簡潔的語法和直接的指令使得它成為了許多程序員的首選。了解C語言的程序結(jié)構(gòu)和基本語法對于初學(xué)者來說至關(guān)重要。從一個簡單
    的頭像 發(fā)表于 07-27 08:45 ?1852次閱讀
    技術(shù)干貨驛站 ▏深入理解C語言:掌握<b class='flag-5'>程序</b>結(jié)構(gòu)知識

    京東上萬程序員都AI用它!

    對大模型生成代碼進行智能修復(fù),為程序員開啟代碼漏洞修復(fù)的“自動駕駛”模式,不但減少人工接入、提高工作效率,更為企業(yè)抵御內(nèi)外部各種攻擊構(gòu)建起一道堅固的安全屏障,確保業(yè)務(wù)的連續(xù)性和穩(wěn)定性。 JoyCoder是京東云自主研發(fā)的一款輔助開發(fā)人員
    的頭像 發(fā)表于 07-17 16:29 ?491次閱讀
    京東上萬<b class='flag-5'>程序員</b>都AI用它!