關於Windows 程式設計的課

"C 程式語言"和"物件導向程式設計"課程討論區-授課教授:蔡明志老師

版主: 蔡明志

分享到: Facebook

關於Windows 程式設計的課

文章蔡明志 » 週三 11月 19, 2008 7:08 pm

:lol: 下一學期我想把以前曾開過的「Windows 程式設計」復活一下。
這一門課我會從SDK開始教大家如何以C撰寫有關event-driven的程式,
你可以寫出具有Windows系統下GUI的應用系統,
接著可以來上MFC,它是以C++為主的程式,也許這一部份可以再論。

總之,我覺得它很重要,下一學期剛好有時間,所以我會在12月的課程委員會提出我的構想。
不知大家的意願如何,希望不會一邊熱,一邊冷,那就沒意思了。

注意! 這門課不是教你如何使用Windows系統,而是教你如何寫出具有Windows的圖形使用者界面的應用系統,
舉如有選單,對話盒,捲動軸,工具列(Toolbar),listbox,radio button,等等…的GUI界面。


大家來討論一下吧!
蔡明志
資管系教師
 
文章: 730
註冊時間: 週一 4月 11, 2005 6:31 pm

Re:關於Windows 程式設計的課

文章never7563 » 週三 11月 19, 2008 9:57 pm

所以是之前選修C的進階版嗎XD??

用C寫GUI應該還蠻有趣的~
頭像
never7563
漸有心得的高中生
 
文章: 101
註冊時間: 週一 9月 10, 2007 5:32 pm
來自: 新店

Re:關於Windows 程式設計的課

文章b80203 » 週三 11月 19, 2008 10:01 pm

提前報名!!

(if如果沒衝堂的話!!)

而且如果Win32 API抓到精髓的話,大致上,想寫的程式,是沒有寫不出來的道理!!

是堂非常值得學的課喔!!
b80203
資管系課程助教
 
文章: 189
註冊時間: 週日 10月 01, 2006 7:33 pm
來自: fju im & pe

Re:關於Windows 程式設計的課

文章abc000000005 » 週四 11月 20, 2008 1:26 am

C 多麼簡潔的語言壓
JAVA真的是很麻煩

JAVA:
代碼: 選擇全部
   System.out.printf();

C:
代碼: 選擇全部
   printf();


JAVA:
代碼: 選擇全部
   Scanner keyboard= new Scanner(System.in);
   XXX=keyboard.nextInt();

C:
代碼: 選擇全部
   scanf("%d",&XXX);


JAVA:
代碼: 選擇全部
   int data[]=new int[10];

C:
代碼: 選擇全部
   int data[10];


JAVA:
代碼: 選擇全部
   不知道也找不到

C:
代碼: 選擇全部
   system("cls");

還記得有一次上課 程式出現BUG
找不到錯 還請老師來幫忙抓蟲
兩個人4隻眼睛找了幾分鐘

最後居然是因為printf();前面沒加上System.out

而且JAVA也沒有指標 *
資結的link list真讓人難以想像!!

下學期有開C進階的話
先+1!!
頭像
abc000000005
懷疑的國中生
 
文章: 61
註冊時間: 週五 9月 19, 2008 9:11 am

Re:關於Windows 程式設計的課

文章ghost3401 » 週四 11月 20, 2008 3:51 am

-.- java 有節點類別可以達成linkedlist
指標的原因是因為使用不易,容易錯誤
java改掉了,為了系統安全還有程式堅固性!
而且java優點太多了,昇陽一直有更新 :D
ghost3401
繼續深造的研究生
 
文章: 473
註冊時間: 週四 9月 07, 2006 9:07 am
來自: 基隆偏遠地帶

Re:關於Windows 程式設計的課

文章蔡明志 » 週四 11月 20, 2008 8:12 am

abc000000005 寫:C 多麼簡潔的語言壓
JAVA真的是很麻煩

JAVA:
代碼: 選擇全部
   System.out.printf();

C:
代碼: 選擇全部
   printf();


JAVA:
代碼: 選擇全部
   Scanner keyboard= new Scanner(System.in);
   XXX=keyboard.nextInt();

C:
代碼: 選擇全部
   scanf("%d",&XXX);


JAVA:
代碼: 選擇全部
   int data[]=new int[10];

C:
代碼: 選擇全部
   int data[10];


JAVA:
代碼: 選擇全部
   不知道也找不到

C:
代碼: 選擇全部
   system("cls");

還記得有一次上課 程式出現BUG
找不到錯 還請老師來幫忙抓蟲
兩個人4隻眼睛找了幾分鐘

最後居然是因為printf();前面沒加上System.out

而且JAVA也沒有指標 *
資結的link list真讓人難以想像!!

下學期有開C進階的話
先+1!!


:roll: 不用怕,Java有提供Reference的功能,可用來處理DS的問題。
只是指標可以提供更多的功能。

歡迎大家來學C語言,知道愈多愈好,這好比你會講英文又會說德文,你多了一項可以和人競爭的利器。
蔡明志
資管系教師
 
文章: 730
註冊時間: 週一 4月 11, 2005 6:31 pm

Re:關於Windows 程式設計的課

文章蔡明志 » 週四 11月 20, 2008 8:28 am

ghost3401 寫:-.- java 有節點類別可以達成linkedlist
指標的原因是因為使用不易,容易錯誤
java改掉了,為了系統安全還有程式堅固性!
而且java優點太多了,昇陽一直有更新 :D


:roll: 每一種語言有它獨特的功能,不然只要一種程式語言就好,幹嘛發明這麼多種,
其實程式語言的大架構都差不多,舉如要定義變數,宣告其資料型態,輸出與輸入函數
控制流程(迴圈與選擇敘述),函數的呼叫,結構(或物件),檔案的處理,…等等

有了這些大架構,每一種程式語言再針對其特性加上其所謂的附加價值的東東,所以每一種程式語言都是有用的,
就好像每一人都是有優點的,只是你怎樣去看他而已。

我覺得C 比較容易讓一位初學者可以很容易進入什麼是程式設計,只要在指標不要談很深就可以,
當然每一個人的見解可能不同。

無論如何,大家練出一身好功夫,不怕找不到好工作,若找不到,那你就來找我吧
蔡明志
資管系教師
 
文章: 730
註冊時間: 週一 4月 11, 2005 6:31 pm

Re:關於Windows 程式設計的課

文章ge.tsai » 週四 11月 20, 2008 10:54 am

要開win32程式設計頂一下
學生現在的部門是在做GPS
使用windows ce系統
上面的導航軟體是使用最底層的win32去寫
至於C# Java方面
公司都會建議客戶不去用
理由很簡單 就是效能低
學弟妹以後想進富士康 華碩等大公司
學好c c++ win32是最快的管道
ge.tsai
剛學走路的小朋友
 
文章: 2
註冊時間: 週四 11月 20, 2008 10:39 am

Re:關於Windows 程式設計的課

文章蔡明志 » 週四 11月 20, 2008 11:17 am

ge.tsai 寫:要開win32程式設計頂一下
學生現在的部門是在做GPS
使用windows ce系統
上面的導航軟體是使用最底層的win32去寫
至於C# Java方面
公司都會建議客戶不去用
理由很簡單 就是效能低
學弟妹以後想進富士康 華碩等大公司
學好c c++ win32是最快的管道


謝謝你的建議,其實有很多同學目前還是只靠C或C++走遍天下,
戰克文就是其中一位。

可否告訴我你是那一屆的那一位同學。

若有畢業的學長們還是以C 或C++撰寫程式的話,發表一下意見如何?感謝啦!!!!!
蔡明志
資管系教師
 
文章: 730
註冊時間: 週一 4月 11, 2005 6:31 pm

Re:關於Windows 程式設計的課

文章ghost3401 » 週四 11月 20, 2008 3:52 pm

我覺得C 比較容易讓一位初學者可以很容易進入什麼是程式設計,只要在指標不要談很深就可以,
當然每一個人的見解可能不同。

無論如何,大家練出一身好功夫,不怕找不到好工作,若找不到,那你就來找我吧

感謝老師~ 對這方面又有新的見解

學多點對自己一定是好的!
(話說老師的C給我們打下很好的基礎觀念 :D 現在學JAVA也很快 8) )
ghost3401
繼續深造的研究生
 
文章: 473
註冊時間: 週四 9月 07, 2006 9:07 am
來自: 基隆偏遠地帶

Re:關於Windows 程式設計的課

文章ge.tsai » 週四 11月 20, 2008 6:00 pm

學生是2004年畢業的
應該是第20屆吧

對於資管系的出路 而言應該不只有MIS IT人員吧
出來工作到現在 待過手機OEM公司 手機IC公司
公司裡有不少RD是資管出來的
甚至有人是在負責驅動程式
上一個工作也遇到同為輔大資管的學長明諺
在負責手機MMI的開發
但工作到現在
不管是聯發科手機平台 Linux WinCE
清一色都是C/C++的天下
聯發科平台從驅動程式到上層MMI都是用C寫成
至於上一個東家選擇Linux平台 上面MMI使用的是Qt 也是C/C++
C的易學和指標功能
讓我們再寫驅動程式時 可以透過指標來存取周邊設備暫存器 控制周邊設備
至於要寫UI介面 有MFC Qt Gtk可以選擇
ge.tsai
剛學走路的小朋友
 
文章: 2
註冊時間: 週四 11月 20, 2008 10:39 am

Re:關於Windows 程式設計的課

文章benwu » 週四 11月 20, 2008 6:04 pm

abc000000005 寫:C 多麼簡潔的語言壓
JAVA真的是很麻煩


我覺得似乎把java說得一文不值,我也可以舉一大堆c做不到的事,可是,c是程序導向的程式語言,java是物件導向的程式語言,拿c比java,我覺得是拿腳踏車比大卡車! 這種比法是很無聊的!

abc000000005 寫:還記得有一次上課 程式出現BUG
找不到錯 還請老師來幫忙抓蟲
兩個人4隻眼睛找了幾分鐘

最後居然是因為printf();前面沒加上System.out


講這種事很以偏概全,我也曾經看過因為scanf("%d",&c);忘了&結果一直當機的狀況!
我不是說java多好,只是覺得不要拿橘子比蘋果!
我不是大吳老師,也不是小吳老師,我是Ben老師
我的部落格
http://eportfolio.fju.edu.tw/053792
頭像
benwu
資管系教師
 
文章: 645
註冊時間: 週二 4月 20, 2004 4:17 pm
來自: 輔大資管系

Re:關於Windows 程式設計的課

文章chime » 週五 11月 21, 2008 8:51 am

老師, 教 Qt 啦!

小弟我也在自學Qt. 這樣也好上來討論, 呵呵!

話說, Nokia 已經把 Trolltech買下了, 而且就我所知.
很多的 EDA 軟體都漸漸的轉換到 Qt 下了, 如果說寫程式最賺就是 EDA 軟體了;

況且, Qt Open Source, 老師也可以拿來教學...教教如何從 Object -> QGraphicsView class 這種硬底子功夫!
我的意思是說, Class Tracking 這功夫, 我學 C 都只是在繼承別人已經做好的 Class , 說實在的似乎缺少了麼!
頭像
chime
懷疑的國中生
 
文章: 57
註冊時間: 週四 8月 23, 2007 9:09 am

Re:關於Windows 程式設計的課

文章~周永杰~ » 週六 11月 22, 2008 1:36 am

如果老師能教授這門課程那是再好不過了
Gui介面擁有更多的親和力
很想學學不一樣的東西
想從不同角度去學習
期待老師能夠開課
我想有很多同學都很希望除了c c++ java 之外
有更酷炫的東西能讓我在大學的最後一年(..........)學到
雖然說大學生應該自學
但若有老手帶新手上路
教授磨練多年的經驗
這能讓新手學的更多更完全
老師如果要開課
我一定會去上的!!!!
雖然我大四才在修 java 但是我不是重修喇!!!!!
點這ㄦ→敝人無名
頭像
~周永杰~
充滿活力的大學生
 
文章: 313
註冊時間: 週一 9月 26, 2005 9:37 pm
來自: 跳舞機星球

Re:關於Windows 程式設計的課

文章maa » 週六 11月 22, 2008 9:39 pm

~周永杰~ 寫:如果老師能教授這門課程那是再好不過了
Gui介面擁有更多的親和力
很想學學不一樣的東西
想從不同角度去學習
期待老師能夠開課
我想有很多同學都很希望除了c c++ java 之外
有更酷炫的東西能讓我在大學的最後一年(..........)學到
雖然說大學生應該自學
但若有老手帶新手上路
教授磨練多年的經驗
這能讓新手學的更多更完全
老師如果要開課
我一定會去上的!!!!


我總以為大學教學方式要有所改變,尤其是程式設計方面的課程。
上課時間宜多用在練習討論,用在講解的時間倒可盡量減少,同時鼓勵學生發問。
上課之前學生必須作充分準備,老師指定閱讀的資料必須事先讀過,否則上課就無從應付。

身處網路時代,取得資訊容易,尤其有利於我們學資訊的人。
現在很多課程的講解內容,也都盡可能的電子化了,學生可以隨時閱讀,不受時空的限制。

以前網路不發達的時代,我們都還得排隊進圖書館,搶著借閱書架上的資料。這種搶書讀的情況現在好像不多見了。 :?
最後由 maa 於 週六 11月 22, 2008 10:10 pm 編輯,總共編輯了 1 次。
maa
版面管理員
 
文章: 631
註冊時間: 週一 9月 13, 2004 10:16 am
來自: 縱橫資通能源

Re: 關於Windows 程式設計的課

文章maa » 週六 11月 22, 2008 10:02 pm

蔡明志 寫: :lol: 下一學期我想把以前曾開過的「Windows 程式設計」復活一下。
這一門課我會從SDK開始教大家如何以C撰寫有關event-driven的程式,
你可以寫出具有Windows系統下GUI的應用系統,
接著可以來上MFC,它是以C++為主的程式,也許這一部份可以再論。

總之,我覺得它很重要,下一學期剛好有時間,所以我會在12月的課程委員會提出我的構想。
不知大家的意願如何,希望不會一邊熱,一邊冷,那就沒意思了。

注意! 這門課不是教你如何使用Windows系統,而是教你如何寫出具有Windows的圖形使用者界面的應用系統,
舉如有選單,對話盒,捲動軸,工具列(Toolbar),listbox,radio button,等等…的GUI界面。


大家來討論一下吧!


老師,MFC/Qt 是大塊頭的東西,如果學生 C++/OOP 基礎不夠,恐怕不容易跟得上。我覺得也許可以只講關鍵部份,點到為止,然後另開一門進階的課程。只是不曉得系上的市場有多大就是了!怕到時只能以「陽春白雪,曲高和寡」聊以自慰。

一般教 Windows Programming 的課程都是用 C 語言。有一家叫 Reliable Software 的軟體公司,公司網站上有免費的「Windows API Tutorial」,很特別的是教學資料是以 C++ 使用者的角度在教 Windows Programming。我覺得這是一個很值得參考的學習方式。
maa
版面管理員
 
文章: 631
註冊時間: 週一 9月 13, 2004 10:16 am
來自: 縱橫資通能源

Re: 關於Windows 程式設計的課

文章蔡明志 » 週日 11月 23, 2008 11:36 am

maa 寫:
蔡明志 寫: :lol: 下一學期我想把以前曾開過的「Windows 程式設計」復活一下。
這一門課我會從SDK開始教大家如何以C撰寫有關event-driven的程式,
你可以寫出具有Windows系統下GUI的應用系統,
接著可以來上MFC,它是以C++為主的程式,也許這一部份可以再論。

總之,我覺得它很重要,下一學期剛好有時間,所以我會在12月的課程委員會提出我的構想。
不知大家的意願如何,希望不會一邊熱,一邊冷,那就沒意思了。

注意! 這門課不是教你如何使用Windows系統,而是教你如何寫出具有Windows的圖形使用者界面的應用系統,
舉如有選單,對話盒,捲動軸,工具列(Toolbar),listbox,radio button,等等…的GUI界面。


大家來討論一下吧!


老師,MFC/Qt 是大塊頭的東西,如果學生 C++/OOP 基礎不夠,恐怕不容易跟得上。我覺得也許可以只講關鍵部份,點到為止,然後另開一門進階的課程。只是不曉得系上的市場有多大就是了!怕到時只能以「陽春白雪,曲高和寡」聊以自慰。

一般教 Windows Programming 的課程都是用 C 語言。有一家叫 Reliable Software 的軟體公司,公司網站上有免費的





Windows API Tutorial」,很特別的是教學資料是以 C++ 使用者的角度在教 Windows Programming。我覺得這是一個很值得參考的學習方式。



謝謝小馬的建議,其實我想以SDK傳統的方法來告訴學生Windows的應用程式的運作方法。所以會先以C語言為主。
我不急於將MFC納進來,因為有了穩固的地基,要蓋多少層可以自已來完成。
蔡明志
資管系教師
 
文章: 730
註冊時間: 週一 4月 11, 2005 6:31 pm


回到 C/OOP 課程討論區

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客