ส่งงาน project วิชา Computer Programming ปี 1 ภาคปลาย
โดยโปรเจคนี้มีทั้งหมด 2 branches ได้แก่
main
เป็น branch ที่มีการใช้ libraries ซึ่งค่อนข้างยุ่งยากถ้าหากไม่สามารถใช้งาน branch นี้ได้ให้ใช้อีก branch นึงคือmain2
เป็น branch ที่ไม่มีการใช้งาน libraries ใดๆสามารถ run โปรแกรมและใช้งานได้เลยโดยกดที่ลิ้งนี้ main2
รายละเอียดโปรเจค : โปรเจคนี้ทำเกี่ยวกับ โปรแกรมระบบจัดการสินค้าใน ร้านสินค้า , ร้านขายของ , ร้านสดวกซื้อ โดยการใช้งานเมื่อรันโปรแกรมผ่าน CLI ของโปรแกรมจะมีตัวเลือกคือตัวเลขให้ผู้ใช้งานป้อนตัวเลขใน
terminal ก็จะแสดงข้อมูล หรือ การจัดการกับสินค้าต่างๆ ตามฟีเจอร์ที่ได้ระบุไว้ และ เมื่อมีการจัดการกับข้อมูลสินค้าโปรแกรมจะมีการเขียนและอ่านไฟล์ข้อมูล data.txt
ใหม่และเมื่อมีการ
ขายสินค้าจะมีการเขียนไฟล์ใน orders.txt
และข้อมูลไฟล์ data.txt
จะมีการเปลี่ยนแปลงไปตามจำนวนสินค้าที่ขายออกไป
เป็นโปรเจคแบบง่ายๆ โดยใช้ภาษา C++ ในการเขียนโปรแกรม
วันที่เริ่มทำโปรแกรม : 13/2/2567
วันที่ทำโปรแกรมเสร็จ : 2/3/2567
- เพิ่มสินค้า
- ลบสินค้า
- แก้ไขสินค้า
- สั่งซื้อสินค้า
- เพิ่มสินค้าใน stock
- แสดงตารางสินค้า ทั้งหมด , หมวดหมู่สินค้า หรือ แบรนด์สินค้า ที่เลือก
- อ่านเขียนไฟล์ข้อมูลในไฟล์
data.txt
- เขียนไฟล์ข้อมูลสรุปการสั่งซื้อสินค้าในไฟล์
orders.txt
- บอกวันเวลา
- คลิกที่รูป icon ของแต่ละโปรแกรมเพื่อดาวโหลด์ได้เลย
- ถ้ามี cmd, powershell หรือ windows terminal อยู่แล้วไม่ต้องคลิก icon รูปที่ 2 ให้เลือกใช้สักอันนึงแทน
- IDE ให้เลือกใช้อย่างใดอย่างหนึ่งส่วนผู้เขียนใช้ IDE เป็น CLion
- เปิด terminal แล้วใช้คำสั่งดาวน์โหลด์โปรเจค
git clone https://github.com/WarinCode/CPP-project.git
- เข้าไปใน directory ของโปรเจค
cd CPP-project
- โหลด source code ของ submodule จะได้ไฟล์ libraries
git submodule update --init --recursive
- ถ้าทำตามขั้นตอนที่ว่ามาทั้งหมดก็ถือว่าเกือบพร้อมใช้งานได้แล้วแต่ที่สำคัญในส่วนของการอ่านและเขียนไฟล์ข้อมูลให้ทำการเขียนทับ path ในส่วนของ method read , write และ update ของ class File
string path = R"(C:\Users\ACER USER5949486\Desktop\CPP-project\txts\data.txt)"
โดยเปลี่ยนเป็นstring path = R"(C:\Users\user\Desktop\CPP-project\txts\data.txt)"
ให้เปลี่ยนจากuser
เป็นเครื่องชื่อผู้ใช้งานแทน
// ตัวอย่าางการเปลี่ยนค่าใน path file เป็น path file ในเครื่องของผู้ใช้งาน
#include <iostream>
using std::string;
typedef struct {
string data;
string orders;
} textFiles;
// ให้แทนค่าตรงคำว่า user เป็นเครื่องผู้ใช้งานแทน
const textFiles path = {
.data=R"(C:\Users\user\Desktop\CPP-project\txts\data.txt)",
.orders=R"(C:\Users\user\Desktop\CPP-project\txts\orders.txt)"
};
// ตัวอย่างแบบที่ 1 คือการเข้าไปแก้ไขค่าใน default parameter ใน method read และ write
class File {
public:
static void read(string path = path.data, bool showMessage = false){
// code ข้างในการทำงานของ method ไม่ต้องแก้ไขใดๆ ...
}
static void write(string path = path.data, bool showMessage = false){
// ...
}
static void write(vector<product> orders, int totalNumbers, float totalAmount, string path = path.orders, bool showMessage = false){
// ...
}
static void update(string path = path.data){
// ...
}
};
// ตัวอย่างแบบที่ 2 คือการส่งค่า argument เข้าไปแทนใน default parameter เมื่อมีการเรียกใช้ method ในแต่ละบรรทัด
File::read(path.data);
File::write(path.data);
// ถ้าเป็น method แบบ overloading ให้ส่งค่า args ตัวอื่นไปก่อนตามลำดับ
File::write(orders, quantity, total, path.orders);
File::update(path.data);
- เปิด CLion ขึ้นมาแล้วเลือก build โปรแกรม(icon เป็นรูปค้อน) จากนั้นเลือก Configurations ให้เลือกเป็น
CPP-project
และ run ไฟล์ main.cpp จะได้โปรแกรมหน้าตาประมาณนี้
- ถ้าหาก run ไฟล์ main.cpp ไม่ได้ หรือ ติดปัญหา compile ไม่ผ่านหรือติดตั้ง submodules ไม่ได้ให้ทำการเปลี่ยน branch เป็น branch main2 กลับไปที่ terminal โดยใช้คำสั่งนี้ (terminal ต้องอยู่ใน path ของโฟลเดอร์โปรเจค CPP-project อยู่)
git switch main2
- ตอนนี้เรากำลังทำงานอยู่ใน branch main2 โดยจะเจอไฟล์ main.cpp ให้ compile ไฟล์นั้นจะได้ program.exe ขึ้นมา
g++ main.cpp -o program.exe
- เปิดโปรแกรมที่ได้มาใน terminal
./program.exe
จะได้โปรแกรมหน้าตาประมาณนี้
แล้วเหมือนเดิมให้ทำการแก้ไข path ไฟล์ โดยทำตามขั้นตอนที่ได้กล่าวไว้ในขั้นตอนที่ 4 และ ขั้นตอนที่ 7 ใหม่จะได้ใช้โปรแกรมในเครื่องของผู้ใช้งาน
ปล. สามารถนำโปรเจคนี้ไปใช้งานหรือพัฒนาต่อยอดได้ฟรี แต่ข้อห้ามคือห้าม copy code ไปส่งเป็นงานกลุ่มโปรเจคของตัวเองทั้งที่ไม่ได้ทำเอง หรือ นำโปรแกรมไปขาย
- นาย วรินทร์ สายปัญญา รหัสนิสิต 6630250435 หมู่เรียน 881