創作內容

7 GP

【東吳研二下】-重修課程期末軟體開發感言:以C#為例

作者:林綠茶│2018-06-26 12:05:37│贊助:14│人氣:194
大約從五月底開始,在開發一套【自行車租借系統】單機版,過程中也找了不少素材、開上幾十個副檔,來執行這項專題作業。程式這東西說白了就是由美國人發明的一套系統,目的在於運用它來操作現實生活上某個電子設備的作業流程,同時在key程式的時候,也需要認識不少英文字。

講白話些,操作型的事務,多半需用到腦力來做判斷,也需耗費大量的耐心完成。

而對於入門程式的人來講,學程式的三個主要痛點在於:



一、語法、程式碼大小寫:這點算是所有學程式的人公認、切身體會過的痛點,有時在打一行程式碼,你的軟體會自動校正某些區段的程式,然而那個程式不見得是正確的程式,因此增加你要去透過翻閱書目、教學影片、詢問專業的人等多種管道校正這個區段,並完成這項作業。

二、行距的概念、認知:三大痛點中的第二痛點,行距錯誤,程式一樣無法執行若打對你的程式自動會將行數校正完畢。

三、大規模的消耗時間:學程式就像是挖掘山洞一樣,從無數堆的礦石發現具有價值的金礦。

【範例檔-會員資料】:


【主頁面物件(紅框處)】:


【該題程式碼】:(除了新增功能存在Bug,其餘都ok。)

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace 會員資料庫建置
{
    public partial class 會員表單 : Form
    {
        public 會員表單()
        {
            InitializeComponent();
        }

        private void dataGridView_KeyDown(object sender, KeyEventArgs e)
        {
            if (MessageBox.Show("Are you sure want to delete this record?", "Message", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                會員資料庫BindingSource.RemoveCurrent();
        }



        private void txtSearch_KeyPress(object sender, KeyPressEventArgs e)
        {

            if (string.IsNullOrEmpty(txtSearch.Text))
                dataGridView.DataSource = 會員資料庫BindingSource;
            else
            {
                var query = from o in this.會員資料庫_DataSet.會員資料庫
                            where o.姓名.Contains(txtSearch.Text) || o.電話號碼 == txtSearch.Text || o.信箱 == txtSearch.Text || o.地址.Contains(txtSearch.Text)
                            select o;
                dataGridView.DataSource = query.ToList();
            }
        }


        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                using (OpenFileDialog ofd = new OpenFileDialog() { Filter = "JPEG|*.jpg*", ValidateNames = true, Multiselect = false })
                {
                    if (ofd.ShowDialog() == DialogResult.OK)
                        pictureBox1.Image = Image.FromFile(ofd.FileName);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

        private void New_Click(object sender, EventArgs e)
        {
            try
            {
                panel.Enabled = true;
                txtName.Focus();
                this.會員資料庫_DataSet.會員資料庫.Add會員資料庫Row(this.會員資料庫_DataSet.會員資料庫.New會員資料庫Row());
                會員資料庫BindingSource.MoveLast();

            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
                會員資料庫BindingSource.ResetBindings(false);
            }
        }

        private void Edit_Click(object sender, EventArgs e)
        {
            panel.Enabled = true;
            txtName.Focus();
        }

        private void Cancel_Click(object sender, EventArgs e)
        {
            panel.Enabled = true;
            txtName.Focus();
        }

        private void Save_Click(object sender, EventArgs e)
        {
            try
            {
                會員資料庫BindingSource.EndEdit();
                panel.Enabled = false;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Message", MessageBoxButtons.OK, MessageBoxIcon.Error);
                會員資料庫BindingSource.ResetBindings(false);
                panel.Enabled = false;
            }
        }

        private void 會員表單_Load(object sender, EventArgs e)
        {
            // TODO: 這行程式碼會將資料載入 '會員資料庫_DataSet.會員資料庫' 資料表。您可以視需要進行移動或移除。
            this.會員資料庫TableAdapter1.Fill(this.會員資料庫_DataSet.會員資料庫);
            會員資料庫BindingSource.DataSource = this.會員資料庫_DataSet.會員資料庫;
        }
    }
}

該程式大致上就是一些Social Network上常見的會員資料建立表單程式,在正式系統上,資料庫不會顯示在頁面,而寫在系統內部。簡單的功能就是【新增】、【編輯】、【取消】、【存檔】等四項功能,在下方的【查詢】可找到方框中打的人名資料列表。

在左上角,也有個選頭像的功能,可按照喜好來選圖。

【影片名稱】:[color=var(--ytd-video-primary-info-renderer-title-color, var(--yt-primary-text-color))]C# Application - Insert Delete Update Select in MS Access Database | FoxLearn
【參考影片】:由此進入



備註:至於這算目前尚未完成的系統,就現況來看,完成度大概六成左右,程式分五個頁面,所以要打五個頁面的程式,附加設置內部功能。

【程式專題-自行車租借系統】



做了大概一個月多左右,內部大約還尚缺一些功能。算是一件大型專案。
引用網址:https://home.gamer.com.tw/TrackBack.php?sn=4036160
All rights reserved. 版權所有,保留一切權利

相關創作

同標籤作品搜尋:軟體開發|程式實作|專題|研究所|東吳大學|補修課程|資訊管理學

留言共 2 篇留言

虚ろな光
哇 沒想到你在做這個

我以為是之前跟便當有關的

還有你在東吳@@?

06-26 13:38

林綠茶
嘛,畢竟也算重修的課程了,加上以前就學過C#。所以比JP(PYTHON或JUPYTER)有經驗。

恩,大學唸華夏科大,碩士推甄念東吳資管所(備取生)。

至於便當方面是論文,做一做也快一年了。~06-26 13:47
林綠茶
從科技大學轉一般大學研究生。學科差不多輸一大截。術科上平分秋色,甚至羸過。06-26 13:49
真白兔a萱弟
看到一堆程式就怕爆...果然這年代不學程式找不到工作啊...想做金融就一定要python。

嘛~問一下爲什麽不用using System.*;
不過不清楚C#能不能

那個藤原拓海!!!!

07-09 01:58

林綠茶
在C#環境裡,他會有幾行預設的程式先寫在軟體裡,當你點物件他會自己列出。

而會在USING開頭的後面加程式,表示你要給這程式加些使用什麼元件,不然通常都是從NameSpace下面開始寫程式。

至於你文中提到的USING SYSTEM.*;這個物件我倒是沒用過,所以不太確定。至於頭照選取功能,就是部落格上(包含巴哈)常見的抓圖上傳的功能,是讀取你磁碟機中選好的圖片,將它讀到你的預覽框內。

順帶一提,拓海算是動漫世界裡,讓我感覺起來最乾脆,也存在自己個性的角色。~07-09 10:11
林綠茶
你用C#寫程式的時候,只會動到選取物件內部的程式碼,而不需要從頭寫到尾,等同於有二成左右的程式,等同於系統先幫你寫好預設程式,所以這件事不用太擔心,同時不需要從using system開始寫。

至於PYTHON第一年我學過,但我覺得C#比較簡單。07-09 10:13
我要留言提醒:您尚未登入,請先登入再留言

7喜歡★fc105123 可決定是否刪除您的留言,請勿發表違反站規文字。

前一篇:【2018年英雄聯盟】當... 後一篇:[達人專欄] 【英雄聯盟...

追蹤私訊

作品資料夾

艾爾之光(2010年-2018年) (0)
艾爾小說正篇(2010-2015年) (116)
艾爾支線故事 艾索x艾拉(含外傳) (75)
艾爾支線故事 雷文x蘿潔 (10)
艾爾支線故事 澄x蘿潔 (1)
艾爾後日談 蘭x愛利西斯 (2)
小說整理櫃+整理工作 (6)
影片 (9)
圖畫 (22)
遊戲心得 (3)
其他 (19)

新楓之谷(2016年-至今) (0)
那因哈特x莉琳 (25)
鷹眼x奧茲 (10)
小說整理櫃 (3)
圖畫 (8)
其他 (5)
遊戲心得 (2)

夏目友人帳(2016年-2017年) (0)
夏目貴志x多軌透 (17)
貴志&鈴子【後日談】 (1)
小說整理櫃 (1)
圖畫 (1)

結界師(2009年-2017年) (0)
第一季(2009-2010) (45)
第二季(2014-2017) (45)
結界師番外文(2018) (2)
結界文整理櫃 (1)
圖畫 (1)

神奇寶貝(2016年-至今) (0)
智遙 (2)
圖畫 (1)
小說整理櫃 (1)
其他資訊 (1)

機甲先鋒(2017年-至今) (0)
達斯汀x凱瑟琳 (10)
圖畫 (1)
整理櫃 (1)
遊戲資訊 (1)

英雄聯盟(2017年-至今) (0)
綠茶x拉克絲 (16)
蓋倫x拉克絲 (9)
蓋倫x伊瑞莉雅 (1)
繪圖創作 (4)

原創作品(2015年-至今) (0)
繪圖、漫畫創作 (47)
原創短文 (14)
整理櫃&其他資訊 (5)

刀劍神域(2018年-至今) (0)
綠茶x愛麗絲 (4)

爆爆王 (0)
遊戲心得 (1)

頭文字D (0)
遊戲影片 (3)
賽車遊戲資訊、圖畫 (11)

ACG相關 (0)
動漫心得 (23)
生活日記 (77)
月曆製作、圖畫、回憶的地方 (8)

未分類 (0)

sa740096(❛◡❛✿)
伴隨紛飛的花朵翩翩起舞吧。看更多我要大聲說3小時前


face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】