Thắc mắc về vấn đề tạo ra một real software

Vì em mới học C nên còn rất nhiều chỗ chưa rõ ví dụ như làm thế nào để tạo ra một phần mêm tương tác với hệ thống chỉ từ những cái em đã học (như printf, scanf, type, constant, function, struc…)
Em đã có tìm kiếm trên mạng nhưng chưa thấy bài viết nào cụ thể thảo luận về việc này, mong anh chị thông cảm cho newbie.

1 Like

Xây nhà cũng bắt đầu từ 1 viên gạch thôi mà bạn, cứ thoải mái hỏi khi mình chưa biết thôi :slight_smile:

  • Với ngôn ngữ C thì thông thường người ta sẽ viết để nhúng vào thiết bị nào đó (tất nhiên các chương trình bạn viết bây giờ như cộng 2 số, hiển thị 1 xâu trong màn hình console cũng là một phần mềm, nhưng mình sẽ nói về phần mềm thương mại mà người ta làm ra, làm gì cũng phải có tiền đúng ko?), bạn code xong 1 chương trình bằng 1 IDE thông thường hoặc chuyên dụng nào đó rồi test với thiết bị giả lập, nếu chương trình chạy ok thì sau đó sẽ được nạp vào thiết bị (như con chip, vi xử lý…) và chạy như bình thường. Với các chương trình này thì thường ko có giao diện vì C ko hỗ trợ giao diện nhiều, chủ yếu viết bằng C để tận dụng tốc độ xử lý, và cũng chỉ là các hàm và trả về các giá trị nào đó như bình thường rồi gán vào để điều khiển thiết bị mà thôi.

  • Với một số phần mềm mà bạn thấy trên windows chẳng hạn, người ta thường code bằng VB .Net hoặc C# .Net, với các phần mềm này, bạn có công cụ hỗ trợ để làm giao diện (thông dụng nhất là Visual Studio) theo một số mô hình là SmartUI (như winforms), MVC (web apps) hay MVVM(WPF)… Khi đã làm xong giao diện (bao gồm các nút bấm, label, text box hay các thành phần hiển thị dữ liệu…), người ta sẽ code phần bắt sự kiện, xử lý dữ liệu, hiển thị…cho các thành phần trên giao diện đó, khi code xong thì đóng gói là xong một phần mềm. Đơn giản đúng ko?

Tuy nhiên thì đó chỉ là quy trình chung nhất trong việc làm ra một phần mềm, còn tùy độ phức tạp của nó mà người ta thường có nhiều công cụ hỗ trợ khác để làm như hệ thống các thư viện bên ngoài(hỗ trợ bằng cách cung cấp các hàm có sẵn để thực hiện các công việc nào đó), các framework (hỗ trợ bằng việc cung cấp môi trường/nền tảng để phát triển phần mềm)…
Bạn cứ học tốt C đi, học chắc rồi sẽ có nền tảng vứng chắc để bước vào ngành phát triển phần mềm.

5 Likes

Khẳng định là phải thả tim anh này. Rất nghiêm túc và có đầu tư. Trên diễn đàn có chia sẻ về c++ căn bản của anh @ltd đó em. Anh cưỡi ngựa xem hoa qua thì khẳng định quá ngon, rất chi tiết và dễ hiểu. Từ từ em cũng đụng thằng này, rảnh vô coi hay lắm. Quay lại anh ở trên cái gì cũng phải từ từ để dưỡng sức làm lâu!

Cảm ơn anh chị đã trả lời
có lẽ hợp ngữ hợp với em hơn

Xem phim kiếm hiệp thường có câu là “Võ học đạt tới đỉnh cao thì trăm sông chảy về 1 biển”. Lập trình đạt đến mức độ nào đó thì ngôn ngữ cũng ko còn là vấn đề nữa vậy :wink:

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?