Archive for the ‘ Coding ’ Category

[轉載]讓人既愛又頭痛的 GNU/GPL

轉載自: 自由軟體鑄造場


GNU Genral Public License(以下簡稱GNU/GPL)是第一份自由軟體授權條款,也是目前最廣為被使用的授權條款之一。自由軟體之父 Richard M. Stallman(以下稱 Stallman)為了替他的軟體開發計畫- GNU 計畫尋找適當的授權方式,在 1989 年草擬出 GNU/GPL 第一版。它的整個架構與理念源自於 Stallman 所宣示的軟體使用者四大自由(註一):

  • 使用的自由:可以不受任何限制使用該軟體。
  • 研究的自由:可以研究該軟體的運作方式,並使其符合個人需求。
  • 散布的自由:可以自由地複製該軟體並散布給他人。
  • 改良的自由:可以自行改良該軟體並散布改良後的版本,以嘉惠眾人。

Read more

[轉載]軟體開發的新生活運動

轉載自: 愛德華日誌


不曉得是幾十年前從 "歷史" 還是 "生活與倫理(現在小學還有這門課嗎?)" 唸到的,那個在現代聽起來有點八股的新生活運動。我倒不是要在此強調復興中華文化,講究禮義廉恥,四維八德。只是新生活運動所推行的:「整齊、清潔、簡單、樸素、迅速、確實」六項生活記律,倒是與近代軟體開發思潮所標舉的簡易之風不謀而合。
Read more

[轉載][Perl][PHP]描述語言成軟體開發新寵

轉載自: CNet


過去曾經被專業程式設計師視為太簡單的描述語言(scripting languages),正逐漸成為企業軟體開發界裡的一等公民。

資料庫大廠甲骨文(Oracle)要在週一宣佈一項合作案,可望能夠讓採用Zend Technologies 公司PHP工具的企業,更容易建立客製化的應用。PHP是一種用來設計網頁的開放原始碼描述語言。

除了甲骨文的加碼PHP之外,近來軟體大廠如IBM、昇陽(Sun),及微軟,也都大力投入越來越受歡迎的描述語言,或者也稱「動態」(dynamic)語言。

描述語言過去以來已經用在網路上各種應用的設計上,但是一般而言,企業開發者並未廣為採用。但是近來有越來越多的企業與IT專業從業者尋求以這種語言,做為簡化與加速公司內客製化程式的方法,藉以避免近來普遍存在的應用軟體過於龐大或預算暴增的問題。

「描述語言越來越受歡迎而且越來越強大,只因為它太容易使用了。」顧問公司InterKnowlogy執行長Tim Huckaby表示。「這跟完成時機與金錢有關,而非關底層究竟有多優雅。」

藉由與Zend的合作,甲骨文趕搭PHP的這股風潮,並鼓勵Oracle資料庫的使用。根據Zend行銷副總裁Pamela Roussos表示,目前,Zend客戶有20%以上使用Oracle資料庫。

同時甲骨文也可吸引較小型的公司企業而擴大其客戶群──這些客戶通常缺乏強大的IT部門以一些知名的程式語言來打造龐大的客製化商業應用軟體。相較於較為 複雜的Java、C、C++,及Visual Basic,描述語言可以不需要電腦科學學歷或太多的專業訓練即可廣被採用。

甲骨文用來執行客製化商業應用的自家開發工具及相關的「中介軟體」都是以Java為基礎。同樣的,IBM、BEA、昇陽等廠商也都持續在投資Java標準。另一方面,微軟的工具則是以它專屬的「.Net」軟體為基礎。

Zend採用開放原始碼的PHP軟體並專門為企業開發者提供開發工具。

Read more

[Perl]刪除指定路徑下的所有目錄及檔案 (遞迴)

剛剛在測試 Perl 用來刪除目錄的指令時,想說找找看有沒有比較狠的方法,果然馬上就讓我看到這一篇的這一個副程式:

sub rmdashrf{ 
    foreach (<$_[0]/*>){ 
        rmdashrf($_) and rmdir if(-d); 
        unlink if(-f or -l); 
    } 
    1; 
} 
rmdashrf("/tmp/test");

這個副程式以遞迴方式執行,可以刪除指定路徑下的所有目錄及檔案。

果然,真正 Perl 的高手寫程式根本不用幾行指令,就可以殺人於無形!

[轉載]給浮躁的軟體業同仁

轉載自: 開發者俱樂部


給浮躁的軟體業同仁(1)

我只希望知識掌握在更多中國人的手裏!

中國有很多小朋友,他們十八、九歲或二十齣頭,通過自學也寫了不少代碼,他們有的代碼寫的很漂亮,一些技術細節相當出眾,也很有鑽研精神,但是他們被一些 錯誤的認識和觀點左右,缺乏對系統,對程式的整體理解能力,這些人,一個網上的朋友說得很好,他們實際上只是一些 Coding fans,壓根沒有資格稱為程式員,但是據我所知,不少小網路公司的 CTO 就是這樣的 coding fans,拿著嚇人的工資,做著嚇人的項目,項目的結局通常也很嚇人。
Read more

[轉載]學程式設計的人不能不看的好文章

轉載自: http://www.vcroad.net/ (棗子原創 wutao8@263.net)


看了下面的這篇文章,深有感觸,棗子碰到的問題也是我們大多數程式設計師的通病,也許我們大多數人都只是在做一些比較小型的軟件,對軟件運行的效率不在乎,就算對速度和效率在乎的也可能是一些在資料庫操作方面的。大家看完了,也許會有很多感想,但這只是我同意棗子的個人觀點。

做為一名大四的學生,我面試過不少的單位,有成功的也有失敗的,但是對我來說所有的失敗在某種意義上都是一種成功,特別是我下面寫的這些,寫這篇文章的時候,我已經簽了南京的一家軟件公司,但是想起今年 2 月 21 日我面試蘇州台灣的IT公司的經歷聯想到我們現在學習程式設計的一些情況我真的深有感觸,這次面試使我深深的體會到了失敗但也收穫了很多。

我要說的將分成三部分:

  1. 是我面試的具體經過
  2. 是由面試想到的
  3. 現今我應該做的

當然這些話很大程度上是我個人的意見,不可能完全得到大家的贊同,所以在某些觀點上如果哪位朋友覺得跟我的有很大出入,請不要介意,也不要對我攻擊,就當我沒有說過,歡迎和我聯繫共同探討這些問題!
Read more

[PHP]圖表繪製模組

[轉載]軟體工程師縮短工時

轉載自: CNet


微軟軟體設計工程師Adam Barr最近常和家人共用晚餐。但以前可不是如此。90年代末期,Barr忙於工作,往往無法準時下班,和妻子小孩共用晚餐,那時每週平均工作50至60小時,若碰到截止日期逼近,加班更是家常便飯,有時甚至一連數週每週工作70小時。

現在Barr固定早上8:30上班,5點下班。他說:「對這種朝九晚五的上班模式,微軟已能睜隻眼閉隻眼,不跟員工計較。以前絕非如此。」

Barr能更常和家人一起享用晚餐,凸顯軟體界工作形態出現變化:越來越多員工不再超時賣命工作。根據美國勞工部的統計,軟體出版界員工(多半是電腦專家)去年平均每週工作36.4小時,低於2001年的41.4小時。

原因之一可能是靠達康(dot.com)致富的誘因大幅褪色,再者是工程師願意更用心經營工作之外的生活。當然軟體公司漸漸學會如何提升專案管理的效率也 是其一。其實一些軟體業者坦言,員工日以繼夜超時工作反而有損產能。Atlantic System Guild的顧問Tom DeMarco說:「經常加班的公司,往往浪費許多正規上班時間。正常上下班之所以優於加班,在於工作產能高。」

Read more

Flash Bar Code 1.0 - Flash 條碼產生器 *

檔案下載

這是一個簡單好用一維條碼產生器,使用 Flash 設計而成,程式使用的條碼格式是 "EAN-13" ,前三碼為國碼 (台灣為471) + 四碼廠商碼 + 五碼資料碼 + 一碼檢查碼,只要在設計網頁時,將 "Code" 參數傳給 "FBC10.swf" 就可以了。
Read more

[轉載][MySQL]資料庫表單及欄位命名規則實例

轉載自: Neo’s Blog


今天大概把幾種常見的資料庫命名方式給整理了一下。

1.資料庫表單(Table)名稱:

單複數皆有人使用,如 products、product。

美國人命名比較喜歡依照口語習慣來用複數命名,知名的 OpenSource 軟體像 phpBB、OSCommerce、In-Link、pLog 皆是以複數命名。而 Moveable Type 則是少數使用單數名命的軟體,台灣人也是單數命名居多。

2.資料庫欄位名稱:

使用 MySQL 的 Opensource 軟體比常見整批性的加前綴(Prefix) 在欄位裡面,如 products 表單中的「產品名稱」,可能就會命名為「products_name」而 Microsoft SQL Server 則是以純欄位名稱居多,如產品名稱就直接取叫「name」了。

前綴的命名有「語意導向」跟「實用導向」二種,所謂語意導向以口語的習慣來命名,像 products 是產品的集合(複數),裡面的每個產品是單數,所以用產品名稱為例就是「product_name」。

而實用導向常見的就是以表單名稱做為前綴,如前例在 products 裡的產品名稱欄位就會命名為「products_name」,如此做的好處是程式會非常清楚每個欄位是從哪個表單抓出來的。但是缺點是在程式裡面語意不清,看起來會很不習慣。

然而大部份的欄位前綴字元還是以語意導向為主,若要使用實用導向,最好表單名稱採用單數(如 Moveable Type),否則像 OSCommerce 的全員複數,感覺程式在用名字就很奇怪,如程式明明就是只抓一筆產品名稱出來,看到 products_name 就覺的既不是複數,而且文法上也不通,意義上反而比較像 product’s name。

3.大小寫:

Microsoft 的命名方式喜歡單字第一個字母大寫,如 OrderDetail。而 MySQL 比較常見全部小寫,單字中間加底線的命名方式,如 order_detal。這跟資料庫的字元大小寫敏感度預設值有關,MS SQL Server 預設是大小寫不分,MySQL 則是大小寫視為不同欄位,所以統一小寫比較不容易出錯。

return top