December 2015


Bài viết được dịch từ website Skilledup

Python - ngôn ngữ lập trình hiện đại và dễ học


Tất cả chúng ta đều từng được nghe những lời khuyên rằng: Đại học sẽ trang bị cho chúng ta những hành trang để tiến tới thành công, sẽ là những chiến mã đưa chúng ta những thung lũng sương mù để đến với những giấc mơ của chúng ta.

Chẳng bao giờ là quá muộn để học lập trình cả. Nhưng bạn nên bắt đầu từ đâu? Chúng tôi khuyên bạn nên bắt đầu với Python, ngôn ngữ lập trình được lấy cảm hứng từ nhóm hài Monty Python. Vậy bạn kì vọng gì vào một ngôn ngữ lập trình mang tên theo tên của một nhóm người chuyên làm mọi thứ trở nên buồn cười?
Well, Có rất nhiều lý do rõ ràng nhưng chúng tôi sẽ cung cấp cho bạn 5 lý do thuyết phục nhất về tại sao Python là ngôn ngữ mà bạn nên học đầu tiên.



    1. DỄ HỌC

Hãy đối mặt với thực tế rằng, học Python không thú vị như là một cuộc thi breakdance tổ chức trên tàu sân bay. May mắn thay, Python được thiết kế để dành cho những người mới bắt đầu. 
Ngôn ngữ Python dễ đọc như toán học Mẫu giáo, cú pháp của Python rất sáng sủa vì đã loại bỏ sự rườm rà trong việc khai báo biến tẻ nhạt và cặp dấu ngoặc xoắn. Python cũng yêu cầu viết ít code hơn để hoàn thành các tác vụ cơ bản, làm cho nó trở thành một ngôn ngữ rất tiện lợi. Code Python thường ngắn hơn 3-5 lần so với Java, và ngắn hơn 5-10 lần so với C++
Nhưng mặc dù Python dễ dàng để tự học, chúng ta đều biết được sự nguy hiểm của việc học một mình và không chuẩn bị trước. May mắn thay, sau nhiều năm phát triển, cộng đồng Python đã có một bộ sưu tập tài nguyên phong phú giúp bạn học lập trình một cách nhanh chóng và hiệu quả.

Ngôn ngữ lập trình Python được lấy tên từ nhóm hài kịch Monty Python


   2. NỀN TẢNG VỮNG CHẮC

Python có thể tạo nền tảng vững chắc để bạn tiến vào thế giới lập trình. Các nhà tuyển dụng đang tìm kiếm những lập trình viên full-stack và Python sẽ giúp bạn đáp ứng được yêu cầu đó. Python là một ngôn ngữ hướng đối tượng, giống như Javascript, C++, C#, Perl, Ruby,... và những ngôn ngữ lập trình lớn khác. Đối với những ai đang có kế hoạch để trở thành nhà phát triển phần mềm, thì việc học ngôn ngữ này sẽ giúp bạn thích nghi dễ dàng với các môi trường khác.

Cụ thể, kinh nghiệm làm việc với Python có thể là một nền tảng vững chắc bởi vì các phương thức của Python có thể được sử dụng trong một loạt các ứng dụng. Ví dụ, Tổ chức mã nguồn và cấu trúc của Python có thể hoạt đông như Rosetta Stone khi cố gắng giải mã ngôn ngữ lập trình bí ẩn hơn.
Sau đây là một so sánh ngắn của Python với hai ngôn ngữ khác: Ruby và PHP. Ruby có cấu trúc tương tự như Python trong khi PHP có cú pháp rất khác.

Vòng lặp "for" trên một danh sách [Python]:

Vòng lặp "each" với một mảng [viết bằng Ruby]:

Vòng lặp "while" trong Python:
Vòng lặp "while" trong PHP:
Nếu chưa có kinh nghiệm lập trình trước đây, bất cứ ai cũng có thể dễ dàng phát hiện những điểm tương đồng và khác biệt giữa cú pháp của Python và những ngôn ngữ khác. Dù sao đi nữa, một sự hiểu biết cơ bản về Python khiến cho việc nhảy qua Ruby dễ như trở bàn tay, và việc hiểu code PHP trở thành một nhiệm vụ dễ dàng hơn. Một khi bạn tìm hiểu về triết lý Python (Zen of Python), bạn có thể áp dụng thành công khi viết code trong bất kỳ ngôn ngữ nào.


3. THẾ LẬP TRÌNH RAPSBERRY PI THÌ SAO?

Biến công việc lập trình trở thành niềm vui là điều không hề dễ dàng chút nào, cho dù bạn là người mới bắt đầu, lập trình viên dày dặn, hoặc chỉ là trẻ em. Ngay cả những giáo viên nhiệt tình nhất cũng phải rất vất vả để cho học viên trở nên hào hứng khi học lập trình. Nhưng có một nơi mà lập trình luôn mang lại niềm vui: cầu nối thu hẹp khoảng cách giữa máy tính trừu tượng và các ứng dụng thực tế giờ đây được thực hiện dễ dàng bằng Pi.

Raspberry Pi là một máy tính siêu nhỏ giá rẻ có kích thước bằng một tấm card, đang được sử dụng rộng rãi để tạo ra những thứ thú vị như robot, ô tô điều khiển từ xa, và video game console. Với Python là ngôn ngữ lập trình chính của nó, Raspberry Pi đang được sử dụng rộng rãi ngay cả bởi trẻ em để tạo ra các radio, máy ảnh, robot đối kháng, hay cả máy cho thú cưng ăn... 
Với chứng cuồng Raspberry Pi có xu hướng ngày càng tăng, có vô số các dự án DIY, tài liệu hướng dẫn, và sách trên internet để bạn lựa chọn. Chúng sẽ giúp bạn đi từ chương trình "hello world" đến một cái gì đó mà bạn có thể thực sự tự hào. Mặc dù bạn sẽ không thể xây dựng một mini Voltron trong tương lai gần, cảm giác hài lòng khi hoàn thành một dự án DIY sẽ thúc đẩy bạn tiến xa hơn trong việc học tập.



   4. TIỀN TIỀN VÀ TIỀN

Nếu việc thiết kế một con robot biết hát ngẫu nhiên những bài hát của Gun N' Rose bằng Raspberry Pi và Python vẫn chưa làm bạn thấy hài lòng, vậy còn triển vọng của việc làm dày túi tiền của bạn hơn chỉ với ngôn ngữ Python thì như thế nào? Các công ty như Google, Yahoo!, Disney, Nokia, và IBM đều sử dụng Python. Trong thực tế, trong số các ngôn ngữ lập trình, Python có sự tăng trưởng lớn nhất ở số lượng việc làm - luôn ở mức 19%  - (tháng 3, 2013) 

Đáng chú ý, nhu cầu tuyển dụng chung cho các chuyên viên IT giảm 5% so với năm trước (tháng 1 - 2014), nhưng nhu cầu tuyển dụng các lập trình viên Python được tăng thêm tới 8,7%. Tại NewYork, các developers Python đứng thứ 8 trong bảng xếp hạng nhu cầu tuyển dụng nhân viên công nghệ cao, với mức lương trung bình là 106 000 $/ năm. Ở bên kia Đại Tây Dương, nhu cầu tuyển dụng lập trình viên Python cũng rất cao, như trong biểu đồ sau đây:



    5. NHIỀU WEBSITE LỚN SỬ DỤNG

Phát triển web vẫn là một mảnh đất màu mỡ, là "một nền kinh tế bùng nổ" dành cho các lập trình viên. Bạn có thể sử dụng Python trong nhiều lĩnh vực khác nhau. Django - là một web framework mã nguồn mở phổ biến được viết bằng Python - là nền tảng của các trang web lớn như Pinterest, The New York Times, The Guardian, Bit Bucket, và Instagram. Django là một framework hoàn chỉnh và khá phức tạp trong phát triển web nhưng vẫn đem lại cho bạn nhiều sự kiểm soát như bạn muốn. Là một framework mã nguồn mở, tất cả các thông tin bạn cần để bắt đầu có thể được tìm thấy tại DjangoProject.com.

Python là ngôn ngữ kịch bản duy nhất bạn cần để bắt đầu thiết kế trang web và các ứng dụng của riêng mình. Những gì là đúng với Python thì cũng đúng với Django. Phát triển web với Django có nhiều tài liệu và một cộng đồng hỗ trợ lớn, giúp bạn mất rất ít thời gian để viết code. Với Django, những ý tưởng tuyệt vời có thể trở thành sản phẩm thực tế một cách nhanh chóng, tiết kiệm hàng giờ code. 
Điều này giúp bạn có nhiều thời gian hơn đê cải thiện các concept của mình, và biến chúng trở thành các sản phẩm cao cấp và chuyên nghiệp! Hơn nữa, Django không phải là framework phát triển duy nhất dành cho các lập trình viên Python. Có rất nhiều framework Python khác mà bạn có thể khám phá.


HÃY BẮT ĐẦU HỌC VÀ LÀM VIỆC VỚI PYTHON NGAY HÔM NAY!

Tại sao lại là Python? Vì nó rất dễ học và sẽ cung cấp cho bạn một kiến thức nền tảng để bạn có thể chuyển sang các ngôn ngữ khác. Một thiết bị ngoại vi như Raspberry Pi sẽ giúp bạn nhận ra Python có thể được sử dụng theo một cách rất thú vị và vui nhộn. Cuối cùng, với các công cụ phát triển web như Django, Python có thể giúp bạn biến bất kỳ ý tưởng kiếm tiền nào trở thành hiện thực.


Nếu đã cảm thấy thích Python, minh xin trích dẫn một số công cụ và diễn đàn học tập python:
 - Cộng đồng Python Việt Namhttp://pythonvietnam.info/index.php
 - Các khóa học Python online trên CodecademyCoursera
 - Web hỗ trợ học tập Tutorialspoint: http://www.tutorialspoint.com/python/index.htm
 - Series dạy lập trình Python của anh Lê Trần Đạthttps://www.youtube.com/playlist?list=PLyiioioEJSxEh_S_XFvG0d2xKRMSWLfN_
 - Bài chỉ dẫn Python: http://www.vithon.org/tutorial/2.5/tut.html
 - Tài liệu, ebook: http://sinhvienit.net/forum/ebook-ve-lap-trinh-python.265250.html 

Trên là bài viết về 5 lý do để chọn Python làm ngôn ngữ lập trình đầu tiên được dịch lại và một số công cụ để bước đầu học lập trình Python. 
Chào các bạn, và chúc các bạn học tốt!


Chào các bạn!
Hôm nay mình xin giới thiệu với các bạn cách thêm control động hay còn gọi là dynamic control trong C# windows form.


GIỚI THIỆU

Trong nhiều chương trình, đôi khi bạn cần tạo thêm một control mới ngay trong lúc chương trình đang thực thi, hoặc xóa một control hiện có sẵn.
Vậy thì làm thế nào? Lấy đâu ra giao diện thiết kế của Visual Studio để thêm?
Khi đó ta phải sử dụng control động (Dynamic controls)

Dynamic control trong lập trình C#

Visual Studio .NET không có mảng chứa control như Visual Basic 6.0. Nhưng tin vui là bạn vẫn có thể tự thiết lập để làm những điều tương tự. Các ưu điểm của C# Dynamic controls là chúng có thể được tạo ra để phản hồi với cách mà người dùng tương tác với các ứng dụng. Các control được thêm vào trong lúc chương trình thực thi thường là textbox hoặc button. Nhưng tất nhiên, hầu như tất cả các C# control đều có thể được tạo ra như là một dynamic control


LÀM THẾ NÀO ĐỂ TẠO CONTROL ĐỘNG TRONG C#

  • Đầu tiên các bạn cần khai báo một đối tượng Control (nhớ using các namespace cần thiết cho control cần dùng)
  • Thiết lập các thuộc tính cần thiết cho đối tượng vừa khai báo như: Vị trí (top, left, bottom, right), Text, Font, Color,....
  • Thêm control vào danh sách controls của form chứa nó.

Ta thực hành thôi :D 
Đầu tiên trong trình thiết kế, ta thêm một button, và cài đặt sự kiện click cho nó, mục đích khi bấm vào nút nó sẽ tự thêm một textbox mới như hình ở đầu bài.
Sau đó sử dụng đoạn code sau, và xem kết quả xảy ra nhé :) 

using System;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        int count = 1;

        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            AddNewTextBox();
        }

        public System.Windows.Forms.TextBox AddNewTextBox()
        {
            System.Windows.Forms.TextBox txt = new System.Windows.Forms.TextBox();
            this.Controls.Add(txt);
            txt.Top = count * 25;
            txt.Left = 100;
            txt.Text = "Icetea Viet TextBox " + this.count.ToString();
            count = count + 1;
            return txt;
        }
    }
}

   - Vậy là xong phần tạo. Tiếp theo là thao tác hoặc xóa controls. Để xóa control xác định thì bạn cần biết được một trong các thông tin sau (thứ tự của control đó trong list Controls của form, Key của control, Name hoặc Text của control...)
   - Bạn hãy tham khảo các method sau: this.Controls.RemoveAt(int index), this.Controls.RemoveByKey(string key),...

Hoặc các bạn có thể sử dụng vòng lặp foreach, duyệt qua tất cả các control trong list Controls và xét điều kiện
foreach (TextBox txtBox in this.Controls.OfType< TextBox >())
{
        if(txtBox.Text == "IceTea Viet")
        {
               //Do something
        }

        //other condition
}
Như vậy là ta đã biết cách tạo và sử dụng một dynamic control cho mình rồi.
Chúc các bạn học tốt, và nhớ để lại bình luận của mình bên dưới nhé :)


Contact Form

Name

Email *

Message *

Powered by Blogger.
Javascript DisablePlease Enable Javascript To See All Widget