Mục tiêu
Chia sẻ kiến thức và kinh nghiệm qua nhiều năm làm việc với máy vi tính.
Đối tượng độc giả
Tất cả mọi người.
Khuyến khích những bạn muốn tìm hiểu về thế giới lập trình.
Nội dung tìm hiểu
- Những kỹ thuật lập trình từ cơ bản đến nâng cao đối với 04 ngôn ngữ: Java / C# / Python / PHP.
- Những cấu trúc dữ liệu và giải thuật cơ sở được giải trình và hiện thực lần lượt bằng 04 ngôn ngữ trên.
- Những kỹ thuật cơ bản đến nâng cao để xây dựng các dạng phần mềm: Desktop / Web / Android Application. Nội dung này được giải trình và hiện thực lần lượt bằng 04 ngôn ngữ trên.
- Những kiến thức hơi chuyên sâu một chút để thực hiện các phần mềm: Science Application. Nội dung này được giải trình và hiện thực lần lượt bằng 02 ngôn ngữ: Java / Python.
- Những kiến thức chung khác về Công nghệ thông tin phục vụ việc xây dựng những phần mềm ứng dụng.
Công cụ được sử dụng
Hệ điều hành được sử dụng:
- Bắt đầu từ năm 2020 này, tôi sẽ chuyển sang sử dụng Hệ điều hành Fedora Workstation 31. Lý do chính là để tạo một không khí mới mẻ cho việc thực hiện các dự án. Ngoài ra thì Fedora Workstation cũng mang tính chuyên nghiệp hơn so với Ubuntu.
- Ngoài ra thì một số bài viết về cài đặt các ứng dụng chung cũng có thể được trình bày trong Hệ điều hành Ubuntu hoặc CentOS.
- Tổng quát lại thì khuyến khích tất cả mọi người cùng chuyển sang sử dụng nhánh Hệ điều hành khác nhau thuộc hệ phái Linux. Có thể ban đầu có hơi khó khăn một chút nhưng qua thời gian thì chúng ta sẽ không còn muốn quay lại với Windows nữa.
Đối với những dự án về Desktop / Web Application với ngôn ngữ Java:
- Nền tảng được sử dụng để thực hiện sẽ là Apache NetbeansIDE. Phiên bản mới nhất năm 2020 là 11.4. Lý do chính là để tạo một không khí mới mẻ cho việc thực hiện các dự án.
- Ngoài ra thì một số chương trình cũng có thể được thực hiện và trình bày với nền tảng EclipseIDE. Tuy nhiên số lượng những chương trình như vậy sẽ không nhiều vì NetbeansIDE đã hỗ trợ tốt hơn đối với hầu hết các dạng chương trình.
Đối với những dự án về Desktop / Web Application với ngôn ngữ C#:
- Nền tảng được sử dụng để thực hiện sẽ là Visual Studio Code. Lý do chính là để tạo một không khí mới mẻ cho việc thực hiện các dự án. Ngoài ra thì Visual Studio Code đang nổi lên là một nền tảng lập trình rất mạnh mẽ và phổ biến.
- Ngoài ra thì một số chương trình cũng có thể được thực hiện và trình bày với nền tảng MonoDevelop.
Đối với những dự án về Web Application với ngôn ngữ PHP:
- Nền tảng được sử dụng để thực hiện sẽ là Apache NetbeansIDE. Phiên bản mới nhất năm 2020 là 11.4. Lý do chính là để tạo một không khí mới mẻ cho việc thực hiện các dự án.
- Ngoài ra thì một số chương trình cũng có thể được thực hiện và trình bày với nền tảng EclipseIDE. Tuy nhiên số lượng những chương trình như vậy sẽ không nhiều vì NetbeansIDE đã hỗ trợ tốt hơn đối với hầu hết các dạng chương trình.
Đối với những dự án về Science Application với ngôn ngữ Python:
- Đây dường như đang là một xu hướng mới với các ngành nghề liên quan như Trí tuệ nhân tạo (Artificial Intelligence) hay Khoa học dữ liệu (Data Science). Vì vậy việc lựa chọn nền tảng để lập trình cũng là một quyết định quan trọng.
- Bắt đầu từ năm 2020 này, tôi sẽ hướng dẫn chúng ta sử dụng các nền tảng chuyên biệt cho việc phát triển những dạng chương trình trên: Spyder IDE / Jupyter Notebook / Visual Studio Code. Đây là 03 nền tảng rất phổ biến hiện nay để thực hiện Science Application.
- Ngoài ra đối với một số chương trình cũng sẽ được thực hiện và trình bày với Eclipse IDE + PyDev. Tuy nhiên số lượng những bài viết này sẽ không nhiều.
Đối với những dự án về Android Application với ngôn ngữ Java:
- Có 02 bộ công cụ sẽ được áp dụng để thực hiện: (i) Android Studio của Google; (ii) Plugin CodenameOne trong NetbeansIDE.
Phong cách trình bày
Từng bài viết được trình bày cụ thể và chi tiết nhưng theo hướng tổng quát hóa.
Một số những kỹ thuật lập trình khác nhau trong 04 ngôn ngữ trên được trình bày theo hướng ứng dụng thực tiễn trong từng bài viết.
Mong muốn đối với người đọc:
- Khuyến khích phát triển kỹ năng tổng hợp và tìm kiếm thông tin. Lý do: các kỹ thuật lập trình được lồng vào những bài viết khác nhau chứ không tách riêng lẻ.
- Khuyến khích phát triển tư duy tổng quát. Lý do: các ý tưởng chính trong từng bài viết là tổng quát và độc lập ngôn ngữ. Người đọc cần chú ý để có thể cùng lúc học được nhiều ngôn ngữ lập trình khác nhau.
- Khuyến khích áp dụng nội dung trong các bài viết vào việc giải quyết các bài toán trong thực tiễn. Chú ý: (i) ý tưởng giải quyết là tổng quát; (ii) ngôn ngữ lập trình chỉ là công cụ.
Liên hệ
Mọi ý kiến xin chia sẻ qua địa chỉ email: