翻譯,Subversion和第一見解

一月30,2008 ·在發表意見顛覆 · 查看評論

以優勢的陰雨天氣,本週末給了這本書的“使用Subversion進行版本控制”下面的翻譯。 不幸的是時間雖短,但我訂了這個任務每週一天。

起初它似乎比我預想的更困難,反正我不會說英語,只是讀,寫,這也充分證明了翻譯。

其實我很享受它,我發現,放鬆翻譯。 這可能是因為這本書本身寫得很好。 文本是明確的,愉快的閱讀,使翻譯僅僅是理解它的後果。

最後,我增加的同時我的詞彙和學習 Subversion的基礎。 買一價兩種。

我希望繼續這種勢頭,並提供早期的章節​​,這已經是25%的翻譯。

誰支付的支助帳戶?

2008年1月28日·在發表評論 · 查看評論

我在閱讀一篇文章法比奧特列斯 ,他講述了一個客戶端誰與他們的ERP廠商一方面是因為它不支持新版本的PostgreSQL的故事。 文字是相當有趣,解決了業主的支持與支持問題“自由”。

“免費支持”從我的角度來看,大約有兩個內涵,自由軟件支持的,由公司提供,並且是有償的,“免費支持”在其他論壇,並列出規定的其他。 支持“老闆”會由公司提供的專有解決方案的支持。

我並不是暗示模型比另一種更好的,或作出比較。 每一個模型是為自己的利基,期適宜。 我只講一個(在許多)的“支持”名單和論壇方面。

對於初學者來說,郵件列表和論壇,從來沒有聲稱自己是支持的,還是我錯了? 這兩項目標是成為一個共享信息的方式,幫助,但不支持。 如果任了這門課程,因為它是公開,不適合的利基。 大。

我想:如果企業主管的支持,他可能是有成本的。 然後我問自己:誰支付的支持“自由”的代價? 那些傢伙是一個愚蠢的名單,然後是免費的支持? 如果他們那麼好,為什麼他們不收費嗎?

那麼,“天下沒有免費的啤酒。” 當公司僱用的分析師或技術支持服務,為您提供的專業有一定的成本每小時。 當然,大家誰在這樣或那樣的作品,最終充電對她的工作和/或時間“價值 /時間”。 每當 IT專業人員提供了一個論壇或郵件列表的提示,時間是從措辭提交了最後,成為投資。 即使是錯誤後,其他人將修復它遲早的事。 因此,信息流在兩個方面,來回。 每當有關投資價值的信息變得。

從專業角度來看,大致來說,每一次我把一個列表或論壇的東西,我用我的時間和我的價值 /的支持,他們給我的名單小時付費。 每次我使用該列表提示,我正在客戶端。 有趣的是,在這種情況下,誰出錢的支持是一個誰給的支持。 作為回報,我得到的經驗,專長和聲望,這是在現實世界中使用,以提高他們的職業清單。

而誰不把就行了? 是否給默認?

從技術上講,沒有。 沒有人有義務發布什麼,他們都是志願者,我已經聽到了一些原因不張貼,如:

“哦,我不是那麼好職位。”或者“我已經回答了這個問題,如果我後會是多餘的,”等。 其實都有效,完全不像常識。 在我看來,這將是不道德的唯一,不與取優勢,這最終被射中腳,因為返回永遠不會到來的意圖作出貢獻 ... ...

最後,支持“自由”,另外支付,因為矛盾,因為它可能看起來。 這是一個小的成本,增加了巨大的價值,但並不免除有一個稱職的專業費用清單您的公司,是一家在支持自己的IT人員或專業。

在QT開始,第一部分

2008年1月26日·張貼在C / C + +Qt的 · 查看評論

根據要求,我決定把顯示短的文章,以獲得創業的QT。

在apana 20條線與空間(是的,空間是你的朋友,永遠不會離開)和額外的頭,我們可以做一個“Hello World”的圖表,其中已經使用該框架的主要特徵。

正如我沒有辦法測試在其他平台上,我假設,該平台使用任何* nix的,而QT開發庫已經安裝,以及標準構建工具。 如果沒有安裝QT,現在是時候採取看看這個鏈接

完整的源代碼示例可以下載在這裡 ,但如果你喜歡做手工了,創造qthello和裡面一個名為包含以下內容的目錄main.cpp的地方:

  01#包括<qapplication>
 02#包括<qwidget>
 03#包括<qpushButton>
 04
 main ( int argc , char ** argv ) 05 INT(INT ARGC,ARGV 的char **)
 {06
 app ( argc , argv ) ; 07 一個QApplication應用程序(ARGC,ARGV);
 window ; 08 QWidget的 窗口;
 button ( "Hello World!" , & window ) ; 09按鈕QPushButton(“世界您好!”,&窗口);
 10
 ( 300 , 200 ) ; 11窗口調整大小 (300,200);
 ( 100 , 85 , 100 , 30 ) ; 12按鈕SetGeometry(100,85,100,30);
 13
 :: connect ( & button , SIGNAL ( clicked ( ) ) , 14 QObject的: 連接 (&按鈕,信號(點擊()),
                          SLOT ( quit ( ) ) ) ; 與應用,SLOT(退出()));
 15
 ( ) ; 16窗口顯示 ();
 app. exec ( ) ; 17 返回應用程序exec();
 19}
 20 

現在經過一個終端,目錄,然後鍵入qmake的項目。

如果一切是正確的安裝,一個名為qthello.pro必須已經創建。 如果沒有在目錄 qthello.pro,然後檢查上一步。

隨著一切都解決了在終端中輸入qmake的&&做。 這將編譯的例子,它的工作了,一個可執行文件名為 qthello已創建。

運行。/ Qthello它和一個按鈕窗口應該出現。

好吧,我們現在最有趣的部分:源代碼。

前三行只包含標題有關的類,我們將使用Qt。

第7行聲明了一個 QT應用程序並將其傳遞給由外殼程序收到的參數。 了QApplication類管理的方案和它的設置主要流向。 它包含主事件循環,這裡無論從界面和其他來源的所有事件的處理和運輸。 它也負責管理其他事物之間的程序啟動和關閉。

第8行聲明了一個小部件,這將是我們的主要圖形元素。

第9行聲明與文本按鈕的“Hello World!”,使得它一個“兒子”我們的主要部件。 這將使按鈕,在主窗口部件出現。

11:12行配置的形狀和定位的組件。

第14行顯示了一個框架的主要特徵, 信號槽系統。

信號和槽是用來執行對象之間的通信。 通過這個系統中的對象可以火(發送)事件(信號),可以捕獲和一個(或多個)對象(S)處理。 信號和槽是類特殊的方法。 基本上,一個信號發射被翻譯成通過調用槽MOC(元對象編譯器) ,其中預處理的源代碼編譯之前。 對於每一個類,它實現信號和槽,它生成的文件名為 moc_nomedaclasse.cpp,然後隨著剩下的代碼編譯。 這是所有做透明和程序員通常不必擔心這些細節。 具體而言,signigica發送一個信號,它通過調用相關的插槽將連接傳遞到信號相同的參數莫名其妙。 更多的信息可以在網上進行檢查文檔。

在我們的例子中,點擊鏈接將信號()與槽退出()申請對象的對象按鈕。 這意味著,在按鈕上按一下,一個信號被觸發,後經申請對象中捕獲,然後進程結束。

在第16行,調用 Show()的構件方法,使之成為可見。

在第17行,我們終於控制了QT程序。 在exec()方法將啟動主迴路及其所有的機制,只有當應用程序返回完成,在我們的情況下,當 app.quit()是通過系統的信號槽調用。

這個簡單的“Hello World”聽起來很傻,但它足以展示QT的一些關鍵功能,作為主循環中,圖形對象和使用的信號和槽的創建。

在接下來的文章中我將介紹創建我們自己的信號和槽和使用定時器。

參考文獻:
一個QApplication
QWidget的
QPushButton
信號和槽

建設有QT一個多窗口界面簡單經理

2008年1月24日·張貼在C / C + +Qt的 · 查看評論

有幾次我最後不得不放棄了許多屏幕維修系統接口,無論是圖形或文字模式。 通常,銀幕數量的增長,隨著未經事先規劃系統,它總是導致的模糊要求,#ifndefs,交換機和其他怪物糾結。

第一次我碰到一個問題就來了這樣的是在我做這樣後期的一場比賽的第一個版本Elifoot到一個CEFETES公平。 當時我碰到的功能,他們互稱,只有當它被退回的目標設定。 結果:有棧! (不要擔心,在這個新的版本已經修正!)

在與多個窗口界面的情況下,並在系統中的規劃上的飛時,通常有窗口,關閉窗口之前調用等,留下了足跡的破壞和恐怖離開其他窗口。 相信我,你永遠不會想要接手一個嚇了一跳維修。

塵塵 ...

在我的情況,解決創建一個接口管理器的問題。 一個對象,控制集中創建和銷毀對象的接口。 每個對象,以完成自己的任務,信號的經理,他需要清理混亂的照顧。 因此,每當一個對象是出生,死亡和執行該方案沒有通過控制其前進的任務,他總是回來的經理。

請注意,我並沒有說經理會破壞對象,但它會做清潔。 每個對象必須建立以經理告訴他每次完成後,無論是與成敗。 通常,對象本身能夠“殺死”,而僅僅是非常有用的,同時考慮到一些經理的工作,但無法控制。

在開始之前

我並不認為這個簡單的職位涵蓋了所有功能的Qt或管理界面的各個方面。 我就說說我是如何解決的一個問題,我做到了。 這篇文章也是對朋友聖保羅,里約熱內盧誰擁有了那樣的菠蘿皮來致敬!

動手

我感到,在大多數情況下,自下而上的開發,但自上而下的分析師。 這似乎令人困惑,但沒有必要驚慌,幾乎 ...

對象需要交換信息。 對於這一點,系統的信號槽Qt將有很大的幫助。 該對象將發送信號(發射(信號))和經理會聽取他們(插槽())。

不可思議的是,從現在就叫做UIM經理建設者沒有一個單一的代碼行。 它只是初始化指針為 0,只為妄想(或不)...

該 UIM實現了創建對象和清洗槽的一塌糊塗。 當創建一個對象,這個對象的UIM連接到其槽清洗。 當對象死亡,它會激活清洗UIM插槽。 該插槽將與對象的圖形主菜單在這個例子中,一個窗口的創建。

其他對象是小窗口,對話框,應用程序配置一個,和兩個談自己(約),畢竟,營銷是重要的... ...

所有的圖形對象我點擊和拖動的Qt Designer和再調整,以讓我的方式。 沒有什麼可以調心手像素,因為它是一個藝術作品,只是一個概念證明。

圖形對象

在設置屏幕是一個組合框在一個參數列表傳遞給主窗口部件的共同對話。 我添加的細節由Qt設計器生成的代碼有一個析構函數和一對信號槽發送選定的數據回經理。 我沒有刻意去保持當前配置的軌道。 此聊天的另一職位。

在關於環訊是基本相同的代碼,加上析構函數。

主窗口有一個菜單,調用其他窗口和小部件是閃爍的瘋狂廣場滿。 方形的信息量,將改變窗口的配置。

魔術 QT

所有使用的圖形對象也QWidgets因為他們從 QWidget類繼承的類,我從下面的繼承每個構造方法的使用:

 本 - >的setAttribute(Qt的:WA_DeleteOnClose,TRUE); 

聯機文檔 ,這告訴Qt,它應該刪除小部件時關閉。 否則,它只是隱藏。

“... ...當一個部件接受關閉事件,它是隱藏的... ...”

“... ...如果你想小部件被刪除當它關閉時,它創建了Qt::WA_DeleteOnClose標誌。 這是非常獨立的頂層在一個多窗口的應用程序窗口有用的... ...“

該例程使故障,如點擊取消或關閉,對象到底是直接連接到自己的槽接近()。 這會觸發一個在對象銷毀系列活動達到高潮。

該例程的對象是成功的,並單擊確定並發送數據,分別指示返回到UIM卡,所以它可以路由它們。 在得到的數據,UIM插槽直接調用對象的close()。

當一個對象被銷毀時,他送他的最後一口氣,說,一個被摧毀(符號)。 從字面上看,他說:“我是!!!".

從“外”的對象,UIM是聽,該信號連接到日常的清潔和只見! 準備好了。

在這個例子中我使用時,屏幕上正方形的數量來對象 MyConf,通過 UIM和路由至MyApplication的。 這反過來又轉發到內部構件瘋狂。

為了獲得更有趣,而較小的窗口被打開,部件停止閃爍,返回時,艙口關閉。 這聽起來很傻,但是這只是表明,有過什麼 UIM在每個窗口中發生的完全控制,而她在焦點或不了。

結論

Qt框架是巨大的,並提供了大範圍的特點。 一種是能夠控制對象被銷毀。 使用此連同一點點規劃和信號槽系統相結合,可以構建一個非常複雜的接口,它沒有變成魔龍時間維護。

來源:

http://doc.trolltech.com

PS:完整的源代碼的例子是在GPL下,可以通過這個下載鏈接 有一天,我把它的意見 ...

修正

在初始化屬性在類的構造 MySquares沒有不幸昆蟲藏匿。 寵物,雖然小是有毒的,因為它造成了“分段錯誤”。 當啟動該程序,如果我是望其項背約,它顯示的事件,從該屏幕配置是正確的假設源於序列。 修正後的代碼在上面的鏈接,記住:

“總是初始化變量”

冒險家的丟失書

2008年1月22日·在發布唧唧歪歪Linux的 · 查看評論

最近,我感到震驚的需要/慾望寫在C + +類的抽象複雜系統 V IPC在Linux之一,但我講這個故事以後。 此職位的原因是,我在研究中發現各種來源的聯機文檔庫自己的偉大再次tldp.org 在那裡,我發現一本書,是非常有益的所謂“的Linux程序員指南”

不過我很驚訝地看到,這本書是1996年3月沒有更新,即近12年,在類別中無人維護。 我毫不懷疑,我加入了一些朋友,我們正試圖獲得許可,以更新的書。

基本上有四個步驟,這表明TLDP獲得許可證:

  1. 嘗試聯繫原作者;
  2. 確定是否已經有書或其他文件,涵蓋了新版本的主題;
  3. 聯繫 TLDP,以避免重複;
  4. 發送到TLDP與審查擬變更的文件;

有趣的是,第二個步驟是做第一。 在網上搜索,我們看到,有沒有新的標題引用除外約會進入波蘭從 2000年的翻譯。 在非常TLDP,我們沒有發現該地址為 GNU / Linux的一般節目單個標籤環境中的其他文件。

第二步是那麼第(!?). 我們試圖聯繫原作者B。 斯科特伯克特,斯文Goldt,約翰 D 哈珀和斯文范德米爾和馬特威爾士通過這本書,並在互聯網上自己的名字引用的郵件。

到目前為止,沒有收到任何答案,因為正如所料,所有在用溫和的回未交付書所載舊電子郵件。 它仍然等待在互聯網上獲得的電子郵件能夠與好消息,並返回正確的收件人。 在那之前,我們希望和可能重新版準備“的Linux程序員指南”。

桑帕第三C / C + +用戶組-會議,我是!

2008年1月20日·在發布C / C + +活動 · 查看評論

在這最後一個星期六,19/01/2008,在第三屆 Apeoesp桑帕禮堂舉行的C / C + +用戶組 - 會議,對 C / C + +會議在巴西各地。

我們有講課很為“C + +與wxWidgets的”伊沃納西門托,誰提出作為GUI開發平台選擇wxWidgets的,和其他人對將要表決通過ISO 2009年,由彼得喇嘛,並提出新的功能集中有趣Wanderley Caloni

我們還參加了AGIT給了我們一個大國,並在鄉親在巴西奇趣的活動期間抽彩給了一些禮物。

會談結束後,我們有一個關於過去,現在和組,在這裡我們討論了各種項目,並在會議將於今年晚些時候未來的辯論。

畢竟這接近實現金鑰匙“C / C + +啤酒會議”即使在這裡附近。

幫助翻譯書“使用Subversion進行版本控制”

2008年1月18日·在發布的Subversion · 查看評論

經過這今天我很討厭和堅持終於得到了批准,以幫助一書翻譯組“使用Subversion進行版本控制”

在翻譯過程中站在了一半,因為 1.2版本沒有更新,我們已經在1.4版本。 讓我們忙碌的通訊服務,工作人員似乎在大步捕獲。

活潑類,列出沸騰,我沒有浪費時間,我只用了一章“基本概念”,並已開始工作。 在早期,我看到它比我想像的更困難。 我沒想到少,但這是一個挑戰,我相信我們一定會克服。

最讓我吃驚的是,在那些參與項目分散到全國的各個角落,但似乎大家都是鄰居。 沒有任何障礙,沒有界限。 哎呀全球化!

進入巴西的葡萄牙語翻譯官,甚至過時的,可以發現在這個環節。

下一頁»