ProGuard is a free Java class file shrinker, optimizer, and obfuscator. It can detect and remove unused classes, fields, methods, and attributes. It can then optimize bytecode and remove unused instructions. Finally, it can rename the remaining classes, fields, and methods using short meaningless names. The resulting jars are smaller and harder to reverse-engineer.
Thursday, October 26, 2006
Sunday, June 18, 2006
UML上課心得 (6.14~6.16)
//Module 6投影片
Use-Case Realization
Use-Case Analysis
1. 由use case去找演員(class, use-case behavior是由哪些class負責)
2. Find Class from Use-Case Behavior(user's behavior)
Use-Case Model → Design Model
(Use Case ← Use-Case Realization)
//實際Visualization
Use Case → Class Diagrams → Sequence Diagrams → Communication Diagrames(箭頭多的,屬核心class)
Use Case, Analysis Classes → Problem Domain ← Component Design(由大到小切割功能)(Use-Case Analysis)
OMG下載steryotype
Use-Case Model → Use-Case Analysis Model → Design MOdel(可以轉成程式碼的class)顆粒由大至小(更詳細)
剩下「連結邏輯」需要撰寫。
一個Use-Case的component:
Boundary class → User第一手class (link actor與use-case pair)
Entity class → 存取或資料相關的data-related class
Control class → logic process
//6.16
利用Interface解決High→low→high的dependency問題。
用Interface參數型態去接class(implement interface) → 多型
預期會修改,就用隔離的方式,兩層變三層,多一個interface的middle layer
Use-Case Realization
Use-Case Analysis
1. 由use case去找演員(class, use-case behavior是由哪些class負責)
2. Find Class from Use-Case Behavior(user's behavior)
Use-Case Model → Design Model
(Use Case ← Use-Case Realization)
//實際Visualization
Use Case → Class Diagrams → Sequence Diagrams → Communication Diagrames(箭頭多的,屬核心class)
Use Case, Analysis Classes → Problem Domain ← Component Design(由大到小切割功能)(Use-Case Analysis)
OMG下載steryotype
Use-Case Model → Use-Case Analysis Model → Design MOdel(可以轉成程式碼的class)顆粒由大至小(更詳細)
剩下「連結邏輯」需要撰寫。
一個Use-Case的component:
Boundary class → User第一手class (link actor與use-case pair)
Entity class → 存取或資料相關的data-related class
Control class → logic process
//6.16
利用Interface解決High→low→high的dependency問題。
用Interface參數型態去接class(implement interface) → 多型
預期會修改,就用隔離的方式,兩層變三層,多一個interface的middle layer
Wednesday, April 12, 2006
Tuesday, March 28, 2006
datagrid中ItemTemplate的使用
<asp:Label runat="server"><%# formatString(Container.DataItem("RowType")) %>asp:Label>
橘色可省略...
Monday, March 27, 2006
datagrid修改的問題
private void DataGrid1_DeleteCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e) {
string strSQL = "Delete From "+this.tb_name+" Where ID="+e.Item.Cells[0].Text+"";
this.dbp.dbconn.Open();
OleDbCommand objCmd = new OleDbCommand(strSQL, this.dbp.dbconn);
objCmd.ExecuteNonQuery();
objCmd.Connection.Close();
this.dbp.dbconn.Open();
OleDbDataAdapter objCmd2 = new OleDbDataAdapter(this.sql,this.dbp.dbconn);
DataSet ds = new DataSet();
objCmd2.Fill(ds,"fqa");
DataGrid1.DataSource = ds.Tables["fqa"].DefaultView;
DataGrid1.DataBind();
}
加了下面這兩行就會reflesh網頁了,不然似乎刪除完網頁沒有反應。
string strSQL = "Delete From "+this.tb_name+" Where ID="+e.Item.Cells[0].Text+"";
this.dbp.dbconn.Open();
OleDbCommand objCmd = new OleDbCommand(strSQL, this.dbp.dbconn);
objCmd.ExecuteNonQuery();
objCmd.Connection.Close();
this.dbp.dbconn.Open();
OleDbDataAdapter objCmd2 = new OleDbDataAdapter(this.sql,this.dbp.dbconn);
DataSet ds = new DataSet();
objCmd2.Fill(ds,"fqa");
DataGrid1.DataSource = ds.Tables["fqa"].DefaultView;
DataGrid1.DataBind();
}
加了下面這兩行就會reflesh網頁了,不然似乎刪除完網頁沒有反應。
datagrid update的問題
private void Page_Load(object sender, System.EventArgs e) {
// 在這裡放置使用者程式碼以初始化網頁
//檢查session
Auth_check ac = new Auth_check();
string alert_str = ac.check_login(Session);
Response.Write(alert_str);
this.dbp = new DBprocess(Server.MapPath("../ag.mdb"));
this.dbp.dbconn.Open();
this.sql = "Select * From "+ this.tb_name;
if(!IsPostBack) {
DataGrid1.DataSource = dbp.GetDataTable(this.sql,dbp.dbconn,tb_name);
DataGrid1.DataBind();
}
this.dbp.dbconn.Close();
}
// 在這裡放置使用者程式碼以初始化網頁
//檢查session
Auth_check ac = new Auth_check();
string alert_str = ac.check_login(Session);
Response.Write(alert_str);
this.dbp = new DBprocess(Server.MapPath("../ag.mdb"));
this.dbp.dbconn.Open();
this.sql = "Select * From "+ this.tb_name;
if(!IsPostBack) {
DataGrid1.DataSource = dbp.GetDataTable(this.sql,dbp.dbconn,tb_name);
DataGrid1.DataBind();
}
this.dbp.dbconn.Close();
}
Wednesday, December 28, 2005
eclipse3.0.1+lomboz3.0.1
將eclipse解壓到C:\eclipse3.0.1
安裝Lomboz(org.objectweb.lomboz_3.0.1.N20050106.zip)
http://forge.objectweb.org/project/download.php?group_id=97&file_id=2302
將plugings與features分別置放在eclipse下的對映目錄。
emf-sdo-runtime-2.0.0.zip如上所示。
安裝Lomboz(org.objectweb.lomboz_3.0.1.N20050106.zip)
http://forge.objectweb.org/project/download.php?group_id=97&file_id=2302
將plugings與features分別置放在eclipse下的對映目錄。
emf-sdo-runtime-2.0.0.zip如上所示。
Friday, December 16, 2005
Subscribe to:
Posts (Atom)
