计算机工程学院
实 习 报 告
课程名称: C#程序课程设计
学生姓名: 刘杰学号: 1111314113
指导教师: 周舟
专 业: 计算机科学与技术(微软合作)
班 级: 微软1111
实习时间: 2013.12.16-2013.12.27
2013年 1 月 5日
摘要:
如今随着信息技术的飞速发展,信息化的大环境给社会各阶层人员提供了国际互联,实现静态资源共享,动态信息发布的要求;信息化对学生个人提供了驾驭和掌握最新信息技术的素质要求;信息技术提供了对教学进行重大革新的新手段;信息化也为提高教学质量,提高管理水平,工作效率创造了有效途径。但是信息化的超时空特性,必然带来巨大的数据量,如何处理大量的数据信息成为至关重要的手段,良好的数据处理方法与友善的显示界面不仅能让地区内的人们了解到他想知道的信息,更可让世界的人了解信息。
C#是面向对象的编程语言。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序,MICROSOFT .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。
在淮安软件园,我们在周舟老师的指导下,进行了为期12天的《C#程序设计及应用》实训,使用的工具是vs2008和SQL Server 20## 。我们在掌握C#结合数据库执行数据存储和录用的同时,还培养了理论联系实际的工作作风、严肃认真的科学态度以及团队工作的能力。更为重要的是我们学会了团队协作,四五个人的小组完成一个中小型的项目!对自身的知识掌握和与人相处都有了很大的提高!可以说这是我们除知识以外最大收货!就实训场地而言,软件园是最佳的教学研究室,既能提供给我们学习的平台,又能提高教学效率,还能实现教育资源的合理分配,将理论与实际相结合。我们应用现有的数据库系统软件,规范、科学地完成一个设计与实现,并对数据库有更好的理解,进而更加熟练地使用C#语言和数据库!
关键词:C#;SQL Server;vs2008;软件园;实训;vs2008;三层架构仓库管理;窗体;重载;参数;团队合作;NetFramework
目 录
1 C#综述………………………………………………………………………………4
1.1 .Net框架............................................................................................................. 4
1.2应用程序模板...................................................................................................... 4
1.3结构.................................................................................................................... 4
2 三层架构……………………………………………………………………………4
2.1概述.................................................................................................................... 4
2.2基本组成............................................................................................................. 4
2.3表示层................................................................................................................. 5
2.4业务逻辑层.......................................................................................................... 5
2.5数据访问层.......................................................................................................... 5
3 销售系统的产品管理的部分……………………………………………………5
3.1综述.................................................................................................................... 5
3.2产品添加界面...................................................................................................... 5
3.2.1设计代码................................................................................................... 5
3.3用户管理界面..................................................................................................... 10
3.3.1设计代码................................................................................................. 10
4 重要类的使使用……………………………………………………………………..……….…14
5 总 结………………………………………………………………………………….….…………24
6 致 谢……………………………………………………………………………..…………………25
7 参考文献………………………………………………………………………………..26
1 C#综述
C#是一种计算机语言,基于.Net框架支持的一种完全面向对象的,类型安全的编程语言,也是.Net的首选编程语言。
1.1 .NET框架
Microsoft.NET Framework(简称.NET框架)是生成、运行.NET应用程序和Web Service的组件库它包括两个主要组件,一是公共语言运行库,另一个是类库,运行库提供.NET应用程序所需要的核心服务,类库为开发和运行.NET应用程序提供各种支持
1.2 应用程序模板
控制台应用程序、windows应用程序、ASP.NET Web应用程序、ASP.NET Web服务程序、智能设备应用程序。
1
1.3 结构
C#应用程序的一般结构: 命名空间、Main方法、程序代码注释。
2 三层架构
三层架构是C#程序设计的首选设计模式。
2.1 概述
设计模式中的分层架构实现了各司其职,互不干涉,所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其它层中的代码。这样就能好的实现开发中的分工,有利于组件的重用。所以这些年关于模式的研究有很多成果,
应用也很广泛。一个好的模式在程序开发和后期维护中作用重大。
2.2 基本组成
ASP.NET三层架构自底向上分为:数据访问层(DAL),业务逻辑层(BLL)和表示层(UL)。
2.3 表示层
表示层(PL):表示层是为客户提供用于交互的应用服务图形界面,帮助用户理解和高效地定位应用服务,呈现业务逻辑层中传递的数据,用ASP.NET页面来实现。
2.4 业务逻辑层
业务逻辑层(BLL):业务逻辑层是在数据访问层和表示层之间进行数据交换的桥梁,按业务需求调用数据访问层中的方法组合,集合了各种业务规则到一个BLL中,例如通过条件进行判断的数据操作或“事务”处理。BLL都是以类库(Class Library)的形式来实现的。
2.5 数据访问层
数据访问层(DAL):使用了一个强类型的DataSet作为数据访问层,只是单纯的对数据进行增,删,改,查询和判断存在等等较通用的数据访问方法(由SQL语句来提供),不应该有“事务”存在。
3 销售管理系统
用C#设计一个销售管理系统,在系统中可以实现相关的功能。
3.1 综述
在销售管理系统中可以实现系统管理、客户管理、订单管理、产品库 存管理的相关功能,将总功能分成四个模块,在和三层架构相结合共同完成销售管理系统的设计。
3.2产品添加界面
3.2.1设计代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using xs.BLL;
using xs.Common;
using xs.Entity;
namespace xs.Sales.SysManage
{
public partial class ProductInformation : Form
{
public ProductInformation()
{
InitializeComponent();
}
private void ProductInformation_Load(object sender, EventArgs e)
{
Display();
}
private readonly fw_Part_BLL BLL = new fw_Part_BLL();
private void Display()
{
List<fw_Part> LIST = BLL.GetPartList();
if (LIST != null)
{
this.dataGridView1.DataSource = LIST;
}
}
#region 菜?单Ì£¤
private int PartId = 0;
private void tsbAdd_Click(object sender, EventArgs e)
{
this.tsbAdd.Enabled = false;
this.tsbUpdate.Enabled = false;
this.tsbSave.Enabled = true;
this.txtPartName.Enabled = true;
}
private void tsbUpdate_Click(object sender, EventArgs e)
{
PartId = Convert.ToInt32(this.dataGridView1.SelectedRows[0].Cells[0].Value.ToString());
this.txtPartName.Text = ((fw_Part)BLL.GetPartInfoById(PartId)).PartName.Trim();
this.tsbAdd.Enabled = false;
this.tsbUpdate.Enabled = false;
this.tsbSave.Enabled = true;
this.txtPartName.Enabled = true;
}
private void tsbSave_Click(object sender, EventArgs e)
{
string PartName = this.txtPartName.Text.Trim();
if (string.IsNullOrEmpty(PartName))
{
MessageBox.Show("产¨²品¡¤名?称?不?能¨¹为a空?","信?息¡é验¨¦证¡è",MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
if (PartId == 0)
{
Insert(PartName);
}
else
{
fw_Part model = new fw_Part();
model.PartId = PartId;
model.PartName = PartName;
Update(model);
}
Display();
this.tsbAdd.Enabled = true;
this.tsbUpdate.Enabled = true;
this.tsbSave.Enabled = false;
this.txtPartName.Text = "";
this.txtPartName.Enabled = false;
}
private void Insert(string PartName)
{
try
{
BLL.Insert(PartName);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void Update(fw_Part model)
{
try
{
BLL.Update(model);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void tsbExit_Click(object sender, EventArgs e)
{
this.Close();
}
#endregion
private void dataGridView1_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
{
if (e.Button == MouseButtons.Right && e.RowIndex > -1 && e.ColumnIndex > -1)
{
this.dataGridView1.CurrentRow.Selected = false;
this.dataGridView1.Rows[e.RowIndex].Selected = true;
}
}
}
}
3.3产品维护界面
3.3.1设计代码:
4重要类的使用
代码:
fw_User_BLL.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using xs.Common;
using xs.DAL;
using xs.Entity;
using System.Data;
using System.Data.SqlClient;
namespace xs.BLL
{
public class fw_User_BLL
{
private readonly fw_User_DAL DAL = new fw_User_DAL();
#region INSERT /UPDATE /DELETE
#endregion
#region SELECT
/// <summary>
/// 根¨´据Y用®?户¡ì名?取¨?用®?户¡ì密¨¹码?并¡é解a密¨¹
/// </summary>
/// <param name="UserName"></param>
/// <returns></returns>
private string GetUserPasswordByUserName(string UserName)
{
string pwd = DAL.GetUserPasswordByUserName(UserName);
if (!string.IsNullOrEmpty(pwd))
{
pwd = Encryptions.Decrypt(pwd);
}
return pwd;
}
/// <summary>
/// 检¨¬测a用®?户¡ì登Ì?录?是º?否¤?成¨¦功|
/// </summary>
/// <param name="UserName"></param>
/// <param name="UserPwd"></param>
/// <returns></returns>
public string CheckUserLogin(string UserName,string UserPwd)
{
string pwd = GetUserPasswordByUserName(UserName);
if (string.IsNullOrEmpty(UserName))
{
return "0"; //用®?户¡ì名?为a空?
}
else if (string.IsNullOrEmpty(pwd))
{
return "1"; //用®?户¡ì名?不?存ä?在¨²
}
else if (!string.Equals(pwd, UserPwd))
{
return "2"; //用®?户¡ì密¨¹码?不?匹£¤配?
}
else
{
return "3"; //用®?户¡ì登Ì?录?成¨¦功|
}
}
public fw_User GetUserInfoByUserName(string UserName)
{
return DAL.GetUserInfoByUserName(UserName);
}
#endregion
}
}
Encryption.cs:
using System;
using System.Text;
using System.Security.Cryptography;
using System.IO;
namespace xs.Common
{
/// <summary>
/// ClassName:Encryption
/// Author:Zane
/// DateTime:20##-08-08
/// Remark:通ª¡§用®?方¤?法¤¡§-加¨®密¨¹解a密¨¹类¤¨¤
/// </summary>
public static class Encryptions
{
private static string sKey = "80418201";
/// <summary>
/// 数ºy据Y加¨®密¨¹
/// </summary>
/// <param name="pToEncrypt"></param>
/// <returns></returns>
public static string Encrypt(string pToEncrypt)
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
//把ã?字Á?符¤?串ä?放¤?到Ì?byte数ºy组Á¨¦中D
//原-来¤¡ä使º1用®?的Ì?UTF8编À¨¤码?,ê?我¨°改?成¨¦Unicode编À¨¤码?了¢?,ê?不?行D
byte[] inputByteArray = Encoding.Default.GetBytes(pToEncrypt);
//byte[] inputByteArray=Encoding.Unicode.GetBytes(pToEncrypt);
//建¡§立¢¡é加¨®密¨¹对?象¨®的Ì?密¨¹钥?和¨ª偏?移°?量¢?
//原-文?使º1用®?ASCIIEncoding.ASCII方¤?法¤¡§的Ì?GetBytes方¤?法¤¡§
//使º1得Ì?输º?入¨?密¨¹码?必À?须?输º?入¨?英®¡é文?文?本À?
des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write);
//Write the byte array into the crypto stream
//(It will end up in the memory stream)
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
//Get the data back from the memory stream, and into a string
StringBuilder ret = new StringBuilder();
foreach (byte b in ms.ToArray())
{
//Format as hex
ret.AppendFormat("{0:X2}", b);
}
ret.ToString();
return ret.ToString();
}
/// <summary>
/// 数ºy据Y解a密¨¹
/// </summary>
/// <param name="pToDecrypt"></param>
/// <returns></returns>
public static string Decrypt(string pToDecrypt)
{
try
{
DESCryptoServiceProvider des = new DESCryptoServiceProvider();
//Put the input string into the byte array
byte[] inputByteArray = new byte[pToDecrypt.Length / 2];
for (int x = 0; x < pToDecrypt.Length / 2; x++)
{
int i = (Convert.ToInt32(pToDecrypt.Substring(x * 2, 2), 16));
inputByteArray[x] = (byte)i;
}
//建¡§立¢¡é加¨®密¨¹对?象¨®的Ì?密¨¹钥?和¨ª偏?移°?量¢?,ê?此ä?值¦Ì重?要°a,ê?不?能¨¹修T改?
des.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
des.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
MemoryStream ms = new MemoryStream();
CryptoStream cs = new CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write);
//Flush the data through the crypto stream into the memory stream
cs.Write(inputByteArray, 0, inputByteArray.Length);
cs.FlushFinalBlock();
//Get the decrypted data back from the memory stream
//建¡§立¢¡éStringBuild对?象¨®,ê?CreateDecrypt使º1用®?的Ì?是º?流¢¡Â对?象¨®,ê?必À?须?把ã?解a密¨¹后¨®的Ì?文?本À?变À?成¨¦流¢¡Â对?象¨®
StringBuilder ret = new StringBuilder();
return System.Text.Encoding.Default.GetString(ms.ToArray());
}
catch
{
throw;
}
}
}
}
fw_Part_DAL.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using xs.DBUitility;
using xs.Entity;
using System.Data;
using System.Data.SqlClient;
namespace xs.DAL
{
public class fw_Part_DAL
{
#region insert/update/delete
public void Insert(string PartName)
{
SqlParameter parm = new SqlParameter("@PartName", SqlDbType.NVarChar, 10);
parm.Value = PartName;
SqlConnection conn = new SqlConnection(SqlHelper.ConnectionString);
conn.Open();
SqlTransaction trans = conn.BeginTransaction(IsolationLevel.ReadCommitted);
try
{
SqlHelper.ExecuteNonQuery(trans, CommandType.StoredProcedure, "sp_Part_Insert", parm);
trans.Commit();
}
catch (Exception ex)
{
trans.Rollback();
throw new ApplicationException(ex.Message);
}
finally
{
conn.Close();
}
}
public void Update(fw_Part model)
{
SqlParameter[] parms = {
new SqlParameter("@PartId",SqlDbType.SmallInt),
new SqlParameter("@PartName",SqlDbType.NVarChar,10)
};
parms[0].Value = model.PartId;
parms[1].Value = model.PartName;
SqlConnection conn = new SqlConnection(SqlHelper.ConnectionString);
conn.Open();
SqlTransaction trans = conn.BeginTransaction(IsolationLevel.ReadCommitted);
try
{
SqlHelper.ExecuteNonQuery(trans, CommandType.StoredProcedure, "sp_Part_Update", parms);
trans.Commit();
}
catch (Exception ex)
{
trans.Rollback();
throw new ApplicationException(ex.Message);
}
finally
{
conn.Close();
}
}
#endregion
#region select
public List<fw_Part> GetPartList()
{
List<fw_Part> LIST = new List<fw_Part>();
SqlDataReader dr = SqlHelper.ExecuteReader(SqlHelper.ConnectionString,
CommandType.StoredProcedure, "sp_Part_GetPartList", null);
while (dr.Read())
{
fw_Part model = new fw_Part();
model.PartId = dr.GetInt16(0);
model.PartName = dr.GetString(1);
LIST.Add(model);
}
dr.Close();
return LIST;
}
public fw_Part GetPartInfoById(int PartId)
{
SqlParameter parm = new SqlParameter("@PartId", SqlDbType.SmallInt);
parm.Value = PartId;
fw_Part model = null;
SqlDataReader dr = SqlHelper.ExecuteReader(SqlHelper.ConnectionString,
CommandType.StoredProcedure, "sp_Part_GetPartInfoById", parm);
while (dr.Read())
{
model = new fw_Part();
model.PartId = dr.GetInt16(0);
model.PartName = dr.GetString(1);
}
dr.Close();
return model;
}
#endregion
}
}
fw_User.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace xs.Entity
{
/// <summary>
/// fw_User:实º¦Ì体¬?类¤¨¤(属º?性?说¦Ì明¡Â自Á?动¡¥提¬¨¢取¨?数ºy据Y库a字Á?段?的Ì?描¨¨述º?信?息¡é)
/// </summary>
[Serializable]
public class fw_User
{
public fw_User()
{ }
#region Model
private int _userid;
private int? _partid;
private string _username = "";
private string _realname = "";
private DateTime? _regtime;
private string _states = "";
private string _userpwd = "";
/// <summary>
///
/// </summary>
public int UserId
{
set { _userid = value; }
get { return _userid; }
}
/// <summary>
///
/// </summary>
public int? PartId
{
set { _partid = value; }
get { return _partid; }
}
/// <summary>
///
/// </summary>
public string UserName
{
set { _username = value; }
get { return _username; }
}
/// <summary>
///
/// </summary>
public string RealName
{
set { _realname = value; }
get { return _realname; }
}
/// <summary>
///
/// </summary>
public DateTime? RegTime
{
set { _regtime = value; }
get { return _regtime; }
}
/// <summary>
///
/// </summary>
public string States
{
set { _states = value; }
get { return _states; }
}
/// <summary>
///
/// </summary>
public string UserPwd
{
set { _userpwd = value; }
get { return _userpwd; }
}
#endregion Model
}
}
kh_Customer.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace xs.Entity
{
/// <summary>
/// CClassId 客¨ª户¡ì类¤¨¤别Àe 表À¨ª示º?客¨ª户¡ì的Ì?重?点Ì?程¨¬度¨¨
/// States 客¨ª户¡ì状Á¡ä态¬? 0 失º¡ì效¡ì 1 有®D效¡ì
/// </summary>
[Serializable]
public partial class kh_Customer
{
public kh_Customer()
{ }
#region Model
private int _customerid;
private string _customername;
private string _customersex;
private string _customercompany;
private string _customerpost;
private string _companyno;
private string _customerphone;
private string _customeremail;
private string _companyadd;
private string _postcode;
private string _areaid;
private int? _cclassid;
private string _states;
private DateTime? _settime;
/// <summary>
///
/// </summary>
public int CustomerId
{
set { _customerid = value; }
get { return _customerid; }
}
/// <summary>
///
/// </summary>
public string CustomerName
{
set { _customername = value; }
get { return _customername; }
}
/// <summary>
///
/// </summary>
public string CustomerSex
{
set { _customersex = value; }
get { return _customersex; }
}
/// <summary>
///
/// </summary>
public string CustomerCompany
{
set { _customercompany = value; }
get { return _customercompany; }
}
/// <summary>
///
/// </summary>
public string CustomerPost
{
set { _customerpost = value; }
get { return _customerpost; }
}
/// <summary>
///
/// </summary>
public string CompanyNo
{
set { _companyno = value; }
get { return _companyno; }
}
/// <summary>
///
/// </summary>
public string CustomerPhone
{
set { _customerphone = value; }
get { return _customerphone; }
}
/// <summary>
///
/// </summary>
public string CustomerEmail
{
set { _customeremail = value; }
get { return _customeremail; }
}
/// <summary>
///
/// </summary>
public string CompanyAdd
{
set { _companyadd = value; }
get { return _companyadd; }
}
/// <summary>
///
/// </summary>
public string PostCode
{
set { _postcode = value; }
get { return _postcode; }
}
/// <summary>
///
/// </summary>
public string AreaId
{
set { _areaid = value; }
get { return _areaid; }
}
/// <summary>
///
/// </summary>
public int? CClassId
{
set { _cclassid = value; }
get { return _cclassid; }
}
/// <summary>
///
/// </summary>
public string States
{
set { _states = value; }
get { return _states; }
}
/// <summary>
///
/// </summary>
public DateTime? SetTime
{
set { _settime = value; }
get { return _settime; }
}
#endregion Model
}
}
总 结
这学期周老师注重的是团队协作,让我们有了更大的自我学习自我发展的空间。让我们知道了,一个大型项目一个人是不可能独立完成的,所以团队协作变得尤为重要!发挥自己的长处也变得可行!
更为重要的是我们学会了团队协作,四五个人的小组完成一个中小型的项目!对自身的知识掌握和与人相处都有了很大的提高!可以说这是我们除知识以外最大收货!
我们主要学习的就是C#语言,利用的工具是vs2008,在学校,老师讲的很详细,一步步带我们走入这个计算机世界,还有定期的考核,巩固所学知识。
临近期末的时候,我们来到软件园进行为期十二天的实训,在这十二天中,老师把这学期的全部总结了一遍,使我们有了更深入的了解。在实训练习的过程中,我对作为一名数据库管理员在管理数据库时要注意的细节和一些重要的地方也有了更多的了解。把职业能力训练与职业素质的训导有机结合起来。相信这对我接下来学习专业技术和专业知识会起到很有效的帮助,在接下来的几年里,我会以作为一名学习者的身份在这几个方面要求自己,严格自我,向专业人员靠近。同时这也让我提前体会了进入社会工作要求的各项要求和工作技能。
实训期间让我学到很多东西,不仅在理论上让我对it领域有了全新的认识,在实践能力上也得到了很大的提高,真正的学到了学以致用,更学到很多做人的道理,对我来说受益匪浅。特别是利用周六上午的时间山大为我们安排的讲座让我们了解it领域一些新的发展动态以及一些领先的技术,让我意识到自己知识的缺少,这激励我在以后的学习、工作、生活中要不断了解信息技术发展动态以及信息发展中出现的新的技术。
通过这次实训,我们掌握了使用C#,也学到了一点技巧性的东西。经过这次实训,我领悟到任何东西都要“学以至用”,学习了还不行还要看自己掌握了没,掌握了还不行还要看自己熟练了没,熟练了还不行还要做出一定成果。这次实训也十给我在以上踏上工作岗位作铺垫。
实训过程是繁琐的,因为有些代码很复杂,很难懂,但同学们都表现得很积极,没有一个人退缩,互相帮助,直到最后。很多同学甚至中午不休息。吃了饭就一头扎在实训中。任课老师也非常认真负责,耐心讲解,细心指导,一点一点解答同学们的疑惑,直到同学们理解了为止。在实训中,分析、讨论、演算,机房里充满了浓浓的学习气氛。此次实训培养了同学们耐心的工作作风,增强了同学们的合作意识,提高了大家的应用分析能力。
除此之外,我还学到了如何与人相处,如何和人跟好的交流,我们组成一个团队大家一起开发一个项目,大家的交流沟通显得尤为重要,如何将自己的想法清楚明白的告诉队友,如何提出自己想法的同时又不伤害其他的队友的面子,这些在我的实训生活中都有一些体会。可是说,第一次亲身体会理论与实际相结合,让我大开眼界。也是对以前学习的一个初审吧,相信这次实训多我以后的学习、工作也将会有很很大的影响,在短短的二十几天里这些宝贵的经验将会成为我以后工作的基石。
致 谢
通过这次实训,我学会了更多计算机方面的知识,很神奇,也很奥妙,既然选择了这个专业,就要坚持下去,或许没有这方面的天赋,但是努力了,付出了,还是会有所回报的,我相信我可以。老师一直在教室给我们巩固,并教新的知识,感谢老师的支持与鼓励。并且要感谢同学们给我们的帮助。
这次是我们进入大学以来的第四次学期实训,也是目前我学到更多,收获更多的一次实训。此次数据库实训是以掌握管理数据库技能实训技能为主,而这次实习则不仅掌握了利用C#的技术而且还得到了自己想要的结果,对此,我还是相当欣慰的。对于学过的知识,不但要理解掌握,还要学会深入思考,为什么是如此,可不可以改进,如何做的更好,更完善······
短短的五天很快就结束了,掌握了多少,理解了多少,关键还在个人,学习不光要学课本上的知识,更重要的实践,自己动手操作,来使自己透彻的掌握,并灵活运用。最后,再次感谢学校领导支持,软件园老师的指导,软件园提供的舒适的环境,以及同学对我的帮助······
参考文献
1.《SQL Server 2005数据库设计及应用》
2.《C#程序设计及应用》作者:(马骏 邓居英 杨湖 著,出版社:人民邮电出版社
4.《数据库设计与实现》
实习报告西安文理学院软件学院10级软件工程一班张兴华学号141xxxxxxxx实习报告一、实习目的根据所学课程的理论知识,结合企业…
软件工程实训报告专业班级姓名学号指导老师实训时间实训地点成绩软件技术软件3071胡少平20xx20xx1第19周学院机房7502软…
辽宁工程技术大学本科生实习报告书教学单位软件学院专业软件工程(财升本)班级10-01班学生姓名**学号**指导教师**一、实习目的…
软件助理工程师岗位的实习报告姓名:专业班级:10级软件技术(英语)实习单位:埃森哲信息技术(大连)有限公司指导教师:完成日期:20…
软件工程专业实习报告姓名沈亚枫学号0810750081专业软件工程班级软件0801指导老师李春林海南大学三亚学院20xx910目录…
今天,我们召开大学三年级第一学期第一次比较正式的班会。班会,我们是常开的,之所以说正式,因为先前的班会是针对某个具体通知而分配同学…
时间很快的转过了大二,现在的我进入大三一月有余。其实小结工作在暑期就应进行。有时候真不敢相信自己大学的时光渐渐将尾声,大一的那份轻…
时光流转,一晃大三上学期马上就要过去了。这是最不平凡的一学期,鲜花伴着汗水,一点一滴,无不倾注着我对于它的默默付出。同时,这又是一…
20xx—20xx学年人文学院学生会生活部上学期工作总结生活部,在院学生会的正确领导和院学生会以及上届老干部的大力支持下,新一届生…
看着日新月异的校园,踏着更显成熟稳重的步伐,成了这个学校的“老大”。大四的我们,没有了大一的迷茫,没有了大二的潇洒,我们更加稳重,…