文章分類

2013年7月29日 星期一

[英文文法] If 引導的副詞子句,可將were、should、had提至主詞前

在書上看到第二次了,感覺滿重要的。

If引導的副詞子句中,若有wereshould過去完成式助動詞 had出現時,都可以將were、should、had置於主詞之前,省略原有的 if

例如:
If it were not for you, I wouldn't do it.
Were it not for you, I wouldn't do it.
若不是因為你,我才不會去做呢。

If Paul were here, I would tell him the truth.
Were Paul here, I would tell him the truth.
如果Paul在這裡,我將會告訴他真相。

2013年7月27日 星期六

[JAVA] 物件導向程式設計(OOP)

現今主要的兩種程式設計方法分為

1. procedural

(1) 一個procedure就是程式指令的集合,並用來執行特定任務。
(2) Procedures通常是分開操作data的,data大多從一個procedure傳到另一個。
(3) 由於data和code的分開,常常造成一些問題。

如: 資料結構改變,操作資料的code勢必也要改變,來接受新的格式,故造成程式設計師之負擔,甚至程式碼有極大的可能產生bugs。

2013年7月24日 星期三

[WPF] 兩點畫一直線

目標要在兩個image之間畫一條線,容器名稱Canvas1

//建立Line物件
//設定線條顏色
//設定線條粗細
 
  Line line1 = new Line();       
  line1.Stroke = System.Windows.Media.Brushes.Green;           
  line1.StrokeThickness = 10;

2013年7月22日 星期一

[WPF] 音樂和音效之播放

[ 音樂 ]
一般都直接"手動"將聲音檔放到debug/bin裡面。

1. 音效

因為音效通常都為短暫急促的(也不會同時播一個以上的音效),
故可利用SoundPlayer Computer.Aduio載入記憶體來播放,
缺點就是一次只能播一個,當你想播放A時,又播B,A就會被覆蓋掉。

2013年7月21日 星期日

[WPF] 計時器(timer)的用法

目標:
創造一個名為timer1的計時器
tick事件名稱自訂為timer1_Tick()
間隔為每3秒一次

1.
要使用計時器前,要先引入命名空間
using System.Windows.Threading;

2.
//實作DispatcherTimer物件,可採分段式
//通常,前段用在全域,後段則在區域,較有彈性
DispatcherTimer timer1= new DispatcherTimer();

[WPF] 表單名稱的更換

總共要改三個地方

以MainWindow改成MyLife為例子

1. cs檔

一開始namespace之後
public partial class MainWindow : Window(原來)
public partial class MyLife : Window (修改後)

2. cs檔

建構式名稱
public MainWindow()
public MyLife()

2013年7月20日 星期六

[WPF] String的特性

 1. 字串中不能有底線

假設label1.Content = "abc_abc";
但在xaml所呈現出來的卻是abcabc,
也就是說_被吃掉了,所以 "字串之中不能含有底線"

[WPF] 動態用程式碼設置Image的圖像資源

 MSDN提供方法如下

  BitmapImage bi = new BitmapImage();
  bi.BeginInit();
  bi.UriSource = new Uri("相對路徑", UriKind.Relative);
  bi.EndInit();
  image1.Stretch = Stretch.Fill;   //看情況,不一定要Fill
  image1.Source = bi;

2013年7月17日 星期三

Override 與 Overload 的比較

1. override(覆蓋)

   例如: 子類別有個方法名稱為show,從父類別繼承下來的方法,剛好也有show,因此子類別覆蓋了父類別的方法。方法的回傳值型態與參數形式也必須與父類別一模一樣(否則就變成Overloading)!


物件導向三大特色

OOP(object-oriented programming) 物件導向

1. 資料封裝(Encapsulation)

   簡單講,資料封裝就是將資料分成私用(Private)、保護(Protected)、公用(Public)等,實踐 Information hiding 概念, 避免程式各個物件互相干擾,降低程式的複雜度及維護上的困難度。

2. 繼承(Inheritance)

   有繼承的關係後,父類別 (Super class) 中的資料 (Data) 或方法 (Method) 在次子類(Subclass)就可以繼承使用,次子類別的次子類別也可以繼承使用,最後即能達到資料重覆使用的目的。

第一次面試

由於是意義非凡的第一次,就紀錄一下考了些甚麼吧。

1. 找出1~100的質數總和
2. 接收某陣列的值,計算共有幾個數字,出現幾次
3. 判斷字串是否迴文
4. override和overload
5. 物件導向的3個特色 (聽說是業界必考題)