• Thứ Tư, 15/10/2014 09:28 (GMT+7)

    Học ngôn ngữ lập trình thứ hai - hãy thử với 5 trang web

    Bùi Lê Duy
    (PCWorldVN) Bạn muốn chuyển sang dùng ngôn ngữ lập trình khác? Những nguồn trong bài cho các nhà phát triển biết cách làm thế nào để lấp khoảng trống giữa ngôn ngữ lập trình và framework.

    Cùng 1 mục đích nhưng mỗi ngôn ngữ lập trình lại có cách diễn đạt khác nhau. Năm trang web bên dưới giúp bạn so sánh chúng khác nhau như thế nào.

    Nếu bạn là lập trình viên và muốn chuyển từ một ngôn ngữ này sang ngôn ngữ khác, thì bạn sẽ rất dễ va vào bức tường: làm thế nào? Có thể chúng ta chỉ dựa vào ngôn ngữ gốc của mình rồi làm quen dần với một thế giới lạ mới, nhưng cách này rất khó.

    Các nhà lập trình vấp phải trở ngại này thường thấy được một ưu điểm của phương pháp trên là có được góc nhìn, thiết kế và thuật toán tương tự trong nhiều ngôn ngữ khác nhau. Dưới đây là 5 trang web có những ví dụ điển hình về những ngôn ngữ phổ biến nhất có tên lệnh hoàn toàn giống nhau nhưng lại thực thi rất khác nhau. 

    Rosetta Code

    Lớn nhất, nhiều ví dụ nhất và hữu ích nhất, đó là trang web Rosetta Code, có thể xem là "tuyển tập lập trình", cho bạn rất nhiều ví dụ về cách thực hiện một tác vụ nhưng theo nhiều ngôn ngữ lập trình khác nhau. Điểm đáng ghi nhận của Rosetta Code không phải là kích thước trang web và số lượng ví dụ mẫu, mà là tính chi tiết của ví dụ. Ví dụ để tạo một cửa sổ trong giao diện đồ hoạ GUI, trang web không liệt kê tác vụ này theo ngôn ngữ, mà theo từng bộ toolkit chuyên biệt trong ngôn ngữ, như đối với Python, có các ví dụ chuyên cho Tkinter, PyGTK, Pythonwin, wxPython và nhiều thư viện khác.

    Eqcode

    Eqcode muốn cho bạn biết được mã nguồn tương đương giữa các ngôn ngữ, nên trang web này có một danh mục các ngôn ngữ phổ biến và nhiều mẫu tác vụ, như bỏ một thành phần nào đó ra khỏi mảng hoặc tạo một khai báo regex cho một địa chỉ email. Số lượng ngôn ngữ mà Eqcode hỗ trợ tương đối đầy đủ nhưng số lượng tác vụ vẫn còn chưa mấy bao quát, còn rải rác và không cập nhật thường xuyên. Các bản cập nhật mới nhất từ tháng 4/2014.

    CrossWise

    Cũng giống như 4 trang web trong bài này giới thiệu, CrossWise cho bạn thấy được mỗi loại ngôn ngữ lập trình cùng diễn đạt một ý tưởng khác nhau như thế nào, gồm các ngôn ngữ phổ biến như JavaScript, PHP, Ruby và Python. Nhưng rõ ràng là CrossWise có thiết kế rất khéo léo: bạn có thể xem và đối chiếu mã nguồn theo 2 cột song song, có thể chọn ngôn ngữ nào cho vào cột nào. CrossWise hiển thị rất chi tiết từng đặc điểm ngôn ngữ, như biến Boolean được khai báo ra sao, cách dò lỗi như thế nào...

    AlgPedia

    Là dự án đầy tham vọng của đại học Rio de Janerio ở Brazil xây dựng, AlgPedia như là một bách khoa toàn thư cộng tác, có rất nhiều thuật toán cho bạn tham khảo. Thuật toán về sắp xếp, kiểm lỗi, hằng số chính xác, khai thác dữ liệu, khớp mẫu và nhiều loại thuật toán phổ biến và hiếm gặp khác. Dự án này vẫn còn trong giai đoạn ban đầu nên một số ví dụ về thuật toán còn chưa hoàn chỉnh; vài trong số này chỉ có một hoặc hai ví dụ.

    PLEAC (Programming Language Examples Alike Cookbook)

    Perl có một thứ là Perl Cookbook, là tài liệu viết về những vấn đề lập trình thường gặp phải và cách giải quyết những vấn đề đó cho ngôn ngữ này. PLEAC có thể xem là nơi trình bày những vấn đề trong Perl Cookbook nhưng giải pháp lại được trình bày theo nhiều ngôn ngữ khác nhau, không chỉ riêng Perl, như Groovy, Python, OCaml và Ruby,.... và luôn có được những giải pháp tốt nhất (cho đến nay). Lưu ý là PLEAC không có JavaScript, nhưng lại có CoffeeScript. Đương nhiên, nếu bạn là lập trình viên dày dạn, bạn cũng có thể đóng góp phần mình vào trang web này.
     

    Nguồn: Infoworld