日本免费全黄少妇一区二区三区-高清无码一区二区三区四区-欧美中文字幕日韩在线观看-国产福利诱惑在线网站-国产中文字幕一区在线-亚洲欧美精品日韩一区-久久国产精品国产精品国产-国产精久久久久久一区二区三区-欧美亚洲国产精品久久久久

資深Linux程序員的開發(fā)經(jīng)驗(yàn)談( 三 )


除了一個(gè)簡(jiǎn)單的字符串緩沖區(qū)的實(shí)現(xiàn)之外,這段代碼還實(shí)現(xiàn)了一個(gè)可變大小的字符串?dāng)?shù)組 。它完成的是一個(gè)簡(jiǎn)單的接口,當(dāng)您寫完一個(gè)字符串以后,您可以標(biāo)記它然后繼續(xù)寫下一個(gè) 。此外,這樣會(huì)節(jié)約空間分配,并且將比較亂的代碼組織到一起 。
完整的 IMAP 服務(wù)器的代碼將在今年某個(gè)時(shí)間發(fā)布 。
清單 4. 定制的 IMAP 服務(wù)器一部分

#ifndef HOED_BUF_H;
#define HOED_BUF_H;
typedef struct {;
char *str
int size
int length
int str_start
int max_size
int n_strings
int size_strings
int *str_posn
char **str_set
} hoed_buf_t
#if;;__GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ > 4);
#define PRINTF(f, a);__attribute__((format (printf, f, a)));
#else;
#define PRINTF(f,a);
#endif;
extern hoed_buf_t *hoed_buf_alloc(int init_size, int max_size)
extern void hoed_buf_free(hoed_buf_t *)
extern void hoed_buf_reset(hoed_buf_t *)
extern void hoed_buf_new_string(hoed_buf_t *)
extern char **hoed_buf_get_set(hoed_buf_t *, int *n_string)
extern char *hoed_buf_put_char(hoed_buf_t *, char toadd)
extern char *hoed_buf_sprintf(hoed_buf_t *, const char *format,...);
PRINTF(2,3)
extern char *hoed_buf_strcat(hoed_buf_t *, const char *append)
extern char *hoed_buf_cat_sprintf(hoed_buf_t *, const char *format, ...);
PRINTF(2,3)
#endif /* HOED_BUF_H */;

稱為殺手級(jí)的 Linux 應(yīng)用程序
對(duì)Murray 來說,有兩個(gè)殺手級(jí)的 Linux 應(yīng)用程序:Emacs 和 Netscape Navigator ?!癊macs 或許是給人印象最深而且廣為應(yīng)用的基于 Linux 的應(yīng)用程序”,他說 ?!傲硪粋€(gè)是 Netscape Navigator 。有一次,我們要支持20多種 UNIX,我在 Linux 上完成了所有的工作” 。
他繼續(xù)說,“有趣的是,基于 Linux 的應(yīng)用程序可能運(yùn)行于許多不同風(fēng)格的 UNIX 系統(tǒng)上,甚至安裝了 Cygwin 的 Windows 系統(tǒng) ?!?br /> Linux 的未來如何?
當(dāng)前,Murray 正在進(jìn)行的 Linux 項(xiàng)目有好幾個(gè),從支持電子郵件、消息和共享數(shù)據(jù)庫(kù)的分布式辦公應(yīng)用程序到使用標(biāo)準(zhǔn)工具的網(wǎng)絡(luò)應(yīng)用程序(標(biāo)準(zhǔn)工具包括:Apache/Tomcat, PHP, PostgreSQL, MySQL, 和 Linux) 。Murray 有他自己的公司專門為網(wǎng)絡(luò)服務(wù)和網(wǎng)絡(luò)應(yīng)用提供主機(jī)服務(wù) 。
對(duì)Murray 來說,得益于 Linux 強(qiáng)大功能的應(yīng)用程序的列表在不斷地增長(zhǎng) 。“有很多”,他說 ?!癘racle, WebSphere, Apache, PostgresQL, MySQL, Cyrus IMAP... 這個(gè)列表很長(zhǎng)而且在不斷增長(zhǎng) ?!?br /> 【資深Linux程序員的開發(fā)經(jīng)驗(yàn)談】對(duì) Murray 來說,Linux 到此為止了 ?!拔覀兯械姆?wù)器都運(yùn)行 Linux;不管目標(biāo)平臺(tái)如何,我們主要的開發(fā)都在 Linux 上進(jìn)行;我們把 Linux 推薦給用戶來運(yùn)行服務(wù)器應(yīng)用程序”,他說 ?!?Linux 快速發(fā)展的步伐,開放源代碼組織對(duì)它的廣泛支持,低廉的開發(fā)費(fèi)用,如果把這些結(jié)合在一起,您就知道它是一個(gè)難以擊敗的平臺(tái)” 。

推薦閱讀