如何快速有效編寫可維護代碼

首先你必須要熟悉你要寫的內容業務,如果你不熟悉,請先熟悉業務。熟悉業務之後,也請不要立即開始編寫代碼,當商務邏輯比較複雜的時候,你的代碼中會充滿了if, else之類的內容,當多層嵌套的時候,即便當時清楚的商務邏輯,到後來維護的時候,也會出現問題。那應該做什麼呢?做商務邏輯的抽象,業務一定是有n個步驟來實現的,這些實施步驟,就是你的函數名(像if,else之類的就可以用filter之類的進行分割),然後你就可以定義出最頂層的商務邏輯。

WinDbg使用摘要

1、如何抓取dump檔案。這要分兩種情況:第一種情況:如果是Vista或者是Windows2008作業系統就是一個簡單的事情,在工作管理員中,切換到"進程"選項卡,右鍵點擊你想要建立dump檔案的進程,然後選擇"Create Dump File"即可。如果你想要建立dump檔案的進程是w3wp.exe,可能會看到有很多w3wp,但不知道哪一個是你要要抓的網站,可以通過下需的命令查看,對於vista或win2008系統使用:%windir%/system32/inetsrv/appcmd

【翻譯】編寫第一個Django app,第五部分——自訂管理員功能

自訂admin表單這足以讓我們驚訝好幾分鐘,所有的代碼我們都不需要寫。當我們調用admin.site.register(Poll)時,Django只讓你編輯這個對象並”推測“怎麼把它顯示在管理頁面上。很多時候,你可能想要控制admin的樣式和功能。你可以在你註冊對象的時候把選項告訴Django來實現。讓我們看一下在編輯表單中是怎樣實現重新排序欄位的。用下面的代碼來替換admin.site.register(Poll):  class PollAdmin(admin.ModelAdmin):   

最好最經典最實用的Zend Framework個人部落格源碼

Zend Framework是個很優秀的架構,在國外的項目中使用的很廣泛,然而在國內卻有點水土不服,雖然家喻戶曉,卻鮮少人使用,最大的原因應該是中文文檔和教程比較少吧,這點我深有同感。Zend 

靜態化技術頁面另類更新方法

網站靜態化技術是個很常用的技術了,但是靜態化帶來的很大一個問題是靜態化頁面無法比較好的控制它更新。在這裡,我介紹一下我的方法。假設我的靜態化頁面1小時更新一次,在生產的靜態化頁面中插入一個產生的時間和一小段javascript的代碼。javascript每次都用目前時間和頁面內的產生時間比較,如果超過了1小時,則通過ajax通知後台重建這個靜態頁面。我們還可以在不同的靜態頁面插入不同的更新時間,靈活的調整它們的更新頻率。

QML中的states用法

在Rectangle中,可以指定一個state的屬性值,表示目前狀態,當需要狀態切換時,可以指定states屬性(注意單複數),這是一個列表屬性值,每個列表元素為n多個State狀態物件(注意區分大小寫),每個State的name用來應對Rectangle中的state值,當state值變為State中的name值時,該State被啟用。實際上,所有的Item對象都有state屬性值。預設未指定state屬性值時,該值為空白字串"" 預設的情況下,QML會幫你儲存預設定義的state狀態,即It

問卷系統的資料結構設計

問卷:title : 問卷標題description : 問卷描述is_complete : 是否完成created : 建立時間問卷問題題型:name : 題型名稱ps:題型一般有單選,多選,填空,日期,EMAIL等問卷問題:title : 問題標題wenjuan_id : 問卷IDtype_id : 題型IDindex : 問題序號(第幾題)is_bitian : 是否必填問卷問題的選項:title : 選項標題question_id : 問題IDindex : 選項序號is_blank :

Erlang求素數演算法

1 -module(libs). 2 -export([qsort/1, isPrime/1, findPrime/2]). 3 4 qsort([H|T]) -> 5 qsort([X || X <- T, X < H]) 6 ++ [H] ++ 7 qsort([X || X <- T, X >= H]); 8 qsort([]) -> []. 9 10 isPrime(1) -> false;11 isPrime(2) -

QML的基礎-Item元素

大部分的QML元素,都是從Item元素直接或間接繼承下來的。Item從QDeclarativeItem繼承下來。當然還有一些比較特殊的(如定位或者座標轉換的),則是另外的方式繼承下來的。如Transform是QGraphicsTransform繼承下來的。 activeFocus:是否為焦點anchors的一系列定位對象children:所有的子項目(可視),唯讀childrenRect:子項目位置排列clip:是否需要clip處理基本屬性: width, x, y, height,

HTTP要求方法

HTTP不僅僅只有POST和GET兩種方法,還有OPTIONS, DELETE, HEAD, PUT, TRACE,

QML中的動畫處理

QML是一個寫介面非常不錯的工具,只要你有合適的UI介面,就可以非常快速的編寫完UI介面 QML也內建了許多動畫效果,動畫效果一般都是在屬性值上的變化,這些變化的方式,就構成了不同的動畫效果。從一個點到另一個點的,走法有n多種,採用哪種方法走法,會比較好看,QML內建了一些數學上的走路方式,用Easing來描述,不知道中文沒關係,記住對應圖關係即可,大部分以In,Out,InOut,OutIn為首碼,即有Quad,Cubic,Quart,Quint,Sine,Expo,Circ,Elastic,

Zend Framework 整合Smarty

  Zend Framework的view用過一小會就不想用了,還是喜歡用Smarty。  首先下載Smarty,然後解壓,把裡面的libs檔案夾及其內容COPY到上次建立的test工程的library目錄下,我喜歡改一下名字,把它重新命名為Smarty。  開啟application.ini檔案,添加一行配置resources.frontController.noViewRenderer = 1,用來關閉Zend

一個複雜的SQL語句

1 SELECT c.*, sum(t.num) as num, b.num as total FROM np_wenjuan_choice as c 2 left join ( 3 select content, count(id) as num 4 from np_wenjuan_answer as a 5 where question_id = 8 6 group by content 7 ) as t on t.content like concat('%',c.index,'%') 8

Zend Framework+Smarty搭建高效能的企業級應用——路由匹配篇

  許多人以為,使用了Zend Framework,使用了Smarty,網站就是企業級的了。Zend Framework是一個企業級的架構,Smarty也是一個企業級的模板引擎,但是一個廚師級的鍋和一把廚師級的刀並不一定就能炒出廚師級的菜來。  Zend

靈活的Zend Framework之使用自訂的Frontcontroller

     Zend Framework是一個非常靈活的架構,幾乎什麼都可以擴充和自訂,架構是通用的,沒自訂的好用。現在我要讓他使用我自訂的Frontcontroller。     在application.ini中添加代碼:pluginpaths.Flora_Application_Resource = Flora/Application/Resource    

搭建本地的pypi

一直慨歎java中有maven這樣的工具,使得本地開發的包依賴變得更加簡單,python也有類似的包管理,稱為pypi,但是如果每次都需要到遠程伺服器上去下載,一直速度上有所限制,二者有些內容,還只能發布在私人伺服器上。360在使用的時候就有些介紹。這篇文章也介紹了 搭建私人的 python 包發布中心

WinDbg初始體驗3,剪不斷的鐵鏈(OutOfMemory案例分析Ⅱ)

鐵鏈總是很難剪斷的,.NET的對象引用鏈條就猶如鐵鏈那麼堅固。稍有不注意,你就會因為這個鏈條而讓你的程式背上沉重的負擔,進而讓你的程式Crash。接下來我們就結合WinDbg來分析一個這樣的例子。上回說到,解決了Lucene.net的緩衝問題後,記憶體依久就是如洪水水位一樣,無情的暴漲,馬上又到了警戒水位了,沒有辦法,只有炸堤防洪。要得徹底的解決問題,還得依靠Windbg和dump檔案。這回,我捕捉到一個也將近1G左右的dump檔案。好吧,讓我們重新開始吧。查看拖管堆:0:011>

WinDbg初始體驗2,抓住不放的惡棍(OutOfMemory案例分析Ⅰ)

在上篇中,介紹了如何使用adplus來捕捉dump。我們可以使用這個命令:adplus -Crash -p 進程ID(或-IIS) -quiet -fullonfirst -o C:\dumps

The Flask Mega(教程一 – Hello World)

原文連結:背景本人是一個有16年不同語言編寫複雜應用經曆的程式員,第一次使用是為了能夠綁定C++庫更加高效的使用。 除python外,我還寫過PHP,Ruby, Smalltalk以及你可能不信的C++。 所有這些,我發現Python/Flask組合是其中一個最複雜的。應用接下來將要開發的app是一個有微博伺服器特徵的應用,我將分為十幾個小節來介紹此app開發,下文將稱此app成為microblog。我認為這是一個好的注意。 下面是我將為此app建立的幾個要點:

WinDbg初始體驗,問題來了怎麼辦?

最近有一本書,雖然還沒有出版本,但已經引起了很多人的關注的。那就是熊大牛(請熊力老師別生氣,絕對沒有惡意,是尊稱)的《Windows 高效排錯》。提到Windows排錯,我相信有很多像我這樣普通的程式員想都不敢自己能去做這件事。面對那些猶如天書般的16進位表示的記憶體位址,二進位表示的代碼,和數目繁多的資料對象。我們一看都會把它當成是亂碼了,更別提去瞭解它了。但當我們遇到,無休止的記憶體溢出,程式阻塞,CPU

總頁數: 61357 1 .... 5469 5470 5471 5472 5473 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.